summaryrefslogtreecommitdiffstats
path: root/src/declarative/qml/parser
diff options
context:
space:
mode:
authorMartin Smith <msmith@trolltech.com>2009-05-05 08:39:27 (GMT)
committerMartin Smith <msmith@trolltech.com>2009-05-05 08:39:27 (GMT)
commita189a500173ed038e777902ac0a77f837a330c26 (patch)
tree14f6cdb392bebeb97273501e26b9ebd08c89fa75 /src/declarative/qml/parser
parentca4d0be72c35cd693cab61b35831f8392a44e09c (diff)
parent983b5260f5a2a0ef1788107618b523a37afe6268 (diff)
downloadQt-a189a500173ed038e777902ac0a77f837a330c26.zip
Qt-a189a500173ed038e777902ac0a77f837a330c26.tar.gz
Qt-a189a500173ed038e777902ac0a77f837a330c26.tar.bz2
Merge branch 'kinetic-declarativeui' of git@scm.dev.nokia.troll.no:qt/kinetic into kinetic-declarativeui
Diffstat (limited to 'src/declarative/qml/parser')
-rw-r--r--src/declarative/qml/parser/javascript.g6
-rw-r--r--src/declarative/qml/parser/javascriptast_p.h8
-rw-r--r--src/declarative/qml/parser/javascriptparser.cpp6
3 files changed, 15 insertions, 5 deletions
diff --git a/src/declarative/qml/parser/javascript.g b/src/declarative/qml/parser/javascript.g
index 0da7571..5482392 100644
--- a/src/declarative/qml/parser/javascript.g
+++ b/src/declarative/qml/parser/javascript.g
@@ -688,7 +688,8 @@ UiObjectMember: T_DEFAULT T_PROPERTY UiPropertyType T_IDENTIFIER ;
case $rule_number: {
AST::UiPublicMember *node = makeAstNode<AST::UiPublicMember> (driver->nodePool(), sym(3).sval, sym(4).sval);
node->isDefaultMember = true;
- node->propertyToken = loc(1);
+ node->defaultToken = loc(1);
+ node->propertyToken = loc(2);
node->typeToken = loc(3);
node->identifierToken = loc(4);
sym(1).Node = node;
@@ -714,7 +715,8 @@ case $rule_number: {
AST::UiPublicMember *node = makeAstNode<AST::UiPublicMember> (driver->nodePool(), sym(3).sval, sym(4).sval,
sym(6).Expression);
node->isDefaultMember = true;
- node->propertyToken = loc(1);
+ node->defaultToken = loc(1);
+ node->propertyToken = loc(2);
node->typeToken = loc(3);
node->identifierToken = loc(4);
node->colonToken = loc(5);
diff --git a/src/declarative/qml/parser/javascriptast_p.h b/src/declarative/qml/parser/javascriptast_p.h
index 3a22fff..ad317e8 100644
--- a/src/declarative/qml/parser/javascriptast_p.h
+++ b/src/declarative/qml/parser/javascriptast_p.h
@@ -2336,7 +2336,12 @@ public:
{ kind = K; }
virtual SourceLocation firstSourceLocation() const
- { return propertyToken; }
+ {
+ if (defaultToken.isValid())
+ return defaultToken;
+
+ return propertyToken;
+ }
virtual SourceLocation lastSourceLocation() const
{
@@ -2359,6 +2364,7 @@ public:
JavaScriptNameIdImpl *name;
ExpressionNode *expression;
bool isDefaultMember;
+ SourceLocation defaultToken;
SourceLocation propertyToken;
SourceLocation typeToken;
SourceLocation identifierToken;
diff --git a/src/declarative/qml/parser/javascriptparser.cpp b/src/declarative/qml/parser/javascriptparser.cpp
index b241297..185a824 100644
--- a/src/declarative/qml/parser/javascriptparser.cpp
+++ b/src/declarative/qml/parser/javascriptparser.cpp
@@ -298,7 +298,8 @@ case 30: {
case 31: {
AST::UiPublicMember *node = makeAstNode<AST::UiPublicMember> (driver->nodePool(), sym(3).sval, sym(4).sval);
node->isDefaultMember = true;
- node->propertyToken = loc(1);
+ node->defaultToken = loc(1);
+ node->propertyToken = loc(2);
node->typeToken = loc(3);
node->identifierToken = loc(4);
sym(1).Node = node;
@@ -318,7 +319,8 @@ case 33: {
AST::UiPublicMember *node = makeAstNode<AST::UiPublicMember> (driver->nodePool(), sym(3).sval, sym(4).sval,
sym(6).Expression);
node->isDefaultMember = true;
- node->propertyToken = loc(1);
+ node->defaultToken = loc(1);
+ node->propertyToken = loc(2);
node->typeToken = loc(3);
node->identifierToken = loc(4);
node->colonToken = loc(5);