diff --git a/packages/stinst/compiler/StartCompiler.st b/packages/stinst/compiler/StartCompiler.st index e3f1128..0db49c3 100644 --- a/packages/stinst/compiler/StartCompiler.st +++ b/packages/stinst/compiler/StartCompiler.st @@ -292,15 +292,24 @@ Behavior extend [ Stream extend [ - fileIn [ + fileInLine: lineNum file: aFile at: charPosInt [ + ([charPosInt = self position] on: Error do: [ :ex | ex return: true ]) + ifFalse: [self notYetImplemented]. + [STInST.STSymbolTable nowInsideFileIn. STInST.STEvaluationDriver new parseSmalltalkStream: self with: STInST.GSTFileInParser] ensure: [STInST.STSymbolTable nowOutsideFileIn] ] + fileInLine: lineNum file: aFile fileName: aString at: charPosInt [ + + + ^self fileInLine: lineNum file: aFile at: charPosInt + ] + ] diff --git a/packages/stinst/parser/STFileParser.st b/packages/stinst/parser/STFileParser.st index adad1b4..a935d17 100644 --- a/packages/stinst/parser/STFileParser.st +++ b/packages/stinst/parser/STFileParser.st @@ -397,7 +397,7 @@ FileStream extend [ ^FileSegment - on: self name + on: self file startingAt: startPos for: endPos - startPos + 1 ]