Ted Kremenek
							
						 
						
							 
							
							
							
							
								
							
							
								f0673e4eb6 
								
							 
						 
						
							
							
								
								Change implementation of NSError** coding-style check to be invoked at the end of the retain/release analysis.  
							
							 
							
							... 
							
							
							
							llvm-svn: 56312 
							
						 
						
							2008-09-18 21:25:13 +00:00  
						
					 
				
					
						
							
							
								 
								Ted Kremenek
							
						 
						
							 
							
							
							
							
								
							
							
								5043680da4 
								
							 
						 
						
							
							
								
								Remove dead method.  
							
							 
							
							... 
							
							
							
							llvm-svn: 55526 
							
						 
						
							2008-08-29 03:55:31 +00:00  
						
					 
				
					
						
							
							
								 
								Ted Kremenek
							
						 
						
							 
							
							
							
							
								
							
							
								5ab5a1b578 
								
							 
						 
						
							
							
								
								Rename ValueState -> GRState.  
							
							 
							
							... 
							
							
							
							Rename ValueStateManager -> GRStateManager.
llvm-svn: 54721 
							
						 
						
							2008-08-13 04:27:00 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Dunbar
							
						 
						
							 
							
							
							
							
								
							
							
								6e8aa537f8 
								
							 
						 
						
							
							
								
								More #include cleaning  
							
							 
							
							... 
							
							
							
							- Drop {Decl.h,DeclObjC.h,IdentifierTable.h} from Expr.h
 - Moved Sema::getCurMethodDecl() out of line (dependent on
   ObjCMethodDecl via dyn_cast).
llvm-svn: 54629 
							
						 
						
							2008-08-11 05:35:13 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								574dee6cac 
								
							 
						 
						
							
							
								
								change more instances of QualType::getCanonicalType to call  
							
							 
							
							... 
							
							
							
							ASTContext::getCanonicalType instead (PR2189)
llvm-svn: 54105 
							
						 
						
							2008-07-26 22:17:49 +00:00  
						
					 
				
					
						
							
							
								 
								Ted Kremenek
							
						 
						
							 
							
							
							
							
								
							
							
								1f352db96a 
								
							 
						 
						
							
							
								
								Moved registration of basic path-sensitive checks from GRSimpleVals.cpp to GRExprEngineInternalChecks.cpp.  
							
							 
							
							... 
							
							
							
							llvm-svn: 53909 
							
						 
						
							2008-07-22 16:21:24 +00:00  
						
					 
				
					
						
							
							
								 
								Ted Kremenek
							
						 
						
							 
							
							
							
							
								
							
							
								98f6e582f2 
								
							 
						 
						
							
							
								
								Added path-sensitive checking for null pointer values passed to function arguments marked nonnull.  
							
							 
							
							... 
							
							
							
							This implements <rdar://problem/6069935>
llvm-svn: 53891 
							
						 
						
							2008-07-22 00:46:16 +00:00  
						
					 
				
					
						
							
							
								 
								Ted Kremenek
							
						 
						
							 
							
							
							
							
								
							
							
								a7b8ffb05b 
								
							 
						 
						
							
							
								
								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.
llvm-svn: 53423 
							
						 
						
							2008-07-10 22:03:41 +00:00  
						
					 
				
					
						
							
							
								 
								Ted Kremenek
							
						 
						
							 
							
							
							
							
								
							
							
								cf1ab19086 
								
							 
						 
						
							
							
								
								Added a simple static analysis check to look for improper uses of CFCreateNumber.  
							
							 
							
							... 
							
							
							
							llvm-svn: 52799 
							
						 
						
							2008-06-26 23:59:48 +00:00  
						
					 
				
					
						
							
							
								 
								Steve Naroff
							
						 
						
							 
							
							
							
							
								
							
							
								021ca18bb5 
								
							 
						 
						
							
							
								
								- Move ObjC Expresssion AST's from Expr.h => ExprObjC.h  
							
							 
							
							... 
							
							
							
							- #include ExprObjC.h in many places
