[PATCH] Modeling APIs in the Static Analyzer
Ted Kremenek
kremenek at apple.com
Tue Aug 19 22:18:11 PDT 2014
> On Aug 16, 2014, at 5:47 AM, Gábor Horváth <xazax.hun at gmail.com> wrote:
>
> Sorry for my oversight about the turned off asserts, I guess we need to iterate a bit more on the patch.
Hi Gábor,
Sounds good!
The attached patch appears to generate new warnings when compiled:
lib/StaticAnalyzer/Core/BugReporter.cpp:3091:30: warning: unused variable 'LCtx' [-Wunused-variable]
const LocationContext *LCtx = E->getLocationContext();
^
I'm also still seeing assertion failures, but this time in other tests:
Assertion failed: (NumEnteredSourceFiles == 0 && "Cannot reenter the main file!"), function EnterMainSourceFile, file lib/Lex/Preprocessor.cpp, line 484.
0 clang 0x000000010cfcb668 llvm::sys::PrintStackTrace(__sFILE*) + 40
1 clang 0x000000010cfcbb54 SignalHandler(int) + 564
2 libsystem_platform.dylib 0x00007fff8f835f1a _sigtramp + 26
3 clang 0x000000010e7775e9 guard variable for isAllowedIDChar(unsigned int, clang::LangOptions const&)::C99AllowedIDChars + 58369
4 clang 0x000000010cfcb906 abort + 22
5 clang 0x000000010cfcb8e1 __assert_rtn + 81
6 clang 0x000000010e27c449 clang::Preprocessor::EnterMainSourceFile() + 537
7 clang 0x000000010d874e7b clang::ParseAST(clang::Sema&, bool, bool) + 187
8 clang 0x000000010d1ce1d3 clang::FrontendAction::Execute() + 67
9 clang 0x000000010d1a1b7c clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) + 972
10 clang 0x000000010d208bc5 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) + 4149
11 clang 0x000000010c699834 cc1_main(llvm::ArrayRef<char const*>, char const*, void*) + 804
12 clang 0x000000010c697fa4 main + 8788
13 libdyld.dylib 0x00007fff97fa15c9 start + 1
Stack dump:
0. Program arguments:/trunk-RelWithDebInfo/./bin/clang -cc1 -internal-isystem/trunk-RelWithDebInfo/bin/../lib/clang/3.6.0/include -Wall -fsyntax-only clang/test/Misc/serialized-diags-single-issue.c /clang/test/Misc/serialized-diags-single-issue.c -serialize-diagnostic-file/trunk-RelWithDebInfo/tools/clang/test/Misc/Output/serialized-diags-single-issue.c.tmp
1. <eof> parser at end of file
/cmake-make/trunk-RelWithDebInfo/tools/clang/test/Misc/Output/serialized-diags-single-issue.c.script: line 6: 56078 Illegal instruction: 4 trunk-RelWithDebInfo/./bin/clang -cc1 -internal-isystem/trunk-RelWithDebInfo/bin/../lib/clang/3.6.0/include -Wall -fsyntax-only /clang/test/Misc/serialized-diags-single-issue.c /clang/test/Misc/serialized-diags-single-issue.c -serialize-diagnostic-file/trunk-RelWithDebInfo/tools/clang/test/Misc/Output/serialized-diags-single-issue.c.tmp
and
Assertion failed: (NumEnteredSourceFiles == 0 && "Cannot reenter the main file!"), function EnterMainSourceFile, file /llvm-trunk/tools/clang/lib/Lex/Preprocessor.cpp, line 484.
0 clang 0x00000001105fa668 llvm::sys::PrintStackTrace(__sFILE*) + 40
1 clang 0x00000001105fab54 SignalHandler(int) + 564
2 libsystem_platform.dylib 0x00007fff8f835f1a _sigtramp + 26
3 libsystem_platform.dylib 0x00007fff65330764 _sigtramp + 3585058916
4 clang 0x00000001105fa906 abort + 22
5 clang 0x00000001105fa8e1 __assert_rtn + 81
6 clang 0x00000001118ab449 clang::Preprocessor::EnterMainSourceFile() + 537
7 clang 0x0000000110ea3e7b clang::ParseAST(clang::Sema&, bool, bool) + 187
8 clang 0x0000000110b48c7b clang::CodeGenAction::ExecuteAction() + 123
9 clang 0x00000001107fd1d3 clang::FrontendAction::Execute() + 67
10 clang 0x00000001107d0b7c clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) + 972
11 clang 0x0000000110837bc5 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) + 4149
12 clang 0x000000010fcc8834 cc1_main(llvm::ArrayRef<char const*>, char const*, void*) + 804
13 clang 0x000000010fcc6fa4 main + 8788
14 libdyld.dylib 0x00007fff97fa15c9 start + 1
Stack dump:
0. Program arguments: /cmake-make/trunk-RelWithDebInfo/./bin/clang -cc1 -internal-isystem cmake-make/trunk-RelWithDebInfo/bin/../lib/clang/3.6.0/include -triple x86_64-apple-macosx10.9.0 -include /clang/test/PCH/local_static.h -fsyntax-only clang/test/PCH/local_static.cpp -emit-llvm -o cmake-make/trunk-RelWithDebInfo/tools/clang/test/PCH/Output/local_static.cpp.tmp.no_pch.ll /clang/test/PCH/local_static.cpp
1. <eof> parser at end of file
/cmake-make/trunk-RelWithDebInfo/tools/clang/test/PCH/Output/local_static.cpp.script: line 5: 57780 Illegal instruction: 4 /cmake-make/trunk-RelWithDebInfo/./bin/clang -cc1 -internal-isystem /cmake-make/trunk-RelWithDebInfo/bin/../lib/clang/3.6.0/include -triple x86_64-apple-macosx10.9.0 -include clang/test/PCH/local_static.h -fsyntax-only /clang/test/PCH/local_static.cpp -emit-llvm -o /cmake-make/trunk-RelWithDebInfo/tools/clang/test/PCH/Output/local_static.cpp.tmp.no_pch.ll /clang/test/PCH/local_static.cpp
Are you seeing these failures as well?
Thanks,
Ted
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20140819/75b206a1/attachment.html>
More information about the cfe-commits
mailing list