--- a/Parser.st Mon May 03 19:35:31 2010 +0200
+++ b/Parser.st Mon May 03 19:41:14 2010 +0200
@@ -5202,7 +5202,9 @@
| expression
"
- |expr node lnr code|
+ |expr node lnr code pos|
+
+ pos := tokenPosition.
(tokenType == $^) ifTrue:[
self markReturnAt:tokenPosition.
@@ -5211,6 +5213,7 @@
expr := self expression.
(expr == #Error) ifTrue:[^ #Error].
node := ReturnNode expression:expr.
+ node startPosition:pos.
node home:self blockHome:currentBlock.
true "(lineNumberInfo == #full)" ifTrue:[node lineNumber:lnr].
@@ -5243,7 +5246,9 @@
or:[parserFlags allowSqueakExtensions == true]) ifTrue:[
"/ allow empty statement
self warnAboutEmptyStatement.
- ^ StatementNode expression:nil.
+ node := StatementNode expression:nil.
+ node startPosition:pos.
+ ^ node
].
].
@@ -5260,6 +5265,7 @@
node := StatementNode expression:expr.
(lineNumberInfo == #full) ifTrue:[node lineNumber:lnr].
+ node startPosition:pos.
^ node
"Modified: / 16-11-2006 / 14:37:06 / cg"
@@ -7733,6 +7739,7 @@
node lineNumber:tokenLineNr.
tree := ReturnNode new expression:node.
tree lineNumber:tokenLineNr.
+ tree startPosition:tokenPosition.
"Modified: / 16-11-2006 / 14:36:35 / cg"
!
@@ -9764,11 +9771,11 @@
!Parser class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libcomp/Parser.st,v 1.640 2010-05-03 17:03:52 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libcomp/Parser.st,v 1.641 2010-05-03 17:41:14 cg Exp $'
!
version_CVS
- ^ '$Header: /cvs/stx/stx/libcomp/Parser.st,v 1.640 2010-05-03 17:03:52 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libcomp/Parser.st,v 1.641 2010-05-03 17:41:14 cg Exp $'
! !
Parser initialize!