Commit Graph

397 Commits

Author SHA1 Message Date
Erik Verbruggen
d4e1a24daa Fixed off-by-1-token for symbol end offsets. 2010-05-28 16:29:52 +02:00
Roberto Raggi
e343b33342 Check for possible 0x0 accesses. 2010-05-28 11:15:08 +02:00
Erik Verbruggen
25d7933d7a Fixed __attribute__ parsing after struct declarations.
Task-number: QTCREATORBUG-1358
Reviewed-by: Roberto Raggi
2010-05-27 14:22:53 +02:00
Erik Verbruggen
dfadb0d076 Added support for the GCC "unavailable" attribute. 2010-05-26 13:56:34 +02:00
Erik Verbruggen
51fbf9695c Added support for the GCC "unavailable" attribute. 2010-05-26 13:49:06 +02:00
Roberto Raggi
b68a16f1b5 Highlight user defined types. 2010-05-25 17:15:22 +02:00
Roberto Raggi
a4245c174a Improved recovering from errors inside template declarations. 2010-05-25 17:15:21 +02:00
Roberto Raggi
ec5b235fbe Disabled parsing of C++0x initializer-list. 2010-05-21 10:51:09 +02:00
Erik Verbruggen
36a3679902 Fixed ObjC selector name creation. 2010-05-20 12:54:59 +02:00
Roberto Raggi
c2f2317507 Check for valid translation units. 2010-05-10 16:21:55 +02:00
Roberto Raggi
15641165f9 Removed deprecated (and unsafe) methods. 2010-05-10 13:46:12 +02:00
Roberto Raggi
139087ee5c Introduced Symbol::copy(otherSymbol) and removed some deprecated code. 2010-05-10 12:19:47 +02:00
Roberto Raggi
702909372d Store the Control.
It seems that storing the TranslationUnit together with the Symbol
was a bad idea. Unfortunately, we release TranslationUnit(s) as
soon as we can, but we keep the Control around. So using the Control
is definitely safer.
2010-05-10 10:11:05 +02:00
Roberto Raggi
2023cf1e4e Propagate the Friend specifier. 2010-05-10 09:57:56 +02:00
Roberto Raggi
aab9c52030 More work on template instantiation. 2010-05-10 09:57:56 +02:00
Roberto Raggi
c35bb4226b Introduce Namespace aliases and store the TranslationUnit instead of the Control. 2010-05-05 16:36:45 +02:00
Erik Verbruggen
25837759ea Fix left-overs from merging icheck code. 2010-04-23 15:25:22 +02:00
Christian Kamm
2252e4b8c9 CPlusPlus: Transfer cv qualifiers from Function to FullySpecifiedType.
Reviewed-by: Roberto Raggi
2010-04-19 09:40:38 +02:00
Christian Kamm
debe9cc4f7 CPlusPlus: Let functions know about their cv-qualifiers again.
Fixes function argument list code completion not completing the cv
qualifier.

Regression from 9efa5d940a.

Task-number: QTCREATORBUG-1037
Reviewed-by: Roberto Raggi
2010-04-19 09:39:00 +02:00
Erik Verbruggen
fcedcc510a Handle fully qualified types in the root namespace for template typenames.
For example:
    template <typename ::foo::bar>...

Done by: Roberto Raggi
Reviewed-by: erikv
2010-04-12 13:06:24 +02:00
Roberto Raggi
4d45740167 Fixed parsing of anonymous template parameters.
For example,
  template <template <typename> class X> struct foo {};

Reviewed-by: erikv
2010-04-12 12:59:02 +02:00
Roberto Raggi
e421d32147 Postpone the parsing of function definitions. 2010-03-30 16:59:07 +02:00
Roberto Raggi
289714b7dc Cleanup 2010-03-30 15:35:42 +02:00
Roberto Raggi
c3d7928ac8 Clone the TemplateArguments before caching the result. 2010-03-30 12:35:00 +02:00
Roberto Raggi
bbdb7d9742 Fixed parsing ambiguity when parsing dependant template types. 2010-03-29 14:10:42 +02:00
Roberto Raggi
f5c9a158c1 Use the start of the template-argument as to key for template-arguments cache. 2010-03-26 11:27:22 +01:00
Roberto Raggi
fe261bc256 Parse C++ 0x argument packs. 2010-03-25 12:16:18 +01:00
Roberto Raggi
3c8d12562e Recognize C++0x sizeof... expressions. 2010-03-25 10:44:42 +01:00
Roberto Raggi
ddcc40d0fc Accepts `...' when parsing declarator-ids in C++0x. 2010-03-25 10:44:42 +01:00
Roberto Raggi
86c2367c26 In C++ 0x auto is a type specifier. 2010-03-24 17:19:54 +01:00
Roberto Raggi
c05e11b165 Set and propagate the `auto' specifier. 2010-03-24 15:06:50 +01:00
Roberto Raggi
cf125618af Accepts trailing return types. 2010-03-24 14:56:45 +01:00
Roberto Raggi
4e50dfe330 Require a T_EQUAL when parsing conditions. 2010-03-24 13:56:34 +01:00
Roberto Raggi
a6b21aac50 Recognize C++0x decltype. 2010-03-24 13:49:02 +01:00
Roberto Raggi
8329d7db94 Recognize C++0x lambda expressions. 2010-03-24 13:49:02 +01:00
Roberto Raggi
0eddf5c0ad Accept C++0x initializers. 2010-03-23 14:17:33 +01:00
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