Make require_results an attribute rather than a suffix tag for procedures

This commit is contained in:
gingerBill
2019-08-31 14:48:56 +01:00
parent 07ced1cf0e
commit b311540b16
6 changed files with 15 additions and 8 deletions

View File

@@ -1855,7 +1855,7 @@ Ast *parse_operand(AstFile *f, bool lhs) {
}
if (tags != 0) {
syntax_error(token, "A procedure type cannot have tags");
syntax_error(token, "A procedure type cannot have suffix tags");
}
return type;
@@ -2828,6 +2828,10 @@ Ast *parse_proc_type(AstFile *f, Token proc_token) {
u64 tags = 0;
parse_proc_tags(f, &tags);
if ((tags & ProcTag_require_results) != 0) {
syntax_error(f->curr_token, "#require_results has now been replaced as an attribute @(require_results) on the declaration");
tags &= ~ProcTag_require_results;
}
bool is_generic = false;