aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/parser/qqmljs.g
diff options
context:
space:
mode:
Diffstat (limited to 'src/qml/parser/qqmljs.g')
-rw-r--r--src/qml/parser/qqmljs.g51
1 files changed, 9 insertions, 42 deletions
diff --git a/src/qml/parser/qqmljs.g b/src/qml/parser/qqmljs.g
index db583ff82c..2a5970364b 100644
--- a/src/qml/parser/qqmljs.g
+++ b/src/qml/parser/qqmljs.g
@@ -314,7 +314,6 @@ public:
AST::UiObjectMemberList *UiObjectMemberList;
AST::UiArrayMemberList *UiArrayMemberList;
AST::UiQualifiedId *UiQualifiedId;
- AST::UiQualifiedPragmaId *UiQualifiedPragmaId;
AST::UiEnumMemberList *UiEnumMemberList;
};
@@ -398,7 +397,6 @@ protected:
{ return location_stack [tos + index - 1]; }
AST::UiQualifiedId *reparseAsQualifiedId(AST::ExpressionNode *expr);
- AST::UiQualifiedPragmaId *reparseAsQualifiedPragmaId(AST::ExpressionNode *expr);
void pushToken(int token);
int lookaheadToken(Lexer *lexer);
@@ -551,18 +549,6 @@ AST::UiQualifiedId *Parser::reparseAsQualifiedId(AST::ExpressionNode *expr)
return 0;
}
-AST::UiQualifiedPragmaId *Parser::reparseAsQualifiedPragmaId(AST::ExpressionNode *expr)
-{
- if (AST::IdentifierExpression *idExpr = AST::cast<AST::IdentifierExpression *>(expr)) {
- AST::UiQualifiedPragmaId *q = new (pool) AST::UiQualifiedPragmaId(idExpr->name);
- q->identifierToken = idExpr->identifierToken;
-
- return q->finish();
- }
-
- return 0;
-}
-
void Parser::pushToken(int token)
{
last_token->token = yytoken;
@@ -768,18 +754,21 @@ UiHeaderItemList: UiHeaderItemList UiImport;
} break;
./
-PragmaId: MemberExpression;
-
-ImportId: MemberExpression;
+PragmaId: JsIdentifier;
-UiPragma: UiPragmaHead T_AUTOMATIC_SEMICOLON;
-UiPragma: UiPragmaHead T_SEMICOLON;
+UiPragma: T_PRAGMA PragmaId T_AUTOMATIC_SEMICOLON;
+UiPragma: T_PRAGMA PragmaId T_SEMICOLON;
/.
case $rule_number: {
- sym(1).UiPragma->semicolonToken = loc(2);
+ AST::UiPragma *pragma = new (pool) AST::UiPragma(stringRef(2));
+ pragma->pragmaToken = loc(1);
+ pragma->semicolonToken = loc(3);
+ sym(1).Node = pragma;
} break;
./
+ImportId: MemberExpression;
+
UiImport: UiImportHead T_AUTOMATIC_SEMICOLON;
UiImport: UiImportHead T_SEMICOLON;
/.
@@ -820,28 +809,6 @@ UiImport: UiImportHead T_AS QmlIdentifier T_SEMICOLON;
} break;
./
-UiPragmaHead: T_PRAGMA PragmaId;
-/.
- case $rule_number: {
- AST::UiPragma *node = 0;
-
- if (AST::UiQualifiedPragmaId *qualifiedId = reparseAsQualifiedPragmaId(sym(2).Expression))
- node = new (pool) AST::UiPragma(qualifiedId);
-
- sym(1).Node = node;
-
- if (node) {
- node->pragmaToken = loc(1);
- } else {
- diagnostic_messages.append(DiagnosticMessage(DiagnosticMessage::Error, loc(1),
- QLatin1String("Expected a qualified name id")));
-
- return false; // ### remove me
- }
- } break;
-./
-
-
UiImportHead: T_IMPORT ImportId;
/.
case $rule_number: {