]> granicus.if.org Git - clang/log
clang
16 years agoAdded test case.
Ted Kremenek [Fri, 18 Jul 2008 20:48:10 +0000 (20:48 +0000)]
Added test case.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53770 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoUpdate checker build.
Ted Kremenek [Fri, 18 Jul 2008 20:22:22 +0000 (20:22 +0000)]
Update checker build.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53769 91177308-0d34-0410-b5e6-96231b3b80d8

16 years ago"currentHandler" is a nullary selector
Ted Kremenek [Fri, 18 Jul 2008 18:14:26 +0000 (18:14 +0000)]
"currentHandler" is a nullary selector

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53763 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoFix caching bug.
Ted Kremenek [Fri, 18 Jul 2008 17:39:56 +0000 (17:39 +0000)]
Fix caching bug.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53759 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoAdd panic support for NSAssertionHandler.
Ted Kremenek [Fri, 18 Jul 2008 17:24:20 +0000 (17:24 +0000)]
Add panic support for NSAssertionHandler.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53758 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoPrevent clang from emitting output when input has errors
Daniel Dunbar [Fri, 18 Jul 2008 16:38:05 +0000 (16:38 +0000)]
Prevent clang from emitting output when input has errors
 + test case
<rdar://problem/6080040>
http://llvm.org/bugs/show_bug.cgi?id=2280

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53756 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoAdd panic function.
Ted Kremenek [Fri, 18 Jul 2008 16:28:33 +0000 (16:28 +0000)]
Add panic function.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53755 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoFix 80 col violation
Ted Kremenek [Fri, 18 Jul 2008 15:59:33 +0000 (15:59 +0000)]
Fix 80 col violation

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53754 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoFix regression by explicitly checking if we are negating a SymIntConstantVal.
Ted Kremenek [Fri, 18 Jul 2008 15:54:51 +0000 (15:54 +0000)]
Fix regression by explicitly checking if we are negating a SymIntConstantVal.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53753 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoImprove path-sensitivity when using the logical not operator.
Ted Kremenek [Fri, 18 Jul 2008 15:46:06 +0000 (15:46 +0000)]
Improve path-sensitivity when using the logical not operator.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53752 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoRenamed deterministic EvalBinOp to DetermEvalBinOpNN. This name mangling is unfortun...
Ted Kremenek [Fri, 18 Jul 2008 15:27:58 +0000 (15:27 +0000)]
Renamed deterministic EvalBinOp to DetermEvalBinOpNN.  This name mangling is unfortunately needed because virtual methods with the same name can be hidden by subclasses.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53751 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoCreated ValueStateSet class to manage the creation of multiple states by a method.
Ted Kremenek [Fri, 18 Jul 2008 05:53:58 +0000 (05:53 +0000)]
Created ValueStateSet class to manage the creation of multiple states by a method.
Modified the new EvalBinOpNN to generate states instead of nodes.  This is a much simpler interface and is what clients will want to do.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53750 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoRemove dead method.
Ted Kremenek [Fri, 18 Jul 2008 04:55:41 +0000 (04:55 +0000)]
Remove dead method.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53748 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoAdd support shufpd
Mon P Wang [Fri, 18 Jul 2008 00:14:09 +0000 (00:14 +0000)]
Add support shufpd

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53747 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoUpdate signature of EvalAssume.
Ted Kremenek [Thu, 17 Jul 2008 23:33:10 +0000 (23:33 +0000)]
Update signature of EvalAssume.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53745 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoProvide static methods in BinaryOperator to determine if an opcode is an equality...
Ted Kremenek [Thu, 17 Jul 2008 23:24:36 +0000 (23:24 +0000)]
Provide static methods in BinaryOperator to determine if an opcode is an equality opcode, a relational opcode, or a logical opcode.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53744 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoMove GRTransferFunc* into ValueStateManager, and move the assumption logic there...
Ted Kremenek [Thu, 17 Jul 2008 23:15:45 +0000 (23:15 +0000)]
Move GRTransferFunc* into ValueStateManager, and move the assumption logic there as well.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53743 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoAdded headers
Ted Kremenek [Thu, 17 Jul 2008 22:41:39 +0000 (22:41 +0000)]
Added headers

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53742 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoRemove redundant logic.
Ted Kremenek [Thu, 17 Jul 2008 21:36:43 +0000 (21:36 +0000)]
Remove redundant logic.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53740 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoBegin major changes to EvalXXX methods in GRTransferFuncs. Currently some of the...
Ted Kremenek [Thu, 17 Jul 2008 21:27:31 +0000 (21:27 +0000)]
Begin major changes to EvalXXX methods in GRTransferFuncs.  Currently some of the methods only return an RVal; we want them to be able to create an arbitrary number of states.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53739 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoFix for codegen crash on multibit bool bitfield initialization
Daniel Dunbar [Thu, 17 Jul 2008 21:07:48 +0000 (21:07 +0000)]
Fix for codegen crash on multibit bool bitfield initialization
<rdar://problem/6078606>

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53737 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoMoved RemoveDeadBindings logic for the contents of 'Store' to a virtual RemoveDeadBin...
Ted Kremenek [Thu, 17 Jul 2008 18:38:48 +0000 (18:38 +0000)]
Moved RemoveDeadBindings logic for the contents of 'Store' to a virtual RemoveDeadBindings method in StoreManager.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53726 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoWe now build universal binaries of the checker.
Ted Kremenek [Thu, 17 Jul 2008 18:35:12 +0000 (18:35 +0000)]
We now build universal binaries of the checker.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53725 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoUnify ctx_iterator/ctx_begin()/ctx_end() and iterator/begin()/end() so that a single...
Argyrios Kyrtzidis [Thu, 17 Jul 2008 17:49:50 +0000 (17:49 +0000)]
Unify ctx_iterator/ctx_begin()/ctx_end() and iterator/begin()/end() so that 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().

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53724 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoRewriteObjC::SynthMessageExpr(): Fix super rewrite (a fairly recent regression).
Steve Naroff [Wed, 16 Jul 2008 22:35:27 +0000 (22:35 +0000)]
RewriteObjC::SynthMessageExpr(): Fix super rewrite (a fairly recent regression).
Fixes <rdar://problem/6046663> clang ObjC rewriter: Regression in handling of 'super' in latest build.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53703 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoWhen in C++, make EnumConstant names hide tag names in the same scope, instead of...
Argyrios Kyrtzidis [Wed, 16 Jul 2008 21:01:53 +0000 (21:01 +0000)]
When in C++, make EnumConstant names hide tag names in the same scope, instead of colliding with them.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53702 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoRemove a FIXME from RewriteObjC::RewriteObjCSynchronizedStmt().
Steve Naroff [Wed, 16 Jul 2008 19:47:39 +0000 (19:47 +0000)]
Remove a FIXME from RewriteObjC::RewriteObjCSynchronizedStmt().

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53696 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoRewriteObjC::Initialize(): add function decls used by @synchronized.
Steve Naroff [Wed, 16 Jul 2008 18:58:11 +0000 (18:58 +0000)]
RewriteObjC::Initialize(): add function decls used by @synchronized.
This fixes <rdar://problem/6040143> clang ObjC rewriter: @synchronized keyword inserts undeclared objc functions.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53695 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoTwo fixes:
Steve Naroff [Wed, 16 Jul 2008 18:22:22 +0000 (18:22 +0000)]
Two fixes:
- 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.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53694 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoRewriteObjC::RewriteObjCTryStmt():Don't synthesize a catch begin if there are 0 catch...
Steve Naroff [Wed, 16 Jul 2008 15:31:30 +0000 (15:31 +0000)]
RewriteObjC::RewriteObjCTryStmt():Don't synthesize a catch begin if there are 0 catch clauses.
This fixes <rdar://problem/5987211> clang ObjC rewriter: @try / @finally block produces unbalanced output.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53679 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoTeach RewriteObjC::RewriteObjCMethodDecl() to deal with pointer to function return...
Steve Naroff [Wed, 16 Jul 2008 14:40:40 +0000 (14:40 +0000)]
Teach RewriteObjC::RewriteObjCMethodDecl() to deal with pointer to function return types.
This fixes <rdar://problem/6034961> clang ObjC rewriter: rewriting methods with function pointer return values does not work

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53678 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoWhen checking for name collision between a tag and a previously defined namespace...
Argyrios Kyrtzidis [Wed, 16 Jul 2008 07:45:46 +0000 (07:45 +0000)]
When checking for name collision between a tag and a previously defined 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.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53667 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoAdd 'this' in the comments of Parser::ParseCastExpression to indicate that it is...
Argyrios Kyrtzidis [Wed, 16 Jul 2008 07:23:27 +0000 (07:23 +0000)]
Add 'this' in the comments of Parser::ParseCastExpression to indicate that it is handled.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53665 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoUpdated latest checker build.
Ted Kremenek [Wed, 16 Jul 2008 02:39:15 +0000 (02:39 +0000)]
Updated latest checker build.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53664 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoFix regression introduced by http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week...
Ted Kremenek [Wed, 16 Jul 2008 00:23:49 +0000 (00:23 +0000)]
Fix regression introduced by 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.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53659 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoHave scan-build control default analyses.
Ted Kremenek [Tue, 15 Jul 2008 23:41:32 +0000 (23:41 +0000)]
Have scan-build control default analyses.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53654 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoFix transfer function logic in GRSimpleVals for integer casts: only support casts...
Ted Kremenek [Tue, 15 Jul 2008 23:17:54 +0000 (23:17 +0000)]
Fix transfer function logic in GRSimpleVals for integer casts: only support casts from integers to integers.
This fixes a crash reported by Anders Carlsson!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53649 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoAdd -DIBOutlet=__attribute__((iboutlet)) to analyzer arguments.
Ted Kremenek [Tue, 15 Jul 2008 23:09:14 +0000 (23:09 +0000)]
Add -DIBOutlet=__attribute__((iboutlet)) to analyzer arguments.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53648 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoFor the MissingDealloc check, don't treat IBOutlet ivars as being needed to be released
Ted Kremenek [Tue, 15 Jul 2008 23:04:27 +0000 (23:04 +0000)]
For the MissingDealloc check, don't treat IBOutlet ivars as being needed to be released

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53647 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoMake iboutlet diagnostic lowercase
Ted Kremenek [Tue, 15 Jul 2008 22:39:36 +0000 (22:39 +0000)]
Make iboutlet diagnostic lowercase

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53646 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoUse lowercase of attribute iboutlet to not conflict with the macro IBOutlet
Ted Kremenek [Tue, 15 Jul 2008 22:38:34 +0000 (22:38 +0000)]
Use lowercase of attribute iboutlet to not conflict with the macro IBOutlet

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53645 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoAdded parsing/sema support for __attribute__ ((IBOutlet)), a clang-specific attribute...
Ted Kremenek [Tue, 15 Jul 2008 22:26:48 +0000 (22:26 +0000)]
Added parsing/sema support for __attribute__ ((IBOutlet)), a clang-specific attribute that the static analyzer will use to recognize what ivars are IBOutlets.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53644 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoAdded --status-bugs option to scan-build. By default, the exit status of
Ted Kremenek [Tue, 15 Jul 2008 22:03:09 +0000 (22:03 +0000)]
Added --status-bugs option to scan-build. By default, the exit status of
scan-build is the same as the exit status of the executed build command. With
this option, the exit status of scan-build is 1 if the analyzer flagged any
bugs, and 0 otherwise.

