diff options
author | Ayke van Laethem <[email protected]> | 2024-08-31 13:25:42 +0200 |
---|---|---|
committer | Ron Evans <[email protected]> | 2024-09-05 10:53:33 +0200 |
commit | d4cb92f27c48148bc269308ff6973338b6f1f7c9 (patch) | |
tree | 6d9353930d22674682c0d0f90b43b35093ce174d /testdata/goroutines.txt | |
parent | ee5bc65c97ddd8ffd54d89a3cda24211a738cbb3 (diff) | |
download | tinygo-d4cb92f27c48148bc269308ff6973338b6f1f7c9.tar.gz tinygo-d4cb92f27c48148bc269308ff6973338b6f1f7c9.zip |
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`.
Diffstat (limited to 'testdata/goroutines.txt')
-rw-r--r-- | testdata/goroutines.txt | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/testdata/goroutines.txt b/testdata/goroutines.txt index 35c0cd44d..1430ee0a2 100644 --- a/testdata/goroutines.txt +++ b/testdata/goroutines.txt @@ -26,3 +26,4 @@ called: Foo.Nowait called: Foo.Wait ...waited done with 'go on interface' +paddedStruct: 5 7 |