From: Thomas Hartmann Date: Fri, 28 Sep 2012 15:35:21 +0000 (+0200) Subject: Fix in QmlJS parser for UiParameterList X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=50399e39a398cfd4bf0cdb6b514ad89c42fc0a20;p=profile%2Fivi%2Fqtdeclarative.git Fix in QmlJS parser for UiParameterList The propertyTypeToken was not initilized in this case. Not having the source location of this token leads to bugs in the tooling. e. g.: QTCREATORBUG-7931 I also added the initializer for program keeping the parser and the grammar in sync. Change-Id: Id7bfb4b6dd1b9689e701a858b6c769d3addab5dc Reviewed-by: Christian Kamm --- diff --git a/src/qml/qml/parser/qqmljs.g b/src/qml/qml/parser/qqmljs.g index 00589af..e71ad63 100644 --- a/src/qml/qml/parser/qqmljs.g +++ b/src/qml/qml/parser/qqmljs.g @@ -413,6 +413,7 @@ Parser::Parser(Engine *engine): state_stack(0), location_stack(0), string_stack(0), + program(0), first_token(0), last_token(0) { @@ -835,6 +836,7 @@ UiParameterList: UiParameterList T_COMMA UiPropertyType JsIdentifier ; /. case $rule_number: { AST::UiParameterList *node = new (pool) AST::UiParameterList(sym(1).UiParameterList, stringRef(3), stringRef(4)); + node->propertyTypeToken = loc(3); node->commaToken = loc(2); node->identifierToken = loc(4); sym(1).Node = node; diff --git a/src/qml/qml/parser/qqmljsparser.cpp b/src/qml/qml/parser/qqmljsparser.cpp index 2c4d2ab..1bc8f23 100644 --- a/src/qml/qml/parser/qqmljsparser.cpp +++ b/src/qml/qml/parser/qqmljsparser.cpp @@ -386,6 +386,7 @@ case 47: { case 48: { AST::UiParameterList *node = new (pool) AST::UiParameterList(sym(1).UiParameterList, stringRef(3), stringRef(4)); + node->propertyTypeToken = loc(3); node->commaToken = loc(2); node->identifierToken = loc(4); sym(1).Node = node;