mirror of
https://github.com/c3lang/c3c.git
synced 2026-02-27 12:01:16 +00:00
0.5.2: Allow trailing comma in calls and parameter declarations #1092. Fixes issue where single character filenames like 'a.c3' would be rejected. Improve error messages for incorrect user defined foreach. Fix bug with generics in generics. Fix to error with modified vector parameters. Crash with lhs vector inference. Fixes to priority queue.
This commit is contained in:
committed by
Christoffer Lerno
parent
2595ed5cc9
commit
e91f6e268e
@@ -443,22 +443,20 @@ arg : param_path '=' expr
|
||||
arg_list
|
||||
: arg
|
||||
| arg_list ',' arg
|
||||
| arg_list ','
|
||||
;
|
||||
|
||||
opt_arg_list
|
||||
: arg_list
|
||||
| empty
|
||||
;
|
||||
|
||||
call_arg_list
|
||||
: arg_list
|
||||
| arg_list ';'
|
||||
| arg_list ';' parameters
|
||||
| ';'
|
||||
| ';' parameters
|
||||
| empty
|
||||
: opt_arg_list
|
||||
| opt_arg_list ';'
|
||||
| opt_arg_list ';' parameters
|
||||
;
|
||||
|
||||
opt_arg_list_trailing
|
||||
: arg_list
|
||||
| arg_list ','
|
||||
| empty
|
||||
;
|
||||
|
||||
interfaces
|
||||
: TYPE_IDENT opt_generic_parameters
|
||||
@@ -483,7 +481,6 @@ enum_list
|
||||
enum_constant
|
||||
: CONST_IDENT opt_attributes
|
||||
| CONST_IDENT '(' arg_list ')' opt_attributes
|
||||
| CONST_IDENT '(' arg_list ',' ')' opt_attributes
|
||||
;
|
||||
|
||||
identifier_list
|
||||
@@ -573,7 +570,7 @@ var_decl
|
||||
;
|
||||
|
||||
initializer_list
|
||||
: '{' opt_arg_list_trailing '}'
|
||||
: '{' opt_arg_list '}'
|
||||
;
|
||||
|
||||
ct_case_stmt
|
||||
@@ -1070,11 +1067,15 @@ fn_parameter_list
|
||||
| '(' ')'
|
||||
;
|
||||
|
||||
parameter_default
|
||||
: parameter
|
||||
| parameter '=' expr
|
||||
;
|
||||
|
||||
parameters
|
||||
: parameter '=' expr
|
||||
| parameter
|
||||
| parameters ',' parameter
|
||||
| parameters ',' parameter '=' expr
|
||||
: parameter_default
|
||||
| parameters ',' parameter_default
|
||||
| parameters ','
|
||||
;
|
||||
|
||||
parameter
|
||||
@@ -1178,8 +1179,6 @@ opt_generic_parameters
|
||||
| empty
|
||||
;
|
||||
|
||||
|
||||
|
||||
define_ident
|
||||
: IDENT '=' path_ident opt_generic_parameters
|
||||
| CONST_IDENT '=' path_const opt_generic_parameters
|
||||
|
||||
Reference in New Issue
Block a user