summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/ir/type-updating.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/ir/type-updating.cpp b/src/ir/type-updating.cpp
index d3ecf7ad6..cacdc9000 100644
--- a/src/ir/type-updating.cpp
+++ b/src/ir/type-updating.cpp
@@ -100,6 +100,13 @@ void GlobalTypeRewriter::update() {
if (type.isRtt()) {
return Type(Rtt(type.getRtt().depth, getNew(type.getHeapType())));
}
+ if (type.isTuple()) {
+ auto tuple = type.getTuple();
+ for (auto& t : tuple.types) {
+ t = getNew(t);
+ }
+ return Type(tuple);
+ }
return type;
}