Le mercredi 5 décembre 2012 10:24:51, Somchai Smythe a écrit :
> Hello,
> 
>     From the snapshot of tcc mob I downloaded today, I see this when I
> compile:
> 
> clang -o x86_64-gen.o -c x86_64-gen.c -DTCC_TARGET_X86_64     -O3 -m64
> -march=x86-64 -mtune=generic -pipe -fno-strict-aliasing
> -Wno-pointer-sign -Wno-sign-compare -Wno-unused-result -m64
> tccasm.c:541:72: warning: data argument not used by format string
> [-Wformat-extra-args]
>             sprintf(sname, (n?".%s%d":".%s"), get_tok_str(tok1, NULL), n);
>                                       ~~~~~                            ^
> tccpp.c:918:22: warning: array index 2 is past the end of the array
> (which contains 2 elements) [-Warray-bounds]
>         str[len++] = cv->tab[2];
>                      ^       ~
> ./tcc.h:284:5: note: array 'tab' declared here
>     int tab[2];
>     ^
> tccpp.c:919:22: warning: array index 3 is past the end of the array
> (which contains 2 elements) [-Warray-bounds]
>         str[len++] = cv->tab[3];
>                      ^       ~
> ./tcc.h:284:5: note: array 'tab' declared here
>     int tab[2];
>     ^
> tccgen.c:740:17: warning: array index 2 is past the end of the array
> (which contains 2 elements) [-Warray-bounds]
>                 vtop->c.tab[2] &= 0xffff;
>                 ^           ~
> ./tcc.h:284:5: note: array 'tab' declared here
>     int tab[2];
>     ^
> tccgen.c:742:17: warning: array index 3 is past the end of the array
> (which contains 2 elements) [-Warray-bounds]
>                 vtop->c.tab[3] = 0;
>                 ^           ~
> ./tcc.h:284:5: note: array 'tab' declared here
>     int tab[2];
>     ^

It is fine because vtop->c is of type CValue and its size, as a union, is 
guaranteed to be the size of the biggest element. I am a bit worried that new 
optimization in future version of gcc could optimize out this kind of 
statement on the ground that we are accessing past the end of the array.

> 
> Should I be worried, or is this expected?  The self-tests passed anyway.

No need to be worried for now, but we should fix this.

> 
> Thanks!

Best regards,

Thomas

Attachment: signature.asc
Description: This is a digitally signed message part.

_______________________________________________
Tinycc-devel mailing list
Tinycc-devel@nongnu.org
https://lists.nongnu.org/mailman/listinfo/tinycc-devel

Reply via email to