mirror of
https://github.com/tinygo-org/tinygo.git
synced 2026-08-10 22:13:39 +00:00
Checking for methodset existance
This commit is contained in:
@@ -427,6 +427,10 @@ func (r *runner) run(fn *function, params []value, parentMem *memoryView, indent
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, mem, r.errorAt(inst, err)
|
return nil, mem, r.errorAt(inst, err)
|
||||||
}
|
}
|
||||||
|
if typecodePtr.offset() == 0 {
|
||||||
|
locals[inst.localIndex] = literalValue{uint8(0)}
|
||||||
|
break
|
||||||
|
}
|
||||||
typecodePtrOffset, err := typecodePtr.addOffset(-int64(r.pointerSize))
|
typecodePtrOffset, err := typecodePtr.addOffset(-int64(r.pointerSize))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, mem, r.errorAt(inst, err) // unlikely
|
return nil, mem, r.errorAt(inst, err) // unlikely
|
||||||
|
|||||||
Vendored
+11
@@ -109,3 +109,14 @@ func sliceString(s string, start, end int) string {
|
|||||||
func sliceSlice(s []int, start, end int) []int {
|
func sliceSlice(s []int, start, end int) []int {
|
||||||
return s[start:end]
|
return s[start:end]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type outside struct{}
|
||||||
|
|
||||||
|
func init() {
|
||||||
|
_, _ = any(0).(interface{ DoesNotExist() })
|
||||||
|
_, _ = any("").(interface{ DoesNotExist() })
|
||||||
|
_, _ = any(outside{}).(interface{ DoesNotExist() })
|
||||||
|
|
||||||
|
type inside struct{}
|
||||||
|
_, _ = any(inside{}).(interface{ DoesNotExist() })
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user