This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Semantics of MODIFY_EXPR with CONSTRUCTOR rhs


Thanks for doing all this so quickly!  I was willing to do it, you know ...

    I suspect the failure due to variable-sized temporaries that you saw
    has to do with a think-o in the loop that initialized the elements --
    it should have recursed for nested constructors rather than creating a
    new <MODIFY_EXPR <obj> <CONSTRUCTOR>> statement.

Could well be.

    As far as I can tell from examining the gimple dump, this appears to
    fix c52010a.ada.  That's not very conclusive, however, since it
    doesn't excercise any of the tricky bits.  Can you point to, or
    create, a test case that does do direct and indirect aggregate member
    initialization in one of these constructors?

If that ACATS test doesn't, I'm sure others in the same series do.
I'll apply this patch and do another run.  I also want to cehck that
it doesn't trigger the variable-size problem (compiling g-debuti.adb),
but I don't think it does since it doesn't make a temporary unless
there's a conflicting reference.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]