- Sep 28, 2007
-
-
Ted Kremenek authored
taintness across expressions. Made "smart-culling" of taint propagation (for error reporting) correctly handle conditional expressions and a few other edge cases. llvm-svn: 42421
-
- Sep 27, 2007
-
-
Ted Kremenek authored
values associated with ScopedDecls and CFGBlock-level Exprs. This is the common boilerplate needed by UninitializedValues and LiveVariables. Refactored UninitializedValues to use ExprDeclBitVector. Shortened the string diagnostic for UninitializedValues. llvm-svn: 42408
-
- Sep 25, 2007
-
-
Ted Kremenek authored
code that uses the solver to reflect the new location. Created "FlowSensitive" subdirectory in include/clang/Analysis to hold header files relating to flow-sensitive analyses. Moved "DataflowValues.h" into this subdirectory. llvm-svn: 42320
-
- Sep 20, 2007
-
-
Ted Kremenek authored
Analysis/Visitors/*Visitors.h files. llvm-svn: 42175
-
- Sep 19, 2007
-
-
Ted Kremenek authored
llvm-svn: 42145
-
- Sep 18, 2007
-
-
Ted Kremenek authored
called VisitStmt, but VisitChildren is more direct and creates less boilerplate logic. llvm-svn: 42110
-
Ted Kremenek authored
llvm-svn: 42109
-
Ted Kremenek authored
invocation of the solver. UninitializedValues checker now uses CFG::runOnAllBlocks to query the computed dataflow values (tighter code). llvm-svn: 42107
-
Ted Kremenek authored
of visiting all block-level statements in a CFG. Tightened implementation of UninitializedValues. llvm-svn: 42106
-
Ted Kremenek authored
with CFG *edges* instead of blocks. This will fascilitate dataflow analyses that are sensitive to block terminators, and also simplifies some reasoning. Updated UninitializedValues to comply to this new interface. llvm-svn: 42099
-
- Sep 17, 2007
-
-
Ted Kremenek authored
too "conservative"). Several revisions to UninitializedValues checker after testing. We now appear to be working correctly (probably some bugs still, but main functionality appears to be there). Implemented careful emitting of warnings so that we wouldn't get a cascade of warnings for simply not defining a single variable and using it everywhere. This way the warnings point closer to the root cause rather than "symptoms" from using values derived from uninitialized variables. llvm-svn: 42067
-
Ted Kremenek authored
llvm-svn: 42056
-
Ted Kremenek authored
globals and function parameters. llvm-svn: 42055
-
Ted Kremenek authored
for reporting errors and running the checker. llvm-svn: 42046
-
Ted Kremenek authored
llvm-svn: 42041
-
Ted Kremenek authored
mechanism can be implemented simply by affixing the Observer to an analysis meta data, so it doesn't need to be a required type. This also permits analyses not to implement an Observer if it doesn't make sense. Changed "DataflowValues::MetaDataTy" to "DataflowValues::AnalysisDataTy" to reflect that the type enscapsulated the data associated with analyzing a given CFG. Changed CFGStmtVisitor::BlockStmt_VisitImplicitControlFlowStmt(Stmt*) to ...VisitImplicitControlFlowExpr(Expr*). The type narrowing is more precise and more useful to clients. Added CFGStmtVisitor::BlockStmt_VisitExpr to reflect the visitation of expressions at the block statement level. This captures all implicit control-flow statements as well as other expressions that are hoisted to the block level (such as conditions for terminators and function calls). This is especially useful for dataflow analysis. llvm-svn: 42034
-
- Sep 15, 2007
-
-
Ted Kremenek authored
Preliminary implementation of UninitializedValues, which is based on new solver (doesn't work yet, but compiles). llvm-svn: 41970
-