c99/c++ localised variable definition
    Stefan Farfeleder 
    stefan at fafoe.narf.at
       
    Mon Jan 31 08:55:16 PST 2005
    
    
  
On Mon, Jan 31, 2005 at 05:31:17PM +0100, Ulrich Spoerlein wrote:
> Doesn't look so:
> #include <stdlib.h>
> #include <stdio.h>
> 
> int
> main(int argc, char **argv) {
>   int N = 42;
>   int i;
>   for (int i = 0; i < N; i++)
>     if (i == 23)
>       break;
>   printf("%d\n", i);   /* use finishing index */
>   return (0);
> }
> 
> % cc -Wall -std=c99 test.c && ./a.out
> 1
> % icc -Wall -std=c99 test.c && ./a.out
> test.c(12): remark #592: variable "i" is used before its value is set
>     printf("%d\n", i);   /* use finishing index */
>                    ^
-Wshadow
Stefan
    
    
More information about the freebsd-arch
mailing list