]>
granicus.if.org Git - clang/log
David Blaikie [Mon, 6 Aug 2012 22:47:24 +0000 (22:47 +0000)]
Refactor checks for unevaluated contexts into a common utility function.
The one caller that's surrounded by nearby code manipulating the underlying
evaluation context list is left unmodified for readability.
Review by Sean Silva and Richard Smith.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161355
91177308 -0d34-0410-b5e6-
96231b3b80d8
Dmitri Gribenko [Mon, 6 Aug 2012 21:31:15 +0000 (21:31 +0000)]
Comment AST: DeclInfo: collapse a bunch of boolean flags into an enum.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161352
91177308 -0d34-0410-b5e6-
96231b3b80d8
Jordan Rose [Mon, 6 Aug 2012 21:28:14 +0000 (21:28 +0000)]
[analyzer] Add plist output checks for all four "path notes" tests.
No functionality change, but from now on, any new path notes should be
tested both with plain-text output (for ease of human auditing) and with
plist output (to ensure control flow and events are being correctly
represented in Xcode).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161351
91177308 -0d34-0410-b5e6-
96231b3b80d8
Jordan Rose [Mon, 6 Aug 2012 21:28:11 +0000 (21:28 +0000)]
[analyzer] Improve arrow locations for PseudoObjectExprs.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161350
91177308 -0d34-0410-b5e6-
96231b3b80d8
Jordan Rose [Mon, 6 Aug 2012 21:28:02 +0000 (21:28 +0000)]
[analyzer] Ignore OS X 10.8's annotations for NSMakeCollectable.
The frameworks correctly use the 'cf_consumed' and 'ns_returns_retained'
attributes for NSMakeCollectable, but we can model the behavior under
garbage collection more precisely than that.
No functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161349
91177308 -0d34-0410-b5e6-
96231b3b80d8
Richard Trieu [Mon, 6 Aug 2012 21:09:23 +0000 (21:09 +0000)]
For global record types, the self reference checker was called twice, resulting
in duplicate -Wuninitialized warnings. Change so that only the check in
TryConstructorInitialization() will be used and a single warning be emitted.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161345
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Mon, 6 Aug 2012 20:19:19 +0000 (20:19 +0000)]
scan-build: factor out setting of environment variables.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161343
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chad Rosier [Mon, 6 Aug 2012 20:03:45 +0000 (20:03 +0000)]
[ms-inline asm] Pass Tokens to Sema and store them in the AST. No functional
change intended. No test case as there's no real way to test at this time.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161342
91177308 -0d34-0410-b5e6-
96231b3b80d8
Simon Atanasyan [Mon, 6 Aug 2012 19:48:16 +0000 (19:48 +0000)]
Fix MIPS DSP Rev1 intrinsics memory properties.
The patch reviewed by Akira Hatanaka.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161333
91177308 -0d34-0410-b5e6-
96231b3b80d8
Dmitri Gribenko [Mon, 6 Aug 2012 19:03:12 +0000 (19:03 +0000)]
Comment parser and sema: remove useless return values
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161331
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ted Kremenek [Mon, 6 Aug 2012 18:54:19 +0000 (18:54 +0000)]
Pull 'xcodebuild' wrapper logic into a separate function.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161330
91177308 -0d34-0410-b5e6-
96231b3b80d8
Dmitri Gribenko [Mon, 6 Aug 2012 17:08:27 +0000 (17:08 +0000)]
Comment diagnostics: warn on duplicate \brief and \return commands.
Doxygen manual claims that multiple \brief or \returns commands will be merged
together, but actual behavior is different (second \brief command becomes a
part of a discussion, second \returns becomes a "Returns: blah" paragraph on
its own). Anyway, it seems to be a bad idea to use multiple \brief or \returns
commands in a single command.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161325
91177308 -0d34-0410-b5e6-
96231b3b80d8
Dmitri Gribenko [Mon, 6 Aug 2012 16:29:26 +0000 (16:29 +0000)]
Comment diagnostics: \return in void function: specialize diagnostic text for
ObjC methods.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161324
91177308 -0d34-0410-b5e6-
96231b3b80d8
Craig Topper [Mon, 6 Aug 2012 07:07:06 +0000 (07:07 +0000)]
Re-enable pcmpistri/pcmpestri builtins in clang now that llvm supports them properly.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161319
91177308 -0d34-0410-b5e6-
96231b3b80d8
Richard Smith [Mon, 6 Aug 2012 04:09:06 +0000 (04:09 +0000)]
PR13529: Don't crash if the driver sees an unused input file when running as
'clang-cpp'.
For now, the test uses "REQUIRES: shell" to determine if the host system
supports "ln -s", which it uses to create a 'clang-cpp' symlink. This is a bit
hacky and should likely be directly supported by lit.cfg.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161317
91177308 -0d34-0410-b5e6-
96231b3b80d8
Richard Smith [Mon, 6 Aug 2012 03:25:17 +0000 (03:25 +0000)]
PR13499: Don't try to check whether 'override' has been validly applied until
we know whether the function is virtual. But check it as soon as we do know;
in some cases we don't need to wait for an instantiation.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161316
91177308 -0d34-0410-b5e6-
96231b3b80d8
Richard Smith [Mon, 6 Aug 2012 02:25:10 +0000 (02:25 +0000)]
PR13527: don't assert if a function is explicitly defaulted when it's already
been defined.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161315
91177308 -0d34-0410-b5e6-
96231b3b80d8
Hal Finkel [Sun, 5 Aug 2012 22:03:08 +0000 (22:03 +0000)]
Add __builtin_readcyclecounter() to produce the @llvm.readcyclecounter() intrinsic.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161310
91177308 -0d34-0410-b5e6-
96231b3b80d8
Benjamin Kramer [Sat, 4 Aug 2012 17:00:46 +0000 (17:00 +0000)]
Simplify code, no functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161303
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anna Zaks [Sat, 4 Aug 2012 02:04:27 +0000 (02:04 +0000)]
[analyzer] Malloc: remove assert since is not valid as of r161248
We can be in the situation where we did not track the symbol before
realloc was called on it.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161294
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Sat, 4 Aug 2012 01:24:33 +0000 (01:24 +0000)]
objective-C string literal has no side-effect,
resulting in issuance of unused static variable
warning now. // rdar://
10777111
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161291
91177308 -0d34-0410-b5e6-
96231b3b80d8
Jordan Rose [Sat, 4 Aug 2012 01:04:52 +0000 (01:04 +0000)]
[analyzer] Use a more robust check for null in CallAndMessageChecker.
This should fix the failing test on the buildbot as well.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161290
91177308 -0d34-0410-b5e6-
96231b3b80d8
Jordan Rose [Sat, 4 Aug 2012 00:25:30 +0000 (00:25 +0000)]
[analyzer] Don't assume values bound to references are automatically non-null.
While there is no such thing as a "null reference" in the C++ standard,
many implementations of references (including Clang's) do not actually
check that the location bound to them is non-null. Thus unlike a regular
null dereference, this will not cause a problem at runtime until the
reference is actually used. In order to catch these cases, we need to not
prune out paths on which the input pointer is null.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161288
91177308 -0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Sat, 4 Aug 2012 00:11:22 +0000 (00:11 +0000)]
Fix the name of this variable.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161287
91177308 -0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Sat, 4 Aug 2012 00:11:20 +0000 (00:11 +0000)]
Update comment to accurately reflect what should happen.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161286
91177308 -0d34-0410-b5e6-
96231b3b80d8
Jordan Rose [Fri, 3 Aug 2012 23:31:15 +0000 (23:31 +0000)]
[analyzer] Update initializer assertion for delegating constructors.
Like base constructors, delegating constructors require no further
processing in the CFGInitializer node.
Also, add PrettyStackTraceLoc to the initializer and destructor logic
so we can get better stack traces in the future.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161283
91177308 -0d34-0410-b5e6-
96231b3b80d8
Jordan Rose [Fri, 3 Aug 2012 23:09:01 +0000 (23:09 +0000)]
[analyzer] When a symbol is null, we should track its constraints.
Because of this, we would previously emit NO path notes when a parameter
is constrained to null (because there are no stores). Now we show where we
made the assumption, which is much more useful.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161280
91177308 -0d34-0410-b5e6-
96231b3b80d8
Jordan Rose [Fri, 3 Aug 2012 23:08:54 +0000 (23:08 +0000)]
[analyzer] Flatten path diagnostics for text output like we do for HTML.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161279
91177308 -0d34-0410-b5e6-
96231b3b80d8
Jordan Rose [Fri, 3 Aug 2012 23:08:49 +0000 (23:08 +0000)]
[analyzer] Track null/uninitialized C++ objects used in method calls.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161278
91177308 -0d34-0410-b5e6-
96231b3b80d8
Jordan Rose [Fri, 3 Aug 2012 23:08:44 +0000 (23:08 +0000)]
[analyzer] Provide useful PathDiagnosticLocations for CallEnter/Exit events.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161277
91177308 -0d34-0410-b5e6-
96231b3b80d8
Jordan Rose [Fri, 3 Aug 2012 23:08:42 +0000 (23:08 +0000)]
[analyzer] FindLastStoreBRVisitor was not actually finding stores.
The visitor walks back through the ExplodedGraph as expected, but
it wasn't actually keeping track of when a value was assigned. This
meant that it only worked when the value was assigned when the variable
was defined.
Tests in the next commit (dependent on another change).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161276
91177308 -0d34-0410-b5e6-
96231b3b80d8
Jordan Rose [Fri, 3 Aug 2012 23:08:39 +0000 (23:08 +0000)]
Enhance getImplicitObjectArgument to look through ->*.
This only applies in the case where ->* is not overloaded, since it
specifically looks for BinaryOperator and not CXXOperatorCallExpr.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161275
91177308 -0d34-0410-b5e6-
96231b3b80d8
Jordan Rose [Fri, 3 Aug 2012 23:08:36 +0000 (23:08 +0000)]
[analyzer] Add a test for copy-constructor inlining.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161274
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Fri, 3 Aug 2012 21:51:38 +0000 (21:51 +0000)]
Make property synthesis the default on Windows.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161266
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anna Zaks [Fri, 3 Aug 2012 21:49:42 +0000 (21:49 +0000)]
[analyzer] Fixup: remove the extra whitespace
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161265
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anna Zaks [Fri, 3 Aug 2012 21:43:37 +0000 (21:43 +0000)]
[analyzer] ObjC Inlining: Start tracking dynamic type info in the GDM
In the following code, find the type of the symbolic receiver by
following it and updating the dynamic type info in the state when we
cast the symbol from id to MyClass *.
MyClass *a = [[self alloc] init];
return 5/[a testSelf];
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161264
91177308 -0d34-0410-b5e6-
96231b3b80d8
Dmitri Gribenko [Fri, 3 Aug 2012 21:15:32 +0000 (21:15 +0000)]
Comment diagnostics: warn if \returns is used in a non-function comment or if
the function returns void.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161261
91177308 -0d34-0410-b5e6-
96231b3b80d8
Richard Smith [Fri, 3 Aug 2012 21:14:57 +0000 (21:14 +0000)]
Fix crash if a literal operator template's template parameter pack is not a non-type template parameter pack. Patch by Andy Gibbs!
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161260
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anna Zaks [Fri, 3 Aug 2012 18:30:20 +0000 (18:30 +0000)]
[analyzer] Fix a typo. Thanks Jordan.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161249
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anna Zaks [Fri, 3 Aug 2012 18:30:18 +0000 (18:30 +0000)]
[analyzer] Malloc: track non-allocated but freed memory
There is no reason why we should not track the memory which was not
allocated in the current function, but was freed there. This would
allow to catch more use-after-free and double free with no/limited IPA.
Also fix a realloc issue which surfaced as the result of this patch.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161248
91177308 -0d34-0410-b5e6-
96231b3b80d8
Michael Han [Fri, 3 Aug 2012 17:40:43 +0000 (17:40 +0000)]
Fix line endings.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161245
91177308 -0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Fri, 3 Aug 2012 17:30:46 +0000 (17:30 +0000)]
TableGen: Remove extraneous \ character from arm_neon.h definitions.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161244
91177308 -0d34-0410-b5e6-
96231b3b80d8
Benjamin Kramer [Fri, 3 Aug 2012 15:43:22 +0000 (15:43 +0000)]
Flesh out test for defaulted key functions a bit more.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161243
91177308 -0d34-0410-b5e6-
96231b3b80d8
Benjamin Kramer [Fri, 3 Aug 2012 10:35:06 +0000 (10:35 +0000)]
Reduce temp file pollution in some test cases.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161237
91177308 -0d34-0410-b5e6-
96231b3b80d8
Benjamin Kramer [Fri, 3 Aug 2012 08:39:58 +0000 (08:39 +0000)]
Fix failed to generate vtables in certain cases.
By C++ standard, the vtable should be generated if the first non-inline
virtual function is defined in the TU. Current version of clang doesn't
generate vtable if the first virtual function is defaulted, because the
key function is regarded as the defaulted function.
Patch by Li Kan!
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161236
91177308 -0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Fri, 3 Aug 2012 00:13:44 +0000 (00:13 +0000)]
Add some missing functions to builtins.py.
rdar://
10112601
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161227
91177308 -0d34-0410-b5e6-
96231b3b80d8
Dmitri Gribenko [Fri, 3 Aug 2012 00:01:01 +0000 (00:01 +0000)]
Comment AST: convert a huge if -- else if statement on Decl's type into a
switch. Thanks Sean Silva for suggestion!
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161225
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anna Zaks [Thu, 2 Aug 2012 23:41:05 +0000 (23:41 +0000)]
[analyzer] Solve another source of non-determinism in the diagnostic
engine.
The code that was supposed to split the tie in a deterministic way is
not deterministic. Most likely one of the profile methods uses a
pointer. After this change we do finally get the consistent diagnostic
output. Testing this requires running the analyzer on large code bases
and diffing the results.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161224
91177308 -0d34-0410-b5e6-
96231b3b80d8
Dmitri Gribenko [Thu, 2 Aug 2012 21:45:39 +0000 (21:45 +0000)]
Comments AST: refactor DeclInfo to use an enum for decl kind instead of
separate flags.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161217
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chad Rosier [Thu, 2 Aug 2012 21:39:47 +0000 (21:39 +0000)]
[driver] Lipo can handle the lto-bc type.
rdar://
12000401
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161216
91177308 -0d34-0410-b5e6-
96231b3b80d8
Dmitri Gribenko [Thu, 2 Aug 2012 21:36:57 +0000 (21:36 +0000)]
Comments: handle template paramter documentation in alias-declaration
templates.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161215
91177308 -0d34-0410-b5e6-
96231b3b80d8
Jordan Rose [Thu, 2 Aug 2012 21:33:42 +0000 (21:33 +0000)]
[analyzer] Add a simple check for initializing reference variables with null.
There's still more work to be done here; this doesn't catch reference
parameters or return values. But it's a step in the right direction.
Part of <rdar://problem/
11212286 >.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161214
91177308 -0d34-0410-b5e6-
96231b3b80d8
Dmitri Gribenko [Thu, 2 Aug 2012 20:49:51 +0000 (20:49 +0000)]
Attaching comments to declarations: handle using-declaration.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161211
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Thu, 2 Aug 2012 18:38:41 +0000 (18:38 +0000)]
objc-arc: Modify test for more prcecise fixit.
// rdar://
11913153
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161194
91177308 -0d34-0410-b5e6-
96231b3b80d8
Fariborz Jahanian [Thu, 2 Aug 2012 18:03:58 +0000 (18:03 +0000)]
objective-c arc: Patch to suggest bridge casting of CF
objects used as dictionary subscript objects.
// rdar://
11913153
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161187
91177308 -0d34-0410-b5e6-
96231b3b80d8
Dmitri Gribenko [Thu, 2 Aug 2012 17:39:44 +0000 (17:39 +0000)]
ASTContext.h: replace include by a forward declaration.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161186
91177308 -0d34-0410-b5e6-
96231b3b80d8
Hans Wennborg [Thu, 2 Aug 2012 13:45:48 +0000 (13:45 +0000)]
Add OpenBSD arch targets for powerpc, arm, mips64, mips64el and sparc.
Contributed by Brad Smith <brad@comstyle.com>
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161175
91177308 -0d34-0410-b5e6-
96231b3b80d8
Hans Wennborg [Thu, 2 Aug 2012 12:27:08 +0000 (12:27 +0000)]
Correct AddDefaultCIncludePaths for OpenBSD to not include /usr/local/include
in the default search path. Compilers on *BSD OS's only include /usr/include by
default.
Contributed by Brad Smith <brad@comstyle.com>
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161173
91177308 -0d34-0410-b5e6-
96231b3b80d8
Nuno Lopes [Thu, 2 Aug 2012 12:12:26 +0000 (12:12 +0000)]
add a comment to explain this test case
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161172
91177308 -0d34-0410-b5e6-
96231b3b80d8
Hans Wennborg [Thu, 2 Aug 2012 09:04:56 +0000 (09:04 +0000)]
test/Sema/tls.c: don't use -verify to check if TLS is supported
Use "%clang_cc1" vs "not %clang_cc1" instead.
Also use -fsyntax-only.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161165
91177308 -0d34-0410-b5e6-
96231b3b80d8
Jordan Rose [Thu, 2 Aug 2012 02:43:42 +0000 (02:43 +0000)]
[analyzer] Also emit Prev/Next links for macros in HTML output. Oops.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161154
91177308 -0d34-0410-b5e6-
96231b3b80d8
Jordan Rose [Thu, 2 Aug 2012 02:26:19 +0000 (02:26 +0000)]
[analyzer] Add Prev/Next links to the HTML output.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161153
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anna Zaks [Thu, 2 Aug 2012 00:41:43 +0000 (00:41 +0000)]
[analyzer] Flush bug reports in deterministic order.
This makes the diagnostic output order deterministic.
1) This makes order of text diagnostics consistent from run to run.
2) Also resulted in different bugs being reported (from one run to
another) with plist-html output.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161151
91177308 -0d34-0410-b5e6-
96231b3b80d8
Anna Zaks [Thu, 2 Aug 2012 00:41:40 +0000 (00:41 +0000)]
[analyzer] CmpRuns should include file name in the issue identifier.
This prevents us from treating the issues from different files with the
same function names and same offsets as the same.
The issue identifier now includes the file name. Also added a way to
strip off the root directories form the source file names.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161150
91177308 -0d34-0410-b5e6-
96231b3b80d8
Eli Friedman [Thu, 2 Aug 2012 00:10:24 +0000 (00:10 +0000)]
Make sure we don't emit IR for unused EH cleanups. PR13359.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161148
91177308 -0d34-0410-b5e6-
96231b3b80d8
Dmitri Gribenko [Wed, 1 Aug 2012 23:49:32 +0000 (23:49 +0000)]
Comment parser tests: test that we allow placing no whitespace between \param
and [direction].
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161146
91177308 -0d34-0410-b5e6-
96231b3b80d8
Dmitri Gribenko [Wed, 1 Aug 2012 23:47:30 +0000 (23:47 +0000)]
Comment to HTML conversion: correct typo in CSS class name: taram -> tparam
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161145
91177308 -0d34-0410-b5e6-
96231b3b80d8
Dmitri Gribenko [Wed, 1 Aug 2012 23:29:52 +0000 (23:29 +0000)]
Comment diagnostics fixit tests: move exected-warning constructs from the
comment being tested.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161144
91177308 -0d34-0410-b5e6-
96231b3b80d8
Dmitri Gribenko [Wed, 1 Aug 2012 23:27:13 +0000 (23:27 +0000)]
Comment diagnostics: add tests for \tparam fixits.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161142
91177308 -0d34-0410-b5e6-
96231b3b80d8
Dmitri Gribenko [Wed, 1 Aug 2012 23:21:57 +0000 (23:21 +0000)]
Initialize flag in DeclInfo.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161141
91177308 -0d34-0410-b5e6-
96231b3b80d8
Dmitri Gribenko [Wed, 1 Aug 2012 23:08:09 +0000 (23:08 +0000)]
Comment AST: add DeclInfo to store information about the declaration. Sema was
already extracting most of this, but discarding at the end of semantic analysis.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161140
91177308 -0d34-0410-b5e6-
96231b3b80d8
Dmitri Gribenko [Wed, 1 Aug 2012 22:48:16 +0000 (22:48 +0000)]
Comment to HTML conversion: refactor. Extracted a class to for FullComment
semantic parts -- this will be reused for comment to XML conversion.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161139
91177308 -0d34-0410-b5e6-
96231b3b80d8
Eli Friedman [Wed, 1 Aug 2012 21:02:59 +0000 (21:02 +0000)]
Fix an assertion failure instantiating a constexpr function from within a -dealloc method. PR13401.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161135
91177308 -0d34-0410-b5e6-
96231b3b80d8
Hans Wennborg [Wed, 1 Aug 2012 18:53:19 +0000 (18:53 +0000)]
TLS is not supported on OpenBSD
This fixes PR13502 and adds a test to keep track of which
targets support TLS and which do not.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161124
91177308 -0d34-0410-b5e6-
96231b3b80d8
Nuno Lopes [Wed, 1 Aug 2012 17:02:30 +0000 (17:02 +0000)]
add test for PR13497
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161119
91177308 -0d34-0410-b5e6-
96231b3b80d8
Manuel Klimek [Wed, 1 Aug 2012 08:48:27 +0000 (08:48 +0000)]
Fix typo.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161106
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Jasper [Wed, 1 Aug 2012 08:40:24 +0000 (08:40 +0000)]
Add missing tests for class template specialization and template
argument matchers.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161102
91177308 -0d34-0410-b5e6-
96231b3b80d8
John McCall [Wed, 1 Aug 2012 05:04:58 +0000 (05:04 +0000)]
When devirtualizing the conversion to a virtual base subobject,
don't explode if the offset we get is zero. This can happen if
you have an empty virtual base class.
While I'm at it, remove an unnecessary block from the IR-generation
of the null-check, mark the eventual GEP as inbounds, and generally
prettify.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161100
91177308 -0d34-0410-b5e6-
96231b3b80d8
Dmitri Gribenko [Wed, 1 Aug 2012 00:48:00 +0000 (00:48 +0000)]
Comment to HTML conversion: skip \tparam commands with whitespace paragraphs
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161096
91177308 -0d34-0410-b5e6-
96231b3b80d8
Dmitri Gribenko [Wed, 1 Aug 2012 00:21:12 +0000 (00:21 +0000)]
Comment to HTML conversion: escape HTML special characters in command arguments
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161094
91177308 -0d34-0410-b5e6-
96231b3b80d8
Aaron Ballman [Tue, 31 Jul 2012 22:40:31 +0000 (22:40 +0000)]
Explicitly defaulted constructors cannot be used for default initialization.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161088
91177308 -0d34-0410-b5e6-
96231b3b80d8
Dmitri Gribenko [Tue, 31 Jul 2012 22:37:06 +0000 (22:37 +0000)]
Comment parsing: add support for \tparam command on all levels.
The only caveat is renumbering CXCommentKind enum for aesthetic reasons -- this
breaks libclang binary compatibility, but should not be a problem since API is
so new.
This also fixes PR13372 as a side-effect.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161087
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 31 Jul 2012 22:15:04 +0000 (22:15 +0000)]
When testing whether we can perform copy or move initialization, be
sure to supply an initialization location. Fixes <rdar://problem/
11951661 >.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161084
91177308 -0d34-0410-b5e6-
96231b3b80d8
David Blaikie [Tue, 31 Jul 2012 20:29:59 +0000 (20:29 +0000)]
Include clang-check as part of the clang installation.
This also tidies up a couple of other tools we were (partially) installing:
* c-index-test was being installed but shouldn't be (it's just a clang-dev tool)
* diagtool was being installed in cmake but not make (& shouldn't be installed in either)
Review by Manuel Klimek, Doug Gregor, and Chandler Carruth.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161073
91177308 -0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Tue, 31 Jul 2012 19:02:02 +0000 (19:02 +0000)]
Consider the visibility of template template arguments. GCC doesn't, but it also
fails to consider the linkage, which we were already considering.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161070
91177308 -0d34-0410-b5e6-
96231b3b80d8
Jordan Rose [Tue, 31 Jul 2012 18:22:40 +0000 (18:22 +0000)]
[analyzer] Control C++ inlining with a macro in ExprEngineCallAndReturn.cpp.
For now this will stay on, but this way it's easy to switch off if we need
to pull back our support for a while.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161064
91177308 -0d34-0410-b5e6-
96231b3b80d8
Jordan Rose [Tue, 31 Jul 2012 18:04:59 +0000 (18:04 +0000)]
[analyzer] Turn -cfg-add-initializers on by default, and remove the flag.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161060
91177308 -0d34-0410-b5e6-
96231b3b80d8
Jordan Rose [Tue, 31 Jul 2012 18:04:53 +0000 (18:04 +0000)]
[analyzer] Don't try to inline if there's no region for a message receiver.
While usually we'd use a symbolic region rather than a straight-up Unknown,
we can still generate unknowns via array subscripts with symbolic indexes.
(And if this ever changes in the future, we still shouldn't crash.)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161059
91177308 -0d34-0410-b5e6-
96231b3b80d8
Jordan Rose [Tue, 31 Jul 2012 18:04:49 +0000 (18:04 +0000)]
[analyzer] Add a FIXME about devirtualization in ctors/dtors.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161058
91177308 -0d34-0410-b5e6-
96231b3b80d8
Hans Wennborg [Tue, 31 Jul 2012 16:37:47 +0000 (16:37 +0000)]
-Wformat: better handling of qualifiers on pointer arguments
Warn about using pointers to const-qualified types as arguments to
scanf. Ignore the volatile qualifier when checking if types match.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161052
91177308 -0d34-0410-b5e6-
96231b3b80d8
Jordan Rose [Tue, 31 Jul 2012 16:34:07 +0000 (16:34 +0000)]
[analyzer] Getting an lvalue for a reference field still requires a load.
This was causing a crash in our array-to-pointer logic, since the region
was clearly not an array.
PR13440 / <rdar://problem/
11977113 >
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161051
91177308 -0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 31 Jul 2012 15:27:48 +0000 (15:27 +0000)]
Tweak code-completion heuristics deciding between a lambda
code-completion and an Objective-C message send, based on Jordan's
feedback.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161049
91177308 -0d34-0410-b5e6-
96231b3b80d8
Manuel Klimek [Tue, 31 Jul 2012 14:45:10 +0000 (14:45 +0000)]
This test actually works on Win32...
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161048
91177308 -0d34-0410-b5e6-
96231b3b80d8
Manuel Klimek [Tue, 31 Jul 2012 13:56:54 +0000 (13:56 +0000)]
Fixes a segfault in Tooling when using pch's:
Clear the FileManager's stat cache in between running
translation units, as the stat cache loaded from a pch
is only valid for one compiler invocation.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161047
91177308 -0d34-0410-b5e6-
96231b3b80d8
Benjamin Kramer [Tue, 31 Jul 2012 11:45:39 +0000 (11:45 +0000)]
Remove deprecated getNameAsCString methods.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161044
91177308 -0d34-0410-b5e6-
96231b3b80d8
Jiangning Liu [Tue, 31 Jul 2012 10:52:55 +0000 (10:52 +0000)]
Add two more .keep files to avoid the missing of empty folders in git repository.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161043
91177308 -0d34-0410-b5e6-
96231b3b80d8
Jiangning Liu [Tue, 31 Jul 2012 10:24:27 +0000 (10:24 +0000)]
Add two .keep files to avoid the missing of empty folders in git repository.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161042
91177308 -0d34-0410-b5e6-
96231b3b80d8
Alexander Kornienko [Tue, 31 Jul 2012 09:37:40 +0000 (09:37 +0000)]
Added -ast-list option to dump filterable AST decl node names.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161040
91177308 -0d34-0410-b5e6-
96231b3b80d8
Jiangning Liu [Tue, 31 Jul 2012 08:06:29 +0000 (08:06 +0000)]
Support ARM hard float (arm-linux-gnueabihf).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161038
91177308 -0d34-0410-b5e6-
96231b3b80d8
Sylvestre Ledru [Tue, 31 Jul 2012 06:56:50 +0000 (06:56 +0000)]
Fix some minor typos
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161036
91177308 -0d34-0410-b5e6-
96231b3b80d8