From dffdf7a708d9988f6da8808fad9ca25b50dca4d0 Mon Sep 17 00:00:00 2001 From: Richard Feldman Date: Tue, 25 Nov 2025 07:32:17 -0500 Subject: [PATCH] Revise some tests --- src/eval/interpreter.zig | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/eval/interpreter.zig b/src/eval/interpreter.zig index 19d6d15137..ad9e1315ba 100644 --- a/src/eval/interpreter.zig +++ b/src/eval/interpreter.zig @@ -2371,6 +2371,7 @@ pub const Interpreter = struct { }, .e_dot_access => |dot_access| { const receiver_ct_var = can.ModuleEnv.varFrom(dot_access.receiver); + const receiver_rt_var = try self.translateTypeVar(self.env, receiver_ct_var); var receiver_value = try self.evalExprMinimal(dot_access.receiver, roc_ops, receiver_rt_var); defer receiver_value.decref(&self.runtime_layout_store, roc_ops); @@ -6993,6 +6994,12 @@ pub const Interpreter = struct { pub fn translateTypeVar(self: *Interpreter, module: *can.ModuleEnv, compile_var: types.Var) Error!types.Var { const resolved = module.types.resolveVar(compile_var); + // DEBUG: Print content type for debugging method dispatch issues + // std.debug.print("translateTypeVar: content = {s}\n", .{@tagName(resolved.desc.content)}); + // if (resolved.desc.content == .structure) { + // std.debug.print(" structure = {s}\n", .{@tagName(resolved.desc.content.structure)}); + // } + const key: u64 = (@as(u64, @intFromPtr(module)) << 32) | @as(u64, @intFromEnum(resolved.var_)); if (self.translate_cache.get(key)) |found| { return found;