diff options
-rw-r--r-- | usr/austin/eval/expr1.go | 28 | ||||
-rw-r--r-- | usr/austin/eval/gen.go | 6 |
2 files changed, 15 insertions, 19 deletions
diff --git a/usr/austin/eval/expr1.go b/usr/austin/eval/expr1.go index 9f9d696e6..1bbe87242 100644 --- a/usr/austin/eval/expr1.go +++ b/usr/austin/eval/expr1.go @@ -57,34 +57,32 @@ func (a *expr) asMulti() (func(*Frame) []Value) { } func (a *expr) asInterface() (func(*Frame) interface{}) { - // TODO(rsc): Drop f from (f *Frame) in case labels - // after fixing 6g type switch bug. switch sf := a.eval.(type) { - case func(f *Frame)bool: + case func(*Frame)bool: return func(f *Frame) interface{} { return sf(f) } - case func(f *Frame)uint64: + case func(*Frame)uint64: return func(f *Frame) interface{} { return sf(f) } - case func(f *Frame)int64: + case func(*Frame)int64: return func(f *Frame) interface{} { return sf(f) } - case func(f *Frame)*bignum.Integer: + case func(*Frame)*bignum.Integer: return func(f *Frame) interface{} { return sf(f) } - case func(f *Frame)float64: + case func(*Frame)float64: return func(f *Frame) interface{} { return sf(f) } - case func(f *Frame)*bignum.Rational: + case func(*Frame)*bignum.Rational: return func(f *Frame) interface{} { return sf(f) } - case func(f *Frame)string: + case func(*Frame)string: return func(f *Frame) interface{} { return sf(f) } - case func(f *Frame)ArrayValue: + case func(*Frame)ArrayValue: return func(f *Frame) interface{} { return sf(f) } - case func(f *Frame)StructValue: + case func(*Frame)StructValue: return func(f *Frame) interface{} { return sf(f) } - case func(f *Frame)Value: + case func(*Frame)Value: return func(f *Frame) interface{} { return sf(f) } - case func(f *Frame)Func: + case func(*Frame)Func: return func(f *Frame) interface{} { return sf(f) } - case func(f *Frame)Slice: + case func(*Frame)Slice: return func(f *Frame) interface{} { return sf(f) } - case func(f *Frame)Map: + case func(*Frame)Map: return func(f *Frame) interface{} { return sf(f) } default: log.Crashf("unexpected expression node type %T at %v", a.eval, a.pos); diff --git a/usr/austin/eval/gen.go b/usr/austin/eval/gen.go index 54179ea78..c9b5ab6e3 100644 --- a/usr/austin/eval/gen.go +++ b/usr/austin/eval/gen.go @@ -132,7 +132,7 @@ var data = Data { const templateStr = ` // This file is machine generated by gen.go. -// 6g gen.go && 6l gen.6 && 6.out >expr1.go +// 6g gen.go && 6l gen.6 && ./6.out >expr1.go package eval @@ -161,11 +161,9 @@ func (a *expr) asMulti() (func(*Frame) []Value) { } func (a *expr) asInterface() (func(*Frame) interface{}) { - // TODO(rsc): Drop f from (f *Frame) in case labels - // after fixing 6g type switch bug. switch sf := a.eval.(type) { «.repeated section Types» - case func(f *Frame)«Native»: + case func(*Frame)«Native»: «.section IsIdeal» return func(f *Frame) interface{} { return sf(f) } «.or» |