// RUN: llgo -o %t %s // RUN: %t 2>&1 | FileCheck %s // CHECK: hello from T 1 // CHECK-NEXT: hello from T 2 package main type T struct { val int } func (t T) Hello(done chan bool) { println("hello from T", t.val) done <- true } type I interface { Hello(chan bool) } func main() { done := make(chan bool) t := T{1} go t.Hello(done) <-done var i I = T{2} go i.Hello(done) <-done go println("hello builtin") }