Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMike Kucera2008-05-07 22:17:09 +0000
committerMike Kucera2008-05-07 22:17:09 +0000
commitc348507f85303e924ac1673d75c756059351cf16 (patch)
tree354c3625dce4a8c21e72742316ab6c601fce162d /lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp
parent83f704c36709c650ac5825a6a8ac9ade8b98d06c (diff)
downloadorg.eclipse.cdt-c348507f85303e924ac1673d75c756059351cf16.tar.gz
org.eclipse.cdt-c348507f85303e924ac1673d75c756059351cf16.tar.xz
org.eclipse.cdt-c348507f85303e924ac1673d75c756059351cf16.zip
fixed bug with typename before identifier not parsing, fixed bug with conversion function name with template not parsing
Diffstat (limited to 'lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp')
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPGrammar.g6
1 files changed, 6 insertions, 0 deletions
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPGrammar.g b/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPGrammar.g
index 598bf8e5ff1..84cd6551dc9 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPGrammar.g
+++ b/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPGrammar.g
@@ -1144,6 +1144,7 @@ type_name_specifier -- all identifiers of some kind
/. $Build consumeQualifiedId(false); $EndBuild ./
| 'typename' dcolon_opt nested_name_specifier template_opt template_id_name
/. $Build consumeQualifiedId(true); $EndBuild ./
+ | 'typename' identifier_name
-- used for forward declaration and incomplete types
@@ -1666,6 +1667,11 @@ access_specifier_keyword_opt
conversion_function_id_name
+ ::= conversion_function_id
+ | conversion_function_id '<' <openscope-ast> template_argument_list_opt '>'
+ /. $Build consumeTemplateId(); $EndBuild ./
+
+conversion_function_id
::= 'operator' conversion_type_id
/. $Build consumeConversionName(); $EndBuild ./

Back to the top