llvm-svn: 51703 
							
						 
						
							2008-05-29 21:12:08 +00:00  
						
					 
				
					
						
							
							
								 
								Nuno Lopes
							
						 
						
							 
							
							
							
							
								
							
							
								652eaab03c 
								
							 
						 
						
							
							
								
								fix warning with gcc 4.1 (ptr to bool convertion)  
							
							 
							
							... 
							
							
							
							llvm-svn: 51324 
							
						 
						
							2008-05-20 17:33:56 +00:00  
						
					 
				
					
						
							
							
								 
								Ted Kremenek
							
						 
						
							 
							
							
							
							
								
							
							
								fabfb4677d 
								
							 
						 
						
							
							
								
								Do not highlight bogus ranges for leaks.  
							
							 
							
							... 
							
							
							
							llvm-svn: 50549 
							
						 
						
							2008-05-01 22:50:36 +00:00  
						
					 
				
					
						
							
							
								 
								Ted Kremenek
							
						 
						
							 
							
							
							
							
								
							
							
								f20e2285c9 
								
							 
						 
						
							
							
								
								More cleanups with ObjCQualifiedIdType in the static analyzer.  
							
							 
							
							... 
							
							
							
							llvm-svn: 50503 
							
						 
						
							2008-04-30 22:48:21 +00:00  
						
					 
				
					
						
							
							
								 
								Ted Kremenek
							
						 
						
							 
							
							
							
							
								
							
							
								20d8006e93 
								
							 
						 
						
							
							
								
								Teach more of the static analyzer about ObjCQualifiedIdType.  
							
							 
							
							... 
							
							
							
							llvm-svn: 50494 
							
						 
						
							2008-04-30 20:17:27 +00:00  
						
					 
				
					
						
							
							
								 
								Ted Kremenek
							
						 
						
							 
							
							
							
							
								
							
							
								575f24ef73 
								
							 
						 
						
							
							
								
								Gracefully handle when the receiver of a message expression is not a pointer type.  
							
							 
							
							... 
							
							
							
							llvm-svn: 49959 
							
						 
						
							2008-04-19 19:12:50 +00:00  
						
					 
				
					
						
							
							
								 
								Ted Kremenek
							
						 
						
							 
							
							
							
							
								
							
							
								31484b2477 
								
							 
						 
						
							
							
								
								Generalize caching mechanism for bugs reports.  Now individual BugTypes  
							
							 
							
							... 
							
							
							
							can decide the policy on how to cache related bugs.  This allows us to
properly to handle warning about multiple leaks in the same location in the
ref count checker (not yet done).
llvm-svn: 49918 
							
						 
						
							2008-04-18 20:54:29 +00:00  
						
					 
				
					
						
							
							
								 
								Ted Kremenek
							
						 
						
							 
							
							
							
							
								
							
							
								cffe635699 
								
							 
						 
						
							
							
								
								Simplified internal logic of BugReporter, consolidating EmitWarning and  
							
							 
							
							... 
							
							
							
							EmitPathWarning into one method.  We now properly handle emitting warnings
without a PathDiagnosticClient when the warning does not involve a particular
statement.
llvm-svn: 49884 
							
						 
						
							2008-04-18 01:56:37 +00:00  
						
					 
				
					
						
							
							
								 
								Ted Kremenek
							
						 
						
							 
							
							
							
							
								
							
							
								7e15130dc9 
								
							 
						 
						
							
							
								
								Hooked up the dead-store checker to the BugReporter interface.  Now dead-store  
							
							 
							
							... 
							
							
							
							warnings are emitted as part of the warnings registered by GRSimpleVals.
llvm-svn: 49658 
							
						 
						
							2008-04-14 17:39:48 +00:00  
						
					 
				
					
						
							
							
								 
								Ted Kremenek
							
						 
						
							 
							
							
							
							
								
							
							
								83744ddbd9 
								
							 
						 
						
							
							
								
								Fixed regressions in error reporting due to copy-paste errors (using the "begin"  
							
							 
							
							... 
							
							
							
							iterator instead of "end") and not implementing "getDescription()" for Nil