This addresses: <rdar://problem/6075320>

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53642 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoPer Sam Bishop's excellent suggestion, use "system" instead of backticks to invoke...
Ted Kremenek [Tue, 15 Jul 2008 20:18:21 +0000 (20:18 +0000)]
Per Sam Bishop's excellent suggestion, use "system" instead of backticks to invoke sub-commands used by scan-build.  This avoids meta-character translation issues caused by a shell subprocess.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53640 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoQuote file names to better handle paths with spaces.
Ted Kremenek [Tue, 15 Jul 2008 18:28:16 +0000 (18:28 +0000)]
Quote file names to better handle paths with spaces.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53635 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoIncremented latest checker build.
Ted Kremenek [Tue, 15 Jul 2008 18:15:51 +0000 (18:15 +0000)]
Incremented latest checker build.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53631 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoDistinguish between dead stores and dead initializations.
Ted Kremenek [Tue, 15 Jul 2008 18:06:32 +0000 (18:06 +0000)]
Distinguish between dead stores and dead initializations.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53628 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoisRetain() and isRelease() now only returns true if "Retain"/"Release" appears in...
Ted Kremenek [Tue, 15 Jul 2008 17:43:41 +0000 (17:43 +0000)]
isRetain() and isRelease() now only returns true if "Retain"/"Release" appears in the suffix of a function's name.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53621 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoscan-build now propagates up the exit status of the build command.
Ted Kremenek [Tue, 15 Jul 2008 17:09:28 +0000 (17:09 +0000)]
scan-build now propagates up the exit status of the build command.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53620 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoDo not enable -warn-objc-missing-dealloc by default.
Ted Kremenek [Tue, 15 Jul 2008 17:06:44 +0000 (17:06 +0000)]
Do not enable -warn-objc-missing-dealloc by default.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53619 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoscan-build now interrogates clang for a list of available analyses, and presents
Ted Kremenek [Tue, 15 Jul 2008 17:06:13 +0000 (17:06 +0000)]
scan-build now interrogates clang for a list of available analyses, and presents
these as options to the user of scan-build.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53618 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoSupport retain/release tracking for CoreGraphics (CGxxxRef) objects.
Ted Kremenek [Tue, 15 Jul 2008 16:50:12 +0000 (16:50 +0000)]
Support retain/release tracking for CoreGraphics (CGxxxRef) objects.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53617 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoUpdate radar component to file static analyzer bugs against.
Ted Kremenek [Tue, 15 Jul 2008 03:51:09 +0000 (03:51 +0000)]
Update radar component to file static analyzer bugs against.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53589 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoRemoved disclaimer about checker-36, which is old news.
Ted Kremenek [Tue, 15 Jul 2008 03:49:15 +0000 (03:49 +0000)]
Removed disclaimer about checker-36, which is old news.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53588 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoProvide an "Analysis Scope" for Analyses so checks can either be run on code declarat...
Ted Kremenek [Tue, 15 Jul 2008 00:46:02 +0000 (00:46 +0000)]
Provide an "Analysis Scope" for Analyses so checks can either be run on code declarations (bodies) or Objective-C @implementation blocks.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53584 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoRe-enable missing -dealloc check.
Ted Kremenek [Mon, 14 Jul 2008 23:56:31 +0000 (23:56 +0000)]
Re-enable missing -dealloc check.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53578 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoUpdate Xcode project.
Ted Kremenek [Mon, 14 Jul 2008 23:42:26 +0000 (23:42 +0000)]
Update Xcode project.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53577 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoUsing new clang option to invoke the type-signature check of Objective-C instance...
Ted Kremenek [Mon, 14 Jul 2008 23:41:49 +0000 (23:41 +0000)]
Using new clang option to invoke the type-signature check of Objective-C instance methods.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53576 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoBreak off declaration of Analysis enum into Analyses.def. The driver options in
Ted Kremenek [Mon, 14 Jul 2008 23:41:13 +0000 (23:41 +0000)]
Break off declaration of Analysis enum into Analyses.def. The driver options in
clang.cpp now #include these definitions to create the command line options, and
AnalysisConsumer #includes this file to generate the switch statement to create
actions.

