This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Re: Bug on sizeof(void) == 1, must be undefined or negative, == -100000.
- From: jc-nospam at jr-pizarro dot jazztel dot es
- To: pinskia at physics dot uc dot edu
- Cc: gcc-bugs at gcc dot gnu dot org
- Date: Fri, 17 Jun 2005 23:50:09 +0200 (CEST)
- Subject: Re: Bug on sizeof(void) == 1, must be undefined or negative, == -100000.
On Jun 17, 2005, at 17:31:34, pinskia@physics.uc.edu wrote:
> Since this is a GNU extension, GCC defines as adding 1. See the
> documentation
> where this is documented.
> http://gcc.gnu.org/onlinedocs/gcc-4.0.0/gcc/Pointer-Arith.html#Pointer-
> Arith
>
>
> In GNU C, addition and subtraction operations are supported on
> pointers to void and on pointers to functions. This is done by treating
> the size of a void or of a function as 1.
>
> A consequence of this is that sizeof is also allowed on void and on
> function types, and returns 1.
>
> The option -Wpointer-arith requests a warning if these extensions are
> used.
>
> -- Pinski
Conclusion: the GNU's law is:
"void IS A byte"
(1 void == 1 byte)
-- J.C. --