[cfe-dev] Microsoft vtordisp field support for clang.

John McCall rjmccall at apple.com
Tue May 1 02:01:20 PDT 2012

On Apr 5, 2012, at 3:13 AM, r4start wrote:
> Sorry for the delay, but at now I am writing my diploma so I don't have enough time.
> I attached patch with vtordisp functionality.
> Please review.

I revised this a bit more and checked in as r155905 (tweaked in r155906).

I added an extra test case (in the 'test1' namespace) to the bottom of
ms_class_layout.cpp, but I'm only guessing that this is the right result;
I'd appreciate it if you'd check this:

namespace test1 {
  struct A { virtual void foo(); };
  struct B : A {};
  struct C : virtual A, virtual B { C(); virtual void foo(); };
  void test() { C *c; }

I claim that both B and A should have vtordisps in C.


More information about the cfe-dev mailing list