Register arguments (was: Order of registers)

drw at cullvax.UUCP drw at cullvax.UUCP
Thu Mar 12 05:26:48 AEST 1987


karl at haddock.UUCP (Karl Heuer) writes:
> You imply that the declaration "extern int foo(int)" (without "register") is
> incompatible with the definition "int foo(register int i) { ... }".  Does
> X3J11 really say this?

Well, reading section 3.5.3.3, 'register' is specifically allowed for
function arguments, and all other storage class specifiers are
specifically forbidden.  I presume that this means that it is
significant in matching, probably so the compiler can pass the
argument via a register.  Sign!  Another ambiguity in X3J11.

Dale
-- 
Dale Worley		Cullinet Software
UUCP: ...!seismo!harvard!mit-eddie!cullvax!drw
ARPA: cullvax!drw at eddie.mit.edu
Un*x (a generic name for a class of OS's) != Unix (AT&T's brand of such)



More information about the Comp.lang.c mailing list