Renamed -check-objc-methodsigs to -warn-objc-methodsigs.

The "missing -dealloc" check is now optional: -warn-objc-missing-dealloc

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53575 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoRefactor Dead Stores error reporting to use the simplified BugReporter::EmitBasicRepo...
Ted Kremenek [Mon, 14 Jul 2008 20:56:04 +0000 (20:56 +0000)]
Refactor Dead Stores error reporting to use the simplified BugReporter::EmitBasicReport interface.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53573 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agohttp://llvm.org/bugs/show_bug.cgi?id=2523
Nate Begeman [Mon, 14 Jul 2008 18:02:46 +0000 (18:02 +0000)]
http://llvm.org/bugs/show_bug.cgi?id=2523

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.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53565 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoAdded method "EmitBasicReport" to BugReporter to simplify the emission of simple...
Ted Kremenek [Mon, 14 Jul 2008 17:40:50 +0000 (17:40 +0000)]
Added method "EmitBasicReport" to BugReporter to simplify the emission of simple bug diagnostics.

Refactored error reporting in CheckObjCDealloc and CheckObjCInstMethSignature to use this new bug reporting interface (major code simplification).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53560 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoremove CGObjCEtoile until it compiles.
Chris Lattner [Mon, 14 Jul 2008 16:54:05 +0000 (16:54 +0000)]
remove CGObjCEtoile until it compiles.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53552 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoFix minor mistake in clang checkout instructions.
Ted Kremenek [Mon, 14 Jul 2008 14:40:22 +0000 (14:40 +0000)]
Fix minor mistake in clang checkout instructions.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53550 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agotest commit. Remove previously added line.
Cedric Venet [Sun, 13 Jul 2008 19:42:06 +0000 (19:42 +0000)]
test commit. Remove previously added line.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53524 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agotest commit. Add a blank line.
Cedric Venet [Sun, 13 Jul 2008 19:34:37 +0000 (19:34 +0000)]
test commit. Add a blank line.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53522 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoUse of NextToken() makes ParseIdentifierStatement unnecessary.
Argyrios Kyrtzidis [Sat, 12 Jul 2008 21:04:42 +0000 (21:04 +0000)]
Use of NextToken() makes ParseIdentifierStatement unnecessary.
Simplify the parser by removing Parser::ParseIdentifierStatement.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53520 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoConvert CRLF -> LF line endings.
Argyrios Kyrtzidis [Sat, 12 Jul 2008 20:28:04 +0000 (20:28 +0000)]
Convert CRLF -> LF line endings.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53519 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoAdded two new files to VC++ project.
Cedric Venet [Sat, 12 Jul 2008 19:24:14 +0000 (19:24 +0000)]
Added two new files to VC++ project.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53518 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoexpand casts to handle what isIntegerConstantExpr handles.
Chris Lattner [Sat, 12 Jul 2008 01:15:53 +0000 (01:15 +0000)]
expand casts to handle what isIntegerConstantExpr handles.
Casts from pointers remain a problem. :)

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53501 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoAdd support for __builtin_type_compatible_p, enums, etc.
Chris Lattner [Sat, 12 Jul 2008 00:38:25 +0000 (00:38 +0000)]
Add support for __builtin_type_compatible_p, enums, etc.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53500 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agostart remembering diagnostics for various cases, add some missing
Chris Lattner [Sat, 12 Jul 2008 00:14:42 +0000 (00:14 +0000)]
start remembering diagnostics for various cases, add some missing
code.  Switch to Eli's getIntWidth method.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53499 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoUpdated latest checker build. This build includes the new check for type-compatibili...
Ted Kremenek [Fri, 11 Jul 2008 23:29:43 +0000 (23:29 +0000)]
Updated latest checker build.  This build includes the new check for type-compatibility of the return types of ObjC methods.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53496 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoTidy up error message.
Ted Kremenek [Fri, 11 Jul 2008 23:17:01 +0000 (23:17 +0000)]
Tidy up error message.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53493 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoAdd CSS for word wrapping of long message bubbles.
Ted Kremenek [Fri, 11 Jul 2008 23:13:22 +0000 (23:13 +0000)]
Add CSS for word wrapping of long message bubbles.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53492 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoProvide a structure for passing down 'is evaluated' and passing up
Chris Lattner [Fri, 11 Jul 2008 22:52:41 +0000 (22:52 +0000)]
Provide a structure for passing down 'is evaluated' and passing up
diagnosic+loc info for i-c-e evaluation.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53490 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoUpdate Xcode project.
Ted Kremenek [Fri, 11 Jul 2008 22:48:58 +0000 (22:48 +0000)]
Update Xcode project.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53488 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoRun by default: -check-objc-methodsigs
Ted Kremenek [Fri, 11 Jul 2008 22:41:43 +0000 (22:41 +0000)]
Run by default: -check-objc-methodsigs

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53483 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoAdd new check: -check-objc-methodsigs. This check scans methods in
Ted Kremenek [Fri, 11 Jul 2008 22:40:47 +0000 (22:40 +0000)]
Add new check: -check-objc-methodsigs. This check scans methods in
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.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53482 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agosimplify some code a bit.
Chris Lattner [Fri, 11 Jul 2008 22:15:16 +0000 (22:15 +0000)]
simplify some code a bit.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53477 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoshare code between sizeof(expr) and sizeof(type)
Chris Lattner [Fri, 11 Jul 2008 21:24:13 +0000 (21:24 +0000)]
share code between sizeof(expr) and sizeof(type)

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53475 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoFix comment.
Ted Kremenek [Fri, 11 Jul 2008 20:53:14 +0000 (20:53 +0000)]
Fix comment.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53473 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoimplement support for __extension__, make sure the result of a
Chris Lattner [Fri, 11 Jul 2008 19:29:32 +0000 (19:29 +0000)]
implement support for __extension__, make sure the result of a
comparison has the right width.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53469 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoadd a new getIntTypeSizeInBits method.
Chris Lattner [Fri, 11 Jul 2008 19:24:49 +0000 (19:24 +0000)]
add a new getIntTypeSizeInBits method.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53468 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agorename "SInt" methods to "Int" in APValue.
Chris Lattner [Fri, 11 Jul 2008 19:19:21 +0000 (19:19 +0000)]
rename "SInt" methods to "Int" in APValue.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53467 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoscan-build now also prints the HTML directory reports were emitted to at the end...
Ted Kremenek [Fri, 11 Jul 2008 19:15:05 +0000 (19:15 +0000)]
scan-build now also prints the HTML directory reports were emitted to at the end of the build.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53466 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agomake the new evaluator avoid conversions APValue<->APSInt in some cases.
Chris Lattner [Fri, 11 Jul 2008 19:10:17 +0000 (19:10 +0000)]
make the new evaluator avoid conversions APValue<->APSInt in some cases.
Add some accessors to APValue.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53465 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoRefactored auditor interface within GRExprEngine and GRCoreEngine to use a "batch...
Ted Kremenek [Fri, 11 Jul 2008 18:37:32 +0000 (18:37 +0000)]
Refactored auditor interface within GRExprEngine and GRCoreEngine to use a "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.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53464 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agorearrange some code, no functionality changes.
Chris Lattner [Fri, 11 Jul 2008 18:11:29 +0000 (18:11 +0000)]
rearrange some code, no functionality changes.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53463 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoPatch by Csaba Hruska and Peter Neumark:
Ted Kremenek [Thu, 10 Jul 2008 22:10:48 +0000 (22:10 +0000)]
Patch by Csaba Hruska and Peter Neumark:

  "adds support (de)serialization (from)to (in memory) buffer."

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53425 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoUpdated Xcode project.
Ted Kremenek [Thu, 10 Jul 2008 22:04:37 +0000 (22:04 +0000)]
Updated Xcode project.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53424 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoRefactored most of the "Store" piece of ValueState into a Store type. The
Ted Kremenek [Thu, 10 Jul 2008 22:03:41 +0000 (22:03 +0000)]
Refactored most of the "Store" piece of ValueState into a Store type. The
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.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53423 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoRemove unused class AnnotatedPath.
Ted Kremenek [Thu, 10 Jul 2008 17:25:03 +0000 (17:25 +0000)]
Remove unused class AnnotatedPath.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53413 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoMove some environment methods from ValueState/ValueStateManager to Environment/Enviro...
Ted Kremenek [Thu, 10 Jul 2008 17:19:18 +0000 (17:19 +0000)]
Move some environment methods from ValueState/ValueStateManager to Environment/EnvironmentManager.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53412 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoAdd a new distcc status page, which is currently empty and not
Chris Lattner [Thu, 10 Jul 2008 05:32:43 +0000 (05:32 +0000)]
Add a new distcc status page, which is currently empty and not
linked from anywhere. It will be linked when content is filled in.

