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

4068 Коммитов

Автор SHA1 Сообщение Дата
Nuno Lopes e5d12e8003 handle -arch and -isysroot correctly (like ccc-analyszer do).
Patch by Filipe Cabecinhas

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52417 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-17 17:23:14 +00:00
Ted Kremenek 893d99d809 Added link to Developer Meeting.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52403 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-17 14:02:30 +00:00
Ted Kremenek d652e2b06f Flush bullets in <ul>
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52402 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-17 13:55:34 +00:00
Ted Kremenek 35f29c5c4c Convert <h4> to <h3>.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52400 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-17 13:48:36 +00:00
Ted Kremenek 111731a380 Tighten <h2> padding.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52399 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-17 13:48:17 +00:00
Ted Kremenek 3644cf964f Simplify anchor.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52398 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-17 13:47:52 +00:00
Ted Kremenek d8bdc19c1a Remove margin above <h1>.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52389 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-17 07:05:45 +00:00
Ted Kremenek 414322ca1f Make "important notes" more succinct.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52388 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-17 06:47:58 +00:00
Ted Kremenek 34239e949a Include the "latest build" checker link using SSI.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52387 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-17 06:43:11 +00:00
Ted Kremenek 92c23cbd03 Split static analysis page into two pages: a high-level information page (with quick download links) and a usage page.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52386 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-17 06:38:07 +00:00
Ted Kremenek c12f7dc59d Tweak font sizes.
Color <h3> light blue, <h2> a dark grey.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52385 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-17 06:36:13 +00:00
Ted Kremenek 3b61b1544c Convert <h2> -> <h3>. <h1> -> <h2> (more consistent with other pages)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52384 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-17 06:35:36 +00:00
Eli Friedman 5395ef04e9 Make this test actually pass, in addition to the previous patch
which made it work.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52382 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-17 05:36:46 +00:00
Ted Kremenek 1060aff23f Fix more strict-aliasing warnings.
Fix indentation of class declarations in ExprCXX.h


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52380 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-17 03:11:08 +00:00
Ted Kremenek f2f8d6c471 Only use colored output when the environment variable SCAN_BUILD_COLOR is set.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52379 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-17 03:06:59 +00:00
Ted Kremenek 5549976193 This patch is motivated by numerous strict-aliasing warnings when compiling
clang as a Release build.

