diff options
Diffstat (limited to 'src/ir/possible-contents.cpp')
-rw-r--r-- | src/ir/possible-contents.cpp | 13 |
1 files changed, 2 insertions, 11 deletions
diff --git a/src/ir/possible-contents.cpp b/src/ir/possible-contents.cpp index 0284101ed..7ed6bfde6 100644 --- a/src/ir/possible-contents.cpp +++ b/src/ir/possible-contents.cpp @@ -488,12 +488,6 @@ struct InfoCollector } } } - if (type.isRef() && getTypeSystem() != TypeSystem::Nominal && - getTypeSystem() != TypeSystem::Isorecursive) { - // We need explicit supers in the SubTyping helper class. Without that, - // cannot handle refs, and consider them irrelevant. - return false; - } return true; } @@ -1582,11 +1576,8 @@ Flower::Flower(Module& wasm) : wasm(wasm) { std::cout << "struct phase\n"; #endif - if (getTypeSystem() == TypeSystem::Nominal || - getTypeSystem() == TypeSystem::Isorecursive) { - subTypes = std::make_unique<SubTypes>(wasm); - maxDepths = subTypes->getMaxDepths(); - } + subTypes = std::make_unique<SubTypes>(wasm); + maxDepths = subTypes->getMaxDepths(); #ifdef POSSIBLE_CONTENTS_DEBUG std::cout << "Link-targets phase\n"; |