This is the mail archive of the gcc-bugs@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]

Re: sizeof(function)



Horst von Brand <vonbrand@inf.utfsm.cl> writes:

> Andi Kleen <ak@muc.de> said:
> > The following program outputs 1: 
> > 
> > main()
> > {
> > 	printf("%d\n",sizeof(main));
> > }	
> > 
> > Why does it not give an error ? The c9x draft does not seem to define
> > this case, but surely it should at least warn about this.
> 
> Whenever you mention a function without calling it, you get a pointer to
> the function, isn't it? 1 is wrong in any case.

It does give a warning if you use -pedantic.  Functions don't decay to
pointers in the context of sizeof(), just as arrays don't.

-- 
- Geoffrey Keating <geoffk@cygnus.com>

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