Daniel Dunbar
77c7e3be19
Driver: Include Casting header definitions in a few places, add
...
Action::getInputs.
llvm-svn: 67035
2009-03-16 05:17:44 +00:00
Sebastian Redl
ed0f3b021e
Parser support for rvalue references.
...
llvm-svn: 67033
2009-03-15 22:02:01 +00:00
Anders Carlsson
5bd30395b9
(Hopefully) instantiate dependent array types correctly.
...
llvm-svn: 67032
2009-03-15 20:12:13 +00:00
Anders Carlsson
27de6a5e91
Handle static_asserts when instantiating structs.
...
llvm-svn: 67031
2009-03-15 18:44:04 +00:00
Anders Carlsson
a39058118b
Add the ability to clone integer and string literals. Use it when instantiating template expressions.
...
llvm-svn: 67030
2009-03-15 18:34:13 +00:00
Sebastian Redl
6d4256c3c1
Convert a bunch of actions to smart pointers, and also bring PrintParserCallbacks a bit more in line with reality.
...
llvm-svn: 67029
2009-03-15 17:47:39 +00:00
Douglas Gregor
afd7c9c855
Fix bitfield-instantiation ownership bug noticed by Anders
...
llvm-svn: 67028
2009-03-15 17:43:26 +00:00
Anders Carlsson
78e2bc0328
Make sure to release the expressions.
...
llvm-svn: 67027
2009-03-15 17:35:16 +00:00
Sebastian Redl
1889b6e219
Keep diagnostic td in sync with r67015.
...
llvm-svn: 67026
2009-03-15 10:42:31 +00:00
Daniel Dunbar
27a08fab6b
Add note on theoretical IRgen improvement.
...
llvm-svn: 67024
2009-03-15 06:39:56 +00:00
Daniel Dunbar
64895a0703
Remove a FIXME.
...
llvm-svn: 67022
2009-03-15 06:05:20 +00:00
Daniel Dunbar
81191f67bd
Fix comment typo.
...
llvm-svn: 67021
2009-03-15 05:58:43 +00:00
Daniel Dunbar
2e8536cfaa
Only intptr_t is protected by __intptr_t_defined.
...
llvm-svn: 67018
2009-03-15 03:16:47 +00:00
Daniel Dunbar
5af8b78ea9
Driver: Typo fix.
...
llvm-svn: 67017
2009-03-15 01:46:37 +00:00
Daniel Dunbar
02ae54c549
Driver: claim input arguments when building phases.
...
llvm-svn: 67016
2009-03-15 01:40:22 +00:00
Daniel Dunbar
adc91e6597
Driver: Start warning about unused arguments.
...
- This has a number of current flaws, enabling now to flush out
problems while bringing up other parts.
llvm-svn: 67015
2009-03-15 01:38:15 +00:00
Daniel Dunbar
ae0e55eb7f
Driver: Update ArgList::{hasArg,getLastArg} to optionally claim the
...
arguments if they exist.
llvm-svn: 67014
2009-03-15 00:48:16 +00:00
Daniel Dunbar
36a3e92521
Don't accept '$' in identifiers in assembler-with-cpp mode.
...
llvm-svn: 67013
2009-03-15 00:11:28 +00:00
Sebastian Redl
4ae9b126fe
Revert the switch to the tablegen diags. It fails for seperate objdir builds and cmake builds, and I have no clue what to do about it. Revisit this after someone with a clue about the build systems has looked at it.
...
llvm-svn: 67009
2009-03-14 15:58:54 +00:00
Sebastian Redl
51e037e3c4
Switch diagnostics from .def to tablegen files. Please validate the Windows build.
...
llvm-svn: 67007
2009-03-14 12:00:12 +00:00
Sebastian Redl
5a8987ca51
Update tablegen diagnostic files to be in sync with the def files.
...
llvm-svn: 67004
2009-03-14 10:09:49 +00:00
Ted Kremenek
fcf7348f80
Update checker build.
...
llvm-svn: 66999
2009-03-14 00:46:46 +00:00
Anders Carlsson
54b2698587
Handle dependent types/exprs in static_assert expressions.
...
llvm-svn: 66997
2009-03-14 00:33:21 +00:00
Ted Kremenek
d0fa573a7d
Remove dead DeclarationName constructors that involving knowing about the
...
internal implementation of Selector.
llvm-svn: 66996
2009-03-14 00:27:40 +00:00
Anders Carlsson
5bbe1d7ba7
More static_assert work. Check that the assert expr is valid and show an error if it's false. Create the declaration and add it to the current context.
...
llvm-svn: 66995
2009-03-14 00:25:26 +00:00
Douglas Gregor
52aba87df7
Check for overflow and signedness problems with template
...
arguments. Eliminates a FIXME.
llvm-svn: 66993
2009-03-14 00:20:21 +00:00
Ted Kremenek
9a46804ca8
Make Selector::getIdentifierInfo() private. I took a first attempt at this last
...
week in:
http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20090302/013580.html
That patch caused the output of the diagnostics to change. Since
'DeclarationName' can already reason about Selectors and the Diagnostics logic
reasons about DeclarationName, there is no additional code needed to get the
diagnostics working by making Selector::getIdentifierInfo() private.
llvm-svn: 66992
2009-03-14 00:20:08 +00:00
Daniel Dunbar
29de588ac2
Don't run simplify lib calls with -ffreestanding (fix for already
...
failing test case).
llvm-svn: 66991
2009-03-14 00:15:04 +00:00
Douglas Gregor
69bd16d814
Make sure that the canonical representation of integral template arguments uses the bitwidth and signedness of the template parameter
...
llvm-svn: 66990
2009-03-14 00:03:48 +00:00
Douglas Gregor
084d855a17
Implement template instantiation for the prefix unary operators. As
...
always, refactored the existing logic to tease apart the parser action
and the semantic analysis shared by the parser and template
instantiation.
llvm-svn: 66987
2009-03-13 23:49:33 +00:00
Daniel Dunbar
1bb3b2ccf3
Driver: Add types::{isAcceptedByClang,isCXX} predicates.
...
llvm-svn: 66986
2009-03-13 23:46:19 +00:00
Daniel Dunbar
313c291269
Driver: Add simple Job classes, simple wrappers for information about
...
what processes to execute during a compilation.
llvm-svn: 66985
2009-03-13 23:36:33 +00:00
Mike Stump
5469f29aa9
Do up codegen for function static data and externs in functions in block
...
literals.
llvm-svn: 66984
2009-03-13 23:34:28 +00:00
Anders Carlsson
b4cf3ad61b
Pass more sane arguments to ActOnStaticAssertDeclaration
...
llvm-svn: 66983
2009-03-13 23:29:20 +00:00
Daniel Dunbar
438ff8dbe7
Driver: Action vtables were still hungry.
...
llvm-svn: 66980
2009-03-13 23:17:57 +00:00
Ted Kremenek
6483bc2f19
BlockDecl::Destroy now deallocates BlockDecl's array of ParmVarDecl*.
...
llvm-svn: 66979
2009-03-13 23:17:24 +00:00
Daniel Dunbar
3f261ff66b
Driver: Provide food and shelter for Action vtables.
...
llvm-svn: 66978
2009-03-13 23:08:03 +00:00
Daniel Dunbar
94d48e0bd0
Force triple for a couple test cases.
...
llvm-svn: 66974
2009-03-13 22:48:51 +00:00
Chris Lattner
c890aa2802
wire up a new -fno-builtin option, make it control things like simplifylibcalls,
...
etc and make freestanding imply it.
llvm-svn: 66972
2009-03-13 22:38:49 +00:00
Ted Kremenek
85d00b14fa
Include component warning TableGen files in Diagnostic.td.
...
llvm-svn: 66969
2009-03-13 22:19:07 +00:00
Daniel Dunbar
95e6b191cb
Driver: Sprinkle some consts in, stub out BuildJobs method.
...
llvm-svn: 66968
2009-03-13 22:12:33 +00:00
Daniel Dunbar
a493ff47bd
Update test.
...
llvm-svn: 66967
2009-03-13 22:11:42 +00:00
Chris Lattner
622b1041ca
add a testcase for recursion through blocks pointers, rdar://6676764.
...
llvm-svn: 66965
2009-03-13 22:00:25 +00:00
Chris Lattner
e07ea35817
fix PR3798 by ignoring all diagnostics generated while repreprocessing a file in rewrite macros.
...
llvm-svn: 66961
2009-03-13 21:44:46 +00:00
Chris Lattner
83aba00ee8
make Preprocessor::Diags be a pointer instead of a reference.
...
llvm-svn: 66955
2009-03-13 21:17:43 +00:00
Chris Lattner
80c21df8ea
use accessor instead of poking ivar directly
...
llvm-svn: 66954
2009-03-13 21:17:23 +00:00
Douglas Gregor
4b7f3d7344
Devious test-case involved overload resolution and ADL during template instantiation.
...
llvm-svn: 66951
2009-03-13 21:04:12 +00:00
Daniel Dunbar
c178c5f126
Driver: Desensitize test to location of input.
...
llvm-svn: 66950
2009-03-13 21:03:35 +00:00
Douglas Gregor
0950e41b73
Implement template instantiation for several more kinds of expressions:
...
- C++ function casts, e.g., T(foo)
- sizeof(), alignof()
More importantly, this allows us to verify that we're performing
overload resolution during template instantiation, with
argument-dependent lookup and the "cached" results of name lookup from
the template definition.
llvm-svn: 66947
2009-03-13 21:01:28 +00:00
Ted Kremenek
decee183ee
Fix typo.
...
llvm-svn: 66944
2009-03-13 20:47:27 +00:00