summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ir_constant_expression.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/ir_constant_expression.cpp b/ir_constant_expression.cpp
index 022692b9c9..8e9e74bb7d 100644
--- a/ir_constant_expression.cpp
+++ b/ir_constant_expression.cpp
@@ -566,9 +566,9 @@ ir_constant_visitor::visit(ir_dereference_array *ir)
void
ir_constant_visitor::visit(ir_dereference_record *ir)
{
- (void) ir;
- value = NULL;
- /* FINISHME: Other dereference modes. */
+ ir_constant *v = ir->record->constant_expression_value();
+
+ this->value = (v != NULL) ? v->get_record_field(ir->field) : NULL;
}