Files
tinygo/testdata/goroutines.txt
T
Ayke van Laethem d4cb92f27c compiler: fix passing weirdly-padded structs to new goroutines
The values were stored in the passed object as the values itself (not
expanded like is common in the calling convention), and read back after
assuming they were expanded. This often works for simple parameters
(int, pointer, etc), but not for more complex parameters. Especially
when there's padding.

Found this while working on `//go:wasmexport`.
2024-09-05 10:53:33 +02:00

30 lines
522 B
Plaintext

init
goroutine in init
main 1
sub 1
main 2
sub 2
main 3
wait:
wait start
wait end
end waiting
value produced after some time: 42
non-blocking goroutine
done with non-blocking goroutine
async interface method call
slept inside func pointer 8
slept inside closure, with value: 20 8
closure go call result: 1
pre-acquired mutex
releasing mutex
acquired mutex from goroutine
released mutex from goroutine
re-acquired mutex
done
called: Foo.Nowait
called: Foo.Wait
...waited
done with 'go on interface'
paddedStruct: 5 7