Daniel Dunbar
feedba68b5
Don't #include <stdio.h> when tests don't need it, or use clang instead of clang-cc when they do.
...
llvm-svn: 89070
2009-11-17 08:57:36 +00:00
Daniel Dunbar
f85fabec35
Remove some redundant tests.
...
llvm-svn: 89069
2009-11-17 08:57:06 +00:00
John McCall
7731b855dc
Commit this random test case.
...
llvm-svn: 89068
2009-11-17 08:57:02 +00:00
Duncan Sands
8b9336bd98
Following a suggestion of Daniel Dunbar, stop people passing the name
...
as the isSigned bool to CreateIntCast by having this resolve to a call
to a private method, rather than by using a gcc attribute.
llvm-svn: 89067
2009-11-17 08:34:52 +00:00
Nick Lewycky
b7993d61f2
Revert r88939.
...
llvm-svn: 89066
2009-11-17 08:11:44 +00:00
Daniel Dunbar
4930e3357b
Add -fblocks, -stack-protector, and -fobjc-nonfragile-abi defaulting to driver,
...
instead of using getDefaultLangOptions.
- Remove unused -fobjc-tight-layout while at it.
llvm-svn: 89065
2009-11-17 08:07:36 +00:00
Daniel Dunbar
f408303a3f
Add driver::types::isObjC predicate.
...
llvm-svn: 89064
2009-11-17 08:07:16 +00:00
Zhongxing Xu
4668c7ed1c
Add EvalEndPath interface to Checker. Now we can check memory leaked at the
...
end of the path. Need to unify interfaces.
llvm-svn: 89063
2009-11-17 07:54:15 +00:00
Nick Lewycky
7efd07fd9d
Fail less mysteriously; inform the user that their LLVM was not built with
...
libffi support and that the interpreter can't call external functions without
it. Patch by Timo Juhani Lindfors! Fixes PR5466.
llvm-svn: 89062
2009-11-17 07:52:09 +00:00
John McCall
f0f1cf087e
Store "sugared" decls in LookupResults (i.e. decl aliases like using declarations);
...
strip the sugar off in getFoundDecl() and getAsSingleDecl(), but leave it on for
clients like overload resolution who want to use the iterators.
Refactor a few pieces of overload resolution to strip off using declarations in
a single place. Don't do anything useful with the extra context knowledge yet.
llvm-svn: 89061
2009-11-17 07:50:12 +00:00
Zhongxing Xu
f19f251523
Clear the dest set.
...
llvm-svn: 89060
2009-11-17 07:19:51 +00:00
Lang Hames
48770eb61f
Fixed call to wrong constructor.
...
llvm-svn: 89059
2009-11-17 07:19:50 +00:00
Daniel Dunbar
4656c53e12
Move -fnext-runtime defaulting to driver (and change clang-cc default to
...
-fnext-runtime), instead of using getDefaultLangOptions.
llvm-svn: 89058
2009-11-17 07:07:28 +00:00
Daniel Dunbar
0730e4f7e0
Move -fms-extensions defaulting to driver, instead of using getDefaultLangOptions.
...
llvm-svn: 89057
2009-11-17 07:06:20 +00:00
Owen Anderson
759d72dc8e
Fix a race condition in the Timer class.
...
llvm-svn: 89056
2009-11-17 07:06:10 +00:00
Ted Kremenek
98524b1ce2
Sort visitor methods. No functionality change.
...
llvm-svn: 89055
2009-11-17 07:02:15 +00:00
Douglas Gregor
5492edc852
Be more careful with anonymous namespaces, since Clang diagnoses the ambiguity here
...
llvm-svn: 89054
2009-11-17 06:52:37 +00:00
Daniel Dunbar
d609b7bbe9
Move char-is-signed defaulting to driver, instead of using
...
getDefaultLangOptions.
llvm-svn: 89053
2009-11-17 06:37:03 +00:00
Ted Kremenek
99b944c037
Add newline at the end of the file.
...
llvm-svn: 89052
2009-11-17 06:34:24 +00:00
Douglas Gregor
120f6a6675
Silence some warnings produced by Clang, and add a missing header
...
llvm-svn: 89051
2009-11-17 06:14:37 +00:00
Douglas Gregor
e0b2866147
Implement template instantiation for using directives, which is dead simple.
...
Also, make the "don't know how to instantiate a particular kind of
declaration" diagnostic nicer, so we don't have to trap Clang in a
debugger to figure out what went wrong.
llvm-svn: 89050
2009-11-17 06:07:40 +00:00
Daniel Dunbar
629f6bb95d
Add initial cut at CompilerInvocation::toArgs, which "serializes" the CompilerInvocation into a list of arguments which can be passed to clang-cc (eventually, clang -cc1).
...
- Unfortunately, this is currently a tedious and manual translation. Eventually it would be nice to automatically generate this code.
llvm-svn: 89049
2009-11-17 06:02:29 +00:00
John McCall
3f746828d7
Instead of hanging a using declaration's target decls directly off the using
...
decl, create shadow declarations and put them in scope like normal.
Work in progress.
llvm-svn: 89048
2009-11-17 05:59:44 +00:00
Daniel Dunbar
d6ea9028e7
Simplify PreprocessorOptions, it doesn't need abstracted field access.
...
llvm-svn: 89047
2009-11-17 05:52:41 +00:00
Ted Kremenek
4c4d643b6e
Have clang_getCursorSource() return NULL when the source location is invalid or refers to a built-in buffer. Implements <rdar://problem/7296243>.
...
llvm-svn: 89044
2009-11-17 05:31:58 +00:00
Douglas Gregor
92d8292699
Add missing #include found by Clang
...
llvm-svn: 89043
2009-11-17 05:21:59 +00:00
Douglas Gregor
3fad61786e
Require the object type of a member access expression ("." or "->") to
...
be complete.
llvm-svn: 89042
2009-11-17 05:17:33 +00:00
Daniel Dunbar
a9d7cdf552
Reorder options alphabetically.
...
llvm-svn: 89041
2009-11-17 05:05:17 +00:00
Daniel Dunbar
19b04fff34
Move InitializeAnalyzerOptions for consistency.
...
llvm-svn: 89040
2009-11-17 05:05:08 +00:00
Daniel Dunbar
8870e97dc6
Remove unused NoPreprocess variable.
...
llvm-svn: 89039
2009-11-17 05:04:57 +00:00
Daniel Dunbar
59d964e79f
Remove unused program action.
...
llvm-svn: 89038
2009-11-17 05:04:48 +00:00
Daniel Dunbar
d16ff094f1
Rename CompilerInvocation::DiagOpts -> DiagnosticOpts for consistency.
...
llvm-svn: 89037
2009-11-17 05:04:39 +00:00
Daniel Dunbar
388b9be16b
Add missing defaults to AnalyzerOptions.
...
llvm-svn: 89036
2009-11-17 05:04:28 +00:00
Daniel Dunbar
92881dbe73
Remove unused IsCXXAware and IgnoreSysRoots option from HeaderSearchOptions::Entry.
...
llvm-svn: 89035
2009-11-17 05:04:15 +00:00
Anders Carlsson
dee9a30204
Unify the way destructor epilogues are generated for synthesized and regular destructors. Also fix PR5529.
...
llvm-svn: 89034
2009-11-17 04:44:12 +00:00
Anders Carlsson
cfd3012756
More const is always good.
...
llvm-svn: 89033
2009-11-17 03:57:07 +00:00
Zhongxing Xu
aafa1425e9
Add a comment.
...
llvm-svn: 89032
2009-11-17 03:20:08 +00:00
Mike Stump
3afea1d8fe
Fix typo. Thanks Ted.
...
llvm-svn: 89031
2009-11-17 03:01:03 +00:00
Mike Stump
8f5e6770e7
Add typeinfo support for T* and const T* for all builtin types T.
...
llvm-svn: 89030
2009-11-17 02:57:13 +00:00
Ted Kremenek
5b2592ed65
Add test to verify that the analyzer plist output is what we expect.
...
llvm-svn: 89029
2009-11-17 02:31:39 +00:00
Mike Stump
3f75d552a3
Add typeid for the builtin types. WIP.
...
llvm-svn: 89028
2009-11-17 02:16:21 +00:00
John McCall
27b18f8144
Carry lookup configuration throughout lookup on the LookupResult. Give
...
LookupResult RAII powers to diagnose ambiguity in the results. Other diagnostics
(e.g. access control and deprecation) will be moved to automatically trigger
during lookup as part of this same mechanism.
This abstraction makes it much easier to encapsulate aliasing declarations
(e.g. using declarations) inside the lookup system: eventually, lookup will
just produce the aliases in the LookupResult, and the standard access methods
will naturally strip the aliases off.
llvm-svn: 89027
2009-11-17 02:14:36 +00:00
Jakob Stoklund Olesen
4359796e52
Fix tests after enabling -split-phi-edges.
...
object-size.c aws simply too fragile.
constructor-default-arg.cpp triggers an issue when LiveVariables is run before RALocal.
llvm-svn: 89025
2009-11-17 01:47:01 +00:00
Bill Wendling
bc0020174b
Refactor the code that creates the "dot-label" difference. This may be used in
...
more than one place. No intended functionality change.
llvm-svn: 89024
2009-11-17 01:23:53 +00:00
Eli Friedman
b0bc559b19
PR5526: Make sure to set the right cast kinds for the inserted implicit casts.
...
llvm-svn: 89023
2009-11-17 01:22:05 +00:00
Jim Grosbach
af1ad30a23
When moving a block for table jumps, make sure the prior block terminator
...
is analyzable so it can be updated. If it's not, be safe and don't move the
block.
llvm-svn: 89022
2009-11-17 01:21:04 +00:00
Jakob Stoklund Olesen
9f0d55d8d8
Enable -split-phi-edges by default
...
llvm-svn: 89021
2009-11-17 01:07:22 +00:00
Evan Cheng
d33400e636
MOV64rm should be marked isReMaterializable.
...
llvm-svn: 89019
2009-11-17 00:55:55 +00:00
Douglas Gregor
6c254bf522
When querying type qualifiers on QualType via one of the "non-local"
...
interfaces (which are used throughout the front end), combine the
qualifiers on the QualType instance with the qualifiers on the
canonical type to produce the set of qualifiers that, semantically,
apply to that type. This should design away a large category of
"qualifier-hidden-behind-a-typedef" buts like we saw in PR5383.
Performance-wise, this caused a regression of ~0.5% on Cocoa.h, but
it's totally worth it. We may actually be able to get a little more
performance back by using CanQualType more often.
llvm-svn: 89018
2009-11-17 00:55:50 +00:00
Dan Gohman
82e80019a5
Remove the optimizations that convert BRCOND and BR_CC into
...
unconditional branches or fallthroghes. Instcombine/SimplifyCFG
should be simplifying branches with known conditions.
This fixes some problems caused by these transformations not
updating the MachineBasicBlock CFG.
llvm-svn: 89017
2009-11-17 00:47:23 +00:00