Skip to content

Commit

Permalink
Fix: in ACS/ACS95, (void) is required for scripts
Browse files Browse the repository at this point in the history
  • Loading branch information
positively-charged committed Nov 3, 2016
1 parent ac91eec commit e8ca0e7
Showing 1 changed file with 8 additions and 2 deletions.
10 changes: 8 additions & 2 deletions src/parse/dec.c
Original file line number Diff line number Diff line change
Expand Up @@ -2079,6 +2079,12 @@ void read_script_type( struct parse* parse, struct script_reading* reading ) {
}
// Correct number of parameters need to be specified for a script type.
if ( reading->type == SCRIPT_TYPE_CLOSED ) {
if ( ( parse->lang == LANG_ACS || parse->lang == LANG_ACS95 ) &&
! reading->param_specified ) {
p_diag( parse, DIAG_POS_ERR, &reading->param_pos,
"script missing parameter list" );
p_bail( parse );
}
if ( reading->num_param > parse->lang_limits->max_script_params ) {
p_diag( parse, DIAG_POS_ERR, &reading->param_pos,
"too many parameters in script" );
Expand Down Expand Up @@ -2118,12 +2124,12 @@ void read_script_type( struct parse* parse, struct script_reading* reading ) {
if ( parse->lang != LANG_BCS && reading->param_specified &&
reading->num_param == 0 ) {
p_diag( parse, DIAG_POS_ERR, &reading->param_pos,
"parameter-list specified for %s-script", parse->tk_text );
"parameter list specified for %s-script", parse->tk_text );
p_bail( parse );
}
if ( reading->param_specified && reading->num_param != 0 ) {
p_diag( parse, DIAG_POS_ERR, &reading->param_pos,
"non-empty parameter-list in %s-script", parse->tk_text );
"non-empty parameter list in %s-script", parse->tk_text );
p_diag( parse, DIAG_POS, &reading->param_pos,
"%s %s-script must have zero parameters",
get_script_article( reading->type ), parse->tk_text );
Expand Down

0 comments on commit e8ca0e7

Please sign in to comment.