summaryrefslogtreecommitdiffstats
path: root/libgo/go/exp/ogle/cmd.go
diff options
context:
space:
mode:
Diffstat (limited to 'libgo/go/exp/ogle/cmd.go')
-rw-r--r--libgo/go/exp/ogle/cmd.go9
1 files changed, 5 insertions, 4 deletions
diff --git a/libgo/go/exp/ogle/cmd.go b/libgo/go/exp/ogle/cmd.go
index d3672c24e38..4f67032d0c3 100644
--- a/libgo/go/exp/ogle/cmd.go
+++ b/libgo/go/exp/ogle/cmd.go
@@ -18,6 +18,7 @@ import (
"strings"
)
+var fset = token.NewFileSet()
var world *eval.World
var curProc *Process
@@ -43,7 +44,7 @@ func Main() {
}
// Try line as code
- code, err := world.Compile(string(line))
+ code, err := world.Compile(fset, string(line))
if err != nil {
scanner.PrintError(os.Stderr, err)
continue
@@ -63,8 +64,8 @@ func Main() {
func newScanner(input []byte) (*scanner.Scanner, *scanner.ErrorVector) {
sc := new(scanner.Scanner)
ev := new(scanner.ErrorVector)
- sc.Init("input", input, ev, 0)
-
+ file := fset.AddFile("input", fset.Base(), len(input))
+ sc.Init(file, input, ev, 0)
return sc, ev
}
@@ -101,7 +102,7 @@ func getCmd(line []byte) (*cmd, []byte) {
slit := string(lit)
for i := range cmds {
if cmds[i].cmd == slit {
- return &cmds[i], line[pos.Offset+len(lit):]
+ return &cmds[i], line[fset.Position(pos).Offset+len(lit):]
}
}
return nil, nil
OpenPOWER on IntegriCloud