[LLVMbugs] [Bug 1889] New: clang allows allocating array that is too large
bugzilla-daemon at cs.uiuc.edu
bugzilla-daemon at cs.uiuc.edu
Tue Jan 1 00:03:16 PST 2008
http://llvm.org/bugs/show_bug.cgi?id=1889
Summary: clang allows allocating array that is too large
Product: clang
Version: unspecified
Platform: PC
OS/Version: Linux
Status: NEW
Severity: enhancement
Priority: P2
Component: AST
AssignedTo: unassignedbugs at nondot.org
ReportedBy: sharparrow1 at yahoo.com
CC: llvmbugs at cs.uiuc.edu
void c(int n){
#define ARR_SIZE 0x7FFFFFFF
int b[ARR_SIZE];
int c[sizeof(b)-sizeof(int)*(long long)ARR_SIZE];
}
For this code, there should either be an error on the declaration of b (if
size_t isn't large enough to contain the size of b) or no error (if size_t is
large enough to contain the size of b). Currently, there is an error claiming
that c has a negative width, which should be impossible since "sizeof(b)"
should be equal to "sizeof(int)*(long long)ARR_SIZE". Apparently, the
computation of sizeof(b) overflows.
For this code, gcc says "error: size of array ‘b’ is too large". clang
should say something similar.
Not sure if this is the right component.
--
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