summaryrefslogtreecommitdiff
path: root/src/tools/fuzzing/fuzzing.cpp
diff options
context:
space:
mode:
authorThomas Lively <7121787+tlively@users.noreply.github.com>2021-11-19 16:16:42 -0800
committerGitHub <noreply@github.com>2021-11-19 16:16:42 -0800
commitd532e3a4b02375fe85a2e81be336a181e6bdc10b (patch)
tree222e18bc63327c22b98c64e29a903a461d731c60 /src/tools/fuzzing/fuzzing.cpp
parentbe672c057bcb39b27f34f4031eea747bd72161d2 (diff)
downloadbinaryen-d532e3a4b02375fe85a2e81be336a181e6bdc10b.tar.gz
binaryen-d532e3a4b02375fe85a2e81be336a181e6bdc10b.tar.bz2
binaryen-d532e3a4b02375fe85a2e81be336a181e6bdc10b.zip
Allow building basic HeapTypes in nominal mode (#4346)
As we work toward allowing nominal and structural types to coexist, any difference in how they can be built or used will be an inconvenient footgun that we will have to work around. In the spirit of reducing the differences between the type systems, allow TypeBuilder to construct basic HeapTypes in nominal mode just as it can in equirecursive mode. Although this change is a net increase in code complexity for not much benefit (wasm-opt never needs to build basic HeapTypes), it is also an incremental step toward getting rid of separate type system modes, so I expect it to simplify other PRs in the near future. This change also uncovered a bug in how the type fuzzer generated subtypes of basic HeapTypes. The generated subtypes did not necessarily have the intended `Kind`, which caused failures in nominal subtype validation in the fuzzer.
Diffstat (limited to 'src/tools/fuzzing/fuzzing.cpp')
0 files changed, 0 insertions, 0 deletions