Thiago Macieira
d0457b70e3
Compile the C++ parser library with Sun CC 5.9.
...
Things you mustn't do:
1) end an enum with a comma
2) #include <cxxxx> and not use std::
3) use anonymous structures
All three things are invalid C++. Anonymous structures inside
anonymous unions are allowed by GCC, but that doesn't mean it's valid.
2009-08-03 14:59:42 +02:00
Roberto Raggi
3e54a65a69
Replaced T_INT_LITERAL and T_FLOAT_LITERAL with T_NUMERIC_LITERAL.
2009-07-10 15:45:09 +02:00
Roberto Raggi
d788306781
Don't expand object-like macro when preprocessing in fast-mode.
2009-07-09 17:52:31 +02:00
Roberto Raggi
2f649be146
Disable macro expansion when preprocessing in fast-mode.
2009-07-06 09:53:25 +02:00
Roberto Raggi
b2df9bddec
Made foreach a keyword when parsing with qtMocRun
2009-07-03 11:00:36 +02:00
Roberto Raggi
3cdd48067c
Introduced ForeachStatementAST and the bits to parse foreach statements when qtMocRun is enabled.
2009-07-03 09:12:58 +02:00
Roberto Raggi
ed2eb296b1
Fixed possible crash in the preprocessing phase when the first token in the
...
`original' (not preprocessed) token stream has the whitespace atttribute on.
2009-07-01 10:49:27 +02:00
Roberto Raggi
1219b31e03
Produce `join' tokens.
2009-06-29 14:31:25 +02:00
Jason McDonald
884b7af769
Update license headers and sales contact details.
...
Reviewed-by: Trust Me
2009-06-17 00:01:27 +10:00
Roberto Raggi
e2a0a4d7c5
Keep the original encoded text around while preprocessing.
2009-06-15 15:39:20 +02:00
Roberto Raggi
bdf6c3d0be
Store the encoded file name in a QString.
2009-05-27 15:34:13 +02:00
Roberto Raggi
d46a1447f1
Fixed possible crash in std::isspace(ch) when ch is a unicode char.
2009-05-15 16:01:02 +02:00
Roberto Raggi
483449e420
There is no output stream so there's nothing to expand.
2009-05-13 18:16:28 +02:00
Roberto Raggi
caad98ec4c
Refactored a bit the preprocessor so we can use it to generate file dependencies.
2009-05-13 15:29:59 +02:00
Roberto Raggi
424dd77e18
Added support for Q_SIGNAL and Q_SLOT.
2009-03-25 11:50:17 +01:00
Thorbjørn Lindeijer
b789ffa91b
Added and corrected copyright headers
2009-03-20 14:59:12 +01:00
dt
f7240bd665
Fixes: bin dir of msvc qt versions was not added to the path
...
The setting of msvc environments variables overwrote that. Fix that by running the script with the correct environment.
2009-03-19 18:30:11 +01:00
Roberto Raggi
4613da1c8b
Mark the generated tokens in the token stream.
2009-03-04 14:36:47 +01:00
Roberto Raggi
064201ff85
Mark the generated regions of text.
2009-03-04 14:36:47 +01:00
Roberto Raggi
e253f39360
Store the actual arguments of the macro expansions.
2009-03-04 11:47:30 +01:00
Roberto Raggi
5bbb882b3d
Introduced expandBuiltinMacro().
2009-03-03 17:23:12 +01:00
Roberto Raggi
ca7cc122cb
Simplified Preprocessor::preprocess()
2009-03-03 17:06:42 +01:00
Roberto Raggi
7327a8ea4d
Introduced skipActualArguments().
2009-03-03 16:59:55 +01:00
Roberto Raggi
1d75990667
Introduced processObjectLikeMacro().
2009-03-03 16:56:55 +01:00
Roberto Raggi
b316939dff
Introduced expandObjectLikeMacro().
2009-03-03 16:46:21 +01:00
Roberto Raggi
55d0e4f860
Improved the way we expand function-like macros when we can't collect all the arguments.
2009-03-03 16:32:08 +01:00
Roberto Raggi
656d70fa74
Introduced expandFunctionLikeMacro().
2009-03-03 16:19:03 +01:00
Roberto Raggi
3d6f7de909
Context-sensitive highlighting.
2009-03-03 13:57:08 +01:00
Roberto Raggi
63c012a242
Fixed: token separators.
2009-03-03 11:28:36 +01:00
Roberto Raggi
4c7e3ed836
Add the _right_ number of spaces.
2009-03-03 11:14:12 +01:00
Roberto Raggi
454438e47d
More cleanup.
2009-03-03 10:41:20 +01:00
Roberto Raggi
ae04679373
Introduced processNewline() and processSkippingBlocks().
2009-03-03 10:27:02 +01:00
Roberto Raggi
c1ea5126dd
Reserve some space.
2009-03-03 10:16:43 +01:00
Roberto Raggi
d7e86c22b6
Cleanup the function-like macro expansion.
2009-03-03 10:13:51 +01:00
Roberto Raggi
2a8327e57f
Obsoleted code.
2009-03-03 09:58:54 +01:00
Roberto Raggi
ba200c7834
Some minor cleanup in processInclude().
2009-03-03 09:52:50 +01:00
Roberto Raggi
ebe17889f4
Some refactoring of the preprocessor, it'll simplify my next commits.
2009-03-02 19:03:07 +01:00
Roberto Raggi
ed69c39906
More cleanup
2009-03-02 18:15:58 +01:00
Roberto Raggi
f4e875b9bb
Initial testing of the preprocessor.
2009-03-02 11:30:43 +01:00
hjk
8ca887aae2
Fixes: change file license headers to include LGPL
2009-02-25 09:15:00 +01:00
Roberto Raggi
f63b8e6693
--warnings
2009-02-16 18:56:35 +01:00
Roberto Raggi
4ffed7a119
Fixes: Parsing of #import directives.
2009-02-05 14:30:25 +01:00
Roberto Raggi
44ed62c181
Fixes: Expand the #elif's condition.
2009-01-20 11:29:54 +01:00
Daniel Molkentin
59affcfffc
Bump year in licence header.
2009-01-13 19:22:14 +01:00
Roberto Raggi
e325aa38d9
Nicer implementation of CPlusPlus::Macro.
2008-12-22 13:55:42 +01:00
Roberto Raggi
753ddb7ce0
Some cleanup in the C++ preprocessor.
...
Introduced pp-scanner.cpp, renamed `pp' to `Preprocessor' and removed useless #includes.
2008-12-22 11:40:53 +01:00
hjk
da3cb14483
chancge Nokia GPL exception version from 1.2 to 1.3
2008-12-16 17:20:00 +01:00
Roberto Raggi
d454607264
Implemented tooltip and lookat for #include directives.
2008-12-10 17:21:28 +01:00
Roberto Raggi
9c9308b91b
QByteArray::toLong() does not auto-detect the base and also fixed a typo in
...
the evaluator of bit-or expressions.
2008-12-10 10:47:26 +01:00
Roberto Raggi
9653f4b7e9
Fixed macro locations.
2008-12-09 16:20:21 +01:00