53 analyzer expand security coverage enforce global strict test runner stabilize expectation matching#54
Conversation
…et-with-safe-candidate.c
…ire-double-release.c
…o-double-release.c
…ut-no-double-release.cpp
…d parallel check orchestration
…inistic compile flag precedence
…s, docs(docker): document dev, builder and runtime targets with copy-paste commands
…nd runtime entrypoint defaults
…-string write handling
…eclaration diagnostic
| llvm::SmallPtrSetImpl<const llvm::Value*>& visited, | ||
| unsigned depth) | ||
| { | ||
| if (!value || depth > 32) |
Check notice
Code scanning / coretrace-stack-analyzer
None Note
| static bool hasKnownNonNegativeRange(const llvm::Value* value, | ||
| const std::map<const llvm::Value*, IntRange>& ranges) | ||
| { | ||
| if (!value) |
Check notice
Code scanning / coretrace-stack-analyzer
None Note
| const llvm::Value* value, const std::map<const llvm::Value*, IntRange>& ranges, | ||
| llvm::SmallPtrSetImpl<const llvm::Value*>& visited, unsigned depth) | ||
| { | ||
| if (!value || depth > 32) |
Check notice
Code scanning / coretrace-stack-analyzer
None Note
| resolveConstIntRecursive(const llvm::Value* value, | ||
| llvm::SmallPtrSetImpl<const llvm::Value*>& visited, unsigned depth) | ||
| { | ||
| if (!value || depth > 32) |
Check notice
Code scanning / coretrace-stack-analyzer
None Note
| llvm::SmallPtrSetImpl<const llvm::Value*>& visited, | ||
| unsigned depth) | ||
| { | ||
| if (!value || depth > 32) |
Check notice
Code scanning / coretrace-stack-analyzer
None Note
| llvm::SmallPtrSetImpl<const llvm::Value*>& visited, | ||
| unsigned depth) | ||
| { | ||
| if (!value || depth > 32) |
Check notice
Code scanning / coretrace-stack-analyzer
None Note
| static std::optional<IntRange> | ||
| lookupRange(const llvm::Value* value, const std::map<const llvm::Value*, IntRange>& ranges) | ||
| { | ||
| if (!value) |
Check notice
Code scanning / coretrace-stack-analyzer
None Note
| llvm::SmallPtrSet<const llvm::Value*, 32>& visited, | ||
| bool& sawReleaseUse, unsigned depth = 0) | ||
| { | ||
| if (!value || depth > 10) |
Check notice
Code scanning / coretrace-stack-analyzer
None Note
| static bool isArrayBackedType(const llvm::Type* type) | ||
| { | ||
| using namespace llvm; | ||
| if (!type) |
Check notice
Code scanning / coretrace-stack-analyzer
None Note
| std::unordered_set<const llvm::Type*>& visiting, | ||
| unsigned depth = 0) | ||
| { | ||
| if (!haystack || !needle || depth > 24) |
Check notice
Code scanning / coretrace-stack-analyzer
None Note
Summary
This PR consolidates a broad analyzer + test infrastructure effort:
run_test.pywith global strict validation,Main changes
1) Analyzer / pipeline
src/analyzer/AnalysisPipeline.cppsrc/analyzer/DiagnosticEmitter.cppsrc/app/AnalyzerApp.cppsrc/analysis/*include/analysis/*models/resource-lifetime/generic.txtmodels/buffer-overflow/generic.txt2) Test runner (
run_test.py)3) Test corpus
test/security/<vulnerability-category>/...test/filesshim documentation/Makefile.Validation
python3 run_test.py --jobs=8821/821passedBehavior changes
Exclusions for this PR
Please explicitly exclude:
tmp/.cache/.DS_Store,__pycache__, local analysis outputs)Checklist