struct Foo {
mut:
	func1 fn (int) = unsafe { nil }
	func2 fn (int) = do
}

fn do(a int) {
	println('hello')
}

mut foo := Foo{}

foo.func1 = do
mut p := spawn foo.func1(1)
p.wait()

p = spawn foo.func2(1)
p.wait()
