[LLVMbugs] [Bug 10937] New: -Warray-bounds gives false positive on	ICU
    bugzilla-daemon at llvm.org 
    bugzilla-daemon at llvm.org
       
    Thu Sep 15 14:59:50 PDT 2011
    
    
  
http://llvm.org/bugs/show_bug.cgi?id=10937
           Summary: -Warray-bounds gives false positive on ICU
           Product: clang
           Version: unspecified
          Platform: PC
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: P
         Component: Frontend
        AssignedTo: unassignedclangbugs at nondot.org
        ReportedBy: nicolasweber at gmx.de
                CC: llvmbugs at cs.uiuc.edu
Repro:
thakis-macbookpro:src thakis$ cat test_array_bounds.c 
void f() {
  unsigned char in[1024];
  unsigned short iv[2];
  ((char*)iv)[3] = in[3];
}
thakis-macbookpro:src thakis$ clang -c test_array_bounds.c 
test_array_bounds.c:4:11: warning: array index of '3' indexes past the end of
an array (that contains 2 elements) [-Warray-bounds]
  ((char*)iv)[3] = in[3];
          ^   ~
test_array_bounds.c:3:3: note: array 'iv' declared here
  unsigned short iv[2];
  ^
1 warning generated.
Here's the full warning from ICU:
third_party/nss/mozilla/security/nss/lib/freebl/desblapi.c:173:15: warning:
array index of '3' indexes past the end of an array (that contains 2 elements)
[-Warray-bounds]
        COPY8BTOHALF(cx->iv, in);
        ~~~~~~~~~~~~~^~~~~~~~~~~
third_party/nss/mozilla/security/nss/lib/freebl/desblapi.c:80:39: note:
expanded from:
#define COPY8BTOHALF(to, from) COPY8B(to, from, from)
                                      ^
third_party/nss/mozilla/security/nss/lib/freebl/desblapi.c:73:14: note:
expanded from:
        BYTEPTR(to)[3] = BYTEPTR(from)[3]; \
                ^   ~
third_party/nss/mozilla/security/nss/lib/freebl/des.h:52:30: note: expanded
from:
#define BYTEPTR(x) ((BYTE *)(x))
                             ^
third_party/nss/mozilla/security/nss/lib/freebl/des.h:67:5: note: array 'iv'
declared here
    HALF iv  [2];
    ^
-- 
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
    
    
More information about the llvm-bugs
mailing list