From 1559dedfd9d417d50bcbbcd809357c06b07d43b2 Mon Sep 17 00:00:00 2001 From: "Wolfgang (Blub) Bumiller" Date: Sat, 11 Aug 2012 15:41:10 +0200 Subject: [PATCH] ir_value_set_field --- ir.c | 9 +++++++++ ir.h | 1 + 2 files changed, 10 insertions(+) diff --git a/ir.c b/ir.c index 05a46d4..d007321 100644 --- a/ir.c +++ b/ir.c @@ -646,6 +646,15 @@ bool ir_value_set_vector(ir_value *self, vector v) return true; } +bool ir_value_set_field(ir_value *self, ir_value *fld) +{ + if (self->vtype != TYPE_FIELD) + return false; + self->constval.vpointer = fld; + self->isconst = true; + return true; +} + bool ir_value_set_string(ir_value *self, const char *str) { if (self->vtype != TYPE_STRING) diff --git a/ir.h b/ir.h index e36aa08..dccc970 100644 --- a/ir.h +++ b/ir.h @@ -95,6 +95,7 @@ bool GMQCC_WARN ir_value_set_int(ir_value*, int i); #endif bool GMQCC_WARN ir_value_set_string(ir_value*, const char *s); bool GMQCC_WARN ir_value_set_vector(ir_value*, vector v); +bool GMQCC_WARN ir_value_set_field(ir_value*, ir_value *fld); /*bool ir_value_set_pointer_v(ir_value*, ir_value* p); */ /*bool ir_value_set_pointer_i(ir_value*, int i); */ -- 2.39.2