sizeof(function)
Geoff Keating
geoffk@cygnus.com
Fri Jun 16 13:49:00 GMT 2000
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>
More information about the Gcc-bugs
mailing list