aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/ir.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/ir.cpp b/src/ir.cpp
index e79235830c..b1fd7104ea 100644
--- a/src/ir.cpp
+++ b/src/ir.cpp
@@ -8830,7 +8830,8 @@ static IrInstruction *ir_analyze_cast(IrAnalyze *ira, IrInstruction *source_inst
}
} else if (wanted_child_type->id == TypeTableEntryIdPointer &&
wanted_child_type->data.pointer.is_const &&
- is_container(actual_type)) {
+ (actual_type->id == TypeTableEntryIdPointer || is_container(actual_type)))
+ {
IrInstruction *cast1 = ir_analyze_cast(ira, source_instr, wanted_child_type, value);
if (type_is_invalid(cast1->value.type))
return ira->codegen->invalid_instruction;