On May 2, 2013, at 7:12 PM, Stephen Lin <[email protected]> wrote:
>> That seems extremely fixable.  There are not very many callers of this,
>> and the major ones already derive the Decl* from a GlobalDecl.
>> For SetInternalFunctionAttributes, you can just wrap the Decl* back
>> up;  it should never be working with a ctor or dtor.
> 
> Oh ok, thanks, I can do that instead. Minor issue would be that
> arrangeCXXConstructorDeclaration calls
> CGCXXABI::BuildConstructorSignature (and similarly for
> arrangeCXXDestructor), which sets the return type to the type of
> 'this', but ConstructAttributeList would then call
> CGCXXABI::HasThisReturn to determine if there's a 'this' return, so
> there'd be an implicit assumption that the two implementations are
> consistent with each other, whereas in the version I just posted
> ultimately gets the information for both from
> CGCXXABI::BuildConstructorSignature. If you're OK with that I'll go
> with that (with an assert as a consistency sanity check).


It would be reasonable to change ItaniumCXXABI's
BuildConstructorSignature to call HasThisReturn instead of relying
on overrides.

John.
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to