summaryrefslogtreecommitdiffstats
path: root/clang/lib
Commit message (Collapse)AuthorAgeFilesLines
* Remove redundant logic.Ted Kremenek2008-07-171-15/+0
| | | | llvm-svn: 53740
* Begin major changes to EvalXXX methods in GRTransferFuncs. Currently some ↵Ted Kremenek2008-07-172-2/+54
| | | | | | of the methods only return an RVal; we want them to be able to create an arbitrary number of states. llvm-svn: 53739
* Fix for codegen crash on multibit bool bitfield initializationDaniel Dunbar2008-07-171-0/+7
| | | | | | <rdar://problem/6078606> llvm-svn: 53737
* Moved RemoveDeadBindings logic for the contents of 'Store' to a virtual ↵Ted Kremenek2008-07-172-85/+96
| | | | | | RemoveDeadBindings method in StoreManager. llvm-svn: 53726
* Unify ctx_iterator/ctx_begin()/ctx_end() and iterator/begin()/end() so that ↵Argyrios Kyrtzidis2008-07-173-159/+102
| | | | | | a single iterator type is used for both traversing decls of the same declaration context *and* of the parent declaration contexts, depending on the value of the bool parameter 'LookInParentCtx' that is passed to IdentifierResolver::begin(). llvm-svn: 53724
* When in C++, make EnumConstant names hide tag names in the same scope, ↵Argyrios Kyrtzidis2008-07-161-1/+6
| | | | | | instead of colliding with them. llvm-svn: 53702
* Two fixes:Steve Naroff2008-07-162-3/+4
| | | | | | | - Make sure ObjCIvarDecl propagates the bitfield width. - RewriteObjC::SynthesizeIvarOffsetComputation(): Avoid using the __OFFSETOF__ mumbo jumbo for bitfields (since it isn't legal C). This fixes <rdar://problem/5986079> clang ObjC rewriter: bitfields and ivar access don't mix. llvm-svn: 53694
* When checking for name collision between a tag and a previously defined ↵Argyrios Kyrtzidis2008-07-161-5/+8
| | | | | | | | namespace, the collision occured even when the tag was in a different nested scope. Fix it by taking into account the scope when checking for namespace-tag name collisions. llvm-svn: 53667
* Add 'this' in the comments of Parser::ParseCastExpression to indicate that ↵Argyrios Kyrtzidis2008-07-161-0/+1
| | | | | | it is handled. llvm-svn: 53665
* Fix regression introduced by ↵Ted Kremenek2008-07-161-2/+4
| | | | | | | | http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20080714/006514.html. The regression was the casts from integers to pointers where not being handled: they would just return UnknownVal. This would greatly decrease path-sensitivity. llvm-svn: 53659
* Fix transfer function logic in GRSimpleVals for integer casts: only support ↵Ted Kremenek2008-07-151-0/+4
| | | | | | | | casts from integers to integers. This fixes a crash reported by Anders Carlsson! llvm-svn: 53649
* For the MissingDealloc check, don't treat IBOutlet ivars as being needed to ↵Ted Kremenek2008-07-151-2/+4
| | | | | | be released llvm-svn: 53647
* Use lowercase of attribute iboutlet to not conflict with the macro IBOutletTed Kremenek2008-07-151-1/+1
| | | | llvm-svn: 53645
* Added parsing/sema support for __attribute__ ((IBOutlet)), a clang-specific ↵Ted Kremenek2008-07-152-1/+19
| | | | | | attribute that the static analyzer will use to recognize what ivars are IBOutlets. llvm-svn: 53644
* Distinguish between dead stores and dead initializations.Ted Kremenek2008-07-151-9/+19
| | | | llvm-svn: 53628
* isRetain() and isRelease() now only returns true if "Retain"/"Release" ↵Ted Kremenek2008-07-151-2/+4
| | | | | | appears in the suffix of a function's name. llvm-svn: 53621
* Support retain/release tracking for CoreGraphics (CGxxxRef) objects.Ted Kremenek2008-07-151-12/+83
| | | | llvm-svn: 53617
* Refactor Dead Stores error reporting to use the simplified ↵Ted Kremenek2008-07-142-37/+17
| | | | | | BugReporter::EmitBasicReport interface. llvm-svn: 53573
* http://llvm.org/bugs/show_bug.cgi?id=2523Nate Begeman2008-07-142-22/+88
| | | | | | | | | Add some code to handle vector comparisons, which is the language side of the llvm vicmp/vfcmp instructions. Also make the vector-vector and vector-scalar asign checks a bit more sane under the presence of lax vector conversions. llvm-svn: 53565
* Added method "EmitBasicReport" to BugReporter to simplify the emission of ↵Ted Kremenek2008-07-143-49/+36
| | | | | | | | simple bug diagnostics. Refactored error reporting in CheckObjCDealloc and CheckObjCInstMethSignature to use this new bug reporting interface (major code simplification). llvm-svn: 53560
* remove CGObjCEtoile until it compiles.Chris Lattner2008-07-141-245/+0
| | | | llvm-svn: 53552
* Use of NextToken() makes ParseIdentifierStatement unnecessary.Argyrios Kyrtzidis2008-07-121-87/+7
| | | | | | Simplify the parser by removing Parser::ParseIdentifierStatement. llvm-svn: 53520
* Convert CRLF -> LF line endings.Argyrios Kyrtzidis2008-07-121-21/+21
| | | | llvm-svn: 53519
* expand casts to handle what isIntegerConstantExpr handles.Chris Lattner2008-07-121-11/+52
| | | | | | Casts from pointers remain a problem. :) llvm-svn: 53501
* Add support for __builtin_type_compatible_p, enums, etc.Chris Lattner2008-07-121-16/+47
| | | | llvm-svn: 53500
* start remembering diagnostics for various cases, add some missingChris Lattner2008-07-121-28/+85
| | | | | | code. Switch to Eli's getIntWidth method. llvm-svn: 53499
* Tidy up error message.Ted Kremenek2008-07-111-2/+4
| | | | llvm-svn: 53493
* Add CSS for word wrapping of long message bubbles.Ted Kremenek2008-07-111-0/+1
| | | | llvm-svn: 53492
* Provide a structure for passing down 'is evaluated' and passing up Chris Lattner2008-07-111-25/+62
| | | | | | diagnosic+loc info for i-c-e evaluation. llvm-svn: 53490
* Add new check: -check-objc-methodsigs. This check scans methods inTed Kremenek2008-07-111-0/+125
| | | | | | | | | ObjCImplementationDecls and sees if a ancestor class defines a method with the same selector but with a different type signature. Right now it just compares return types, and mainly looks at differences in primitive values. The checking will be expanded in the future. llvm-svn: 53482
* simplify some code a bit.Chris Lattner2008-07-111-48/+42
| | | | llvm-svn: 53477
* share code between sizeof(expr) and sizeof(type)Chris Lattner2008-07-111-61/+44
| | | | llvm-svn: 53475
* Fix comment.Ted Kremenek2008-07-111-2/+3
| | | | llvm-svn: 53473
* implement support for __extension__, make sure the result of aChris Lattner2008-07-111-13/+30
| | | | | | comparison has the right width. llvm-svn: 53469
* add a new getIntTypeSizeInBits method.Chris Lattner2008-07-111-11/+12
| | | | llvm-svn: 53468
* rename "SInt" methods to "Int" in APValue.Chris Lattner2008-07-112-7/+6
| | | | llvm-svn: 53467
* make the new evaluator avoid conversions APValue<->APSInt in some cases.Chris Lattner2008-07-111-67/+51
| | | | | | Add some accessors to APValue. llvm-svn: 53465
* Refactored auditor interface within GRExprEngine and GRCoreEngine to use a ↵Ted Kremenek2008-07-112-44/+91
| | | | | | "batch auditor" to dispatch to specialized auditors instead of having a separate vector for each audited Expr*. This not only provides a much cleaner implementation, but also allows us to install auditors for any expression. llvm-svn: 53464
* rearrange some code, no functionality changes.Chris Lattner2008-07-111-85/+98
| | | | llvm-svn: 53463
* Patch by Csaba Hruska and Peter Neumark:Ted Kremenek2008-07-101-21/+60
| | | | | | "adds support (de)serialization (from)to (in memory) buffer." llvm-svn: 53425
* Refactored most of the "Store" piece of ValueState into a Store type. TheTed Kremenek2008-07-109-233/+296
| | | | | | | | | current store implementation is now encapsulated by BasicStore. These changes prompted some long due constification of ValueState. Much of the diffs in this patch include adding "const" qualifiers. llvm-svn: 53423
* Remove unused class AnnotatedPath.Ted Kremenek2008-07-101-1/+0
| | | | llvm-svn: 53413
* Move some environment methods from ValueState/ValueStateManager to ↵Ted Kremenek2008-07-102-127/+95
| | | | | | Environment/EnvironmentManager. llvm-svn: 53412
* Simplify the parser a bit by looking at the next token without consuming it ↵Argyrios Kyrtzidis2008-07-093-100/+47
| | | | | | | | | (by Preprocessor::LookNext): -Remove ParseExpressionWithLeadingIdentifier and ParseAssignmentExprWithLeadingIdentifier. -Separate ParseLabeledStatement from ParseIdentifierStatement. llvm-svn: 53376
* Add Preprocessor::LookNext method, which implements an efficient way to ↵Argyrios Kyrtzidis2008-07-091-0/+26
| | | | | | 'take a peek' at the next token without consuming it. llvm-svn: 53375
* Remove getParentMap() from GRExprEngine.Ted Kremenek2008-07-091-13/+0
| | | | llvm-svn: 53343
* Fix PR2519: correctly handle CFDictionaryCreate.Ted Kremenek2008-07-091-9/+31
| | | | llvm-svn: 53334
* Extend va_start checking to include __builtin_stdarg_start.Ted Kremenek2008-07-091-0/+1
| | | | llvm-svn: 53332
* Codegen support for __builtin_stdarg_startChris Lattner2008-07-091-2/+3
| | | | llvm-svn: 53329
* Add parser support for __builtin_stdarg_start, PR2531Chris Lattner2008-07-091-1/+2
| | | | llvm-svn: 53328
OpenPOWER on IntegriCloud