The big change is that all AST nodes (subclasses of Stmt) whose children are
Expr* store their children as Stmt* or arrays of Stmt*. This is to remove
strict-aliasing warnings when using StmtIterator. None of the interfaces of any
of the classes have changed (except those with arg_iterators, see below), as the
accessor methods introduce the needed casts (via cast<>). While this extra
casting may seem cumbersome, it actually adds some important sanity checks
throughout the codebase, as clients using StmtIterator can potentially overwrite
children that are expected to be Expr* with Stmt* (that aren't Expr*). The casts
provide extra sanity checks that are operational in debug builds to catch
invariant violations such as these.

For classes that have arg_iterators (e.g., CallExpr), the definition of
arg_iterator has been replaced. Instead of it being Expr**, it is an actual
class (called ExprIterator) that wraps a Stmt**, and provides the necessary
operators for iteration. The nice thing about this class is that it also uses
cast<> to type-checking, which introduces extra sanity checks throughout the
codebase that are useful for debugging.

A few of the CodeGen functions that use arg_iterator (especially from
OverloadExpr) have been modified to take begin and end iterators instead of a
base Expr** and the number of arguments. This matches more with the abstraction
of iteration. This still needs to be cleaned up a little bit, as clients expect
that ExprIterator is a RandomAccessIterator (which we may or may not wish to
allow for efficiency of representation).

This is a fairly large patch. It passes the tests (except CodeGen/bitfield.c,
which was already broken) on both a Debug and Release build, but it should
obviously be reviewed.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52378 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-17 02:43:46 +00:00
Ted Kremenek 94cbb3e894 Silence uninitialized value warning in Release build.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52376 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-16 23:46:27 +00:00
Ted Kremenek 9bcf44aeef Silence uninitialized value warning during Release build.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52375 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-16 23:45:12 +00:00
Ted Kremenek 23cfca3760 Remove debugging message in ccc-analyzer.
Add color diagnostics from scan-build, and indicate the number of bugs found (if any).


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52372 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-16 22:40:14 +00:00
Ted Kremenek 75a2520927 Latest release is checker-37.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52370 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-16 21:46:12 +00:00
Ted Kremenek 6814447ddd Re-enable the analyzer.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52367 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-16 21:41:07 +00:00
Ted Kremenek dd536bfa8b Remove Analysis-Apple.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52366 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-16 21:21:48 +00:00
Ted Kremenek d54ae2a8ea Move test case "uninit-msg-expr.m" from Analysis-Apple to Analysis (now works on all platforms).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52362 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-16 21:15:29 +00:00
Ted Kremenek 32dc95e1ae Moved test case NoReturn.m from Analysis-Apple to Analysis (now works on all platforms).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52359 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-16 21:05:04 +00:00
Ted Kremenek 859be3b1e7 Move NSString.m test case from Analysis-Apple to Analysis. The test case now works on all platforms.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52354 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-16 20:37:30 +00:00
Ted Kremenek 4b5484aceb Update test case to use -pedantic (makes the test case more clear).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52349 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-16 19:53:46 +00:00
Ted Kremenek dfc996c9d5 Fix misspelling of "svelte".
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52348 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-16 19:51:41 +00:00
Ted Kremenek 7662af466e Move Analysis-Apple/CFString.c to Analysis (the test case now works on all platforms).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52346 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-16 19:35:31 +00:00
Ted Kremenek 88739bff1d Move CFDateGC.m test case from Analysis-Apple to Analysis (it now runs on all platforms).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52344 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-16 18:46:17 +00:00
Ted Kremenek 2f134c609f Moved CFDate.m from test/Analysis-Apple to test/Analysis, and added the necessary declarations from Foundation.h to CFDate.m so that the test case can be exercised on all platforms.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52343 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-16 18:34:22 +00:00
Ted Kremenek df220837ce Add test case for NSString format-string checking.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52337 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-16 18:01:05 +00:00
Ted Kremenek 7ff22b259d Introduce preliminary support for NSString format-string checking.
Patch by Nikita Zhuk!


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52336 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-16 18:00:42 +00:00
Chris Lattner 9e800e3dd8 force size of alloca to i32, which is currently required by LLVM IR.
This fixes use of alloca on 64-bit systems.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52334 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-16 17:15:14 +00:00
Eli Friedman 1e692ace08 Basic support for volatile loads and stores. Stores the volatile
qualifier in the lvalue, and changes lvalue loads/stores to honor 
the volatile flag.  Places which need some further attention are marked 
with FIXMEs.

Patch by Cédric Venet.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52264 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-13 23:01:12 +00:00
Ted Kremenek ed6c70f630 Tweak h1 line-height to avoid text overlay issues in the headers.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52256 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-13 21:09:07 +00:00
Ted Kremenek b56c882583 CSS tweaks with the menu to help resolve some menu/content overlap issues.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52255 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-13 21:06:53 +00:00
Argyrios Kyrtzidis 14d4140de1 Allow -parse-noop -verify options to be used together.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52249 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-13 12:15:34 +00:00
Ted Kremenek 1204929cf5 Grammo.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52241 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-12 19:14:13 +00:00
Ted Kremenek bc757865cd Added an "important notes" section. Tweaked formatting.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52239 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-12 18:39:02 +00:00
Argyrios Kyrtzidis 874f608ec1 Fix broken test.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52232 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-12 12:44:52 +00:00
Argyrios Kyrtzidis c577a0e9bf Multiple tests in a single test file must be linked with '&&'.
Otherwise, failing tests other than the last one will not be reported.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52231 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-12 12:40:02 +00:00
Argyrios Kyrtzidis 68617fd6b3 Fix "copy & paste" error.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52227 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-11 23:15:56 +00:00
Ted Kremenek d53ab9fdf7 Added direct link to latest analyzer build on Mac OS X.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52222 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-11 16:16:41 +00:00
Ted Kremenek b8a522fbc3 Added a disclaimer about running time, and provided an executive summary of the tool's interface.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52221 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-11 16:09:34 +00:00
Ted Kremenek 4f90ff2e4d Use relative links that start with "/" so the menu works from different subdirectories.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52210 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-11 06:22:05 +00:00
Eli Friedman 54ecfce94b Don't crash if we can't find FileEntry info for a typedef, since one
isn't guaranteed to exist. This fixes a crash with conflicting typedefs
coming from stdin.

This also fixes the crash in PR2406, but doesn't completely fix the 
issue; it appears there's something strange about the physical location 
for the definition of int64_t in stdlib.h.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52209 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-11 06:20:39 +00:00
Ted Kremenek 17a295d8f6 Use same CSS as the rest of the clang website.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52208 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-11 06:19:49 +00:00
Ted Kremenek 753eac86a4 Fix menu/content overlap.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52207 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-11 06:15:58 +00:00
Ted Kremenek 995a2b78ea More padding adjustments.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52206 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-11 06:14:37 +00:00
Ted Kremenek 7bf3fb6d63 Shorten menu item name.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@52205 91177308-0d34-0410-b5e6-96231b3b80d8
2008-06-11 06:13:36 +00:00