summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/ir/possible-contents.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/ir/possible-contents.cpp b/src/ir/possible-contents.cpp
index 5170d8fa3..0284101ed 100644
--- a/src/ir/possible-contents.cpp
+++ b/src/ir/possible-contents.cpp
@@ -763,6 +763,12 @@ struct InfoCollector
});
}
template<typename T> void handleIndirectCall(T* curr, HeapType targetType) {
+ // If the heap type is not a signature, which is the case for a bottom type
+ // (null) then nothing can be called.
+ if (!targetType.isSignature()) {
+ assert(targetType.isBottom());
+ return;
+ }
handleCall(
curr,
[&](Index i) {