Commit Graph

411 Commits

Author SHA1 Message Date
Erik Verbruggen
9efa5d940a Added __attribute__ visiting, and storing of the deprecated attr. 2010-03-23 14:15:45 +01:00
Erik Verbruggen
989681a0e9 Added attribute parsing for elaborate-type-specifiers. 2010-03-23 14:15:45 +01:00
Erik Verbruggen
7a3fbf120a Added attributes to the elaborate-type-specifier AST node. 2010-03-23 14:15:45 +01:00
Erik Verbruggen
58f5b02dc0 Added deprecated identifier. 2010-03-23 14:15:44 +01:00
Roberto Raggi
189ec382ef Recognize C++0x type-id-list. 2010-03-23 14:13:23 +01:00
Roberto Raggi
b4542eff3c Renamed Parser::isCxxOxEnabled(). 2010-03-23 14:13:22 +01:00
Roberto Raggi
87d28e1814 Recognize C++0x template arguments. 2010-03-23 14:13:22 +01:00
Roberto Raggi
eebf498aae Parse C++0x type-parameters. 2010-03-23 14:13:22 +01:00
Roberto Raggi
ae71514360 Parse C++0x base-specifier-list. 2010-03-23 14:13:22 +01:00
Roberto Raggi
8b625a867c Parse C++0x mem-initializer-list. 2010-03-23 14:13:21 +01:00
Roberto Raggi
071f8ae3b5 Warn for invalid pointer to references. 2010-03-23 12:29:08 +01:00
Roberto Raggi
8141f496ff Warn for invalid references. 2010-03-23 12:27:09 +01:00
Roberto Raggi
4b8d597196 Recognize C++0x rvalue references. 2010-03-23 12:12:07 +01:00
Roberto Raggi
464f797f2f Don't check the compound statement terminator when parsing.
The check should be done in the semantic phase.
2010-03-23 10:25:43 +01:00
Roberto Raggi
6f80219d3e Renamed the CompoundExpressionAST::compoundStatement. 2010-03-23 10:25:43 +01:00
Roberto Raggi
069091eece Rewind the memory pool only after parsing a toplevel expression statements. 2010-03-23 10:18:17 +01:00
Roberto Raggi
273a64bbeb Fixed possible leaks when processing friend template classes and template constructors. 2010-03-19 11:09:35 +01:00
Erik Verbruggen
f6d7927003 Got rid of the memset. 2010-03-18 16:06:29 +01:00
Erik Verbruggen
bfa1693629 Regenerated the AST, now including constructors. 2010-03-18 16:06:15 +01:00
Roberto Raggi
61a504c427 Ensure that the memory pool can be reused after a rewind and get rid of the segmented array. 2010-03-18 15:23:13 +01:00
Roberto Raggi
2d45bb8070 Parse and create AST nodes for the Q_MOC_RUN extensions. 2010-03-17 14:37:55 +01:00
Erik Verbruggen
b4d72a78db Added parser support for Q_INTERFACES. 2010-03-17 10:30:17 +01:00
Erik Verbruggen
61132f260c Fixed Q_ENUMS/Q_FLAGS parsing of enum names. 2010-03-17 10:30:17 +01:00
Roberto Raggi
4f03a8be53 Don't skip closing braces and Qt function specifiers. 2010-03-16 15:18:59 +01:00
Erik Verbruggen
b737fb861d Made Q_PROPERTY a valid declaration to restart parsing when recovering from an error. 2010-03-12 11:32:42 +01:00
hjk
9595504bda Long live the king! 2010-03-05 11:28:13 +01:00
Roberto Raggi
768d6031a6 Process the enumerator initializers. 2010-03-03 17:36:18 +01:00
Erik Verbruggen
cefdb3da30 Fixed parsing of properties whose name is a C++ keyword.
Reviewed-by: Roberto Raggi
2010-03-03 16:46:14 +01:00
Roberto Raggi
ca34e0c043 Compile with gcc -pedantic. 2010-02-25 12:39:39 +01:00
Erik Verbruggen
e609e9a701 Simplified ObjC selectors in the AST. 2010-02-23 17:43:52 +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
d215737df8 Added semantic checks for Q_PROPERTY declarations. 2010-02-22 09:27:44 +01:00
Erik Verbruggen
21fdc2d06a Replaced usages of concrete type SimpleNameAST with the abstract NameAST. 2010-02-22 09:27:44 +01:00
Erik Verbruggen
c79f25d5a6 Fixed Q_PROPERTY parsing to handle all possible cases. 2010-02-16 17:04:26 +01:00
Erik Verbruggen
618173e067 Fixed Q_ENUMS/Q_FLAGS parsing to handle namespaces. 2010-02-15 17:13:30 +01:00
Erik Verbruggen
8de6ccc775 Revert "Split Objective-C keyword parsing to handle the '@' separately."
This reverts commit 2a59d2ae0c.
2010-02-15 12:24:31 +01:00
Erik Verbruggen
a0071f1ce9 Revert "Added Objective-C @try block parsing."
This reverts commit f4163b8ba0.
2010-02-15 12:24:31 +01:00
Erik Verbruggen
f4163b8ba0 Added Objective-C @try block parsing. 2010-02-15 09:27:01 +01:00
Erik Verbruggen
2a59d2ae0c Split Objective-C keyword parsing to handle the '@' separately.
Because apparently, while designing the Objective-C language, somebody
thought it was a world-class idea to allow any white-space between the
'@' character and the subsequent keyword. With this fix, we now
correctly parse:
    @  dynamic
and:
    @
      selector
and:
    @"foo"
     "bar"
    @"mooze"
(This last one is 1 single string split over multiple lines.)
Wonderful, isn't it?

What we (and Clang) do not support, but what GCC supports is something
like:
   @"foo"@@  "bar"  @"mooze"  @@
which is equivalent to @"foobarmooze".
2010-02-15 09:27:00 +01:00
Erik Verbruggen
4df9b37542 Fixed local usage highlighting for ObjC message parameters. 2010-02-11 10:02:00 +01:00
Erik Verbruggen
9806b1e165 Fixed pre-precessor bug.
When a PP line ended with a \ (join line) and the next line was empty
(ending th joining), the following token would be incorrectly marked as
joined.

Done-with: Roberto Raggi
2010-02-10 11:07:18 +01:00
Erik Verbruggen
b1af22b3ab Fixed error recovery when failing to parse Q_PROPERTY. 2010-02-10 11:07:18 +01:00
Erik Verbruggen
8ee2521fe5 Fixed tokenizing bug. 2010-02-09 16:17:47 +01:00
Wolfgang Beck
c3122ce07c Change ICHECK_BUILD ifdef in Q_OS_SYMBIAN. 2010-02-09 15:36:00 +10: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
b58cb740e5 Changed ObjC message arguments to have SimpleName for the name part. 2010-02-08 09:34:51 +01:00
Erik Verbruggen
7b913f7fa2 Changed Q_PROPERTY parsing and AST storage. 2010-02-07 10:49:03 +01:00
Erik Verbruggen
21488e8898 Added semantic checks for Q_ENUMS. 2010-02-07 10:49:03 +01:00
Erik Verbruggen
ac6aba5ec3 Simplified Q_FLAGS and Q_DECLARE_FLAGS parsing. 2010-02-07 10:49:03 +01:00
Erik Verbruggen
8d8b05da5a Reworked parts of the QtPropertyDeclaration parsing and handling. 2010-02-07 10:49:03 +01:00