diff options
author | Alon Zakai <azakai@google.com> | 2023-06-08 08:26:07 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-06-08 15:26:07 +0000 |
commit | bffd98c80ef2d2ea20b49618e8e345406c8f451c (patch) | |
tree | 9a4b27ca5ae4f9a8ca925da978df151e0a05503f /src/wasm-debug.h | |
parent | 1daa10fb356cb01d80eaa3fd13c8c1d9a53ea343 (diff) | |
download | binaryen-bffd98c80ef2d2ea20b49618e8e345406c8f451c.tar.gz binaryen-bffd98c80ef2d2ea20b49618e8e345406c8f451c.tar.bz2 binaryen-bffd98c80ef2d2ea20b49618e8e345406c8f451c.zip |
TypeRefining: Fix a bug with chains of StructGets (#5757)
If we have
(struct.get $A
(struct.get $B
then if both types end up refined we may have a problem. If the inner one is
refined to emit nullref then the outer one no longer knows what type it is,
since it depends on the type of the ref child for that in our IR. We can't just
skip updating it, as the outside may depend on its new refined type to
validate. To avoid errors here, just make this code that is effectively
unreachable also actually unreachable.
Diffstat (limited to 'src/wasm-debug.h')
0 files changed, 0 insertions, 0 deletions