Page by Csaba Hruska!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53392 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoAdd an accessor, patch by Csaba Hruska.
Chris Lattner [Thu, 10 Jul 2008 05:26:30 +0000 (05:26 +0000)]
Add an accessor, patch by Csaba Hruska.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53391 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoSimplify the parser a bit by looking at the next token without consuming it (by Prepr...
Argyrios Kyrtzidis [Wed, 9 Jul 2008 22:53:07 +0000 (22:53 +0000)]
Simplify the parser a bit by looking at the next token without consuming it (by Preprocessor::LookNext):

-Remove ParseExpressionWithLeadingIdentifier and ParseAssignmentExprWithLeadingIdentifier.
-Separate ParseLabeledStatement from ParseIdentifierStatement.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53376 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoAdd Preprocessor::LookNext method, which implements an efficient way to 'take a peek...
Argyrios Kyrtzidis [Wed, 9 Jul 2008 22:46:46 +0000 (22:46 +0000)]
Add Preprocessor::LookNext method, which implements an efficient way to 'take a peek' at the next token without consuming it.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53375 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoMore information on filing bug reports.
Ted Kremenek [Wed, 9 Jul 2008 22:20:56 +0000 (22:20 +0000)]
More information on filing bug reports.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53373 91177308-0d34-0410-b5e6-96231b3b80d8

16 years agoRemove getParentMap() from GRExprEngine.
Ted Kremenek [Wed, 9 Jul 2008 19:46:42 +0000 (19:46 +0000)]
Remove getParentMap() from GRExprEngine.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53343 91177308-0d34-0410-b5e6-96231b3b80d8