Chris Lattner
|
44f8a66bcc
|
Fix test/Preprocessor/macro_defined.c, factor some code.
llvm-svn: 38627
|
2006-07-03 01:27:27 +00:00 |
Chris Lattner
|
d94adee36d
|
new testcase
llvm-svn: 38626
|
2006-07-03 01:26:39 +00:00 |
Chris Lattner
|
aaf09115c4
|
Implement a FIXME: reject '#define defined'.
llvm-svn: 38625
|
2006-07-03 01:17:59 +00:00 |
Chris Lattner
|
e3e81ea8aa
|
Refactor some code into a new Lexer::Stringify method.
llvm-svn: 38624
|
2006-07-03 01:13:26 +00:00 |
Chris Lattner
|
d1236047a9
|
Correctly stringify emitted #line directives in -E mode.
llvm-svn: 38623
|
2006-07-03 01:12:52 +00:00 |
Chris Lattner
|
0766e592ce
|
Implement a FIXME: correctly stringify filenames generated by __LINE__.
llvm-svn: 38622
|
2006-07-03 01:07:01 +00:00 |
Chris Lattner
|
4d5e1a72f4
|
Classify fixme's
llvm-svn: 38621
|
2006-07-03 01:01:29 +00:00 |
Chris Lattner
|
505c547b8e
|
Cleanup fixme comments
llvm-svn: 38620
|
2006-07-03 00:55:48 +00:00 |
Chris Lattner
|
98a5312478
|
Give tokens expanded from _Pragma directives correct source locations.
This implements test/Preprocessor/_Pragma-location.c
llvm-svn: 38619
|
2006-07-02 23:00:20 +00:00 |
Chris Lattner
|
e55e11ad04
|
new testcase
llvm-svn: 38618
|
2006-07-02 22:59:48 +00:00 |
Chris Lattner
|
a37664b3fb
|
Move a virtual method out-of-line
llvm-svn: 38617
|
2006-07-02 22:45:51 +00:00 |
Chris Lattner
|
b694ba7b40
|
Move some Pragma-related methods from Preprocessor.cpp to Pragma.cpp
llvm-svn: 38616
|
2006-07-02 22:41:36 +00:00 |
Chris Lattner
|
1840e491dc
|
Remove Lexer::BufferStart, an unneeded instance var.
llvm-svn: 38615
|
2006-07-02 22:30:01 +00:00 |
Chris Lattner
|
8bbfe46475
|
Fix Preprocessor/_Pragma-physloc.c, by making sure that the returned location
of the token is relative to the start of the buffer, not relative to the start
position of the lexer.
llvm-svn: 38614
|
2006-07-02 22:27:49 +00:00 |
Chris Lattner
|
20fc36c416
|
new testcase
llvm-svn: 38613
|
2006-07-02 22:27:09 +00:00 |
Chris Lattner
|
5599d5f6b8
|
Fix test/Preprocessor/pragma_unknown.c
llvm-svn: 38612
|
2006-07-02 21:50:38 +00:00 |
Chris Lattner
|
a7e7e2b92d
|
new testcase
llvm-svn: 38611
|
2006-07-02 21:50:31 +00:00 |
Chris Lattner
|
e4af3ac6b4
|
Fix some minor issues with _Pragma
llvm-svn: 38610
|
2006-07-02 21:32:47 +00:00 |
Chris Lattner
|
ecfeafe3ba
|
Fix some minor bugs handling _Pragma, including
test/Preprocessor/_Pragma_syshdr.c
llvm-svn: 38609
|
2006-07-02 21:26:45 +00:00 |
Chris Lattner
|
d6178a6870
|
new testcase
llvm-svn: 38608
|
2006-07-02 21:23:03 +00:00 |
Chris Lattner
|
ef0dbae5ab
|
remove dead ivar
llvm-svn: 38607
|
2006-07-02 21:17:13 +00:00 |
Chris Lattner
|
69772b026e
|
Implement the _Pragma-style of pragma handling, implementing
test/Preprocessor/_Pragma-poison.c.
This unifies the MacroStack and IncludeStack together into IncludeMacroStack.
llvm-svn: 38606
|
2006-07-02 20:34:39 +00:00 |
Chris Lattner
|
0acd4fee90
|
new testcase
llvm-svn: 38605
|
2006-07-02 20:31:44 +00:00 |
Chris Lattner
|
a85a9d2db3
|
Tolerate conditions where there is no line #
llvm-svn: 38604
|
2006-07-02 20:07:52 +00:00 |
Chris Lattner
|
4cca5ba7da
|
Allow the buffer start/end positions to be optionally specified. Make sure
to use them instead of the current buffer start/end when computing diagnostics.
llvm-svn: 38603
|
2006-07-02 20:05:54 +00:00 |
Chris Lattner
|
847e0e4552
|
Implement __TIMESTAMP__
llvm-svn: 38602
|
2006-07-01 23:49:16 +00:00 |
Chris Lattner
|
c1283b90a0
|
Implement __INCLUDE_LEVEL__ and __BASE_FILE__
llvm-svn: 38601
|
2006-07-01 23:16:30 +00:00 |
Chris Lattner
|
630b33c39e
|
Implement __FILE__
llvm-svn: 38600
|
2006-07-01 22:46:53 +00:00 |
Chris Lattner
|
4c37a8c353
|
Eliminate SourceManager::createFileIDForMacroExp, inlining it into its single use.
llvm-svn: 38599
|
2006-06-30 06:15:08 +00:00 |
Chris Lattner
|
7d1b0062d2
|
Use a new helper to do this much more simply.
llvm-svn: 38598
|
2006-06-30 06:14:45 +00:00 |
Chris Lattner
|
c673f905d8
|
Implement the __TIME__ and __DATE__ builtin macros.
llvm-svn: 38597
|
2006-06-30 06:10:41 +00:00 |
Chris Lattner
|
7d6a4f6746
|
Expose a useful helper method.
llvm-svn: 38596
|
2006-06-30 06:10:08 +00:00 |
Chris Lattner
|
098dfc5e7e
|
Expose a new form of the getToken method.
llvm-svn: 38595
|
2006-06-30 06:09:36 +00:00 |
Chris Lattner
|
2dffd2b445
|
Factor logical line lookup better.
llvm-svn: 38594
|
2006-06-29 16:44:08 +00:00 |
Chris Lattner
|
f378f9a08f
|
Fix the predicate to be more strict
llvm-svn: 38593
|
2006-06-29 16:43:46 +00:00 |
Chris Lattner
|
677e3a202c
|
new testcase
llvm-svn: 38592
|
2006-06-29 16:25:13 +00:00 |
Chris Lattner
|
4fb517bea8
|
Give tokens from the scratch buffer correct source locations.
llvm-svn: 38591
|
2006-06-29 06:34:53 +00:00 |
Chris Lattner
|
dc9f9bf80e
|
Due to generated tokens expanded by macros, there can be multiple MacroExpansion fileid's, loop over them until we get to something real.
llvm-svn: 38590
|
2006-06-29 06:33:42 +00:00 |
Chris Lattner
|
0b8cfc2e69
|
Implement the __LINE__ builtin macro.
llvm-svn: 38589
|
2006-06-28 06:49:17 +00:00 |
Chris Lattner
|
3690f1513a
|
Initial implementation of the ScratchBuffer class.
llvm-svn: 38588
|
2006-06-28 06:48:36 +00:00 |
Chris Lattner
|
ec43eaf07a
|
Add a new SourceBuffer::getNewMemBuffer method.
llvm-svn: 38587
|
2006-06-28 06:35:31 +00:00 |
Chris Lattner
|
677757a2c0
|
Remove dead variables.
Add initial support for builtin macros, including warning if they are defined or undefined.
Register __LINE__ as a builtin macro.
llvm-svn: 38586
|
2006-06-28 05:26:32 +00:00 |
Chris Lattner
|
274690ce76
|
Reindent comments.
llvm-svn: 38585
|
2006-06-28 05:25:35 +00:00 |
Chris Lattner
|
78d6734b34
|
Remove dead variable.
llvm-svn: 38584
|
2006-06-28 05:02:28 +00:00 |
Chris Lattner
|
f373a4af56
|
Refactor HandleIdentifier to pull macro expansion into its own method.
llvm-svn: 38583
|
2006-06-26 06:16:29 +00:00 |
Chris Lattner
|
e9a5e18e47
|
remove some obsolete comments
llvm-svn: 38582
|
2006-06-26 06:08:38 +00:00 |
Chris Lattner
|
f4449e5da3
|
Allow expansion to single token identifiers if they are not macros
llvm-svn: 38581
|
2006-06-26 04:55:25 +00:00 |
Chris Lattner
|
67b07cb6fe
|
Implement Preprocessor/macro_expandloc.c by giving the optimized macro
expansion case a correct source location.
llvm-svn: 38580
|
2006-06-26 02:03:42 +00:00 |
Chris Lattner
|
f6fd68add5
|
Fix Preprocessor/macro_expandloc2.c
llvm-svn: 38579
|
2006-06-26 01:48:23 +00:00 |
Chris Lattner
|
236ed5200b
|
Add a note
llvm-svn: 38578
|
2006-06-26 01:36:29 +00:00 |