Ted Kremenek
c2546d6518
Mark nodes as sinks that GRAuditor says should be marked as sinks.
...
llvm-svn: 49179
2008-04-03 17:56:48 +00:00
Ted Kremenek
b5c8225320
Use logical line number for BUGLINE.
...
llvm-svn: 49178
2008-04-03 17:55:57 +00:00
Ted Kremenek
406192d163
Added "getLogicalLineNumber" and "getLogicalColumnNumber" to FullSourceLoc.
...
llvm-svn: 49177
2008-04-03 17:55:15 +00:00
Sam Bishop
30d70968fd
Remove handling of impossible "-?" option.
...
llvm-svn: 49161
2008-04-03 14:29:47 +00:00
Sam Bishop
2f8a31ca92
trivial whitespace fix
...
llvm-svn: 49160
2008-04-03 14:20:28 +00:00
Ted Kremenek
ca40664275
Handle the case when getEndPath() returns NULL.
...
llvm-svn: 49155
2008-04-03 07:33:55 +00:00
Ted Kremenek
4d26d194e4
Don't run the analyzer on files whose language is "unknown"
...
llvm-svn: 49152
2008-04-03 07:14:59 +00:00
Ted Kremenek
b73d6dda84
Added guard for printing out PathDiagnostics whose last element ends with
...
a piece with a SourceLocation that does not have a FileID.
llvm-svn: 49151
2008-04-03 07:13:10 +00:00
Ted Kremenek
c599179267
Some cleanups in EscapeText and AddLineNumbers. Still investigating performance
...
issues.
llvm-svn: 49150
2008-04-03 07:12:29 +00:00
Ted Kremenek
ffc1147323
Remove impossible "-?" option.
...
llvm-svn: 49149
2008-04-03 07:11:44 +00:00
Ted Kremenek
78e30c17bc
Added "isFileID()" to FullSourceLoc.
...
llvm-svn: 49148
2008-04-03 07:11:38 +00:00
Ted Kremenek
d4bee176b6
CSS/HTML generation tweaks for index.html: Remove special "classes" for <td>
...
elements in table so that sorttable can sort them.
llvm-svn: 49145
2008-04-03 05:50:51 +00:00
Chris Lattner
e799eb5daa
Fix PR2081 (problems codegen'ing some recursive structures) patch
...
by Lauro Venancio!
llvm-svn: 49144
2008-04-03 05:50:42 +00:00
Sam Bishop
2289459bf6
Created a destructor so that the top-level decls can be deleted.
...
llvm-svn: 49142
2008-04-03 05:35:20 +00:00
Sam Bishop
5981404289
Temporarily make the Decl virtual destructor public, so that calls to "delete"
...
can be tested on derived classes.
llvm-svn: 49141
2008-04-03 05:29:20 +00:00
Ted Kremenek
e4c029e7aa
Add back bug name to PathDiagnostic.
...
llvm-svn: 49139
2008-04-03 05:23:19 +00:00
Chris Lattner
3a0702e631
Fix a bug where we didn't check the RHS for null, we checked
...
the LHS for null twice.
llvm-svn: 49138
2008-04-03 05:07:25 +00:00
Chris Lattner
efdc7685d4
qualifier comparisons should be done on canonical types.
...
llvm-svn: 49137
2008-04-03 05:07:04 +00:00
Sam Bishop
03e662d5be
Call delete on the deserialized TranslationUnit object.
...
llvm-svn: 49136
2008-04-03 05:03:34 +00:00
Sam Bishop
ca6226628e
Call "delete" on the body of FunctionDecls.
...
llvm-svn: 49135
2008-04-03 05:01:04 +00:00
Ted Kremenek
4e9cc3f272
When creating PathDiagnostics, created a trimmed graph first and report the
...
BFS path to the root. This also avoids problems with loops in the ExplodedGraph.
llvm-svn: 49133
2008-04-03 04:59:14 +00:00
Ted Kremenek
588dcdd58b
Added node_iterator to ExplodedGraph to allow iteration over all nodes in
...
the graph.
llvm-svn: 49132
2008-04-03 04:58:29 +00:00
Ted Kremenek
572875c43f
Updated Xcode project to include BugReporter.[cpp,h].
...
llvm-svn: 49128
2008-04-03 04:43:40 +00:00
Ted Kremenek
505a36afc6
Created new path-sensitive bug-reporting scheme based on the classes
...
"BugReporter" and "BugDescription". BugDescription is used to describe
a bug and provide pieces of the PathDiagnostic, and BugReporter creates
the actual PathDiagnostic by crawling through the ExplodedGraph.
Migrated checks done by GRSimpleVals to be reported using the new BugReporter
mechanism.
llvm-svn: 49127
2008-04-03 04:42:52 +00:00
Ted Kremenek
7c7616cf29
Added missing #ifndef...#define...#endif directives to protect against
...
double includes.
llvm-svn: 49126
2008-04-03 04:38:39 +00:00
Ted Kremenek
84041843af
CSS tweaking on blue boxes.
...
llvm-svn: 49121
2008-04-02 22:50:50 +00:00
Ted Kremenek
33d03a52f0
80 col violation
...
llvm-svn: 49120
2008-04-02 22:08:09 +00:00
Ted Kremenek
744fb6d9e7
Added more PathDiagnostic rendering for terminators: switch, goto, loops.
...
llvm-svn: 49119
2008-04-02 22:03:53 +00:00
Ted Kremenek
ab2a52c4bf
Blue diagnostic boxes.
...
llvm-svn: 49117
2008-04-02 21:14:04 +00:00
Ted Kremenek
258493c188
Added path sequence numbers in HTML output of PathDiagnostics.
...
llvm-svn: 49116
2008-04-02 21:04:20 +00:00
Ted Kremenek
3e38d6ad3c
Fix initialization bug.
...
llvm-svn: 49115
2008-04-02 20:44:27 +00:00
Ted Kremenek
3276af4c1a
Embed BUGLINE, BUGFILE, BUGPATHLENGTH in the emitted HTML file.
...
llvm-svn: 49114
2008-04-02 20:44:16 +00:00
Ted Kremenek
00ab318cf2
Made bug index tables sortable.
...
Added line number, file information, path length, for each bug report.
llvm-svn: 49113
2008-04-02 20:43:36 +00:00
Ted Kremenek
260fc46000
Added "back()" method to PathDiagnostic to access the last piece in a path.
...
llvm-svn: 49112
2008-04-02 20:35:01 +00:00
Ted Kremenek
c57139e104
Initial work on CSS in generated index.html.
...
Added "-V/--view" option to view index.html after it has been generated.
llvm-svn: 49108
2008-04-02 18:42:49 +00:00
Steve Naroff
778927532d
Change ObjCInterfaceDecl to inherit from NamedDecl (not TypeDecl). While ObjCInterfaceDecl is arguably a TypeDecl, it isn't a ScopedDecl. Since TypeDecl's are scoped, it makes sense to simply treat them as NamedDecl's. I could have fiddled a bit more with the hierarchy (in terms of creating a non-scoped TypeDecl), however this probably isn't worth the effort.
...
I also finished unifying access to scope decl change by converting Sema::getObjCInterfaceDecl() to use Sema::LookupDecl(). This is much cleaner now:-)
llvm-svn: 49107
2008-04-02 18:30:49 +00:00
Ted Kremenek
2cd0d63d30
Initial support for generating index.html file.
...
llvm-svn: 49104
2008-04-02 18:03:36 +00:00
Ted Kremenek
13c0885a8d
Put "BUGDESC" comment tag on its own line.
...
llvm-svn: 49103
2008-04-02 18:03:20 +00:00
Ted Kremenek
383bfd27d0
Shorted bug-description.
...
llvm-svn: 49102
2008-04-02 18:02:54 +00:00
Chris Lattner
182f660d8d
simplify some code by using PointerLikeType.
...
llvm-svn: 49101
2008-04-02 17:45:06 +00:00
Chris Lattner
db5f1fa3d8
add a common base class "PointerLikeType" for PointerType and ReferenceType,
...
allowing them to be treated the same in some contexts. A suggestion for a
better name is welcome :)
llvm-svn: 49100
2008-04-02 17:35:06 +00:00
Chris Lattner
b1f7398b1c
properly handle array decay in objc message exprs.
...
llvm-svn: 49098
2008-04-02 17:17:33 +00:00
Chris Lattner
6f6d226f63
improve error to be something end users will actually understand :)
...
llvm-svn: 49097
2008-04-02 17:15:17 +00:00
Ted Kremenek
018ba60f8e
Added path-sensitive null dereference test case.
...
llvm-svn: 49095
2008-04-02 16:54:39 +00:00
Ted Kremenek
3016cdd569
More wording cleanups in --help text.
...
llvm-svn: 49094
2008-04-02 16:47:27 +00:00
Ted Kremenek
dfd204e133
More wording fixes.
...
llvm-svn: 49093
2008-04-02 16:41:25 +00:00
Ted Kremenek
1cf35de3cb
Added error message for unrecognized options.
...
llvm-svn: 49092
2008-04-02 16:35:01 +00:00
Ted Kremenek
c5f113f52e
Wording cleanups.
...
llvm-svn: 49091
2008-04-02 16:31:58 +00:00
Ted Kremenek
977b644427
Implemented "-k" support.
...
llvm-svn: 49090
2008-04-02 16:04:51 +00:00
Ted Kremenek
37e908a6f0
Do equality testing, not regex, when the build command is gcc. This matches
...
better with what compiler invocations that ccc-analyzer actually intercepts.
Fixes suggested by Sam Bishop!
llvm-svn: 49089
2008-04-02 15:34:12 +00:00