Commit Graph

80 Commits

Author SHA1 Message Date
Roberto Raggi
000b637523 Handle unary ~ operator. 2010-04-27 09:55:19 +02:00
Erik Verbruggen
b4d72a78db Added parser support for Q_INTERFACES. 2010-03-17 10:30:17 +01:00
Roberto Raggi
37c042703f Take the branch when evaluating #ifndef QT_NO_XXX and QT_NO_XXX has been defined in a pro file. 2010-03-12 15:25:48 +01:00
hjk
9595504bda Long live the king! 2010-03-05 11:28:13 +01:00
Roberto Raggi
293f67580d Fixed: Wrong usage highlighting if function's argument list contains comment.
Task-number: QTCREATORBUG-577
2010-03-03 14:11:45 +01:00
Erik Verbruggen
72c3ba791e Fixed pre-processor handling for Q_PROPERTY, Q_ENUMS and Q_FLAGS. 2010-02-22 18:00:26 +01:00
Erik Verbruggen
1af05166d9 Removed Q_DECLARE_FLAGS parsing, leaving it to the CPP to expand it. 2010-02-08 15:41:18 +01:00
Erik Verbruggen
8d8b05da5a Reworked parts of the QtPropertyDeclaration parsing and handling. 2010-02-07 10:49:03 +01:00
Erik Verbruggen
b7cbc9b0c1 Removed methods which always returned a constant (false). 2010-01-28 17:05:26 +01:00
Erik Verbruggen
0fdf02ab4d Changed binary expression parsing to use precedence parsing. 2010-01-28 15:22:50 +01:00
Wolfgang Beck
4b33881729 Merge ichecker branch changes into the mainline. New project can be found under src/tools/ICheck 2010-01-19 15:26:08 +10:00
Tobias Hunger
df2a2dc118 Small inclusion fixes.
* Remove duplicate headers.
 * Move own headers to the top.

Reviewed-by: Roberto Raggi
2010-01-08 15:48:32 +01:00
Christian Kamm
c3cc7cf4d8 Enhance data stored for macros and macro uses.
In preparation for finding macro uses.

* Macro: add offset and length
* MacroUse: add line
* Document: add convenience functions for finding a macro definition, use
  or undefined use at a given location.

Reviewed-by: Erik Verbruggen
2009-12-21 14:57:05 +01:00
Roberto Raggi
599d4aa355 Fixed line/column position of the tokens after multiline string literals. 2009-12-17 16:06:35 +01:00
Roberto Raggi
0be80466b8 Save/Restore the if-level. 2009-12-09 16:01:20 +01:00
mae
c1120587a8 Merge commit 'origin/1.3'
Conflicts:
	src/plugins/cppeditor/cppeditor.cpp
2009-12-03 18:41:21 +01:00
Christian Kamm
cc6c543a75 Compile fix for 42f849c4da.
Reviewed-by: Roberto Raggi
2009-12-03 16:05:53 +01:00
con
8b9c748abb Merge remote branch 'origin/1.3' 2009-12-03 15:15:08 +01:00
Roberto Raggi
42f849c4da Fixed line/column position after macro expansion.
Task-Number: QTCREATORBUG-409
2009-12-03 15:08:39 +01:00
Roberto Raggi
527a9bd526 Inital support for Q_D/Q_Q declarations. 2009-11-30 17:07:22 +01:00
Roberto Raggi
de82f1e3f7 Initialize the pp's engine _dot member. 2009-10-21 17:05:36 +02:00
Roberto Raggi
146ec6248d Renamed Preprocessor::_true_test 2009-10-21 16:20:45 +02:00
Roberto Raggi
5b7a19425b Use bit vectors to store the preprocessor's state. 2009-10-21 16:19:23 +02:00
Roberto Raggi
f829ef899c Store in the document's macroUsages only the top-level macro expansions. 2009-10-15 16:25:10 +02:00
Christian Kamm
22ed0255b9 Track more macro uses.
In particular macros that are only checked for definition or are
expanded during the evaluation of an #if or #elif directive are now also
added to the list available through Document::macroUses().

The names of undefined macros that are interesting (because they're used
in an #ifdef or a defined(...)) are now available through
Document::undefinedMacroUses().

Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
2009-09-25 16:08:01 +02:00
Roberto Raggi
e77166a002 Don't include whitespaces and comments at the end of macro definitions. 2009-08-24 14:01:32 +02:00
hjk
93cbef8724 long live the king 2009-08-14 09:30:56 +02:00
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