Граф коммитов

4732 Коммитов

Автор SHA1 Сообщение Дата
Ted Kremenek 20161e9ed7 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
2008-07-15 20:18:21 +00:00
Ted Kremenek e0787814a7 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
2008-07-15 18:28:16 +00:00
Ted Kremenek e703a9026d Incremented latest checker build.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53631 91177308-0d34-0410-b5e6-96231b3b80d8
2008-07-15 18:15:51 +00:00
Ted Kremenek f9c2a5d1b4 Distinguish between dead stores and dead initializations.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53628 91177308-0d34-0410-b5e6-96231b3b80d8
2008-07-15 18:06:32 +00:00
Ted Kremenek 10161bfe1a 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
2008-07-15 17:43:41 +00:00
Ted Kremenek 5656a98557 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
2008-07-15 17:09:28 +00:00
Ted Kremenek 24ec065270 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
2008-07-15 17:06:44 +00:00
Ted Kremenek b7770c0b49 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
2008-07-15 17:06:13 +00:00
Ted Kremenek 37d785bf2b 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
2008-07-15 16:50:12 +00:00
Ted Kremenek 0ef77d43c1 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
2008-07-15 03:51:09 +00:00
Ted Kremenek cfcc2470cd 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
2008-07-15 03:49:15 +00:00
Ted Kremenek f7f3c20a5d 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
2008-07-15 00:46:02 +00:00
Ted Kremenek 57bb37fcf5 Re-enable missing -dealloc check.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53578 91177308-0d34-0410-b5e6-96231b3b80d8
2008-07-14 23:56:31 +00:00
Ted Kremenek 24ad90c6b8 Update Xcode project.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53577 91177308-0d34-0410-b5e6-96231b3b80d8
2008-07-14 23:42:26 +00:00
Ted Kremenek 003798181c 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
2008-07-14 23:41:49 +00:00
Ted Kremenek fb9a48cf5e 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
2008-07-14 23:41:13 +00:00
Ted Kremenek 8f2698621f 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
2008-07-14 20:56:04 +00:00
Nate Begeman be2341d3b8 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
2008-07-14 18:02:46 +00:00
Ted Kremenek 57202071e4 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
2008-07-14 17:40:50 +00:00
Chris Lattner ca33f79346 remove CGObjCEtoile until it compiles.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53552 91177308-0d34-0410-b5e6-96231b3b80d8
2008-07-14 16:54:05 +00:00
Ted Kremenek 8c22bc3a35 Fix minor mistake in clang checkout instructions.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53550 91177308-0d34-0410-b5e6-96231b3b80d8
2008-07-14 14:40:22 +00:00
Cedric Venet bb2627d027 test commit. Remove previously added line.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53524 91177308-0d34-0410-b5e6-96231b3b80d8
2008-07-13 19:42:06 +00:00
Cedric Venet 82bdabaf31 test commit. Add a blank line.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53522 91177308-0d34-0410-b5e6-96231b3b80d8
2008-07-13 19:34:37 +00:00
Argyrios Kyrtzidis b9f930d7bd 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
2008-07-12 21:04:42 +00:00
Argyrios Kyrtzidis 63cf923e41 Convert CRLF -> LF line endings.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53519 91177308-0d34-0410-b5e6-96231b3b80d8
2008-07-12 20:28:04 +00:00
Cedric Venet a31bfc24fc Added two new files to VC++ project.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53518 91177308-0d34-0410-b5e6-96231b3b80d8
2008-07-12 19:24:14 +00:00
Chris Lattner 732b2236ae 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
2008-07-12 01:15:53 +00:00
Chris Lattner 4c4867e140 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
2008-07-12 00:38:25 +00:00
Chris Lattner 54176fdb04 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
2008-07-12 00:14:42 +00:00
Ted Kremenek b0ac214f8d 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
2008-07-11 23:29:43 +00:00
Ted Kremenek e4773eb639 Tidy up error message.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53493 91177308-0d34-0410-b5e6-96231b3b80d8
2008-07-11 23:17:01 +00:00
Ted Kremenek 170db7c38d 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
2008-07-11 23:13:22 +00:00
Chris Lattner 87eae5ecf9 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
2008-07-11 22:52:41 +00:00
Ted Kremenek 0e0caa2b88 Update Xcode project.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53488 91177308-0d34-0410-b5e6-96231b3b80d8
2008-07-11 22:48:58 +00:00
Ted Kremenek 5b10bd7e83 Run by default: -check-objc-methodsigs
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53483 91177308-0d34-0410-b5e6-96231b3b80d8
2008-07-11 22:41:43 +00:00
Ted Kremenek 0d8019e55c 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
2008-07-11 22:40:47 +00:00
Chris Lattner 75a4881047 simplify some code a bit.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53477 91177308-0d34-0410-b5e6-96231b3b80d8
2008-07-11 22:15:16 +00:00
Chris Lattner fcee0019b7 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
2008-07-11 21:24:13 +00:00
Ted Kremenek 078c0bcc37 Fix comment.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53473 91177308-0d34-0410-b5e6-96231b3b80d8
2008-07-11 20:53:14 +00:00
Chris Lattner ac7cb60397 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
2008-07-11 19:29:32 +00:00
Chris Lattner 7a76778e21 add a new getIntTypeSizeInBits method.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53468 91177308-0d34-0410-b5e6-96231b3b80d8
2008-07-11 19:24:49 +00:00
Chris Lattner cf0f51d10f rename "SInt" methods to "Int" in APValue.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53467 91177308-0d34-0410-b5e6-96231b3b80d8
2008-07-11 19:19:21 +00:00
Ted Kremenek 150c2120ab 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
2008-07-11 19:15:05 +00:00
Chris Lattner b542afe02d 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
2008-07-11 19:10:17 +00:00
Ted Kremenek bdb435ddaa 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
2008-07-11 18:37:32 +00:00
Chris Lattner f5eeb055ec rearrange some code, no functionality changes.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53463 91177308-0d34-0410-b5e6-96231b3b80d8
2008-07-11 18:11:29 +00:00
Ted Kremenek 0ce902bb29 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
2008-07-10 22:10:48 +00:00
Ted Kremenek eb04751d4d Updated Xcode project.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53424 91177308-0d34-0410-b5e6-96231b3b80d8
2008-07-10 22:04:37 +00:00
Ted Kremenek 4323a57627 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
2008-07-10 22:03:41 +00:00
Ted Kremenek e5690319a0 Remove unused class AnnotatedPath.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@53413 91177308-0d34-0410-b5e6-96231b3b80d8
2008-07-10 17:25:03 +00:00