diff options
author | Thomas Lively <7121787+tlively@users.noreply.github.com> | 2021-06-11 09:41:09 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-06-11 06:41:09 -0700 |
commit | 446634a503116186a025d23375c430cb837e00f0 (patch) | |
tree | 4538df79e3c7cabec072ff90053c30ea6309a0f5 /src/wasm/wasm-validator.cpp | |
parent | ca263c00ec8ff3b7c51d066b273eeee50180091b (diff) | |
download | binaryen-446634a503116186a025d23375c430cb837e00f0.tar.gz binaryen-446634a503116186a025d23375c430cb837e00f0.tar.bz2 binaryen-446634a503116186a025d23375c430cb837e00f0.zip |
Nominal subtyping (#3927)
Add methods to the TypeBuilder interface to declare subtyping relationships
between the built types. These relationships are validated and recorded globally
as part of type building. If the relationships are not valid, a fatal error is
produced. In the future, it would be better to report the error to the
TypeBuilder client code, but this behavior is sufficient for now. Also updates
SubTyper and TypeBounder to be aware of nominal mode so that subtyping and LUBs
are correctly calculated.
Tests of the failing behavior will be added in a future PR that exposes this
functionality to the command line, since the current `example` testing
infrastructure cannot handle testing fatal errors.
Diffstat (limited to 'src/wasm/wasm-validator.cpp')
0 files changed, 0 insertions, 0 deletions