From 3481042259c1db4d9fb4e50d5e91e8c58e8cdac5 Mon Sep 17 00:00:00 2001 From: Bruce Hill Date: Sun, 12 May 2024 15:56:24 -0400 Subject: Simplify interfaces by requiring all functions are pointer methods --- compile.c | 2 -- 1 file changed, 2 deletions(-) (limited to 'compile.c') diff --git a/compile.c b/compile.c index 7595a6ec..3f25f5f0 100644 --- a/compile.c +++ b/compile.c @@ -1662,8 +1662,6 @@ CORD compile(env_t *env, ast_t *ast) arg_t *type_args = Match(field_t, FunctionType)->args; CORD args = compile_arguments(env, ast, type_args->next, methodcall->args); - if (Match(field_t, FunctionType)->args->type->tag != PointerType) - code_err(ast, "Interface methods that take value types can't be called"); return CORD_all("({ ", compile_type(env, self_value_t), " $self = ", compile_to_pointer_depth(env, methodcall->self, 0, false), "; ", "$self.", methodcall->name, "($self.$obj", -- cgit v1.2.3