[cfe-dev] C99 VLA bug?
Zhongxing Xu
xuzhongxing at gmail.com
Wed Dec 30 15:01:38 PST 2009
I committed a tentative fix in r92318. Chris, could you please review it?
Thanks.
2009/12/30 Andy Wick <Andy.Wick at corp.aol.com>
> Thanks for all the hard work, I didn’t see this in bugzilla but maybe a
> known issue. The typedef seems to cause the issue, and unfortunately we use
> thru out our project. I’m using svn 92284
>
> The file:
> #include <string.h>
> typedef unsigned char Byte;
> void doit (char *data, int len) {
> if (len) {
> Byte buf[len];
> memcpy(buf, data, len);
> }
> }
>
>
> Compiled with “clang --analyze t.c”
>
> Gives me:
> clang: ASTContext.cpp:2377: clang::QualType
> clang::ASTContext::getUnqualifiedArrayType(clang::QualType,
> clang::Qualifiers&): Assertion `T.isCanonical() && "Only operates on
> canonical types"' failed.
> 0 clang 0x000000000141b61f
> 1 clang 0x000000000141be21
> 2 libpthread.so.0 0x0000002a9567f160
> 3 libc.so.6 0x0000002a95d5f745 gsignal + 69
> 4 libc.so.6 0x0000002a95d60eb3 abort + 467
> 5 libc.so.6 0x0000002a95d58dc9
> 6 clang 0x000000000084cb06
> 7 clang 0x000000000084c9ea
> 8 clang 0x00000000006bc472
> 9 clang 0x000000000067d86f
> 10 clang 0x0000000000677124
> 11 clang 0x000000000067d99b
> 12 clang 0x0000000000677124
> 13 clang 0x000000000067608a
> 14 clang 0x0000000000676fd4
> 15 clang 0x000000000067dfe1
> 16 clang 0x000000000066c068
> 17 clang 0x000000000066c2d2
> 18 clang 0x00000000004d8b97
> 19 clang 0x00000000004d7530
> 20 clang 0x00000000004d7a15
> 21 clang 0x00000000006e0136
> 22 clang 0x00000000004345e0
> 23 clang 0x0000000000437661 main + 1585
> 24 libc.so.6 0x0000002a95d4d1d7 __libc_start_main + 215
> 25 clang 0x000000000043246a
> Stack dump:
> 0. Program arguments: /usr/local/bin/clang -cc1 -triple
> x86_64-unknown-linux-gnu -analyze -disable-free -main-file-name t.c
> -analyzer-store=region -analyzer-opt-analyze-nested-blocks -warn-dead-stores
> -warn-security-syntactic -checker-cfref -analyzer-eagerly-assume
> -warn-objc-methodsigs -warn-objc-unused-ivars -analyzer-output plist
> -mrelocation-model static -mdisable-fp-elim -munwind-tables -target-cpu
> x86-64 -v -resource-dir /usr/local/lib/clang/1.1 -fmessage-length 138
> -fgnu-runtime -fdiagnostics-show-option -fcolor-diagnostics -o t.plist -x c
> t.c
> 1. <eof> parser at end of file
> 2. t.c:6:9: Error evaluating statement
> 3. t.c:6:9: Error evaluating statement
> 4. t.c:6:16: Error evaluating statement
> 5. t.c:6:16: Error evaluating statement
> clang: error: analyzer command failed due to signal 6 (use -v to see
> invocation)
>
> _______________________________________________
> cfe-dev mailing list
> cfe-dev at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20091231/c05baab8/attachment.html>
More information about the cfe-dev
mailing list