gamesh411 added a comment. In D59934#1449109 <https://reviews.llvm.org/D59934#1449109>, @Szelethus wrote:
> I would still like to learn more about this issue. I am somewhat afraid that > the our macro expansion is faulty. Can you provide a stacktrace maybe? The stack trace that belongs to the same debug session I mentioned before: #0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51 #1 0x00007fdcf2121801 in __GI_abort () at abort.c:79 #2 0x00007fdcf589aa40 in llvm::llvm_unreachable_internal (msg=0x7fdcf4a179e5 "Unsortable locations found", file=0x7fdcf4a05f01 "/llvm/tools/clang/lib/Basic/SourceManager.cpp", line=2038) at /llvm/lib/Support/ErrorHandling.cpp:221 #3 0x00007fdcf4b81115 in clang::SourceManager::isBeforeInTranslationUnit (this=0xdfefc0, LHS=..., RHS=...) at /llvm/tools/clang/lib/Basic/SourceManager.cpp:2038 #4 0x00007fdcef3f4359 in clang::MacroDirective::findDirectiveAtLoc (this=0x1144500, L=..., SM=...) at /llvm/tools/clang/lib/Lex/MacroInfo.cpp:207 #5 0x00007fdceb40e086 in getMacroInfoForLocation (PP=..., SM=..., II=0x1135898, Loc=...) at /llvm/tools/clang/lib/StaticAnalyzer/Core/PlistDiagnostics.cpp:1115 #6 0x00007fdceb40d596 in getMacroNameAndArgs (ExpanLoc=..., PP=...) at /llvm/tools/clang/lib/StaticAnalyzer/Core/PlistDiagnostics.cpp:980 #7 0x00007fdceb40ccf3 in getMacroNameAndPrintExpansion[abi:cxx11]((anonymous namespace)::TokenPrinter&, clang::SourceLocation, clang::Preprocessor const&, (anonymous namespace)::MacroArgMap const&, llvm::SmallPtrSet<clang::IdentifierInfo*, 8u>&) (Printer=..., MacroLoc=..., PP=..., PrevArgs=..., AlreadyProcessedTokens=...) at /llvm/tools/clang/lib/StaticAnalyzer/Core/PlistDiagnostics.cpp:859 #8 0x00007fdceb40cb0e in getExpandedMacro (MacroLoc=..., PP=...) at /llvm/tools/clang/lib/StaticAnalyzer/Core/PlistDiagnostics.cpp:845 #9 0x00007fdceb40b202 in (anonymous namespace)::PlistPrinter::ReportMacroExpansions (this=0x7ffe244b7ed0, o=..., indent=4) at /llvm/tools/clang/lib/StaticAnalyzer/Core/PlistDiagnostics.cpp:344 #10 0x00007fdceb40ab43 in printBugPath (o=..., FM=..., AnOpts=..., PP=..., Path=...) at /llvm/tools/clang/lib/StaticAnalyzer/Core/PlistDiagnostics.cpp:479 #11 0x00007fdceb409764 in (anonymous namespace)::PlistDiagnostics::FlushDiagnosticsImpl (this=0xe0c610, Diags=std::vector of length 1, capacity 1 = {...}, filesMade=0x7ffe244b8898) at /llvm/tools/clang/lib/StaticAnalyzer/Core/PlistDiagnostics.cpp:583 #12 0x00007fdceb3fc9d9 in clang::ento::PathDiagnosticConsumer::FlushDiagnostics (this=0xe0c610, Files=0x7ffe244b8898) at /llvm/tools/clang/lib/StaticAnalyzer/Core/PathDiagnostic.cpp:483 #13 0x00007fdceb25aae9 in clang::ento::AnalysisManager::FlushDiagnostics (this=0xe14c20) at /llvm/tools/clang/lib/StaticAnalyzer/Core/AnalysisManager.cpp:59 #14 0x00007fdceb25a98c in clang::ento::AnalysisManager::~AnalysisManager (this=0xe14c20) at /llvm/tools/clang/lib/StaticAnalyzer/Core/AnalysisManager.cpp:47 #15 0x00007fdceb25ab3c in clang::ento::AnalysisManager::~AnalysisManager (this=0xe14c20) at /llvm/tools/clang/lib/StaticAnalyzer/Core/AnalysisManager.cpp:46 #16 0x00007fdcec72dc9f in std::default_delete<clang::ento::AnalysisManager>::operator() (this=0xe13a48, __ptr=0xe14c20) at /usr/bin/../lib/gcc/x86_64-linux-gnu/7.3.0/../../../../include/c++/7.3.0/bits/unique_ptr.h:78 #17 0x00007fdcec72eb3c in std::unique_ptr<clang::ento::AnalysisManager, std::default_delete<clang::ento::AnalysisManager> >::reset (this=0xe13a48, __p=0xe14c20) at /usr/bin/../lib/gcc/x86_64-linux-gnu/7.3.0/../../../../include/c++/7.3.0/bits/unique_ptr.h:376 #18 0x00007fdcec6c4079 in (anonymous namespace)::AnalysisConsumer::HandleTranslationUnit (this=0xe138b0, C=...) at /llvm/tools/clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp:602 #19 0x00007fdceec204b6 in clang::ParseAST (S=..., PrintStats=false, SkipFunctionBodies=false) at /llvm/tools/clang/lib/Parse/ParseAST.cpp:169 #20 0x00007fdcf37b0eb2 in clang::ASTFrontendAction::ExecuteAction (this=0xdeb800) at /llvm/tools/clang/lib/Frontend/FrontendAction.cpp:1035 #21 0x00007fdcf37b08e3 in clang::FrontendAction::Execute (this=0xdeb800) at /llvm/tools/clang/lib/Frontend/FrontendAction.cpp:934 #22 0x00007fdcf372a2ba in clang::CompilerInstance::ExecuteAction (this=0xde68f0, Act=...) at /llvm/tools/clang/lib/Frontend/CompilerInstance.cpp:949 #23 0x00007fdcf33b14bb in clang::ExecuteCompilerInvocation (Clang=0xde68f0) at /llvm/tools/clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp:271 #24 0x000000000023f7b4 in cc1_main (Argv=..., Argv0=0x7ffe244bc18a "/clang-build-debug/bin/clang-9", MainAddr=0x2320f0 <GetExecutablePath[abi:cxx11](char const*, bool)>) at /llvm/tools/clang/tools/driver/cc1_main.cpp:218 #25 0x000000000023349f in ExecuteCC1Tool (argv=..., Tool=...) at /llvm/tools/clang/tools/driver/driver.cpp:309 #26 0x0000000000232864 in main (argc_=339, argv_=0x7ffe244bb0e8) at /llvm/tools/clang/tools/driver/driver.cpp:381 I can also confirm that this only comes up when I run the analysis in `CTU` mode AND with `expand-macros=true`. Repository: rC Clang CHANGES SINCE LAST ACTION https://reviews.llvm.org/D59934/new/ https://reviews.llvm.org/D59934 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits