This is the mail archive of the gcc-patches@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: <addr_expr <realpart_expr <x>>> ?


Richard Henderson <rth@redhat.com> writes:

| So, like, where did execute/20030910-1.c and the requirement
| that (&__real__ x) be well-formed come from?
| 
| I see that that bit o ugliness happens to work in mainline,
| but I don't see anything in the documentation that suggests
| that it's supposed to work.
| 
| I think we can continue to support *direct* assignment to
| __real__ and __imag__, by the expansion implemented in my
| previous patch, but as a completely general lvalue..., well,
| that completely eliminates the possibility of SSA renaming
| of complex values without scalarization.

I'm concerned with this because it somehow relates to C++' complex. 
There is a layout requirement that if z is __complex__ then it acts as
if it were an array of two scalars.  In particular __real__ is 
the first element and __imag__ is the second.  They are going to act
like lvalues.

-- Gaby


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