On Mon, 5 Jun 2006, Brendan O'Dea wrote:

> Re: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27884
> 
> Hi Richard,
> 
> Could you please expand on your comment:
> 
>   "It's certainly a questionable use of 'register'.  What is the
>    expected effect of this parameter declaration from perls point of
>    view?"
> 
> My copy of an [admittedly old C9X standard] states both that:
> 
>     6.7.1 Storage-class specifiers
>      4: A declaration of an identifier for an object with storage-class
>       specifier register suggests that access to the object be as fast
>       as possible.  [...]
> 
> and:
> 
>     6.7.5.3 Function declarators (including prototypes)
>      2: The only storage-class specifier that shall occur in a parameter
>       declaration is register.
> 
> So given that "register" parameters to a function are both legal, and
> potentially make accesses fast, could you please expand on wht that is a
> "questionable use of 'register'"?

Note that I specifically did not say the code is invalid, but only
questionable because of desired semantics.  The "storage-class" for
function parameters is specified by the ABI in effect, so any additional
storage-class specifier (being it only one valid one, register) has
no effect there anyway.  So, a good cleanup for perl would be to drop
usage of the 'register' storage-class specifier.  That it is rejected
by gcc in this case is still a gcc bug.

Richard.


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to