On Wed, Aug 28, 2013 at 2:00 PM, David Blaikie <[email protected]> wrote: > On Wed, Aug 28, 2013 at 1:32 PM, Eric Christopher <[email protected]> wrote: >>>> That's... tricky. Could you add this in a comment? >>> >>> It's partially commented already ("Reuse the existing member function >>> declaration if it exists" - I could clarify how it could already >>> exist). Added some other comments in r189504. >>> >> >> Thanks. Otherwise I could easily see us hoisting the check outside of >> the loop one day. I.e. comments as to why this has to be _right there_ >> are useful :) > > Hopefully r189516 covers that. >
Looks good. Thanks! -eric >>>> Also trying to figure out how we're emitting the implicit member without >>>> emitting the >>>> rest of the type. >>> >>> Vtables man, vtables. >>> >>> If we have a dynamic type, say, with a key function - then we try not >>> to emit the debug info definition of the type in any TU except the one >>> that emits the vtable. But if that type has implicit members (implicit >>> 5 (default ctor, copy ctor, move ctor, copy assign, move assign, >>> dtor)) we can't be guaranteed they'll be used/declared/defined in the >>> TU that defines the vtable - so we attach those members to the >>> declaration. GCC does the same thing. Yeah, it's weird. >>> >> >> Gah. > > Yup. _______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
