aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2008-11-01minor tweaks.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58545 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-01Grammar tweaks.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58544 91177308-0d34-0410-b5e6-96231b3b80d8
2008-11-01Add recent timing results to web page.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58542 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-31Semantic checking of constructor declarations and classification of ↵Douglas Gregor
default/copy constructors git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58538 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-31Implement basic support for converting constructors in user-defined Douglas Gregor
conversions. Notes: - Overload resolution for converting constructors need to prohibit user-defined conversions (hence, the test isn't -verify safe yet). - We still use hacks for conversions from a class type to itself. This will be the case until we start implicitly declaring the appropriate special member functions. (That's next on my list) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58513 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-31Fix a bug that was introduced in 58501. Ideally I think we should force all ↵Anders Carlsson
targets to set these values and not have defaults. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58511 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-31Comment out invalid assertion. I'm leaving it in the code for now as a ↵Ted Kremenek
reminder to produce a test case. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58510 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-31Implement semantic checking of static_cast and dynamic_cast.Sebastian Redl
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58509 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-31Simplify interface. We can get canonical type from the base region directly. ↵Zhongxing Xu
No need for an extra type argument. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58507 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-31Implement struct initialization for SCA.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58506 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-31Implement array initialization for SCA.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58504 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-31Fixed build warning. No functionality change.Sanjiv Gupta
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58503 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-31Add test code for array initialization.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58502 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-31Made the mechanism of defining preprocessor defs for maxint, ptrdiff_t, wcharSanjiv Gupta
etc more generic. For some targets, long may not be equal to pointer size. For example: PIC16 has int as i16, ptr as i16 but long as i32. Also fixed a few build warnings in assert() functions in CFRefCount.cpp, CGDecl.cpp, SemaDeclCXX.cpp and ParseDeclCXX.cpp. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58501 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-31Turn off module verification in Release-Asserts builds.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58500 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-31Add support for parsing and representing C++ constructor declarations.Douglas Gregor
Notes: - Constructors are never found by name lookup, so they'll never get pushed into any scope. Instead, they are stored as an OverloadedFunctionDecl in CXXRecordDecl for easy overloading. - There's a new action isCurrentClassName that determines whether an identifier is the name of the innermost class currently being defined; we use this to identify the declarator-id grammar rule that refers to a type-name. - MinimalAction does *not* support parsing constructors. - We now handle virtual and explicit function specifiers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58499 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-31"One" line fix for -parse-noop failure, "id" and several other thingsDaniel Dunbar
were being treated as type names for non-Objective-C files. - Other lines are just because MinimalAction didn't have access to the LangOptions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58498 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-31Debug info: Bug fix, function types should always include the returnDaniel Dunbar
type. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58497 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-31Implement BindStruct and fix a bug in RetriveStruct.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58496 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-31Fix 80-col violations.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58495 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-31Implement load from struct region. Instead of returning an UnknownVal(), we ↵Zhongxing Xu
create a CompoundVal by loading from each field of the struct. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58494 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-31Make CompoundLiteralRegion a subclass of TypedRegiion.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58493 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-31Add a tentative assertion.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58492 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-31On Mac OS X, use TMPDIR as the default location to place analysis results. ↵Ted Kremenek
This is a more secure location for such files, and addresses <rdar://problem/6334220>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58491 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-31Quick fix for PR2950, infinite loop generating debug info forDaniel Dunbar
recursive types. - Style will be clean up in further patches. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58490 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-31Formatting tweaks.Daniel Dunbar
- No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58488 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-31Fix a comment.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58487 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-31Added missing 'expected-warning'Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58481 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-31Enhance compound literal test case.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58480 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-31Use llvm::raw_string_ostream instead of std::ostringstream.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58479 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-31Enhance path-sensitive return-of-stack-address check to print out the line ↵Ted Kremenek
number of a compound literal (whose address is being returned) instead of printing out the hex representation of the pointer address of the CompoundLiteralExpr. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58478 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-31Add accessor method to CompoundLiteralRegion to retrieve the ↵Ted Kremenek
CompoundLiteralExpr. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58476 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-30Updated checker build.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58473 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-30Add missing "expected warning".Ted Kremenek
Add compound literal with empty initializer (just to test the analyzer handles it). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58470 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-30Extend "followsFundamentalRule" to ignore prefix '_' characters.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58469 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-30Handle the case in VisitInitListExprs where there are no initializers in the ↵Ted Kremenek
compound literal. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58468 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-30Add method that will be invoked using the dot-syntax just to test that the ↵Ted Kremenek
missing -dealloc checker handles it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58467 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-30Distinguish between self.X = ... where self.X is a property reference and ↵Ted Kremenek
self.X is an implicit call to setX. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58462 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-30Improve compound literal test case.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58447 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-30Use the correct predecessor node.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58446 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-30Pretty-printing for SVals now mainly uses llvm::raw_ostream. We have an ↵Ted Kremenek
adapter for std::ostream, but this will be removed in the future. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58445 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-30Add missing return statement.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58444 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-30Added iterators to nonloc::CompoundSVal.Ted Kremenek
Added pretty-printing for nonloc::CompoundSVal. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58442 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-3080 col violation.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58441 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-30Use a worklist in GRExprEngine::VisitInitListExpr to process subexpressions.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58440 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-30Update #includes since SVals.h no longer includes BasicValueFactory.h.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58439 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-30Add iterator/reverse_iterator to InitListExpr for iteration over the ↵Ted Kremenek
subexpressions of an initializer list. This is basically the same as child_iterator except reverse iteration is possible (which will be used by GRExprEngine::VisitInitListExpr). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58438 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-30CompoundVal now uses an ImmutableList<SVal> to store its set of SVals. This ↵Ted Kremenek
change was motivated by the need to allow state-splitting in GRExprEngine::VisitInitListExpr. As a side-benefit, we no longer need to perform any copies of SVals when creating a CompoundSVal, and the profiling of CompoundSVal is now constant time. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58437 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-30"missing ivar release" is a performance bug.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58436 91177308-0d34-0410-b5e6-96231b3b80d8
2008-10-30Patch by Nikita Zhuk: test case for fix for false positive reported in PR2978.Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58432 91177308-0d34-0410-b5e6-96231b3b80d8