diff options
| author | Ginger Bill <bill@gingerbill.org> | 2017-10-01 21:22:39 +0100 |
|---|---|---|
| committer | Ginger Bill <bill@gingerbill.org> | 2017-10-01 21:22:39 +0100 |
| commit | ee904060c5e96073c775eaf1ebbe1d6b2d833928 (patch) | |
| tree | 55083ff473d7d7a4a058944beb34eacf79f0b679 /src/check_expr.cpp | |
| parent | afb5538e832d7772b5149c899e78ccb8edf2dde3 (diff) | |
Disallow anonymous structs with procedures as default values
Diffstat (limited to 'src/check_expr.cpp')
| -rw-r--r-- | src/check_expr.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
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; |