Only return after resetting type_param_spec_list
authorRichard Biener <rguenther@suse.de>
Mon, 29 Nov 2021 11:26:39 +0000 (12:26 +0100)
committerRichard Biener <rguenther@suse.de>
Tue, 30 Nov 2021 08:16:42 +0000 (09:16 +0100)
This fixes an appearant mistake in gfc_insert_parameter_exprs.

2021-11-29  Richard Biener  <rguenther@suse.de>

gcc/fortran/
* decl.c (gfc_insert_parameter_exprs): Only return after
resetting type_param_spec_list.

gcc/fortran/decl.c

index c0fec90..4971638 100644 (file)
@@ -3733,9 +3733,9 @@ gfc_insert_parameter_exprs (gfc_expr *e, gfc_actual_arglist *param_list)
 {
   gfc_actual_arglist *old_param_spec_list = type_param_spec_list;
   type_param_spec_list = param_list;
-  return gfc_traverse_expr (e, NULL, &insert_parameter_exprs, 1);
-  type_param_spec_list = NULL;
+  bool res = gfc_traverse_expr (e, NULL, &insert_parameter_exprs, 1);
   type_param_spec_list = old_param_spec_list;
+  return res;
 }
 
 /* Determines the instance of a parameterized derived type to be used by