PR middle-end/18160

Richard Henderson rth@redhat.com
Tue Oct 26 23:57:00 GMT 2004


On Tue, Oct 26, 2004 at 03:54:18PM -0700, Adam Nemet wrote:
> Thanks for the hint.  It is actually DECL_HARD_REGISTER that should be
> cleared in c_mark_addressable() because of how expand_one_var() and
> use_register_for_decl() are formulated.

Hmm?? What exactly are you talking about?

  register int foo __asm__("%eax");
  &foo;

should, in my opinion, be a HARD error.  This case is so ill
formed that the user should be smacked.

In contrast, I understood

  register int bar;
  &bar;

to be the case we were allowing as just a warning.  Which,
I suppose, is ok.  Personally I'd still vote for a hard
error, but whatever.


r~



More information about the Gcc mailing list