mikaelholmen wrote:

Hi @pskrgag 

The following starts crashing with this patch:
```
clang -cc1 -analyze -analyzer-checker=core bbi-98183.c
```
It crashes like:
```
clang: 
../../clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h:1212: 
clang::ento::ElementRegion::ElementRegion(clang::QualType, clang::ento::NonLoc, 
const clang::ento::SubRegion *): Assertion `!elementType.isNull() && 
!elementType->isVoidType() && "Invalid region type!"' failed.
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and 
include the crash backtrace, preprocessed source, and associated run script.
Stack dump:
0.      Program arguments: build-all/bin/clang -cc1 -analyze 
-analyzer-checker=core bbi-98183.c
1.      <eof> parser at end of file
2.      While analyzing stack: 
        #0 Calling b
3.      bbi-98183.c:2:12: Error evaluating statement
4.      bbi-98183.c:2:12: Error evaluating statement
 #0 0x0000557ee7401507 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) 
(build-all/bin/clang+0x7ed8507)
 #1 0x0000557ee73ff06e llvm::sys::RunSignalHandlers() 
(build-all/bin/clang+0x7ed606e)
 #2 0x0000557ee7401bcf SignalHandler(int) Signals.cpp:0:0
 #3 0x00007f566e78acf0 __restore_rt (/lib64/libpthread.so.0+0x12cf0)
 #4 0x00007f566c343acf raise (/lib64/libc.so.6+0x4eacf)
 #5 0x00007f566c316ea5 abort (/lib64/libc.so.6+0x21ea5)
 #6 0x00007f566c316d79 _nl_load_domain.cold.0 (/lib64/libc.so.6+0x21d79)
 #7 0x00007f566c33c426 (/lib64/libc.so.6+0x47426)
 #8 0x0000557ee94c8881 
clang::ento::ElementRegion::ElementRegion(clang::QualType, clang::ento::NonLoc, 
clang::ento::SubRegion const*) MemRegion.cpp:0:0
 #9 0x0000557ee94c86a3 
clang::ento::MemRegionManager::getElementRegion(clang::QualType, 
clang::ento::NonLoc, clang::ento::SubRegion const*, clang::ASTContext const&) 
(build-all/bin/clang+0x9f9f6a3)
#10 0x0000557ee9509dba (anonymous 
namespace)::RegionStoreManager::bind((anonymous namespace)::RegionBindingsRef 
const&, clang::ento::Loc, clang::ento::SVal) RegionStore.cpp:0:0
#11 0x0000557ee94ffb49 (anonymous namespace)::RegionStoreManager::Bind(void 
const*, clang::ento::Loc, clang::ento::SVal) RegionStore.cpp:0:0
#12 0x0000557ee94d69a1 clang::ento::ProgramState::bindLoc(clang::ento::Loc, 
clang::ento::SVal, clang::LocationContext const*, bool) const 
(build-all/bin/clang+0x9fad9a1)
#13 0x0000557ee9481c55 
clang::ento::ExprEngine::VisitGCCAsmStmt(clang::GCCAsmStmt const*, 
clang::ento::ExplodedNode*, clang::ento::ExplodedNodeSet&) 
(build-all/bin/clang+0x9f58c55)
#14 0x0000557ee947d2b4 clang::ento::ExprEngine::Visit(clang::Stmt const*, 
clang::ento::ExplodedNode*, clang::ento::ExplodedNodeSet&) 
(build-all/bin/clang+0x9f542b4)
#15 0x0000557ee9479805 clang::ento::ExprEngine::ProcessStmt(clang::Stmt const*, 
clang::ento::ExplodedNode*) (build-all/bin/clang+0x9f50805)
#16 0x0000557ee9479539 
clang::ento::ExprEngine::processCFGElement(clang::CFGElement, 
clang::ento::ExplodedNode*, unsigned int, clang::ento::NodeBuilderContext*) 
(build-all/bin/clang+0x9f50539)
#17 0x0000557ee945cc7e clang::ento::CoreEngine::HandlePostStmt(clang::CFGBlock 
const*, unsigned int, clang::ento::ExplodedNode*) 
(build-all/bin/clang+0x9f33c7e)
#18 0x0000557ee945bb3a 
clang::ento::CoreEngine::ExecuteWorkList(clang::LocationContext const*, 
unsigned int, llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>) 
(build-all/bin/clang+0x9f32b3a)
#19 0x0000557ee8fd8255 (anonymous 
namespace)::AnalysisConsumer::HandleCode(clang::Decl*, unsigned int, 
clang::ento::ExprEngine::InliningModes, llvm::DenseSet<clang::Decl const*, 
llvm::DenseMapInfo<clang::Decl const*, void>>*) AnalysisConsumer.cpp:0:0
#20 0x0000557ee8fb10bb (anonymous 
namespace)::AnalysisConsumer::HandleTranslationUnit(clang::ASTContext&) 
AnalysisConsumer.cpp:0:0
#21 0x0000557ee955b927 clang::ParseAST(clang::Sema&, bool, bool) 
(build-all/bin/clang+0xa032927)
#22 0x0000557ee80b2390 clang::FrontendAction::Execute() 
(build-all/bin/clang+0x8b89390)
#23 0x0000557ee801d37f 
clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) 
(build-all/bin/clang+0x8af437f)
#24 0x0000557ee81a017e 
clang::ExecuteCompilerInvocation(clang::CompilerInstance*) 
(build-all/bin/clang+0x8c7717e)
#25 0x0000557ee4c83df6 cc1_main(llvm::ArrayRef<char const*>, char const*, 
void*) (build-all/bin/clang+0x575adf6)
#26 0x0000557ee4c8059d ExecuteCC1Tool(llvm::SmallVectorImpl<char const*>&, 
llvm::ToolContext const&) driver.cpp:0:0
#27 0x0000557ee4c7f2e4 clang_main(int, char**, llvm::ToolContext const&) 
(build-all/bin/clang+0x57562e4)
#28 0x0000557ee4c90ab7 main (build-all/bin/clang+0x5767ab7)
#29 0x00007f566c32fd85 __libc_start_main (/lib64/libc.so.6+0x3ad85)
#30 0x0000557ee4c7deae _start (build-all/bin/clang+0x5754eae)
Abort (core dumped)
```
[bbi-98183.c.gz](https://github.com/user-attachments/files/16656552/bbi-98183.c.gz)


https://github.com/llvm/llvm-project/pull/103714
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to