From ce5f9fb2f36503f00f6a89d4493a57dbf1f73df6 Mon Sep 17 00:00:00 2001 From: fennecdjay Date: Sat, 23 Feb 2019 09:30:39 +0100 Subject: [PATCH] :bug: Fix member dynamicity --- src/emit/emit.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/emit/emit.c b/src/emit/emit.c index 0351e09e..6dab8839 100644 --- a/src/emit/emit.c +++ b/src/emit/emit.c @@ -747,6 +747,11 @@ ANN m_bool emit_exp_call1(const Emitter emit, const Func f) { GWDEBUG_EXE } else if((f->value_ref->owner_class && is_special(f->value_ref->owner_class) > 0) || !f->value_ref->owner_class || GET_FLAG(f, template)) push_func_code(emit, f); + else { + const Instr back = (Instr)vector_back(&emit->code->instr); + if((f_instr)back->opcode == DotFunc) + back->m_val = f->vt_index; + } const Instr offset = emit_add_instr(emit, RegSetImm); offset->m_val = emit_code_offset(emit); const Instr instr = emit_call(emit, f); -- 2.43.0