argument checks.
llvm-svn: 49485 
							
						 
						
							2008-04-10 16:05:13 +00:00  
						
					 
				
					
						
							
							
								 
								Ted Kremenek
							
						 
						
							 
							
							
							
							
								
							
							
								7acc3a36ef 
								
							 
						 
						
							
							
								
								Major refactoring/cleanup of GRExprEngine, ExplodedGraph, and BugReporter.  
							
							 
							
							... 
							
							
							
							Bugs are now reported using a combination of "BugType" (previously
BugDescription) and Bug "BugReport" objects, which are fed to BugReporter (which
generates PathDiagnostics). This provides a far more modular way of registering
bug types and plugging in diagnostics.
GRExprEngine now owns its copy of GRCoreEngine, and is not owned by the
ExplodedGraph.
ExplodedGraph is no longer templated on the "checker", but instead on the state
contained in the nodes.
llvm-svn: 49453 
							
						 
						
							2008-04-09 21:41:14 +00:00  
						
					 
				
					
						
							
							
								 
								Ted Kremenek
							
						 
						
							 
							
							
							
							
								
							
							
								d1a2efadba 
								
							 
						 
						
							
							
								
								Added investigate patch for an occasionally failing assertion (heisenbug?)  
							
							 
							
							... 
							
							
							
							llvm-svn: 49193 
							
						 
						
							2008-04-03 21:44:24 +00:00  
						
					 
				
					
						
							
							
								 
								Ted Kremenek
							
						 
						
							 
							
							
							
							
								
							
							
								cb2dc8eca5 
								
							 
						 
						
							
							
								
								Hooked up GRSimpleAPICheck and the simple Objective-C Foundation checks to use  
							
							 
							
							... 
							
							
							
							the new BugReporter interface.
llvm-svn: 49180 
							
						 
						
							2008-04-03 17:57:38 +00:00  
						
					 
				
					
						
							
							
								 
								Ted Kremenek
							
						 
						
							 
							
							
							
							
								
							
							
								c719424caa 
								
							 
						 
						
							
							
								
								Added skeleton checking for NSString's method initWithFormat: (do not pass nil).  This won't be useful in most cases right now  
							
							 
							
							... 
							
							
							
							because the analyzer isn't tracking expected types for an object, and [NSString alloc] just runs "id".
llvm-svn: 48917 
							
						 
						
							2008-03-28 16:09:38 +00:00  
						
					 
				
					
						
							
							
								 
								Ted Kremenek
							
						 
						
							 
							
							
							
							
								
							
							
								276278e5d2 
								
							 
						 
						
							
							
								
								Expanded NSString checking to check for nil for a few more methods.  
							
							 
							
							... 
							
							
							
							llvm-svn: 48898 
							
						 
						
							2008-03-27 22:05:32 +00:00  
						
					 
				
					
						
							
							
								 
								Ted Kremenek
							
						 
						
							 
							
							
							
							
								
							
							
								2e4e7ccb22 
								
							 
						 
						
							
							
								
								Add line SourceLocation to NSString checks.  
							
							 
							
							... 
							
							
							
							Added test case to test warning about passing 'nil' to NSString's compare: method.
llvm-svn: 48896 
							
						 
						
							2008-03-27 21:23:57 +00:00  
						
					 
				
					
						
							
							
								 
								Ted Kremenek
							
						 
						
							 
							
							
							
							
								
							
							
								27156c8c9f 
								
							 
						 
						
							
							
								
								Hooked up initial NSString interface checking to GRSimpleVals.  
							
							 
							
							... 
							
							
							
							llvm-svn: 48895 
							
						 
						
							2008-03-27 21:15:17 +00:00  
						
					 
				
					
						
							
							
								 
								Ted Kremenek
							
						 
						
							 
							
							
							
							
								
							
							
								a4d60b6de3 
								
							 
						 
						
							
							
								
								Add creation of BasicObjCFoundationChecks when running GRSimpleVals from the driver.  
							
							 
							
							... 
							
							
							
							llvm-svn: 48886 
							
						 
						
							2008-03-27 17:17:22 +00:00  
						
					 
				
					
						
							
							
								 
								Ted Kremenek
							
						 
						
							 
							
							
							
							
								
							
							
								c04149299c 
								
							 
						 
						
							
							
								
								Added "GRAuditor" and "GRSimpleAPICheck" interface to allow simple stateless checkers to be injected into the analyzer.  
							
							 
							
							... 
							
							
							
							Added "AnnotatedPath" class to record an annotated path that will be useful for inspecting paths.
Added some boilerplate code for simple checks of Apple's Foundation API.
llvm-svn: 48867 
							
						 
						
							2008-03-27 07:25:52 +00:00