llvm-project/clang/lib/Analysis
Douglas Gregor e711f7052e Add hook to add attributes to function declarations that we know
about, whether they are builtins or not. Use this to add the
appropriate "format" attribute to NSLog, NSLogv, asprintf, and
vasprintf, and to translate builtin attributes (from Builtins.def)
into actual attributes on the function declaration.

Use the "printf" format attribute on function declarations to
determine whether we should do format string checking, rather than
looking at an ad hoc list of builtins and "known" function names.

Be a bit more careful about when we consider a function a "builtin" in
C++.

llvm-svn: 64561
2009-02-14 18:57:46 +00:00
..
BasicConstraintManager.cpp Patch by Ben Laurie: 2009-02-14 17:08:39 +00:00
BasicObjCFoundationChecks.cpp Overhaul BugReporter interface and implementation. The new interface cleans up 2009-02-04 23:49:09 +00:00
BasicObjCFoundationChecks.h Overhaul BugReporter interface and implementation. The new interface cleans up 2009-02-04 23:49:09 +00:00
BasicStore.cpp Make SymbolicRegion subclass TypedRegion, for symbols usually have types, so 2009-02-05 06:57:29 +00:00
BasicValueFactory.cpp Rename SymbolID to SymbolRef. This is a precursor to some overhauling of the representation of symbolic values. 2008-12-05 02:27:51 +00:00
BugReporter.cpp BugReporter: Use llvm::raw_string_stream instead of std::ostringstream. 2009-02-10 23:56:07 +00:00
CFRefCount.cpp Added GRStateManager::scanReachableSymbols(), a method which scans the reachable 2009-02-14 03:16:10 +00:00
CMakeLists.txt CMake: Builds and installs clang binary and libs (no docs yet). It 2008-10-26 00:56:18 +00:00
CheckDeadStores.cpp Fix PR 2514: Do not flag dead initializations for variables initialized to a constant global variable. 2009-02-09 18:01:00 +00:00
CheckNSError.cpp Overhaul BugReporter interface and implementation. The new interface cleans up 2009-02-04 23:49:09 +00:00
CheckObjCDealloc.cpp Per PR 3187, disable the missing -dealloc check for classes that subclass SenTestCase. 2009-02-11 07:10:07 +00:00
CheckObjCInstMethSignature.cpp Rename NamedDecl::getName() to getNameAsString(). Replace a bunch of 2008-11-24 05:29:24 +00:00
CheckObjCUnusedIVars.cpp Rename NamedDecl::getName() to getNameAsString(). Replace a bunch of 2008-11-24 05:29:24 +00:00
Environment.cpp Added GRStateManager::scanReachableSymbols(), a method which scans the reachable 2009-02-14 03:16:10 +00:00
ExplodedGraph.cpp Overhaul BugReporter interface and implementation. The new interface cleans up 2009-02-04 23:49:09 +00:00
GRBlockCounter.cpp Updated clients of ImmutableMap::SlimFind to use ImmutableMap::lookup instead. 2008-07-07 16:21:19 +00:00
GRCoreEngine.cpp Add new GRWorkList class that uses two queues: 2008-12-16 22:13:33 +00:00
GRExprEngine.cpp Add hook to add attributes to function declarations that we know 2009-02-14 18:57:46 +00:00
GRExprEngineInternalChecks.cpp Tidy up bug descriptions. 2009-02-07 22:37:02 +00:00
GRSimpleVals.cpp Fix a crash in GRSimpleVals::EvalCast due not handling transparent unions. 2009-02-10 05:42:58 +00:00
GRSimpleVals.h Implement FIXME in GRExprEngine::VisitUnaryOperator() to handle implicit conversions caused by the '!' operator. This required adding some logic to GRSimpleVals to reason about nonloc::LocAsInteger SVals. This code appears to work fine, but it should eventually be cleaned up. 2008-11-15 00:20:05 +00:00
GRState.cpp Added GRStateManager::scanReachableSymbols(), a method which scans the reachable 2009-02-14 03:16:10 +00:00
GRTransferFuncs.cpp Static analyzer: 2009-02-14 01:43:44 +00:00
LiveVariables.cpp Fix horrible non-termination bug in LiveVariables. The issue was that 2009-01-30 21:35:30 +00:00
Makefile Make a major restructuring of the clang tree: introduce a top-level 2008-03-15 23:59:48 +00:00
MemRegion.cpp Create ElementRegion when the base is SymbolicRegion. This is like what we do 2009-02-06 08:44:27 +00:00
NOTES.TXT Add some notes for SCA. 2008-11-03 06:04:23 +00:00
PathDiagnostic.cpp Ensure that we assert if given an unhandled value. 2009-02-07 03:46:08 +00:00
RangeConstraintManager.cpp Patch by Ben Laurie: 2009-02-14 17:08:39 +00:00
RegionStore.cpp SymbolicRegions really have unknown sizes. 2009-02-06 08:51:30 +00:00
SVals.cpp Fix a couple bugs: 2009-01-30 00:08:43 +00:00
SimpleConstraintManager.cpp Patch by Ben Laurie: 2009-02-14 17:08:39 +00:00
SimpleConstraintManager.h Patch by Ben Laurie: 2009-02-14 17:08:39 +00:00
SymbolManager.cpp Added GRStateManager::scanReachableSymbols(), a method which scans the reachable 2009-02-14 03:16:10 +00:00
UninitializedValues.cpp move library-specific diagnostic headers into library private dirs. Reduce 2009-01-29 05:15:15 +00:00