--- a/Parser.st Fri Aug 23 21:48:35 2019 +0200
+++ b/Parser.st Sat Aug 24 00:50:45 2019 +0200
@@ -9314,10 +9314,11 @@
unaryExpressionFor:receiverArg
"parse a unary-expression; return a node-tree, nil or #Error"
- |receiver expr sel pos pos2 lNr arguments|
+ |receiver expr sel pos pos1 pos2 lNr arguments|
receiver := receiverArg.
(receiver == #Error) ifTrue:[^ #Error].
+ pos1 := receiverArg startPosition.
[ self isValidUnarySelector:tokenType ] whileTrue:[
pos := tokenPosition.
@@ -9350,6 +9351,7 @@
expr := MessageNode receiver:receiver selector:sel args:arguments fold:nil.
].
expr lineNumber:lNr.
+ expr startPosition:pos1 endPosition:tokenLastEndPosition.
self checkPlausibilityOf:expr from:pos to:pos2.
parseForCode ifFalse:[
@@ -9361,7 +9363,7 @@
"/ create the expression before (corrector may need it)
expr := UnaryNode receiver:receiver selector:sel fold:foldConstants.
- expr startPosition:(receiver startPosition) endPosition:pos2.
+ expr startPosition:pos1 endPosition:pos2.
"/ attention: may have been optimized (Character return -> const!!
expr isMessage ifTrue:[