From ee904060c5e96073c775eaf1ebbe1d6b2d833928 Mon Sep 17 00:00:00 2001 From: Ginger Bill Date: Sun, 1 Oct 2017 21:22:39 +0100 Subject: Disallow anonymous structs with procedures as default values --- src/check_expr.cpp | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'src/check_expr.cpp') diff --git a/src/check_expr.cpp b/src/check_expr.cpp index ceac342b4..c21f56c22 100644 --- a/src/check_expr.cpp +++ b/src/check_expr.cpp @@ -3301,6 +3301,11 @@ bool check_type_internal(Checker *c, AstNode *e, Type **type, Type *named_type) check_struct_type(c, *type, e, nullptr, named_type); check_close_scope(c); (*type)->Struct.node = e; + + if (named_type == nullptr && (*type)->Struct.has_proc_default_values) { + error(e, "Anonymous structs cannot have procedures as default values"); + } + return true; case_end; -- cgit v1.2.3