This is the mail archive of the fortran@gcc.gnu.org mailing list for the GNU Fortran project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH INSTALLED]: Eliminate "try" keyword from FORTRAN dir


This patch removes the "try" helper macro from gfortran.h and updates all
the locations in the fortran directory where this keyword was used.

Tested on x86_64-linux-gnu after the tuples merge, no regressions.

Installed on mainline, preapproved by Tobias Burnus:
http://gcc.gnu.org/ml/fortran/2008-07/msg00118.html

		--Kaveh


2008-07-28  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>

	* gfortran.h (try): Remove macro.  Replace try with gfc_try
	throughout.
	* array.c: Likewise.
	* check.c: Likewise.
	* cpp.c: Likewise.
	* cpp.h: Likewise.
	* data.c: Likewise.
	* data.h: Likewise.
	* decl.c: Likewise.
	* error.c: Likewise.
	* expr.c: Likewise.
	* interface.c: Likewise.
	* intrinsic.c: Likewise.
	* intrinsic.h: Likewise.
	* io.c: Likewise.
	* match.h: Likewise.
	* parse.c: Likewise.
	* parse.h: Likewise.
	* resolve.c: Likewise.
	* scanner.c: Likewise.
	* simplify.c: Likewise.
	* symbol.c: Likewise.
	* trans-openmp.c: Likewise.
	* trans-types.c: Likewise.

diff -rup orig/egcc-SVN20080728/gcc/fortran/gfortran.h egcc-SVN20080728/gcc/fortran/gfortran.h
--- orig/egcc-SVN20080728/gcc/fortran/gfortran.h	2008-07-28 02:00:05.000000000 +0200
+++ egcc-SVN20080728/gcc/fortran/gfortran.h	2008-07-28 17:49:42.000000000 +0200
@@ -114,8 +114,6 @@ io_kind;
    following enum makes things much more readable.  We also start
    values off at one instead of zero.  */

-/* FIXME: This macro is temporary until we convert everything.  */
-#define try gfc_try
 typedef enum
 { SUCCESS = 1, FAILURE }
 gfc_try;
@@ -1347,16 +1345,16 @@ gfc_intrinsic_arg;

 typedef union
 {
-  try (*f0)(void);
-  try (*f1)(struct gfc_expr *);
-  try (*f1m)(gfc_actual_arglist *);
-  try (*f2)(struct gfc_expr *, struct gfc_expr *);
-  try (*f3)(struct gfc_expr *, struct gfc_expr *, struct gfc_expr *);
-  try (*f3ml)(gfc_actual_arglist *);
-  try (*f3red)(gfc_actual_arglist *);
-  try (*f4)(struct gfc_expr *, struct gfc_expr *, struct gfc_expr *,
+  gfc_try (*f0)(void);
+  gfc_try (*f1)(struct gfc_expr *);
+  gfc_try (*f1m)(gfc_actual_arglist *);
+  gfc_try (*f2)(struct gfc_expr *, struct gfc_expr *);
+  gfc_try (*f3)(struct gfc_expr *, struct gfc_expr *, struct gfc_expr *);
+  gfc_try (*f3ml)(gfc_actual_arglist *);
+  gfc_try (*f3red)(gfc_actual_arglist *);
+  gfc_try (*f4)(struct gfc_expr *, struct gfc_expr *, struct gfc_expr *,
 	    struct gfc_expr *);
-  try (*f5)(struct gfc_expr *, struct gfc_expr *, struct gfc_expr *,
+  gfc_try (*f5)(struct gfc_expr *, struct gfc_expr *, struct gfc_expr *,
 	    struct gfc_expr *, struct gfc_expr *);
 }
 gfc_check_f;
@@ -2011,7 +2009,7 @@ gfc_char_t gfc_peek_char (void);
 char gfc_peek_ascii_char (void);
 void gfc_error_recovery (void);
 void gfc_gobble_whitespace (void);
-try gfc_new_file (void);
+gfc_try gfc_new_file (void);
 const char * gfc_read_orig_filename (const char *, const char **);

 extern gfc_source_form gfc_current_form;
@@ -2078,7 +2076,7 @@ int gfc_error_check (void);
 int gfc_error_flag_test (void);

 notification gfc_notification_std (int);
-try gfc_notify_std (int, const char *, ...) ATTRIBUTE_GCC_GFC(2,3);
+gfc_try gfc_notify_std (int, const char *, ...) ATTRIBUTE_GCC_GFC(2,3);

 /* A general purpose syntax error.  */
 #define gfc_syntax_error(ST)	\
@@ -2098,8 +2096,8 @@ arith gfc_check_integer_range (mpz_t p,
 bool gfc_check_character_range (gfc_char_t, int);

 /* trans-types.c */
-try gfc_validate_c_kind (gfc_typespec *);
-try gfc_check_any_c_kind (gfc_typespec *);
+gfc_try gfc_validate_c_kind (gfc_typespec *);
+gfc_try gfc_check_any_c_kind (gfc_typespec *);
 int gfc_validate_kind (bt, int, bool);
 extern int gfc_index_integer_kind;
 extern int gfc_default_integer_kind;
@@ -2117,69 +2115,69 @@ extern int gfc_character_storage_size;

 /* symbol.c */
 void gfc_clear_new_implicit (void);
-try gfc_add_new_implicit_range (int, int);
-try gfc_merge_new_implicit (gfc_typespec *);
+gfc_try gfc_add_new_implicit_range (int, int);
+gfc_try gfc_merge_new_implicit (gfc_typespec *);
 void gfc_set_implicit_none (void);
 void gfc_check_function_type (gfc_namespace *);
 bool gfc_is_intrinsic_typename (const char *);

 gfc_typespec *gfc_get_default_type (gfc_symbol *, gfc_namespace *);
-try gfc_set_default_type (gfc_symbol *, int, gfc_namespace *);
+gfc_try gfc_set_default_type (gfc_symbol *, int, gfc_namespace *);

 void gfc_set_component_attr (gfc_component *, symbol_attribute *);
 void gfc_get_component_attr (symbol_attribute *, gfc_component *);

 void gfc_set_sym_referenced (gfc_symbol *);

-try gfc_add_attribute (symbol_attribute *, locus *);
-try gfc_add_allocatable (symbol_attribute *, locus *);
-try gfc_add_dimension (symbol_attribute *, const char *, locus *);
-try gfc_add_external (symbol_attribute *, locus *);
-try gfc_add_intrinsic (symbol_attribute *, locus *);
-try gfc_add_optional (symbol_attribute *, locus *);
-try gfc_add_pointer (symbol_attribute *, locus *);
-try gfc_add_cray_pointer (symbol_attribute *, locus *);
-try gfc_add_cray_pointee (symbol_attribute *, locus *);
-try gfc_mod_pointee_as (gfc_array_spec *);
-try gfc_add_protected (symbol_attribute *, const char *, locus *);
-try gfc_add_result (symbol_attribute *, const char *, locus *);
-try gfc_add_save (symbol_attribute *, const char *, locus *);
-try gfc_add_threadprivate (symbol_attribute *, const char *, locus *);
-try gfc_add_saved_common (symbol_attribute *, locus *);
-try gfc_add_target (symbol_attribute *, locus *);
-try gfc_add_dummy (symbol_attribute *, const char *, locus *);
-try gfc_add_generic (symbol_attribute *, const char *, locus *);
-try gfc_add_common (symbol_attribute *, locus *);
-try gfc_add_in_common (symbol_attribute *, const char *, locus *);
-try gfc_add_in_equivalence (symbol_attribute *, const char *, locus *);
-try gfc_add_data (symbol_attribute *, const char *, locus *);
-try gfc_add_in_namelist (symbol_attribute *, const char *, locus *);
-try gfc_add_sequence (symbol_attribute *, const char *, locus *);
-try gfc_add_elemental (symbol_attribute *, locus *);
-try gfc_add_pure (symbol_attribute *, locus *);
-try gfc_add_recursive (symbol_attribute *, locus *);
-try gfc_add_function (symbol_attribute *, const char *, locus *);
-try gfc_add_subroutine (symbol_attribute *, const char *, locus *);
-try gfc_add_volatile (symbol_attribute *, const char *, locus *);
-try gfc_add_proc (symbol_attribute *attr, const char *name, locus *where);
-
-try gfc_add_access (symbol_attribute *, gfc_access, const char *, locus *);
-try gfc_add_is_bind_c(symbol_attribute *, const char *, locus *, int);
-try gfc_add_value (symbol_attribute *, const char *, locus *);
-try gfc_add_flavor (symbol_attribute *, sym_flavor, const char *, locus *);
-try gfc_add_entry (symbol_attribute *, const char *, locus *);
-try gfc_add_procedure (symbol_attribute *, procedure_type,
+gfc_try gfc_add_attribute (symbol_attribute *, locus *);
+gfc_try gfc_add_allocatable (symbol_attribute *, locus *);
+gfc_try gfc_add_dimension (symbol_attribute *, const char *, locus *);
+gfc_try gfc_add_external (symbol_attribute *, locus *);
+gfc_try gfc_add_intrinsic (symbol_attribute *, locus *);
+gfc_try gfc_add_optional (symbol_attribute *, locus *);
+gfc_try gfc_add_pointer (symbol_attribute *, locus *);
+gfc_try gfc_add_cray_pointer (symbol_attribute *, locus *);
+gfc_try gfc_add_cray_pointee (symbol_attribute *, locus *);
+gfc_try gfc_mod_pointee_as (gfc_array_spec *);
+gfc_try gfc_add_protected (symbol_attribute *, const char *, locus *);
+gfc_try gfc_add_result (symbol_attribute *, const char *, locus *);
+gfc_try gfc_add_save (symbol_attribute *, const char *, locus *);
+gfc_try gfc_add_threadprivate (symbol_attribute *, const char *, locus *);
+gfc_try gfc_add_saved_common (symbol_attribute *, locus *);
+gfc_try gfc_add_target (symbol_attribute *, locus *);
+gfc_try gfc_add_dummy (symbol_attribute *, const char *, locus *);
+gfc_try gfc_add_generic (symbol_attribute *, const char *, locus *);
+gfc_try gfc_add_common (symbol_attribute *, locus *);
+gfc_try gfc_add_in_common (symbol_attribute *, const char *, locus *);
+gfc_try gfc_add_in_equivalence (symbol_attribute *, const char *, locus *);
+gfc_try gfc_add_data (symbol_attribute *, const char *, locus *);
+gfc_try gfc_add_in_namelist (symbol_attribute *, const char *, locus *);
+gfc_try gfc_add_sequence (symbol_attribute *, const char *, locus *);
+gfc_try gfc_add_elemental (symbol_attribute *, locus *);
+gfc_try gfc_add_pure (symbol_attribute *, locus *);
+gfc_try gfc_add_recursive (symbol_attribute *, locus *);
+gfc_try gfc_add_function (symbol_attribute *, const char *, locus *);
+gfc_try gfc_add_subroutine (symbol_attribute *, const char *, locus *);
+gfc_try gfc_add_volatile (symbol_attribute *, const char *, locus *);
+gfc_try gfc_add_proc (symbol_attribute *attr, const char *name, locus *where);
+
+gfc_try gfc_add_access (symbol_attribute *, gfc_access, const char *, locus *);
+gfc_try gfc_add_is_bind_c(symbol_attribute *, const char *, locus *, int);
+gfc_try gfc_add_value (symbol_attribute *, const char *, locus *);
+gfc_try gfc_add_flavor (symbol_attribute *, sym_flavor, const char *, locus *);
+gfc_try gfc_add_entry (symbol_attribute *, const char *, locus *);
+gfc_try gfc_add_procedure (symbol_attribute *, procedure_type,
 		       const char *, locus *);
-try gfc_add_intent (symbol_attribute *, sym_intent, locus *);
-try gfc_add_explicit_interface (gfc_symbol *, ifsrc,
+gfc_try gfc_add_intent (symbol_attribute *, sym_intent, locus *);
+gfc_try gfc_add_explicit_interface (gfc_symbol *, ifsrc,
 				gfc_formal_arglist *, locus *);
-try gfc_add_type (gfc_symbol *, gfc_typespec *, locus *);
+gfc_try gfc_add_type (gfc_symbol *, gfc_typespec *, locus *);

 void gfc_clear_attr (symbol_attribute *);
-try gfc_missing_attr (symbol_attribute *, locus *);
-try gfc_copy_attr (symbol_attribute *, symbol_attribute *, locus *);
+gfc_try gfc_missing_attr (symbol_attribute *, locus *);
+gfc_try gfc_copy_attr (symbol_attribute *, symbol_attribute *, locus *);

-try gfc_add_component (gfc_symbol *, const char *, gfc_component **);
+gfc_try gfc_add_component (gfc_symbol *, const char *, gfc_component **);
 gfc_symbol *gfc_use_derived (gfc_symbol *);
 gfc_symtree *gfc_use_derived_tree (gfc_symtree *);
 gfc_component *gfc_find_component (gfc_symbol *, const char *);
@@ -2187,7 +2185,7 @@ gfc_component *gfc_find_component (gfc_s
 gfc_st_label *gfc_get_st_label (int);
 void gfc_free_st_label (gfc_st_label *);
 void gfc_define_st_label (gfc_st_label *, gfc_sl_type, locus *);
-try gfc_reference_st_label (gfc_st_label *, gfc_sl_type);
+gfc_try gfc_reference_st_label (gfc_st_label *, gfc_sl_type);

 gfc_expr * gfc_lval_expr_from_sym (gfc_symbol *);

@@ -2203,11 +2201,11 @@ gfc_symbol *gfc_new_symbol (const char *
 int gfc_find_symbol (const char *, gfc_namespace *, int, gfc_symbol **);
 int gfc_find_sym_tree (const char *, gfc_namespace *, int, gfc_symtree **);
 int gfc_get_symbol (const char *, gfc_namespace *, gfc_symbol **);
-try verify_c_interop (gfc_typespec *, const char *name, locus *where);
-try verify_c_interop_param (gfc_symbol *);
-try verify_bind_c_sym (gfc_symbol *, gfc_typespec *, int, gfc_common_head *);
-try verify_bind_c_derived_type (gfc_symbol *);
-try verify_com_block_vars_c_interop (gfc_common_head *);
+gfc_try verify_c_interop (gfc_typespec *, const char *name, locus *where);
+gfc_try verify_c_interop_param (gfc_symbol *);
+gfc_try verify_bind_c_sym (gfc_symbol *, gfc_typespec *, int, gfc_common_head *);
+gfc_try verify_bind_c_derived_type (gfc_symbol *);
+gfc_try verify_com_block_vars_c_interop (gfc_common_head *);
 void generate_isocbinding_symbol (const char *, iso_c_binding_symbol, const char *);
 gfc_symbol *get_iso_c_sym (gfc_symbol *, char *, char *, int);
 int gfc_get_sym_tree (const char *, gfc_namespace *, gfc_symtree **);
@@ -2252,9 +2250,9 @@ void gfc_intrinsic_done_1 (void);

 char gfc_type_letter (bt);
 gfc_symbol * gfc_get_intrinsic_sub_symbol (const char *);
-try gfc_convert_type (gfc_expr *, gfc_typespec *, int);
-try gfc_convert_type_warn (gfc_expr *, gfc_typespec *, int, int);
-try gfc_convert_chartype (gfc_expr *, gfc_typespec *);
+gfc_try gfc_convert_type (gfc_expr *, gfc_typespec *, int);
+gfc_try gfc_convert_type_warn (gfc_expr *, gfc_typespec *, int, int);
+gfc_try gfc_convert_chartype (gfc_expr *, gfc_typespec *);
 int gfc_generic_intrinsic (const char *);
 int gfc_specific_intrinsic (const char *);
 bool gfc_is_intrinsic (gfc_symbol*, int, locus);
@@ -2266,8 +2264,8 @@ match gfc_intrinsic_func_interface (gfc_
 match gfc_intrinsic_sub_interface (gfc_code *, int);

 void gfc_warn_intrinsic_shadow (const gfc_symbol*, bool, bool);
-try gfc_check_intrinsic_standard (const gfc_intrinsic_sym*, const char**,
-				  bool, locus);
+gfc_try gfc_check_intrinsic_standard (const gfc_intrinsic_sym*, const char**,
+				      bool, locus);

 /* match.c -- FIXME */
 void gfc_free_iterator (gfc_iterator *, int);
@@ -2299,7 +2297,7 @@ gfc_expr *gfc_build_conversion (gfc_expr
 void gfc_free_ref_list (gfc_ref *);
 void gfc_type_convert_binary (gfc_expr *);
 int gfc_is_constant_expr (gfc_expr *);
-try gfc_simplify_expr (gfc_expr *, int);
+gfc_try gfc_simplify_expr (gfc_expr *, int);
 int gfc_has_vector_index (gfc_expr *);

 gfc_expr *gfc_get_expr (void);
@@ -2311,15 +2309,15 @@ mpz_t *gfc_copy_shape (mpz_t *, int);
 mpz_t *gfc_copy_shape_excluding (mpz_t *, int, gfc_expr *);
 gfc_expr *gfc_copy_expr (gfc_expr *);

-try gfc_specification_expr (gfc_expr *);
+gfc_try gfc_specification_expr (gfc_expr *);

 int gfc_numeric_ts (gfc_typespec *);
 int gfc_kind_max (gfc_expr *, gfc_expr *);

-try gfc_check_conformance (const char *, gfc_expr *, gfc_expr *);
-try gfc_check_assign (gfc_expr *, gfc_expr *, int);
-try gfc_check_pointer_assign (gfc_expr *, gfc_expr *);
-try gfc_check_assign_symbol (gfc_symbol *, gfc_expr *);
+gfc_try gfc_check_conformance (const char *, gfc_expr *, gfc_expr *);
+gfc_try gfc_check_assign (gfc_expr *, gfc_expr *, int);
+gfc_try gfc_check_pointer_assign (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_assign_symbol (gfc_symbol *, gfc_expr *);

 gfc_expr *gfc_default_initializer (gfc_typespec *);
 gfc_expr *gfc_get_variable_expr (gfc_symtree *);
@@ -2339,16 +2337,16 @@ void gfc_free_statement (gfc_code *);
 void gfc_free_statements (gfc_code *);

 /* resolve.c */
-try gfc_resolve_expr (gfc_expr *);
+gfc_try gfc_resolve_expr (gfc_expr *);
 void gfc_resolve (gfc_namespace *);
 void gfc_resolve_blocks (gfc_code *, gfc_namespace *);
 int gfc_impure_variable (gfc_symbol *);
 int gfc_pure (gfc_symbol *);
 int gfc_elemental (gfc_symbol *);
-try gfc_resolve_iterator (gfc_iterator *, bool);
-try find_forall_index (gfc_expr *, gfc_symbol *, int);
-try gfc_resolve_index (gfc_expr *, int);
-try gfc_resolve_dim_arg (gfc_expr *);
+gfc_try gfc_resolve_iterator (gfc_iterator *, bool);
+gfc_try find_forall_index (gfc_expr *, gfc_symbol *, int);
+gfc_try gfc_resolve_index (gfc_expr *, int);
+gfc_try gfc_resolve_dim_arg (gfc_expr *);
 int gfc_is_formal_arg (void);
 void gfc_resolve_substring_charlen (gfc_expr *);
 match gfc_iso_c_sub_interface(gfc_code *, gfc_symbol *);
@@ -2358,9 +2356,9 @@ match gfc_iso_c_sub_interface(gfc_code *
 void gfc_free_array_spec (gfc_array_spec *);
 gfc_array_ref *gfc_copy_array_ref (gfc_array_ref *);

-try gfc_set_array_spec (gfc_symbol *, gfc_array_spec *, locus *);
+gfc_try gfc_set_array_spec (gfc_symbol *, gfc_array_spec *, locus *);
 gfc_array_spec *gfc_copy_array_spec (gfc_array_spec *);
-try gfc_resolve_array_spec (gfc_array_spec *, int);
+gfc_try gfc_resolve_array_spec (gfc_array_spec *, int);

 int gfc_compare_array_spec (gfc_array_spec *, gfc_array_spec *);

@@ -2368,25 +2366,25 @@ gfc_expr *gfc_start_constructor (bt, int
 void gfc_append_constructor (gfc_expr *, gfc_expr *);
 void gfc_free_constructor (gfc_constructor *);
 void gfc_simplify_iterator_var (gfc_expr *);
-try gfc_expand_constructor (gfc_expr *);
+gfc_try gfc_expand_constructor (gfc_expr *);
 int gfc_constant_ac (gfc_expr *);
 int gfc_expanded_ac (gfc_expr *);
-try gfc_resolve_character_array_constructor (gfc_expr *);
-try gfc_resolve_array_constructor (gfc_expr *);
-try gfc_check_constructor_type (gfc_expr *);
-try gfc_check_iter_variable (gfc_expr *);
-try gfc_check_constructor (gfc_expr *, try (*)(gfc_expr *));
+gfc_try gfc_resolve_character_array_constructor (gfc_expr *);
+gfc_try gfc_resolve_array_constructor (gfc_expr *);
+gfc_try gfc_check_constructor_type (gfc_expr *);
+gfc_try gfc_check_iter_variable (gfc_expr *);
+gfc_try gfc_check_constructor (gfc_expr *, gfc_try (*)(gfc_expr *));
 gfc_constructor *gfc_copy_constructor (gfc_constructor *);
 gfc_expr *gfc_get_array_element (gfc_expr *, int);
-try gfc_array_size (gfc_expr *, mpz_t *);
-try gfc_array_dimen_size (gfc_expr *, int, mpz_t *);
-try gfc_array_ref_shape (gfc_array_ref *, mpz_t *);
+gfc_try gfc_array_size (gfc_expr *, mpz_t *);
+gfc_try gfc_array_dimen_size (gfc_expr *, int, mpz_t *);
+gfc_try gfc_array_ref_shape (gfc_array_ref *, mpz_t *);
 gfc_array_ref *gfc_find_array_ref (gfc_expr *);
 void gfc_insert_constructor (gfc_expr *, gfc_constructor *);
 gfc_constructor *gfc_get_constructor (void);
 tree gfc_conv_array_initializer (tree type, gfc_expr *);
-try spec_size (gfc_array_spec *, mpz_t *);
-try spec_dimen_size (gfc_array_spec *, int, mpz_t *);
+gfc_try spec_size (gfc_array_spec *, mpz_t *);
+gfc_try spec_dimen_size (gfc_array_spec *, int, mpz_t *);
 int gfc_is_compile_time_shape (gfc_array_spec *);

 /* interface.c -- FIXME: some of these should be in symbol.c */
@@ -2397,10 +2395,10 @@ void gfc_check_interfaces (gfc_namespace
 void gfc_procedure_use (gfc_symbol *, gfc_actual_arglist **, locus *);
 gfc_symbol *gfc_search_interface (gfc_interface *, int,
 				  gfc_actual_arglist **);
-try gfc_extend_expr (gfc_expr *);
+gfc_try gfc_extend_expr (gfc_expr *);
 void gfc_free_formal_arglist (gfc_formal_arglist *);
-try gfc_extend_assign (gfc_code *, gfc_namespace *);
-try gfc_add_interface (gfc_symbol *);
+gfc_try gfc_extend_assign (gfc_code *, gfc_namespace *);
+gfc_try gfc_add_interface (gfc_symbol *);
 gfc_interface *gfc_current_interface_head (void);
 void gfc_set_current_interface_head (gfc_interface *);

@@ -2408,17 +2406,17 @@ void gfc_set_current_interface_head (gfc
 extern gfc_st_label format_asterisk;

 void gfc_free_open (gfc_open *);
-try gfc_resolve_open (gfc_open *);
+gfc_try gfc_resolve_open (gfc_open *);
 void gfc_free_close (gfc_close *);
-try gfc_resolve_close (gfc_close *);
+gfc_try gfc_resolve_close (gfc_close *);
 void gfc_free_filepos (gfc_filepos *);
-try gfc_resolve_filepos (gfc_filepos *);
+gfc_try gfc_resolve_filepos (gfc_filepos *);
 void gfc_free_inquire (gfc_inquire *);
-try gfc_resolve_inquire (gfc_inquire *);
+gfc_try gfc_resolve_inquire (gfc_inquire *);
 void gfc_free_dt (gfc_dt *);
-try gfc_resolve_dt (gfc_dt *);
+gfc_try gfc_resolve_dt (gfc_dt *);
 void gfc_free_wait (gfc_wait *);
-try gfc_resolve_wait (gfc_wait *);
+gfc_try gfc_resolve_wait (gfc_wait *);

 /* module.c */
 void gfc_module_init_2 (void);
@@ -2445,7 +2443,7 @@ void gfc_delete_bbt (void *, void *, com
 void gfc_dump_parse_tree (gfc_namespace *, FILE *);

 /* parse.c */
-try gfc_parse_file (void);
+gfc_try gfc_parse_file (void);
 void gfc_global_used (gfc_gsymbol *, locus *);

 /* dependency.c */
diff -rup orig/egcc-SVN20080728/gcc/fortran/array.c egcc-SVN20080728/gcc/fortran/array.c
--- orig/egcc-SVN20080728/gcc/fortran/array.c	2008-07-22 02:00:11.000000000 +0200
+++ egcc-SVN20080728/gcc/fortran/array.c	2008-07-28 17:46:10.000000000 +0200
@@ -208,7 +208,7 @@ gfc_free_array_spec (gfc_array_spec *as)
 /* Take an array bound, resolves the expression, that make up the
    shape and check associated constraints.  */

-static try
+static gfc_try
 resolve_array_bound (gfc_expr *e, int check_constant)
 {
   if (e == NULL)
@@ -232,7 +232,7 @@ resolve_array_bound (gfc_expr *e, int ch
 /* Takes an array specification, resolves the expressions that make up
    the shape and make sure everything is integral.  */

-try
+gfc_try
 gfc_resolve_array_spec (gfc_array_spec *as, int check_constant)
 {
   gfc_expr *e;
@@ -469,7 +469,7 @@ cleanup:
    have that array specification.  The error locus is needed in case
    something goes wrong.  On failure, the caller must free the spec.  */

-try
+gfc_try
 gfc_set_array_spec (gfc_symbol *sym, gfc_array_spec *as, locus *error_loc)
 {
   if (as == NULL)
@@ -1038,7 +1038,7 @@ check_element_type (gfc_expr *expr, bool

 /* Recursive work function for gfc_check_constructor_type().  */

-static try
+static gfc_try
 check_constructor_type (gfc_constructor *c, bool convert)
 {
   gfc_expr *e;
@@ -1066,10 +1066,10 @@ check_constructor_type (gfc_constructor
 /* Check that all elements of an array constructor are the same type.
    On FAILURE, an error has been generated.  */

-try
+gfc_try
 gfc_check_constructor_type (gfc_expr *e)
 {
-  try t;
+  gfc_try t;

   if (e->ts.type != BT_UNKNOWN)
     {
@@ -1102,12 +1102,12 @@ cons_stack;

 static cons_stack *base;

-static try check_constructor (gfc_constructor *, try (*) (gfc_expr *));
+static gfc_try check_constructor (gfc_constructor *, gfc_try (*) (gfc_expr *));

 /* Check an EXPR_VARIABLE expression in a constructor to make sure
    that that variable is an iteration variables.  */

-try
+gfc_try
 gfc_check_iter_variable (gfc_expr *expr)
 {
   gfc_symbol *sym;
@@ -1127,12 +1127,12 @@ gfc_check_iter_variable (gfc_expr *expr)
    to calling the check function for each expression in the
    constructor, giving variables with the names of iterators a pass.  */

-static try
-check_constructor (gfc_constructor *c, try (*check_function) (gfc_expr *))
+static gfc_try
+check_constructor (gfc_constructor *c, gfc_try (*check_function) (gfc_expr *))
 {
   cons_stack element;
   gfc_expr *e;
-  try t;
+  gfc_try t;

   for (; c; c = c->next)
     {
@@ -1165,11 +1165,11 @@ check_constructor (gfc_constructor *c, t
    expression -- specification, restricted, or initialization as
    determined by the check_function.  */

-try
-gfc_check_constructor (gfc_expr *expr, try (*check_function) (gfc_expr *))
+gfc_try
+gfc_check_constructor (gfc_expr *expr, gfc_try (*check_function) (gfc_expr *))
 {
   cons_stack *base_save;
-  try t;
+  gfc_try t;

   base_save = base;
   base = NULL;
@@ -1197,19 +1197,19 @@ typedef struct
   gfc_component *component;
   mpz_t *repeat;

-  try (*expand_work_function) (gfc_expr *);
+  gfc_try (*expand_work_function) (gfc_expr *);
 }
 expand_info;

 static expand_info current_expand;

-static try expand_constructor (gfc_constructor *);
+static gfc_try expand_constructor (gfc_constructor *);


 /* Work function that counts the number of elements present in a
    constructor.  */

-static try
+static gfc_try
 count_elements (gfc_expr *e)
 {
   mpz_t result;
@@ -1236,7 +1236,7 @@ count_elements (gfc_expr *e)
 /* Work function that extracts a particular element from an array
    constructor, freeing the rest.  */

-static try
+static gfc_try
 extract_element (gfc_expr *e)
 {

@@ -1259,7 +1259,7 @@ extract_element (gfc_expr *e)
 /* Work function that constructs a new constructor out of the old one,
    stringing new elements together.  */

-static try
+static gfc_try
 expand (gfc_expr *e)
 {
   if (current_expand.new_head == NULL)
@@ -1307,7 +1307,7 @@ gfc_simplify_iterator_var (gfc_expr *e)
 /* Expand an expression with that is inside of a constructor,
    recursing into other constructors if present.  */

-static try
+static gfc_try
 expand_expr (gfc_expr *e)
 {
   if (e->expr_type == EXPR_ARRAY)
@@ -1325,13 +1325,13 @@ expand_expr (gfc_expr *e)
 }


-static try
+static gfc_try
 expand_iterator (gfc_constructor *c)
 {
   gfc_expr *start, *end, *step;
   iterator_stack frame;
   mpz_t trip;
-  try t;
+  gfc_try t;

   end = step = NULL;

@@ -1409,7 +1409,7 @@ cleanup:
    expressions.  The work function needs to either save or free the
    passed expression.  */

-static try
+static gfc_try
 expand_constructor (gfc_constructor *c)
 {
   gfc_expr *e;
@@ -1452,12 +1452,12 @@ expand_constructor (gfc_constructor *c)
 /* Top level subroutine for expanding constructors.  We only expand
    constructor if they are small enough.  */

-try
+gfc_try
 gfc_expand_constructor (gfc_expr *e)
 {
   expand_info expand_save;
   gfc_expr *f;
-  try rc;
+  gfc_try rc;

   f = gfc_get_array_element (e, GFC_MAX_AC_EXPAND);
   if (f != NULL)
@@ -1496,7 +1496,7 @@ done:
    constant, after removal of any iteration variables.  We return
    FAILURE if not so.  */

-static try
+static gfc_try
 constant_element (gfc_expr *e)
 {
   int rv;
@@ -1518,7 +1518,7 @@ int
 gfc_constant_ac (gfc_expr *e)
 {
   expand_info expand_save;
-  try rc;
+  gfc_try rc;

   iter_stack = NULL;
   expand_save = current_expand;
@@ -1556,10 +1556,10 @@ gfc_expanded_ac (gfc_expr *e)
 /* Recursive array list resolution function.  All of the elements must
    be of the same type.  */

-static try
+static gfc_try
 resolve_array_list (gfc_constructor *p)
 {
-  try t;
+  gfc_try t;

   t = SUCCESS;

@@ -1581,7 +1581,7 @@ resolve_array_list (gfc_constructor *p)
    all elements are of compile-time known length, emit an error as this is
    invalid.  */

-try
+gfc_try
 gfc_resolve_character_array_constructor (gfc_expr *expr)
 {
   gfc_constructor *p;
@@ -1711,10 +1711,10 @@ got_charlen:

 /* Resolve all of the expressions in an array list.  */

-try
+gfc_try
 gfc_resolve_array_constructor (gfc_expr *expr)
 {
-  try t;
+  gfc_try t;

   t = resolve_array_list (expr->value.constructor);
   if (t == SUCCESS)
@@ -1795,7 +1795,7 @@ gfc_get_array_element (gfc_expr *array,
 {
   expand_info expand_save;
   gfc_expr *e;
-  try rc;
+  gfc_try rc;

   expand_save = current_expand;
   current_expand.extract_n = element;
@@ -1826,7 +1826,7 @@ gfc_get_array_element (gfc_expr *array,
 /* Get the size of single dimension of an array specification.  The
    array is guaranteed to be one dimensional.  */

-try
+gfc_try
 spec_dimen_size (gfc_array_spec *as, int dimen, mpz_t *result)
 {
   if (as == NULL)
@@ -1853,7 +1853,7 @@ spec_dimen_size (gfc_array_spec *as, int
 }


-try
+gfc_try
 spec_size (gfc_array_spec *as, mpz_t *result)
 {
   mpz_t size;
@@ -1879,11 +1879,11 @@ spec_size (gfc_array_spec *as, mpz_t *re

 /* Get the number of elements in an array section.  */

-static try
+static gfc_try
 ref_dimen_size (gfc_array_ref *ar, int dimen, mpz_t *result)
 {
   mpz_t upper, lower, stride;
-  try t;
+  gfc_try t;

   if (dimen < 0 || ar == NULL || dimen > ar->dimen - 1)
     gfc_internal_error ("ref_dimen_size(): Bad dimension");
@@ -1967,7 +1967,7 @@ ref_dimen_size (gfc_array_ref *ar, int d
 }


-static try
+static gfc_try
 ref_size (gfc_array_ref *ar, mpz_t *result)
 {
   mpz_t size;
@@ -1996,7 +1996,7 @@ ref_size (gfc_array_ref *ar, mpz_t *resu
    able to return a result in the 'result' variable, FAILURE
    otherwise.  */

-try
+gfc_try
 gfc_array_dimen_size (gfc_expr *array, int dimen, mpz_t *result)
 {
   gfc_ref *ref;
@@ -2064,13 +2064,13 @@ gfc_array_dimen_size (gfc_expr *array, i
    array.  Returns SUCCESS if this is possible, and sets the 'result'
    variable.  Otherwise returns FAILURE.  */

-try
+gfc_try
 gfc_array_size (gfc_expr *array, mpz_t *result)
 {
   expand_info expand_save;
   gfc_ref *ref;
   int i, flag;
-  try t;
+  gfc_try t;

   switch (array->expr_type)
     {
@@ -2129,7 +2129,7 @@ gfc_array_size (gfc_expr *array, mpz_t *
 /* Given an array reference, return the shape of the reference in an
    array of mpz_t integers.  */

-try
+gfc_try
 gfc_array_ref_shape (gfc_array_ref *ar, mpz_t *shape)
 {
   int d;
diff -rup orig/egcc-SVN20080728/gcc/fortran/check.c egcc-SVN20080728/gcc/fortran/check.c
--- orig/egcc-SVN20080728/gcc/fortran/check.c	2008-07-19 19:47:20.000000000 +0200
+++ egcc-SVN20080728/gcc/fortran/check.c	2008-07-28 17:46:10.000000000 +0200
@@ -35,7 +35,7 @@ along with GCC; see the file COPYING3.

 /* Make sure an expression is a scalar.  */

-static try
+static gfc_try
 scalar_check (gfc_expr *e, int n)
 {
   if (e->rank == 0)
@@ -50,7 +50,7 @@ scalar_check (gfc_expr *e, int n)

 /* Check the type of an expression.  */

-static try
+static gfc_try
 type_check (gfc_expr *e, int n, bt type)
 {
   if (e->ts.type == type)
@@ -66,7 +66,7 @@ type_check (gfc_expr *e, int n, bt type)

 /* Check that the expression is a numeric type.  */

-static try
+static gfc_try
 numeric_check (gfc_expr *e, int n)
 {
   if (gfc_numeric_ts (&e->ts))
@@ -93,7 +93,7 @@ numeric_check (gfc_expr *e, int n)

 /* Check that an expression is integer or real.  */

-static try
+static gfc_try
 int_or_real_check (gfc_expr *e, int n)
 {
   if (e->ts.type != BT_INTEGER && e->ts.type != BT_REAL)
@@ -110,7 +110,7 @@ int_or_real_check (gfc_expr *e, int n)

 /* Check that an expression is real or complex.  */

-static try
+static gfc_try
 real_or_complex_check (gfc_expr *e, int n)
 {
   if (e->ts.type != BT_REAL && e->ts.type != BT_COMPLEX)
@@ -128,7 +128,7 @@ real_or_complex_check (gfc_expr *e, int
 /* Check that the expression is an optional constant integer
    and that it specifies a valid kind for that type.  */

-static try
+static gfc_try
 kind_check (gfc_expr *k, int n, bt type)
 {
   int kind;
@@ -164,7 +164,7 @@ kind_check (gfc_expr *k, int n, bt type)

 /* Make sure the expression is a double precision real.  */

-static try
+static gfc_try
 double_check (gfc_expr *d, int n)
 {
   if (type_check (d, n, BT_REAL) == FAILURE)
@@ -184,7 +184,7 @@ double_check (gfc_expr *d, int n)

 /* Make sure the expression is a logical array.  */

-static try
+static gfc_try
 logical_array_check (gfc_expr *array, int n)
 {
   if (array->ts.type != BT_LOGICAL || array->rank == 0)
@@ -201,7 +201,7 @@ logical_array_check (gfc_expr *array, in

 /* Make sure an expression is an array.  */

-static try
+static gfc_try
 array_check (gfc_expr *e, int n)
 {
   if (e->rank != 0)
@@ -216,7 +216,7 @@ array_check (gfc_expr *e, int n)

 /* Make sure two expressions have the same type.  */

-static try
+static gfc_try
 same_type_check (gfc_expr *e, int n, gfc_expr *f, int m)
 {
   if (gfc_compare_types (&e->ts, &f->ts))
@@ -232,7 +232,7 @@ same_type_check (gfc_expr *e, int n, gfc

 /* Make sure that an expression has a certain (nonzero) rank.  */

-static try
+static gfc_try
 rank_check (gfc_expr *e, int n, int rank)
 {
   if (e->rank == rank)
@@ -248,7 +248,7 @@ rank_check (gfc_expr *e, int n, int rank

 /* Make sure a variable expression is not an optional dummy argument.  */

-static try
+static gfc_try
 nonoptional_check (gfc_expr *e, int n)
 {
   if (e->expr_type == EXPR_VARIABLE && e->symtree->n.sym->attr.optional)
@@ -266,7 +266,7 @@ nonoptional_check (gfc_expr *e, int n)

 /* Check that an expression has a particular kind.  */

-static try
+static gfc_try
 kind_value_check (gfc_expr *e, int n, int k)
 {
   if (e->ts.kind == k)
@@ -282,7 +282,7 @@ kind_value_check (gfc_expr *e, int n, in

 /* Make sure an expression is a variable.  */

-static try
+static gfc_try
 variable_check (gfc_expr *e, int n)
 {
   if ((e->expr_type == EXPR_VARIABLE
@@ -309,7 +309,7 @@ variable_check (gfc_expr *e, int n)

 /* Check the common DIM parameter for correctness.  */

-static try
+static gfc_try
 dim_check (gfc_expr *dim, int n, bool optional)
 {
   if (dim == NULL)
@@ -333,7 +333,7 @@ dim_check (gfc_expr *dim, int n, bool op
    allow_assumed is zero then dim must be less than the rank of the array
    for assumed size arrays.  */

-static try
+static gfc_try
 dim_rank_check (gfc_expr *dim, gfc_expr *array, int allow_assumed)
 {
   gfc_array_ref *ar;
@@ -396,7 +396,7 @@ identical_dimen_shape (gfc_expr *a, int
 /* Check whether two character expressions have the same length;
    returns SUCCESS if they have or if the length cannot be determined.  */

-static try
+static gfc_try
 check_same_strlen (const gfc_expr *a, const gfc_expr *b, const char *name)
 {
    long len_a, len_b;
@@ -434,7 +434,7 @@ check_same_strlen (const gfc_expr *a, co
 /* Check subroutine suitable for intrinsics taking a real argument and
    a kind argument for the result.  */

-static try
+static gfc_try
 check_a_kind (gfc_expr *a, gfc_expr *kind, bt type)
 {
   if (type_check (a, 0, BT_REAL) == FAILURE)
@@ -448,7 +448,7 @@ check_a_kind (gfc_expr *a, gfc_expr *kin

 /* Check subroutine suitable for ceiling, floor and nint.  */

-try
+gfc_try
 gfc_check_a_ikind (gfc_expr *a, gfc_expr *kind)
 {
   return check_a_kind (a, kind, BT_INTEGER);
@@ -457,14 +457,14 @@ gfc_check_a_ikind (gfc_expr *a, gfc_expr

 /* Check subroutine suitable for aint, anint.  */

-try
+gfc_try
 gfc_check_a_xkind (gfc_expr *a, gfc_expr *kind)
 {
   return check_a_kind (a, kind, BT_REAL);
 }


-try
+gfc_try
 gfc_check_abs (gfc_expr *a)
 {
   if (numeric_check (a, 0) == FAILURE)
@@ -474,7 +474,7 @@ gfc_check_abs (gfc_expr *a)
 }


-try
+gfc_try
 gfc_check_achar (gfc_expr *a, gfc_expr *kind)
 {
   if (type_check (a, 0, BT_INTEGER) == FAILURE)
@@ -486,7 +486,7 @@ gfc_check_achar (gfc_expr *a, gfc_expr *
 }


-try
+gfc_try
 gfc_check_access_func (gfc_expr *name, gfc_expr *mode)
 {
   if (type_check (name, 0, BT_CHARACTER) == FAILURE
@@ -505,7 +505,7 @@ gfc_check_access_func (gfc_expr *name, g
 }


-try
+gfc_try
 gfc_check_all_any (gfc_expr *mask, gfc_expr *dim)
 {
   if (logical_array_check (mask, 0) == FAILURE)
@@ -518,7 +518,7 @@ gfc_check_all_any (gfc_expr *mask, gfc_e
 }


-try
+gfc_try
 gfc_check_allocated (gfc_expr *array)
 {
   symbol_attribute attr;
@@ -545,7 +545,7 @@ gfc_check_allocated (gfc_expr *array)
 /* Common check function where the first argument must be real or
    integer and the second argument must be the same as the first.  */

-try
+gfc_try
 gfc_check_a_p (gfc_expr *a, gfc_expr *p)
 {
   if (int_or_real_check (a, 0) == FAILURE)
@@ -571,7 +571,7 @@ gfc_check_a_p (gfc_expr *a, gfc_expr *p)
 }


-try
+gfc_try
 gfc_check_x_yd (gfc_expr *x, gfc_expr *y)
 {
   if (double_check (x, 0) == FAILURE || double_check (y, 1) == FAILURE)
@@ -581,12 +581,12 @@ gfc_check_x_yd (gfc_expr *x, gfc_expr *y
 }


-try
+gfc_try
 gfc_check_associated (gfc_expr *pointer, gfc_expr *target)
 {
   symbol_attribute attr1, attr2;
   int i;
-  try t;
+  gfc_try t;
   locus *where;

   where = &pointer->where;
@@ -664,7 +664,7 @@ null_arg:
 }


-try
+gfc_try
 gfc_check_atan2 (gfc_expr *y, gfc_expr *x)
 {
   if (type_check (y, 0, BT_REAL) == FAILURE)
@@ -678,7 +678,7 @@ gfc_check_atan2 (gfc_expr *y, gfc_expr *

 /* BESJN and BESYN functions.  */

-try
+gfc_try
 gfc_check_besn (gfc_expr *n, gfc_expr *x)
 {
   if (type_check (n, 0, BT_INTEGER) == FAILURE)
@@ -691,7 +691,7 @@ gfc_check_besn (gfc_expr *n, gfc_expr *x
 }


-try
+gfc_try
 gfc_check_btest (gfc_expr *i, gfc_expr *pos)
 {
   if (type_check (i, 0, BT_INTEGER) == FAILURE)
@@ -703,7 +703,7 @@ gfc_check_btest (gfc_expr *i, gfc_expr *
 }


-try
+gfc_try
 gfc_check_char (gfc_expr *i, gfc_expr *kind)
 {
   if (type_check (i, 0, BT_INTEGER) == FAILURE)
@@ -715,7 +715,7 @@ gfc_check_char (gfc_expr *i, gfc_expr *k
 }


-try
+gfc_try
 gfc_check_chdir (gfc_expr *dir)
 {
   if (type_check (dir, 0, BT_CHARACTER) == FAILURE)
@@ -727,7 +727,7 @@ gfc_check_chdir (gfc_expr *dir)
 }


-try
+gfc_try
 gfc_check_chdir_sub (gfc_expr *dir, gfc_expr *status)
 {
   if (type_check (dir, 0, BT_CHARACTER) == FAILURE)
@@ -747,7 +747,7 @@ gfc_check_chdir_sub (gfc_expr *dir, gfc_
 }


-try
+gfc_try
 gfc_check_chmod (gfc_expr *name, gfc_expr *mode)
 {
   if (type_check (name, 0, BT_CHARACTER) == FAILURE)
@@ -764,7 +764,7 @@ gfc_check_chmod (gfc_expr *name, gfc_exp
 }


-try
+gfc_try
 gfc_check_chmod_sub (gfc_expr *name, gfc_expr *mode, gfc_expr *status)
 {
   if (type_check (name, 0, BT_CHARACTER) == FAILURE)
@@ -790,7 +790,7 @@ gfc_check_chmod_sub (gfc_expr *name, gfc
 }


-try
+gfc_try
 gfc_check_cmplx (gfc_expr *x, gfc_expr *y, gfc_expr *kind)
 {
   if (numeric_check (x, 0) == FAILURE)
@@ -817,7 +817,7 @@ gfc_check_cmplx (gfc_expr *x, gfc_expr *
 }


-try
+gfc_try
 gfc_check_complex (gfc_expr *x, gfc_expr *y)
 {
   if (x->ts.type != BT_INTEGER && x->ts.type != BT_REAL)
@@ -844,7 +844,7 @@ gfc_check_complex (gfc_expr *x, gfc_expr
 }


-try
+gfc_try
 gfc_check_count (gfc_expr *mask, gfc_expr *dim, gfc_expr *kind)
 {
   if (logical_array_check (mask, 0) == FAILURE)
@@ -862,7 +862,7 @@ gfc_check_count (gfc_expr *mask, gfc_exp
 }


-try
+gfc_try
 gfc_check_cshift (gfc_expr *array, gfc_expr *shift, gfc_expr *dim)
 {
   if (array_check (array, 0) == FAILURE)
@@ -893,7 +893,7 @@ gfc_check_cshift (gfc_expr *array, gfc_e
 }


-try
+gfc_try
 gfc_check_ctime (gfc_expr *time)
 {
   if (scalar_check (time, 0) == FAILURE)
@@ -906,7 +906,7 @@ gfc_check_ctime (gfc_expr *time)
 }


-try gfc_check_datan2 (gfc_expr *y, gfc_expr *x)
+gfc_try gfc_check_datan2 (gfc_expr *y, gfc_expr *x)
 {
   if (double_check (y, 0) == FAILURE || double_check (x, 1) == FAILURE)
     return FAILURE;
@@ -914,7 +914,7 @@ try gfc_check_datan2 (gfc_expr *y, gfc_e
   return SUCCESS;
 }

-try
+gfc_try
 gfc_check_dcmplx (gfc_expr *x, gfc_expr *y)
 {
   if (numeric_check (x, 0) == FAILURE)
@@ -938,7 +938,7 @@ gfc_check_dcmplx (gfc_expr *x, gfc_expr
 }


-try
+gfc_try
 gfc_check_dble (gfc_expr *x)
 {
   if (numeric_check (x, 0) == FAILURE)
@@ -948,7 +948,7 @@ gfc_check_dble (gfc_expr *x)
 }


-try
+gfc_try
 gfc_check_digits (gfc_expr *x)
 {
   if (int_or_real_check (x, 0) == FAILURE)
@@ -958,7 +958,7 @@ gfc_check_digits (gfc_expr *x)
 }


-try
+gfc_try
 gfc_check_dot_product (gfc_expr *vector_a, gfc_expr *vector_b)
 {
   switch (vector_a->ts.type)
@@ -1000,7 +1000,7 @@ gfc_check_dot_product (gfc_expr *vector_
 }


-try
+gfc_try
 gfc_check_dprod (gfc_expr *x, gfc_expr *y)
 {
   if (type_check (x, 0, BT_REAL) == FAILURE
@@ -1027,7 +1027,7 @@ gfc_check_dprod (gfc_expr *x, gfc_expr *
 }


-try
+gfc_try
 gfc_check_eoshift (gfc_expr *array, gfc_expr *shift, gfc_expr *boundary,
 		   gfc_expr *dim)
 {
@@ -1092,7 +1092,7 @@ gfc_check_eoshift (gfc_expr *array, gfc_

 /* A single complex argument.  */

-try
+gfc_try
 gfc_check_fn_c (gfc_expr *a)
 {
   if (type_check (a, 0, BT_COMPLEX) == FAILURE)
@@ -1104,7 +1104,7 @@ gfc_check_fn_c (gfc_expr *a)

 /* A single real argument.  */

-try
+gfc_try
 gfc_check_fn_r (gfc_expr *a)
 {
   if (type_check (a, 0, BT_REAL) == FAILURE)
@@ -1115,7 +1115,7 @@ gfc_check_fn_r (gfc_expr *a)

 /* A single double argument.  */

-try
+gfc_try
 gfc_check_fn_d (gfc_expr *a)
 {
   if (double_check (a, 0) == FAILURE)
@@ -1126,7 +1126,7 @@ gfc_check_fn_d (gfc_expr *a)

 /* A single real or complex argument.  */

-try
+gfc_try
 gfc_check_fn_rc (gfc_expr *a)
 {
   if (real_or_complex_check (a, 0) == FAILURE)
@@ -1136,7 +1136,7 @@ gfc_check_fn_rc (gfc_expr *a)
 }


-try
+gfc_try
 gfc_check_fnum (gfc_expr *unit)
 {
   if (type_check (unit, 0, BT_INTEGER) == FAILURE)
@@ -1149,7 +1149,7 @@ gfc_check_fnum (gfc_expr *unit)
 }


-try
+gfc_try
 gfc_check_huge (gfc_expr *x)
 {
   if (int_or_real_check (x, 0) == FAILURE)
@@ -1159,7 +1159,7 @@ gfc_check_huge (gfc_expr *x)
 }


-try
+gfc_try
 gfc_check_hypot (gfc_expr *x, gfc_expr *y)
 {
   if (type_check (x, 0, BT_REAL) == FAILURE)
@@ -1173,7 +1173,7 @@ gfc_check_hypot (gfc_expr *x, gfc_expr *

 /* Check that the single argument is an integer.  */

-try
+gfc_try
 gfc_check_i (gfc_expr *i)
 {
   if (type_check (i, 0, BT_INTEGER) == FAILURE)
@@ -1183,7 +1183,7 @@ gfc_check_i (gfc_expr *i)
 }


-try
+gfc_try
 gfc_check_iand (gfc_expr *i, gfc_expr *j)
 {
   if (type_check (i, 0, BT_INTEGER) == FAILURE)
@@ -1203,7 +1203,7 @@ gfc_check_iand (gfc_expr *i, gfc_expr *j
 }


-try
+gfc_try
 gfc_check_ibclr (gfc_expr *i, gfc_expr *pos)
 {
   if (type_check (i, 0, BT_INTEGER) == FAILURE)
@@ -1216,7 +1216,7 @@ gfc_check_ibclr (gfc_expr *i, gfc_expr *
 }


-try
+gfc_try
 gfc_check_ibits (gfc_expr *i, gfc_expr *pos, gfc_expr *len)
 {
   if (type_check (i, 0, BT_INTEGER) == FAILURE)
@@ -1232,7 +1232,7 @@ gfc_check_ibits (gfc_expr *i, gfc_expr *
 }


-try
+gfc_try
 gfc_check_ibset (gfc_expr *i, gfc_expr *pos)
 {
   if (type_check (i, 0, BT_INTEGER) == FAILURE)
@@ -1245,7 +1245,7 @@ gfc_check_ibset (gfc_expr *i, gfc_expr *
 }


-try
+gfc_try
 gfc_check_ichar_iachar (gfc_expr *c, gfc_expr *kind)
 {
   int i;
@@ -1316,7 +1316,7 @@ gfc_check_ichar_iachar (gfc_expr *c, gfc
 }


-try
+gfc_try
 gfc_check_idnint (gfc_expr *a)
 {
   if (double_check (a, 0) == FAILURE)
@@ -1326,7 +1326,7 @@ gfc_check_idnint (gfc_expr *a)
 }


-try
+gfc_try
 gfc_check_ieor (gfc_expr *i, gfc_expr *j)
 {
   if (type_check (i, 0, BT_INTEGER) == FAILURE)
@@ -1346,7 +1346,7 @@ gfc_check_ieor (gfc_expr *i, gfc_expr *j
 }


-try
+gfc_try
 gfc_check_index (gfc_expr *string, gfc_expr *substring, gfc_expr *back,
 		 gfc_expr *kind)
 {
@@ -1377,7 +1377,7 @@ gfc_check_index (gfc_expr *string, gfc_e
 }


-try
+gfc_try
 gfc_check_int (gfc_expr *x, gfc_expr *kind)
 {
   if (numeric_check (x, 0) == FAILURE)
@@ -1390,7 +1390,7 @@ gfc_check_int (gfc_expr *x, gfc_expr *ki
 }


-try
+gfc_try
 gfc_check_intconv (gfc_expr *x)
 {
   if (numeric_check (x, 0) == FAILURE)
@@ -1400,7 +1400,7 @@ gfc_check_intconv (gfc_expr *x)
 }


-try
+gfc_try
 gfc_check_ior (gfc_expr *i, gfc_expr *j)
 {
   if (type_check (i, 0, BT_INTEGER) == FAILURE)
@@ -1420,7 +1420,7 @@ gfc_check_ior (gfc_expr *i, gfc_expr *j)
 }


-try
+gfc_try
 gfc_check_ishft (gfc_expr *i, gfc_expr *shift)
 {
   if (type_check (i, 0, BT_INTEGER) == FAILURE
@@ -1431,7 +1431,7 @@ gfc_check_ishft (gfc_expr *i, gfc_expr *
 }


-try
+gfc_try
 gfc_check_ishftc (gfc_expr *i, gfc_expr *shift, gfc_expr *size)
 {
   if (type_check (i, 0, BT_INTEGER) == FAILURE
@@ -1445,7 +1445,7 @@ gfc_check_ishftc (gfc_expr *i, gfc_expr
 }


-try
+gfc_try
 gfc_check_kill (gfc_expr *pid, gfc_expr *sig)
 {
   if (type_check (pid, 0, BT_INTEGER) == FAILURE)
@@ -1458,7 +1458,7 @@ gfc_check_kill (gfc_expr *pid, gfc_expr
 }


-try
+gfc_try
 gfc_check_kill_sub (gfc_expr *pid, gfc_expr *sig, gfc_expr *status)
 {
   if (type_check (pid, 0, BT_INTEGER) == FAILURE)
@@ -1486,7 +1486,7 @@ gfc_check_kill_sub (gfc_expr *pid, gfc_e
 }


-try
+gfc_try
 gfc_check_kind (gfc_expr *x)
 {
   if (x->ts.type == BT_DERIVED)
@@ -1501,7 +1501,7 @@ gfc_check_kind (gfc_expr *x)
 }


-try
+gfc_try
 gfc_check_lbound (gfc_expr *array, gfc_expr *dim, gfc_expr *kind)
 {
   if (array_check (array, 0) == FAILURE)
@@ -1527,7 +1527,7 @@ gfc_check_lbound (gfc_expr *array, gfc_e
 }


-try
+gfc_try
 gfc_check_len_lentrim (gfc_expr *s, gfc_expr *kind)
 {
   if (type_check (s, 0, BT_CHARACTER) == FAILURE)
@@ -1544,7 +1544,7 @@ gfc_check_len_lentrim (gfc_expr *s, gfc_
 }


-try
+gfc_try
 gfc_check_lge_lgt_lle_llt (gfc_expr *a, gfc_expr *b)
 {
   if (type_check (a, 0, BT_CHARACTER) == FAILURE)
@@ -1561,7 +1561,7 @@ gfc_check_lge_lgt_lle_llt (gfc_expr *a,
 }


-try
+gfc_try
 gfc_check_link (gfc_expr *path1, gfc_expr *path2)
 {
   if (type_check (path1, 0, BT_CHARACTER) == FAILURE)
@@ -1578,7 +1578,7 @@ gfc_check_link (gfc_expr *path1, gfc_exp
 }


-try
+gfc_try
 gfc_check_link_sub (gfc_expr *path1, gfc_expr *path2, gfc_expr *status)
 {
   if (type_check (path1, 0, BT_CHARACTER) == FAILURE)
@@ -1604,14 +1604,14 @@ gfc_check_link_sub (gfc_expr *path1, gfc
 }


-try
+gfc_try
 gfc_check_loc (gfc_expr *expr)
 {
   return variable_check (expr, 0);
 }


-try
+gfc_try
 gfc_check_symlnk (gfc_expr *path1, gfc_expr *path2)
 {
   if (type_check (path1, 0, BT_CHARACTER) == FAILURE)
@@ -1628,7 +1628,7 @@ gfc_check_symlnk (gfc_expr *path1, gfc_e
 }


-try
+gfc_try
 gfc_check_symlnk_sub (gfc_expr *path1, gfc_expr *path2, gfc_expr *status)
 {
   if (type_check (path1, 0, BT_CHARACTER) == FAILURE)
@@ -1654,7 +1654,7 @@ gfc_check_symlnk_sub (gfc_expr *path1, g
 }


-try
+gfc_try
 gfc_check_logical (gfc_expr *a, gfc_expr *kind)
 {
   if (type_check (a, 0, BT_LOGICAL) == FAILURE)
@@ -1668,7 +1668,7 @@ gfc_check_logical (gfc_expr *a, gfc_expr

 /* Min/max family.  */

-static try
+static gfc_try
 min_max_args (gfc_actual_arglist *arg)
 {
   if (arg == NULL || arg->next == NULL)
@@ -1682,7 +1682,7 @@ min_max_args (gfc_actual_arglist *arg)
 }


-static try
+static gfc_try
 check_rest (bt type, int kind, gfc_actual_arglist *arglist)
 {
   gfc_actual_arglist *arg, *tmp;
@@ -1727,7 +1727,7 @@ check_rest (bt type, int kind, gfc_actua
 }


-try
+gfc_try
 gfc_check_min_max (gfc_actual_arglist *arg)
 {
   gfc_expr *x;
@@ -1755,21 +1755,21 @@ gfc_check_min_max (gfc_actual_arglist *a
 }


-try
+gfc_try
 gfc_check_min_max_integer (gfc_actual_arglist *arg)
 {
   return check_rest (BT_INTEGER, gfc_default_integer_kind, arg);
 }


-try
+gfc_try
 gfc_check_min_max_real (gfc_actual_arglist *arg)
 {
   return check_rest (BT_REAL, gfc_default_real_kind, arg);
 }


-try
+gfc_try
 gfc_check_min_max_double (gfc_actual_arglist *arg)
 {
   return check_rest (BT_REAL, gfc_default_double_kind, arg);
@@ -1778,7 +1778,7 @@ gfc_check_min_max_double (gfc_actual_arg

 /* End of min/max family.  */

-try
+gfc_try
 gfc_check_malloc (gfc_expr *size)
 {
   if (type_check (size, 0, BT_INTEGER) == FAILURE)
@@ -1791,7 +1791,7 @@ gfc_check_malloc (gfc_expr *size)
 }


-try
+gfc_try
 gfc_check_matmul (gfc_expr *matrix_a, gfc_expr *matrix_b)
 {
   if ((matrix_a->ts.type != BT_LOGICAL) && !gfc_numeric_ts (&matrix_b->ts))
@@ -1870,7 +1870,7 @@ gfc_check_matmul (gfc_expr *matrix_a, gf
    I.e. in the case of minloc(array,mask), mask will be in the second
    position of the argument list and we'll have to fix that up.  */

-try
+gfc_try
 gfc_check_minloc_maxloc (gfc_actual_arglist *ap)
 {
   gfc_expr *a, *m, *d;
@@ -1929,7 +1929,7 @@ gfc_check_minloc_maxloc (gfc_actual_argl
    I.e. in the case of minval(array,mask), mask will be in the second
    position of the argument list and we'll have to fix that up.  */

-static try
+static gfc_try
 check_reduction (gfc_actual_arglist *ap)
 {
   gfc_expr *a, *m, *d;
@@ -1970,7 +1970,7 @@ check_reduction (gfc_actual_arglist *ap)
 }


-try
+gfc_try
 gfc_check_minval_maxval (gfc_actual_arglist *ap)
 {
   if (int_or_real_check (ap->expr, 0) == FAILURE
@@ -1981,7 +1981,7 @@ gfc_check_minval_maxval (gfc_actual_argl
 }


-try
+gfc_try
 gfc_check_product_sum (gfc_actual_arglist *ap)
 {
   if (numeric_check (ap->expr, 0) == FAILURE
@@ -1992,7 +1992,7 @@ gfc_check_product_sum (gfc_actual_arglis
 }


-try
+gfc_try
 gfc_check_merge (gfc_expr *tsource, gfc_expr *fsource, gfc_expr *mask)
 {
   if (same_type_check (tsource, 0, fsource, 1) == FAILURE)
@@ -2008,7 +2008,7 @@ gfc_check_merge (gfc_expr *tsource, gfc_
 }


-try
+gfc_try
 gfc_check_move_alloc (gfc_expr *from, gfc_expr *to)
 {
   symbol_attribute attr;
@@ -2068,7 +2068,7 @@ gfc_check_move_alloc (gfc_expr *from, gf
 }


-try
+gfc_try
 gfc_check_nearest (gfc_expr *x, gfc_expr *s)
 {
   if (type_check (x, 0, BT_REAL) == FAILURE)
@@ -2081,7 +2081,7 @@ gfc_check_nearest (gfc_expr *x, gfc_expr
 }


-try
+gfc_try
 gfc_check_new_line (gfc_expr *a)
 {
   if (type_check (a, 0, BT_CHARACTER) == FAILURE)
@@ -2091,7 +2091,7 @@ gfc_check_new_line (gfc_expr *a)
 }


-try
+gfc_try
 gfc_check_null (gfc_expr *mold)
 {
   symbol_attribute attr;
@@ -2116,7 +2116,7 @@ gfc_check_null (gfc_expr *mold)
 }


-try
+gfc_try
 gfc_check_pack (gfc_expr *array, gfc_expr *mask, gfc_expr *vector)
 {
   char buffer[80];
@@ -2148,7 +2148,7 @@ gfc_check_pack (gfc_expr *array, gfc_exp
 }


-try
+gfc_try
 gfc_check_precision (gfc_expr *x)
 {
   if (x->ts.type != BT_REAL && x->ts.type != BT_COMPLEX)
@@ -2163,7 +2163,7 @@ gfc_check_precision (gfc_expr *x)
 }


-try
+gfc_try
 gfc_check_present (gfc_expr *a)
 {
   gfc_symbol *sym;
@@ -2208,7 +2208,7 @@ gfc_check_present (gfc_expr *a)
 }


-try
+gfc_try
 gfc_check_radix (gfc_expr *x)
 {
   if (int_or_real_check (x, 0) == FAILURE)
@@ -2218,7 +2218,7 @@ gfc_check_radix (gfc_expr *x)
 }


-try
+gfc_try
 gfc_check_range (gfc_expr *x)
 {
   if (numeric_check (x, 0) == FAILURE)
@@ -2229,7 +2229,7 @@ gfc_check_range (gfc_expr *x)


 /* real, float, sngl.  */
-try
+gfc_try
 gfc_check_real (gfc_expr *a, gfc_expr *kind)
 {
   if (numeric_check (a, 0) == FAILURE)
@@ -2242,7 +2242,7 @@ gfc_check_real (gfc_expr *a, gfc_expr *k
 }


-try
+gfc_try
 gfc_check_rename (gfc_expr *path1, gfc_expr *path2)
 {
   if (type_check (path1, 0, BT_CHARACTER) == FAILURE)
@@ -2259,7 +2259,7 @@ gfc_check_rename (gfc_expr *path1, gfc_e
 }


-try
+gfc_try
 gfc_check_rename_sub (gfc_expr *path1, gfc_expr *path2, gfc_expr *status)
 {
   if (type_check (path1, 0, BT_CHARACTER) == FAILURE)
@@ -2285,7 +2285,7 @@ gfc_check_rename_sub (gfc_expr *path1, g
 }


-try
+gfc_try
 gfc_check_repeat (gfc_expr *x, gfc_expr *y)
 {
   if (type_check (x, 0, BT_CHARACTER) == FAILURE)
@@ -2304,7 +2304,7 @@ gfc_check_repeat (gfc_expr *x, gfc_expr
 }


-try
+gfc_try
 gfc_check_reshape (gfc_expr *source, gfc_expr *shape,
 		   gfc_expr *pad, gfc_expr *order)
 {
@@ -2383,7 +2383,7 @@ gfc_check_reshape (gfc_expr *source, gfc
 }


-try
+gfc_try
 gfc_check_scale (gfc_expr *x, gfc_expr *i)
 {
   if (type_check (x, 0, BT_REAL) == FAILURE)
@@ -2396,7 +2396,7 @@ gfc_check_scale (gfc_expr *x, gfc_expr *
 }


-try
+gfc_try
 gfc_check_scan (gfc_expr *x, gfc_expr *y, gfc_expr *z, gfc_expr *kind)
 {
   if (type_check (x, 0, BT_CHARACTER) == FAILURE)
@@ -2422,7 +2422,7 @@ gfc_check_scan (gfc_expr *x, gfc_expr *y
 }


-try
+gfc_try
 gfc_check_secnds (gfc_expr *r)
 {
   if (type_check (r, 0, BT_REAL) == FAILURE)
@@ -2438,7 +2438,7 @@ gfc_check_secnds (gfc_expr *r)
 }


-try
+gfc_try
 gfc_check_selected_char_kind (gfc_expr *name)
 {
   if (type_check (name, 0, BT_CHARACTER) == FAILURE)
@@ -2454,7 +2454,7 @@ gfc_check_selected_char_kind (gfc_expr *
 }


-try
+gfc_try
 gfc_check_selected_int_kind (gfc_expr *r)
 {
   if (type_check (r, 0, BT_INTEGER) == FAILURE)
@@ -2467,7 +2467,7 @@ gfc_check_selected_int_kind (gfc_expr *r
 }


-try
+gfc_try
 gfc_check_selected_real_kind (gfc_expr *p, gfc_expr *r)
 {
   if (p == NULL && r == NULL)
@@ -2488,7 +2488,7 @@ gfc_check_selected_real_kind (gfc_expr *
 }


-try
+gfc_try
 gfc_check_set_exponent (gfc_expr *x, gfc_expr *i)
 {
   if (type_check (x, 0, BT_REAL) == FAILURE)
@@ -2501,7 +2501,7 @@ gfc_check_set_exponent (gfc_expr *x, gfc
 }


-try
+gfc_try
 gfc_check_shape (gfc_expr *source)
 {
   gfc_array_ref *ar;
@@ -2522,7 +2522,7 @@ gfc_check_shape (gfc_expr *source)
 }


-try
+gfc_try
 gfc_check_sign (gfc_expr *a, gfc_expr *b)
 {
   if (int_or_real_check (a, 0) == FAILURE)
@@ -2535,7 +2535,7 @@ gfc_check_sign (gfc_expr *a, gfc_expr *b
 }


-try
+gfc_try
 gfc_check_size (gfc_expr *array, gfc_expr *dim, gfc_expr *kind)
 {
   if (array_check (array, 0) == FAILURE)
@@ -2562,14 +2562,14 @@ gfc_check_size (gfc_expr *array, gfc_exp
 }


-try
+gfc_try
 gfc_check_sizeof (gfc_expr *arg ATTRIBUTE_UNUSED)
 {
   return SUCCESS;
 }


-try
+gfc_try
 gfc_check_sleep_sub (gfc_expr *seconds)
 {
   if (type_check (seconds, 0, BT_INTEGER) == FAILURE)
@@ -2582,7 +2582,7 @@ gfc_check_sleep_sub (gfc_expr *seconds)
 }


-try
+gfc_try
 gfc_check_spread (gfc_expr *source, gfc_expr *dim, gfc_expr *ncopies)
 {
   if (source->rank >= GFC_MAX_DIMENSIONS)
@@ -2613,7 +2613,7 @@ gfc_check_spread (gfc_expr *source, gfc_
 /* Functions for checking FGETC, FPUTC, FGET and FPUT (subroutines and
    functions).  */

-try
+gfc_try
 gfc_check_fgetputc_sub (gfc_expr *unit, gfc_expr *c, gfc_expr *status)
 {
   if (type_check (unit, 0, BT_INTEGER) == FAILURE)
@@ -2639,14 +2639,14 @@ gfc_check_fgetputc_sub (gfc_expr *unit,
 }


-try
+gfc_try
 gfc_check_fgetputc (gfc_expr *unit, gfc_expr *c)
 {
   return gfc_check_fgetputc_sub (unit, c, NULL);
 }


-try
+gfc_try
 gfc_check_fgetput_sub (gfc_expr *c, gfc_expr *status)
 {
   if (type_check (c, 0, BT_CHARACTER) == FAILURE)
@@ -2666,14 +2666,14 @@ gfc_check_fgetput_sub (gfc_expr *c, gfc_
 }


-try
+gfc_try
 gfc_check_fgetput (gfc_expr *c)
 {
   return gfc_check_fgetput_sub (c, NULL);
 }


-try
+gfc_try
 gfc_check_fseek_sub (gfc_expr *unit, gfc_expr *offset, gfc_expr *whence, gfc_expr *status)
 {
   if (type_check (unit, 0, BT_INTEGER) == FAILURE)
@@ -2711,7 +2711,7 @@ gfc_check_fseek_sub (gfc_expr *unit, gfc



-try
+gfc_try
 gfc_check_fstat (gfc_expr *unit, gfc_expr *array)
 {
   if (type_check (unit, 0, BT_INTEGER) == FAILURE)
@@ -2731,7 +2731,7 @@ gfc_check_fstat (gfc_expr *unit, gfc_exp
 }


-try
+gfc_try
 gfc_check_fstat_sub (gfc_expr *unit, gfc_expr *array, gfc_expr *status)
 {
   if (type_check (unit, 0, BT_INTEGER) == FAILURE)
@@ -2761,7 +2761,7 @@ gfc_check_fstat_sub (gfc_expr *unit, gfc
 }


-try
+gfc_try
 gfc_check_ftell (gfc_expr *unit)
 {
   if (type_check (unit, 0, BT_INTEGER) == FAILURE)
@@ -2774,7 +2774,7 @@ gfc_check_ftell (gfc_expr *unit)
 }


-try
+gfc_try
 gfc_check_ftell_sub (gfc_expr *unit, gfc_expr *offset)
 {
   if (type_check (unit, 0, BT_INTEGER) == FAILURE)
@@ -2793,7 +2793,7 @@ gfc_check_ftell_sub (gfc_expr *unit, gfc
 }


-try
+gfc_try
 gfc_check_stat (gfc_expr *name, gfc_expr *array)
 {
   if (type_check (name, 0, BT_CHARACTER) == FAILURE)
@@ -2812,7 +2812,7 @@ gfc_check_stat (gfc_expr *name, gfc_expr
 }


-try
+gfc_try
 gfc_check_stat_sub (gfc_expr *name, gfc_expr *array, gfc_expr *status)
 {
   if (type_check (name, 0, BT_CHARACTER) == FAILURE)
@@ -2841,7 +2841,7 @@ gfc_check_stat_sub (gfc_expr *name, gfc_
 }


-try
+gfc_try
 gfc_check_transfer (gfc_expr *source ATTRIBUTE_UNUSED,
 		    gfc_expr *mold ATTRIBUTE_UNUSED, gfc_expr *size)
 {
@@ -2868,7 +2868,7 @@ gfc_check_transfer (gfc_expr *source ATT
 }


-try
+gfc_try
 gfc_check_transpose (gfc_expr *matrix)
 {
   if (rank_check (matrix, 0, 2) == FAILURE)
@@ -2878,7 +2878,7 @@ gfc_check_transpose (gfc_expr *matrix)
 }


-try
+gfc_try
 gfc_check_ubound (gfc_expr *array, gfc_expr *dim, gfc_expr *kind)
 {
   if (array_check (array, 0) == FAILURE)
@@ -2904,7 +2904,7 @@ gfc_check_ubound (gfc_expr *array, gfc_e
 }


-try
+gfc_try
 gfc_check_unpack (gfc_expr *vector, gfc_expr *mask, gfc_expr *field)
 {
   if (rank_check (vector, 0, 1) == FAILURE)
@@ -2942,7 +2942,7 @@ gfc_check_unpack (gfc_expr *vector, gfc_
 }


-try
+gfc_try
 gfc_check_verify (gfc_expr *x, gfc_expr *y, gfc_expr *z, gfc_expr *kind)
 {
   if (type_check (x, 0, BT_CHARACTER) == FAILURE)
@@ -2965,7 +2965,7 @@ gfc_check_verify (gfc_expr *x, gfc_expr
 }


-try
+gfc_try
 gfc_check_trim (gfc_expr *x)
 {
   if (type_check (x, 0, BT_CHARACTER) == FAILURE)
@@ -2978,7 +2978,7 @@ gfc_check_trim (gfc_expr *x)
 }


-try
+gfc_try
 gfc_check_ttynam (gfc_expr *unit)
 {
   if (scalar_check (unit, 0) == FAILURE)
@@ -2994,7 +2994,7 @@ gfc_check_ttynam (gfc_expr *unit)
 /* Common check function for the half a dozen intrinsics that have a
    single real argument.  */

-try
+gfc_try
 gfc_check_x (gfc_expr *x)
 {
   if (type_check (x, 0, BT_REAL) == FAILURE)
@@ -3006,7 +3006,7 @@ gfc_check_x (gfc_expr *x)

 /************* Check functions for intrinsic subroutines *************/

-try
+gfc_try
 gfc_check_cpu_time (gfc_expr *time)
 {
   if (scalar_check (time, 0) == FAILURE)
@@ -3022,7 +3022,7 @@ gfc_check_cpu_time (gfc_expr *time)
 }


-try
+gfc_try
 gfc_check_date_and_time (gfc_expr *date, gfc_expr *time,
 			 gfc_expr *zone, gfc_expr *values)
 {
@@ -3078,7 +3078,7 @@ gfc_check_date_and_time (gfc_expr *date,
 }


-try
+gfc_try
 gfc_check_mvbits (gfc_expr *from, gfc_expr *frompos, gfc_expr *len,
 		  gfc_expr *to, gfc_expr *topos)
 {
@@ -3104,7 +3104,7 @@ gfc_check_mvbits (gfc_expr *from, gfc_ex
 }


-try
+gfc_try
 gfc_check_random_number (gfc_expr *harvest)
 {
   if (type_check (harvest, 0, BT_REAL) == FAILURE)
@@ -3117,7 +3117,7 @@ gfc_check_random_number (gfc_expr *harve
 }


-try
+gfc_try
 gfc_check_random_seed (gfc_expr *size, gfc_expr *put, gfc_expr *get)
 {
   unsigned int nargs = 0;
@@ -3197,7 +3197,7 @@ gfc_check_random_seed (gfc_expr *size, g
 }


-try
+gfc_try
 gfc_check_second_sub (gfc_expr *time)
 {
   if (scalar_check (time, 0) == FAILURE)
@@ -3216,7 +3216,7 @@ gfc_check_second_sub (gfc_expr *time)
 /* The arguments of SYSTEM_CLOCK are scalar, integer variables.  Note,
    count, count_rate, and count_max are all optional arguments */

-try
+gfc_try
 gfc_check_system_clock (gfc_expr *count, gfc_expr *count_rate,
 			gfc_expr *count_max)
 {
@@ -3273,7 +3273,7 @@ gfc_check_system_clock (gfc_expr *count,
 }


-try
+gfc_try
 gfc_check_irand (gfc_expr *x)
 {
   if (x == NULL)
@@ -3292,7 +3292,7 @@ gfc_check_irand (gfc_expr *x)
 }


-try
+gfc_try
 gfc_check_alarm_sub (gfc_expr *seconds, gfc_expr *handler, gfc_expr *status)
 {
   if (scalar_check (seconds, 0) == FAILURE)
@@ -3328,7 +3328,7 @@ gfc_check_alarm_sub (gfc_expr *seconds,
 }


-try
+gfc_try
 gfc_check_rand (gfc_expr *x)
 {
   if (x == NULL)
@@ -3347,7 +3347,7 @@ gfc_check_rand (gfc_expr *x)
 }


-try
+gfc_try
 gfc_check_srand (gfc_expr *x)
 {
   if (scalar_check (x, 0) == FAILURE)
@@ -3363,7 +3363,7 @@ gfc_check_srand (gfc_expr *x)
 }


-try
+gfc_try
 gfc_check_ctime_sub (gfc_expr *time, gfc_expr *result)
 {
   if (scalar_check (time, 0) == FAILURE)
@@ -3380,7 +3380,7 @@ gfc_check_ctime_sub (gfc_expr *time, gfc
 }


-try
+gfc_try
 gfc_check_dtime_etime (gfc_expr *x)
 {
   if (array_check (x, 0) == FAILURE)
@@ -3402,7 +3402,7 @@ gfc_check_dtime_etime (gfc_expr *x)
 }


-try
+gfc_try
 gfc_check_dtime_etime_sub (gfc_expr *values, gfc_expr *time)
 {
   if (array_check (values, 0) == FAILURE)
@@ -3433,7 +3433,7 @@ gfc_check_dtime_etime_sub (gfc_expr *val
 }


-try
+gfc_try
 gfc_check_fdate_sub (gfc_expr *date)
 {
   if (type_check (date, 0, BT_CHARACTER) == FAILURE)
@@ -3445,7 +3445,7 @@ gfc_check_fdate_sub (gfc_expr *date)
 }


-try
+gfc_try
 gfc_check_gerror (gfc_expr *msg)
 {
   if (type_check (msg, 0, BT_CHARACTER) == FAILURE)
@@ -3457,7 +3457,7 @@ gfc_check_gerror (gfc_expr *msg)
 }


-try
+gfc_try
 gfc_check_getcwd_sub (gfc_expr *cwd, gfc_expr *status)
 {
   if (type_check (cwd, 0, BT_CHARACTER) == FAILURE)
@@ -3478,7 +3478,7 @@ gfc_check_getcwd_sub (gfc_expr *cwd, gfc
 }


-try
+gfc_try
 gfc_check_getarg (gfc_expr *pos, gfc_expr *value)
 {
   if (type_check (pos, 0, BT_INTEGER) == FAILURE)
@@ -3502,7 +3502,7 @@ gfc_check_getarg (gfc_expr *pos, gfc_exp
 }


-try
+gfc_try
 gfc_check_getlog (gfc_expr *msg)
 {
   if (type_check (msg, 0, BT_CHARACTER) == FAILURE)
@@ -3514,7 +3514,7 @@ gfc_check_getlog (gfc_expr *msg)
 }


-try
+gfc_try
 gfc_check_exit (gfc_expr *status)
 {
   if (status == NULL)
@@ -3530,7 +3530,7 @@ gfc_check_exit (gfc_expr *status)
 }


-try
+gfc_try
 gfc_check_flush (gfc_expr *unit)
 {
   if (unit == NULL)
@@ -3546,7 +3546,7 @@ gfc_check_flush (gfc_expr *unit)
 }


-try
+gfc_try
 gfc_check_free (gfc_expr *i)
 {
   if (type_check (i, 0, BT_INTEGER) == FAILURE)
@@ -3559,7 +3559,7 @@ gfc_check_free (gfc_expr *i)
 }


-try
+gfc_try
 gfc_check_hostnm (gfc_expr *name)
 {
   if (type_check (name, 0, BT_CHARACTER) == FAILURE)
@@ -3571,7 +3571,7 @@ gfc_check_hostnm (gfc_expr *name)
 }


-try
+gfc_try
 gfc_check_hostnm_sub (gfc_expr *name, gfc_expr *status)
 {
   if (type_check (name, 0, BT_CHARACTER) == FAILURE)
@@ -3592,7 +3592,7 @@ gfc_check_hostnm_sub (gfc_expr *name, gf
 }


-try
+gfc_try
 gfc_check_itime_idate (gfc_expr *values)
 {
   if (array_check (values, 0) == FAILURE)
@@ -3614,7 +3614,7 @@ gfc_check_itime_idate (gfc_expr *values)
 }


-try
+gfc_try
 gfc_check_ltime_gmtime (gfc_expr *time, gfc_expr *values)
 {
   if (type_check (time, 0, BT_INTEGER) == FAILURE)
@@ -3645,7 +3645,7 @@ gfc_check_ltime_gmtime (gfc_expr *time,
 }


-try
+gfc_try
 gfc_check_ttynam_sub (gfc_expr *unit, gfc_expr *name)
 {
   if (scalar_check (unit, 0) == FAILURE)
@@ -3663,7 +3663,7 @@ gfc_check_ttynam_sub (gfc_expr *unit, gf
 }


-try
+gfc_try
 gfc_check_isatty (gfc_expr *unit)
 {
   if (unit == NULL)
@@ -3679,7 +3679,7 @@ gfc_check_isatty (gfc_expr *unit)
 }


-try
+gfc_try
 gfc_check_isnan (gfc_expr *x)
 {
   if (type_check (x, 0, BT_REAL) == FAILURE)
@@ -3689,7 +3689,7 @@ gfc_check_isnan (gfc_expr *x)
 }


-try
+gfc_try
 gfc_check_perror (gfc_expr *string)
 {
   if (type_check (string, 0, BT_CHARACTER) == FAILURE)
@@ -3701,7 +3701,7 @@ gfc_check_perror (gfc_expr *string)
 }


-try
+gfc_try
 gfc_check_umask (gfc_expr *mask)
 {
   if (type_check (mask, 0, BT_INTEGER) == FAILURE)
@@ -3714,7 +3714,7 @@ gfc_check_umask (gfc_expr *mask)
 }


-try
+gfc_try
 gfc_check_umask_sub (gfc_expr *mask, gfc_expr *old)
 {
   if (type_check (mask, 0, BT_INTEGER) == FAILURE)
@@ -3736,7 +3736,7 @@ gfc_check_umask_sub (gfc_expr *mask, gfc
 }


-try
+gfc_try
 gfc_check_unlink (gfc_expr *name)
 {
   if (type_check (name, 0, BT_CHARACTER) == FAILURE)
@@ -3748,7 +3748,7 @@ gfc_check_unlink (gfc_expr *name)
 }


-try
+gfc_try
 gfc_check_unlink_sub (gfc_expr *name, gfc_expr *status)
 {
   if (type_check (name, 0, BT_CHARACTER) == FAILURE)
@@ -3769,7 +3769,7 @@ gfc_check_unlink_sub (gfc_expr *name, gf
 }


-try
+gfc_try
 gfc_check_signal (gfc_expr *number, gfc_expr *handler)
 {
   if (scalar_check (number, 0) == FAILURE)
@@ -3793,7 +3793,7 @@ gfc_check_signal (gfc_expr *number, gfc_
 }


-try
+gfc_try
 gfc_check_signal_sub (gfc_expr *number, gfc_expr *handler, gfc_expr *status)
 {
   if (scalar_check (number, 0) == FAILURE)
@@ -3826,7 +3826,7 @@ gfc_check_signal_sub (gfc_expr *number,
 }


-try
+gfc_try
 gfc_check_system_sub (gfc_expr *cmd, gfc_expr *status)
 {
   if (type_check (cmd, 0, BT_CHARACTER) == FAILURE)
@@ -3848,7 +3848,7 @@ gfc_check_system_sub (gfc_expr *cmd, gfc


 /* This is used for the GNU intrinsics AND, OR and XOR.  */
-try
+gfc_try
 gfc_check_and (gfc_expr *i, gfc_expr *j)
 {
   if (i->ts.type != BT_INTEGER && i->ts.type != BT_LOGICAL)
diff -rup orig/egcc-SVN20080728/gcc/fortran/cpp.c egcc-SVN20080728/gcc/fortran/cpp.c
--- orig/egcc-SVN20080728/gcc/fortran/cpp.c	2008-06-24 02:00:06.000000000 +0200
+++ egcc-SVN20080728/gcc/fortran/cpp.c	2008-07-28 17:46:10.000000000 +0200
@@ -574,7 +574,7 @@ gfc_cpp_init (void)
     pp_dir_change (cpp_in, get_src_pwd ());
 }

-try
+gfc_try
 gfc_cpp_preprocess (const char *source_file)
 {
   if (!gfc_cpp_enabled ())
diff -rup orig/egcc-SVN20080728/gcc/fortran/cpp.h egcc-SVN20080728/gcc/fortran/cpp.h
--- orig/egcc-SVN20080728/gcc/fortran/cpp.h	2008-06-12 02:00:03.000000000 +0200
+++ egcc-SVN20080728/gcc/fortran/cpp.h	2008-07-28 17:46:10.000000000 +0200
@@ -36,7 +36,7 @@ int gfc_cpp_handle_option(size_t scode,

 void gfc_cpp_post_options (void);

-try gfc_cpp_preprocess (const char *source_file);
+gfc_try gfc_cpp_preprocess (const char *source_file);

 void gfc_cpp_done (void);

diff -rup orig/egcc-SVN20080728/gcc/fortran/data.c egcc-SVN20080728/gcc/fortran/data.c
--- orig/egcc-SVN20080728/gcc/fortran/data.c	2008-07-22 02:00:11.000000000 +0200
+++ egcc-SVN20080728/gcc/fortran/data.c	2008-07-28 17:46:10.000000000 +0200
@@ -46,7 +46,7 @@ get_array_index (gfc_array_ref *ar, mpz_
 {
   gfc_expr *e;
   int i;
-  try re;
+  gfc_try re;
   mpz_t delta;
   mpz_t tmp;

@@ -247,7 +247,7 @@ create_character_intializer (gfc_expr *i
    LVALUE already has an initialization, we extend this, otherwise we
    create a new one.  */

-try
+gfc_try
 gfc_assign_data_value (gfc_expr *lvalue, gfc_expr *rvalue, mpz_t index)
 {
   gfc_ref *ref;
diff -rup orig/egcc-SVN20080728/gcc/fortran/data.h egcc-SVN20080728/gcc/fortran/data.h
--- orig/egcc-SVN20080728/gcc/fortran/data.h	2008-03-14 00:34:29.000000000 +0100
+++ egcc-SVN20080728/gcc/fortran/data.h	2008-07-28 17:46:10.000000000 +0200
@@ -19,6 +19,6 @@ along with GCC; see the file COPYING3.

 void gfc_formalize_init_value (gfc_symbol *);
 void gfc_get_section_index (gfc_array_ref *, mpz_t *, mpz_t *);
-try gfc_assign_data_value (gfc_expr *, gfc_expr *, mpz_t);
+gfc_try gfc_assign_data_value (gfc_expr *, gfc_expr *, mpz_t);
 void gfc_assign_data_value_range (gfc_expr *, gfc_expr *, mpz_t, mpz_t);
 void gfc_advance_section (mpz_t *, gfc_array_ref *, mpz_t *);
diff -rup orig/egcc-SVN20080728/gcc/fortran/decl.c egcc-SVN20080728/gcc/fortran/decl.c
--- orig/egcc-SVN20080728/gcc/fortran/decl.c	2008-07-25 02:00:07.000000000 +0200
+++ egcc-SVN20080728/gcc/fortran/decl.c	2008-07-28 17:46:10.000000000 +0200
@@ -867,11 +867,11 @@ get_proc_name (const char *name, gfc_sym
    the compiler could have automatically handled the varying sizes
    across platforms.  */

-try
+gfc_try
 verify_c_interop_param (gfc_symbol *sym)
 {
   int is_c_interop = 0;
-  try retval = SUCCESS;
+  gfc_try retval = SUCCESS;

   /* We check implicitly typed variables in symbol.c:gfc_set_default_type().
      Don't repeat the checks here.  */
@@ -1009,7 +1009,7 @@ verify_c_interop_param (gfc_symbol *sym)

 /* Function called by variable_decl() that adds a name to the symbol table.  */

-static try
+static gfc_try
 build_sym (const char *name, gfc_charlen *cl,
 	   gfc_array_spec **as, locus *var_locus)
 {
@@ -1185,7 +1185,7 @@ gfc_free_enum_history (void)
 /* Function called by variable_decl() that adds an initialization
    expression to a symbol.  */

-static try
+static gfc_try
 add_init_expr_to_sym (const char *name, gfc_expr **initp, locus *var_locus)
 {
   symbol_attribute attr;
@@ -1362,7 +1362,7 @@ add_init_expr_to_sym (const char *name,
 /* Function called by variable_decl() that adds a name to a structure
    being built.  */

-static try
+static gfc_try
 build_struct (const char *name, gfc_charlen *cl, gfc_expr **init,
 	      gfc_array_spec **as)
 {
@@ -1548,7 +1548,7 @@ variable_decl (int elem)
   gfc_charlen *cl;
   locus var_locus;
   match m;
-  try t;
+  gfc_try t;
   gfc_symbol *sym;
   locus old_locus;

@@ -2786,7 +2786,7 @@ match_attr_spec (void)
   decl_types d;
   const char *attr;
   match m;
-  try t;
+  gfc_try t;

   gfc_clear_attr (&current_attr);
   start = gfc_current_locus;
@@ -3248,7 +3248,7 @@ cleanup:
    (J3/04-007, section 15.4.1).  If a binding label was given and
    there is more than one argument (num_idents), it is an error.  */

-try
+gfc_try
 set_binding_label (char *dest_label, const char *sym_name, int num_idents)
 {
   if (num_idents > 1 && has_name_equals)
@@ -3288,10 +3288,10 @@ set_com_block_bind_c (gfc_common_head *c

 /* Verify that the given gfc_typespec is for a C interoperable type.  */

-try
+gfc_try
 verify_c_interop (gfc_typespec *ts, const char *name, locus *where)
 {
-  try t;
+  gfc_try t;

   /* Make sure the kind used is appropriate for the type.
      The f90_type is unknown if an integer constant was
@@ -3326,11 +3326,11 @@ verify_c_interop (gfc_typespec *ts, cons
    interoperable type.  Errors will be reported here, if
    encountered.  */

-try
+gfc_try
 verify_com_block_vars_c_interop (gfc_common_head *com_block)
 {
   gfc_symbol *curr_sym = NULL;
-  try retval = SUCCESS;
+  gfc_try retval = SUCCESS;

   curr_sym = com_block->head;

@@ -3354,11 +3354,11 @@ verify_com_block_vars_c_interop (gfc_com
 /* Verify that a given BIND(C) symbol is C interoperable.  If it is not,
    an appropriate error message is reported.  */

-try
+gfc_try
 verify_bind_c_sym (gfc_symbol *tmp_sym, gfc_typespec *ts,
                    int is_in_common, gfc_common_head *com_block)
 {
-  try retval = SUCCESS;
+  gfc_try retval = SUCCESS;

   if (tmp_sym->attr.function && tmp_sym->result != NULL)
     {
@@ -3478,10 +3478,10 @@ verify_bind_c_sym (gfc_symbol *tmp_sym,
    the type is C interoperable.  Errors are reported by the functions
    used to set/test these fields.  */

-try
+gfc_try
 set_verify_bind_c_sym (gfc_symbol *tmp_sym, int num_idents)
 {
-  try retval = SUCCESS;
+  gfc_try retval = SUCCESS;

   /* TODO: Do we need to make sure the vars aren't marked private?  */

@@ -3499,10 +3499,10 @@ set_verify_bind_c_sym (gfc_symbol *tmp_s
 /* Set the fields marking the given common block as BIND(C), including
    a binding label, and report any errors encountered.  */

-try
+gfc_try
 set_verify_bind_c_com_block (gfc_common_head *com_block, int num_idents)
 {
-  try retval = SUCCESS;
+  gfc_try retval = SUCCESS;

   /* destLabel, common name, typespec (which may have binding label).  */
   if (set_binding_label (com_block->binding_label, com_block->name, num_idents)
@@ -3519,7 +3519,7 @@ set_verify_bind_c_com_block (gfc_common_
 /* Retrieve the list of one or more identifiers that the given bind(c)
    attribute applies to.  */

-try
+gfc_try
 get_bind_c_idents (void)
 {
   char name[GFC_MAX_SYMBOL_LEN + 1];
@@ -3792,7 +3792,7 @@ loop:

 /* Copy attributes matched by gfc_match_prefix() to attributes on a symbol.  */

-static try
+static gfc_try
 copy_prefix (symbol_attribute *dest, locus *where)
 {
   if (current_attr.pure && gfc_add_pure (dest, where) == FAILURE)
@@ -6400,7 +6400,7 @@ gfc_match_derived_decl (void)
    is the case. Since there is no bounds-checking for Cray Pointees,
    this will be okay.  */

-try
+gfc_try
 gfc_mod_pointee_as (gfc_array_spec *as)
 {
   as->cray_pointee = true; /* This will be useful to know later.  */
@@ -6454,7 +6454,7 @@ enumerator_decl (void)
   gfc_symbol *sym;
   locus var_locus;
   match m;
-  try t;
+  gfc_try t;
   locus old_locus;

   initializer = NULL;
@@ -6537,7 +6537,7 @@ match
 gfc_match_enumerator_def (void)
 {
   match m;
-  try t;
+  gfc_try t;

   gfc_clear_ts (&current_ts);

diff -rup orig/egcc-SVN20080728/gcc/fortran/error.c egcc-SVN20080728/gcc/fortran/error.c
--- orig/egcc-SVN20080728/gcc/fortran/error.c	2008-06-20 08:07:55.000000000 +0200
+++ egcc-SVN20080728/gcc/fortran/error.c	2008-07-28 17:46:10.000000000 +0200
@@ -754,7 +754,7 @@ gfc_notification_std (int std)
    standard does not contain the requested bits.  Return FAILURE if
    an error is generated.  */

-try
+gfc_try
 gfc_notify_std (int std, const char *nocmsgid, ...)
 {
   va_list argp;
diff -rup orig/egcc-SVN20080728/gcc/fortran/expr.c egcc-SVN20080728/gcc/fortran/expr.c
--- orig/egcc-SVN20080728/gcc/fortran/expr.c	2008-07-25 02:00:07.000000000 +0200
+++ egcc-SVN20080728/gcc/fortran/expr.c	2008-07-28 17:51:02.000000000 +0200
@@ -824,7 +824,7 @@ is_subref_array (gfc_expr * e)

 /* Try to collapse intrinsic expressions.  */

-static try
+static gfc_try
 simplify_intrinsic_op (gfc_expr *p, int type)
 {
   gfc_intrinsic_op op;
@@ -960,7 +960,7 @@ simplify_intrinsic_op (gfc_expr *p, int
 /* Subroutine to simplify constructor expressions.  Mutually recursive
    with gfc_simplify_expr().  */

-static try
+static gfc_try
 simplify_constructor (gfc_constructor *c, int type)
 {
   gfc_expr *p;
@@ -996,7 +996,7 @@ simplify_constructor (gfc_constructor *c

 /* Pull a single array element out of an array constructor.  */

-static try
+static gfc_try
 find_array_element (gfc_constructor *cons, gfc_array_ref *ar,
 		    gfc_constructor **rval)
 {
@@ -1007,7 +1007,7 @@ find_array_element (gfc_constructor *con
   mpz_t span;
   mpz_t tmp;
   gfc_expr *e;
-  try t;
+  gfc_try t;

   t = SUCCESS;
   e = NULL;
@@ -1115,7 +1115,7 @@ remove_subobject_ref (gfc_expr *p, gfc_c

 /* Pull an array section out of an array constructor.  */

-static try
+static gfc_try
 find_array_section (gfc_expr *expr, gfc_ref *ref)
 {
   int idx;
@@ -1142,7 +1142,7 @@ find_array_section (gfc_expr *expr, gfc_
   gfc_expr *upper;
   gfc_expr *lower;
   gfc_constructor *vecsub[GFC_MAX_DIMENSIONS], *c;
-  try t;
+  gfc_try t;

   t = SUCCESS;

@@ -1373,7 +1373,7 @@ cleanup:

 /* Pull a substring out of an expression.  */

-static try
+static gfc_try
 find_substring_ref (gfc_expr *p, gfc_expr **newp)
 {
   int end;
@@ -1405,7 +1405,7 @@ find_substring_ref (gfc_expr *p, gfc_exp
 /* Simplify a subobject reference of a constructor.  This occurs when
    parameter variable values are substituted.  */

-static try
+static gfc_try
 simplify_const_ref (gfc_expr *p)
 {
   gfc_constructor *cons;
@@ -1479,7 +1479,7 @@ simplify_const_ref (gfc_expr *p)

 /* Simplify a chain of references.  */

-static try
+static gfc_try
 simplify_ref_chain (gfc_ref *ref, int type)
 {
   int n;
@@ -1517,11 +1517,11 @@ simplify_ref_chain (gfc_ref *ref, int ty

 /* Try to substitute the value of a parameter variable.  */

-static try
+static gfc_try
 simplify_parameter_variable (gfc_expr *p, int type)
 {
   gfc_expr *e;
-  try t;
+  gfc_try t;

   e = gfc_copy_expr (p->symtree->n.sym->value);
   if (e == NULL)
@@ -1562,7 +1562,7 @@ simplify_parameter_variable (gfc_expr *p
    Returns FAILURE on error, SUCCESS otherwise.
    NOTE: Will return SUCCESS even if the expression can not be simplified.  */

-try
+gfc_try
 gfc_simplify_expr (gfc_expr *p, int type)
 {
   gfc_actual_arglist *ap;
@@ -1693,12 +1693,12 @@ et0 (gfc_expr *e)
 /* Check an intrinsic arithmetic operation to see if it is consistent
    with some type of expression.  */

-static try check_init_expr (gfc_expr *);
+static gfc_try check_init_expr (gfc_expr *);


 /* Scalarize an expression for an elemental intrinsic call.  */

-static try
+static gfc_try
 scalarize_intrinsic_call (gfc_expr *e)
 {
   gfc_actual_arglist *a, *b;
@@ -1831,8 +1831,8 @@ cleanup:
 }


-static try
-check_intrinsic_op (gfc_expr *e, try (*check_function) (gfc_expr *))
+static gfc_try
+check_intrinsic_op (gfc_expr *e, gfc_try (*check_function) (gfc_expr *))
 {
   gfc_expr *op1 = e->value.op.op1;
   gfc_expr *op2 = e->value.op.op2;
@@ -2155,11 +2155,11 @@ check_conversion (gfc_expr *e)
    intrinsics in the context of initialization expressions.  If
    FAILURE is returned an error message has been generated.  */

-static try
+static gfc_try
 check_init_expr (gfc_expr *e)
 {
   match m;
-  try t;
+  gfc_try t;

   if (e == NULL)
     return SUCCESS;
@@ -2334,7 +2334,7 @@ gfc_match_init_expr (gfc_expr **result)
 {
   gfc_expr *expr;
   match m;
-  try t;
+  gfc_try t;

   m = gfc_match_expr (&expr);
   if (m != MATCH_YES)
@@ -2375,13 +2375,13 @@ gfc_match_init_expr (gfc_expr **result)
 }


-static try check_restricted (gfc_expr *);
+static gfc_try check_restricted (gfc_expr *);

 /* Given an actual argument list, test to see that each argument is a
    restricted expression and optionally if the expression type is
    integer or character.  */

-static try
+static gfc_try
 restricted_args (gfc_actual_arglist *a)
 {
   for (; a; a = a->next)
@@ -2399,7 +2399,7 @@ restricted_args (gfc_actual_arglist *a)

 /* Make sure a non-intrinsic function is a specification function.  */

-static try
+static gfc_try
 external_spec_function (gfc_expr *e)
 {
   gfc_symbol *f;
@@ -2441,7 +2441,7 @@ external_spec_function (gfc_expr *e)
 /* Check to see that a function reference to an intrinsic is a
    restricted expression.  */

-static try
+static gfc_try
 restricted_intrinsic (gfc_expr *e)
 {
   /* TODO: Check constraints on inquiry functions.  7.1.6.2 (7).  */
@@ -2456,11 +2456,11 @@ restricted_intrinsic (gfc_expr *e)
    cousin check_init_expr(), an error message is generated if we
    return FAILURE.  */

-static try
+static gfc_try
 check_restricted (gfc_expr *e)
 {
   gfc_symbol *sym;
-  try t;
+  gfc_try t;

   if (e == NULL)
     return SUCCESS;
@@ -2568,7 +2568,7 @@ check_restricted (gfc_expr *e)
 /* Check to see that an expression is a specification expression.  If
    we return FAILURE, an error has been generated.  */

-try
+gfc_try
 gfc_specification_expr (gfc_expr *e)
 {

@@ -2611,12 +2611,12 @@ gfc_specification_expr (gfc_expr *e)

 /* Given two expressions, make sure that the arrays are conformable.  */

-try
+gfc_try
 gfc_check_conformance (const char *optype_msgid, gfc_expr *op1, gfc_expr *op2)
 {
   int op1_flag, op2_flag, d;
   mpz_t op1_size, op2_size;
-  try t;
+  gfc_try t;

   if (op1->rank == 0 || op2->rank == 0)
     return SUCCESS;
@@ -2661,7 +2661,7 @@ gfc_check_conformance (const char *optyp
 /* Given an assignable expression and an arbitrary expression, make
    sure that the assignment can take place.  */

-try
+gfc_try
 gfc_check_assign (gfc_expr *lvalue, gfc_expr *rvalue, int conform)
 {
   gfc_symbol *sym;
@@ -2870,7 +2870,7 @@ gfc_check_assign (gfc_expr *lvalue, gfc_
    we only check rvalue if it's not an assignment to NULL() or a
    NULLIFY statement.  */

-try
+gfc_try
 gfc_check_pointer_assign (gfc_expr *lvalue, gfc_expr *rvalue)
 {
   symbol_attribute attr;
@@ -3018,11 +3018,11 @@ gfc_check_pointer_assign (gfc_expr *lval
 /* Relative of gfc_check_assign() except that the lvalue is a single
    symbol.  Used for initialization assignments.  */

-try
+gfc_try
 gfc_check_assign_symbol (gfc_symbol *sym, gfc_expr *rvalue)
 {
   gfc_expr lvalue;
-  try r;
+  gfc_try r;

   memset (&lvalue, '\0', sizeof (gfc_expr));

diff -rup orig/egcc-SVN20080728/gcc/fortran/interface.c egcc-SVN20080728/gcc/fortran/interface.c
--- orig/egcc-SVN20080728/gcc/fortran/interface.c	2008-07-19 19:47:20.000000000 +0200
+++ egcc-SVN20080728/gcc/fortran/interface.c	2008-07-28 17:46:10.000000000 +0200
@@ -2218,7 +2218,7 @@ pair_cmp (const void *p1, const void *p2
    refer to the same expression. The analysis is conservative.
    Returning FAILURE will produce no warning.  */

-static try
+static gfc_try
 compare_actual_expr (gfc_expr *e1, gfc_expr *e2)
 {
   const gfc_ref *r1, *r2;
@@ -2267,7 +2267,7 @@ compare_actual_expr (gfc_expr *e1, gfc_e
    another, check that identical actual arguments aren't not
    associated with some incompatible INTENTs.  */

-static try
+static gfc_try
 check_some_aliasing (gfc_formal_arglist *f, gfc_actual_arglist *a)
 {
   sym_intent f1_intent, f2_intent;
@@ -2275,7 +2275,7 @@ check_some_aliasing (gfc_formal_arglist
   gfc_actual_arglist *a1;
   size_t n, i, j;
   argpair *p;
-  try t = SUCCESS;
+  gfc_try t = SUCCESS;

   n = 0;
   for (f1 = f, a1 = a;; f1 = f1->next, a1 = a1->next)
@@ -2355,7 +2355,7 @@ compare_parameter_intent (gfc_symbol *fo
    another, check that they are compatible in the sense that intents
    are not mismatched.  */

-static try
+static gfc_try
 check_intents (gfc_formal_arglist *f, gfc_actual_arglist *a)
 {
   sym_intent f_intent;
@@ -2546,7 +2546,7 @@ find_sym_in_symtree (gfc_symbol *sym)
    interface.  If one is found, the expression node is replaced with
    the appropriate function call.  */

-try
+gfc_try
 gfc_extend_expr (gfc_expr *e)
 {
   gfc_actual_arglist *actual;
@@ -2677,7 +2677,7 @@ gfc_extend_expr (gfc_expr *e)
    SUCCESS if the node was replaced.  On FAILURE, no error is
    generated.  */

-try
+gfc_try
 gfc_extend_assign (gfc_code *c, gfc_namespace *ns)
 {
   gfc_actual_arglist *actual;
@@ -2731,7 +2731,7 @@ gfc_extend_assign (gfc_code *c, gfc_name
    the given interface list.  Ambiguity isn't checked yet since module
    procedures can be present without interfaces.  */

-static try
+static gfc_try
 check_new_interface (gfc_interface *base, gfc_symbol *new_sym)
 {
   gfc_interface *ip;
@@ -2752,7 +2752,7 @@ check_new_interface (gfc_interface *base

 /* Add a symbol to the current interface.  */

-try
+gfc_try
 gfc_add_interface (gfc_symbol *new_sym)
 {
   gfc_interface **head, *intr;
diff -rup orig/egcc-SVN20080728/gcc/fortran/intrinsic.c egcc-SVN20080728/gcc/fortran/intrinsic.c
--- orig/egcc-SVN20080728/gcc/fortran/intrinsic.c	2008-07-25 02:00:07.000000000 +0200
+++ egcc-SVN20080728/gcc/fortran/intrinsic.c	2008-07-28 17:51:26.000000000 +0200
@@ -175,7 +175,7 @@ find_char_conv (gfc_typespec *from, gfc_
    and call the proper check function rather than forcing each
    function to manipulate the argument list.  */

-static try
+static gfc_try
 do_check (gfc_intrinsic_sym *specific, gfc_actual_arglist *arg)
 {
   gfc_expr *a1, *a2, *a3, *a4, *a5;
@@ -334,7 +334,7 @@ add_sym (const char *name, gfc_isym_id i
 static void
 add_sym_0 (const char *name, gfc_isym_id id, enum klass cl, int actual_ok, bt type,
 	   int kind, int standard,
-	   try (*check) (void),
+	   gfc_try (*check) (void),
 	   gfc_expr *(*simplify) (void),
 	   void (*resolve) (gfc_expr *))
 {
@@ -376,7 +376,7 @@ add_sym_0s (const char *name, gfc_isym_i
 static void
 add_sym_1 (const char *name, gfc_isym_id id, enum klass cl, int actual_ok, bt type,
 	   int kind, int standard,
-	   try (*check) (gfc_expr *),
+	   gfc_try (*check) (gfc_expr *),
 	   gfc_expr *(*simplify) (gfc_expr *),
 	   void (*resolve) (gfc_expr *, gfc_expr *),
 	   const char *a1, bt type1, int kind1, int optional1)
@@ -400,7 +400,7 @@ add_sym_1 (const char *name, gfc_isym_id

 static void
 add_sym_1s (const char *name, gfc_isym_id id, enum klass cl, bt type, int kind, int standard,
-	    try (*check) (gfc_expr *),
+	    gfc_try (*check) (gfc_expr *),
 	    gfc_expr *(*simplify) (gfc_expr *),
 	    void (*resolve) (gfc_code *),
 	    const char *a1, bt type1, int kind1, int optional1)
@@ -425,7 +425,7 @@ add_sym_1s (const char *name, gfc_isym_i
 static void
 add_sym_1m (const char *name, gfc_isym_id id, enum klass cl, int actual_ok, bt type,
 	    int kind, int standard,
-	    try (*check) (gfc_actual_arglist *),
+	    gfc_try (*check) (gfc_actual_arglist *),
 	    gfc_expr *(*simplify) (gfc_expr *),
 	    void (*resolve) (gfc_expr *, gfc_actual_arglist *),
 	    const char *a1, bt type1, int kind1, int optional1,
@@ -452,7 +452,7 @@ add_sym_1m (const char *name, gfc_isym_i
 static void
 add_sym_2 (const char *name, gfc_isym_id id, enum klass cl, int actual_ok, bt type,
 	   int kind, int standard,
-	   try (*check) (gfc_expr *, gfc_expr *),
+	   gfc_try (*check) (gfc_expr *, gfc_expr *),
 	   gfc_expr *(*simplify) (gfc_expr *, gfc_expr *),
 	   void (*resolve) (gfc_expr *, gfc_expr *, gfc_expr *),
 	   const char *a1, bt type1, int kind1, int optional1,
@@ -478,7 +478,7 @@ add_sym_2 (const char *name, gfc_isym_id

 static void
 add_sym_2s (const char *name, gfc_isym_id id, enum klass cl, bt type, int kind, int standard,
-	    try (*check) (gfc_expr *, gfc_expr *),
+	    gfc_try (*check) (gfc_expr *, gfc_expr *),
 	    gfc_expr *(*simplify) (gfc_expr *, gfc_expr *),
 	    void (*resolve) (gfc_code *),
 	    const char *a1, bt type1, int kind1, int optional1,
@@ -505,7 +505,7 @@ add_sym_2s (const char *name, gfc_isym_i
 static void
 add_sym_3 (const char *name, gfc_isym_id id, enum klass cl, int actual_ok, bt type,
 	   int kind, int standard,
-	   try (*check) (gfc_expr *, gfc_expr *, gfc_expr *),
+	   gfc_try (*check) (gfc_expr *, gfc_expr *, gfc_expr *),
 	   gfc_expr *(*simplify) (gfc_expr *, gfc_expr *, gfc_expr *),
 	   void (*resolve) (gfc_expr *, gfc_expr *, gfc_expr *, gfc_expr *),
 	   const char *a1, bt type1, int kind1, int optional1,
@@ -534,7 +534,7 @@ add_sym_3 (const char *name, gfc_isym_id
 static void
 add_sym_3ml (const char *name, gfc_isym_id id, enum klass cl, int actual_ok, bt type,
 	     int kind, int standard,
-	     try (*check) (gfc_actual_arglist *),
+	     gfc_try (*check) (gfc_actual_arglist *),
 	     gfc_expr *(*simplify) (gfc_expr *, gfc_expr *, gfc_expr *),
 	     void (*resolve) (gfc_expr *, gfc_expr *, gfc_expr *, gfc_expr *),
 	     const char *a1, bt type1, int kind1, int optional1,
@@ -563,7 +563,7 @@ add_sym_3ml (const char *name, gfc_isym_
 static void
 add_sym_3red (const char *name, gfc_isym_id id, enum klass cl, int actual_ok, bt type,
 	      int kind, int standard,
-	      try (*check) (gfc_actual_arglist *),
+	      gfc_try (*check) (gfc_actual_arglist *),
 	      gfc_expr *(*simplify) (gfc_expr *, gfc_expr *, gfc_expr *),
 	      void (*resolve) (gfc_expr *, gfc_expr *, gfc_expr *, gfc_expr *),
 	      const char *a1, bt type1, int kind1, int optional1,
@@ -591,7 +591,7 @@ add_sym_3red (const char *name, gfc_isym

 static void
 add_sym_3s (const char *name, gfc_isym_id id, enum klass cl, bt type, int kind, int standard,
-	    try (*check) (gfc_expr *, gfc_expr *, gfc_expr *),
+	    gfc_try (*check) (gfc_expr *, gfc_expr *, gfc_expr *),
 	    gfc_expr *(*simplify) (gfc_expr *, gfc_expr *, gfc_expr *),
 	    void (*resolve) (gfc_code *),
 	    const char *a1, bt type1, int kind1, int optional1,
@@ -620,7 +620,7 @@ add_sym_3s (const char *name, gfc_isym_i
 static void
 add_sym_4 (const char *name, gfc_isym_id id, enum klass cl, int actual_ok, bt type,
 	   int kind, int standard,
-	   try (*check) (gfc_expr *, gfc_expr *, gfc_expr *, gfc_expr *),
+	   gfc_try (*check) (gfc_expr *, gfc_expr *, gfc_expr *, gfc_expr *),
 	   gfc_expr *(*simplify) (gfc_expr *, gfc_expr *, gfc_expr *,
 				  gfc_expr *),
 	   void (*resolve) (gfc_expr *, gfc_expr *, gfc_expr *, gfc_expr *,
@@ -652,7 +652,7 @@ add_sym_4 (const char *name, gfc_isym_id

 static void
 add_sym_4s (const char *name, gfc_isym_id id, enum klass cl, bt type, int kind, int standard,
-	    try (*check) (gfc_expr *, gfc_expr *, gfc_expr *, gfc_expr *),
+	    gfc_try (*check) (gfc_expr *, gfc_expr *, gfc_expr *, gfc_expr *),
 	    gfc_expr *(*simplify) (gfc_expr *, gfc_expr *, gfc_expr *,
 				   gfc_expr *),
 	    void (*resolve) (gfc_code *),
@@ -683,7 +683,7 @@ add_sym_4s (const char *name, gfc_isym_i

 static void
 add_sym_5s (const char *name, gfc_isym_id id, enum klass cl, bt type, int kind, int standard,
-	    try (*check) (gfc_expr *, gfc_expr *, gfc_expr *, gfc_expr *,
+	    gfc_try (*check) (gfc_expr *, gfc_expr *, gfc_expr *, gfc_expr *,
 			  gfc_expr *),
 	    gfc_expr *(*simplify) (gfc_expr *, gfc_expr *, gfc_expr *,
 				   gfc_expr *, gfc_expr *),
@@ -3024,7 +3024,7 @@ remove_nullargs (gfc_actual_arglist **ap
    wrong (say, a missing required argument) we abort sorting and
    return FAILURE.  */

-static try
+static gfc_try
 sort_actual (const char *name, gfc_actual_arglist **ap,
 	     gfc_intrinsic_arg *formal, locus *where)
 {
@@ -3145,7 +3145,7 @@ do_sort:
    list.  The lists are checked for agreement of type.  We don't check
    for arrayness here.  */

-static try
+static gfc_try
 check_arglist (gfc_actual_arglist **ap, gfc_intrinsic_sym *sym,
 	       int error_flag)
 {
@@ -3277,7 +3277,7 @@ resolve_intrinsic (gfc_intrinsic_sym *sp
    of the simplification, SUCCESS if the simplification worked, even
    if nothing has changed in the expression itself.  */

-static try
+static gfc_try
 do_simplify (gfc_intrinsic_sym *specific, gfc_expr *e)
 {
   gfc_expr *result, *a1, *a2, *a3, *a4, *a5;
@@ -3406,11 +3406,11 @@ init_arglist (gfc_intrinsic_sym *isym)
    intrinsic's formal argument list.  Return SUCCESS if the expression
    and intrinsic match, FAILURE otherwise.  */

-static try
+static gfc_try
 check_specific (gfc_intrinsic_sym *specific, gfc_expr *expr, int error_flag)
 {
   gfc_actual_arglist *arg, **ap;
-  try t;
+  gfc_try t;

   ap = &expr->value.function.actual;

@@ -3487,7 +3487,7 @@ check_specific (gfc_intrinsic_sym *speci
    can be used to construct a detailed warning/error message in case of
    a FAILURE.  */

-try
+gfc_try
 gfc_check_intrinsic_standard (const gfc_intrinsic_sym* isym,
 			      const char** symstd, bool silent, locus where)
 {
@@ -3744,7 +3744,7 @@ fail:

 /* Call gfc_convert_type() with warning enabled.  */

-try
+gfc_try
 gfc_convert_type (gfc_expr *expr, gfc_typespec *ts, int eflag)
 {
   return gfc_convert_type_warn (expr, ts, eflag, 1);
@@ -3761,7 +3761,7 @@ gfc_convert_type (gfc_expr *expr, gfc_ty

    'wflag' controls the warning related to conversion.  */

-try
+gfc_try
 gfc_convert_type_warn (gfc_expr *expr, gfc_typespec *ts, int eflag, int wflag)
 {
   gfc_intrinsic_sym *sym;
@@ -3860,7 +3860,7 @@ bad:
 }


-try
+gfc_try
 gfc_convert_chartype (gfc_expr *expr, gfc_typespec *ts)
 {
   gfc_intrinsic_sym *sym;
diff -rup orig/egcc-SVN20080728/gcc/fortran/intrinsic.h egcc-SVN20080728/gcc/fortran/intrinsic.h
--- orig/egcc-SVN20080728/gcc/fortran/intrinsic.h	2008-05-19 01:21:43.000000000 +0200
+++ egcc-SVN20080728/gcc/fortran/intrinsic.h	2008-07-28 17:46:10.000000000 +0200
@@ -26,169 +26,169 @@ extern gfc_expr gfc_bad_expr;


 /* Check functions.  */
-try gfc_check_a_ikind (gfc_expr *, gfc_expr *);
-try gfc_check_a_xkind (gfc_expr *, gfc_expr *);
-try gfc_check_a_p (gfc_expr *, gfc_expr *);
-try gfc_check_x_yd (gfc_expr *, gfc_expr *);
-
-try gfc_check_abs (gfc_expr *);
-try gfc_check_access_func (gfc_expr *, gfc_expr *);
-try gfc_check_achar (gfc_expr *, gfc_expr *);
-try gfc_check_all_any (gfc_expr *, gfc_expr *);
-try gfc_check_allocated (gfc_expr *);
-try gfc_check_associated (gfc_expr *, gfc_expr *);
-try gfc_check_atan2 (gfc_expr *, gfc_expr *);
-try gfc_check_besn (gfc_expr *, gfc_expr *);
-try gfc_check_btest (gfc_expr *, gfc_expr *);
-try gfc_check_char (gfc_expr *, gfc_expr *);
-try gfc_check_chdir (gfc_expr *);
-try gfc_check_chmod (gfc_expr *, gfc_expr *);
-try gfc_check_cmplx (gfc_expr *, gfc_expr *, gfc_expr *);
-try gfc_check_complex (gfc_expr *, gfc_expr *);
-try gfc_check_count (gfc_expr *, gfc_expr *, gfc_expr *);
-try gfc_check_cshift (gfc_expr *, gfc_expr *, gfc_expr *);
-try gfc_check_ctime (gfc_expr *);
-try gfc_check_datan2 (gfc_expr *, gfc_expr *);
-try gfc_check_dcmplx (gfc_expr *, gfc_expr *);
-try gfc_check_dble (gfc_expr *);
-try gfc_check_digits (gfc_expr *);
-try gfc_check_dot_product (gfc_expr *, gfc_expr *);
-try gfc_check_dprod (gfc_expr *, gfc_expr *);
-try gfc_check_eoshift (gfc_expr *, gfc_expr *, gfc_expr *, gfc_expr *);
-try gfc_check_dtime_etime (gfc_expr *);
-try gfc_check_fgetputc (gfc_expr *, gfc_expr *);
-try gfc_check_fgetput (gfc_expr *);
-try gfc_check_fstat (gfc_expr *, gfc_expr *);
-try gfc_check_ftell (gfc_expr *);
-try gfc_check_fn_c (gfc_expr *);
-try gfc_check_fn_d (gfc_expr *);
-try gfc_check_fn_r (gfc_expr *);
-try gfc_check_fn_rc (gfc_expr *);
-try gfc_check_fnum (gfc_expr *);
-try gfc_check_hostnm (gfc_expr *);
-try gfc_check_huge (gfc_expr *);
-try gfc_check_hypot (gfc_expr *, gfc_expr *);
-try gfc_check_i (gfc_expr *);
-try gfc_check_iand (gfc_expr *, gfc_expr *);
-try gfc_check_and (gfc_expr *, gfc_expr *);
-try gfc_check_ibclr (gfc_expr *, gfc_expr *);
-try gfc_check_ibits (gfc_expr *, gfc_expr *, gfc_expr *);
-try gfc_check_ibset (gfc_expr *, gfc_expr *);
-try gfc_check_ichar_iachar (gfc_expr *, gfc_expr *);
-try gfc_check_idnint (gfc_expr *);
-try gfc_check_ieor (gfc_expr *, gfc_expr *);
-try gfc_check_index (gfc_expr *, gfc_expr *, gfc_expr *, gfc_expr *);
-try gfc_check_int (gfc_expr *, gfc_expr *);
-try gfc_check_intconv (gfc_expr *);
-try gfc_check_ior (gfc_expr *, gfc_expr *);
-try gfc_check_irand (gfc_expr *);
-try gfc_check_isatty (gfc_expr *);
-try gfc_check_isnan (gfc_expr *);
-try gfc_check_ishft (gfc_expr *, gfc_expr *);
-try gfc_check_ishftc (gfc_expr *, gfc_expr *, gfc_expr *);
-try gfc_check_kill (gfc_expr *, gfc_expr *);
-try gfc_check_kind (gfc_expr *);
-try gfc_check_lbound (gfc_expr *, gfc_expr *, gfc_expr *);
-try gfc_check_len_lentrim (gfc_expr *, gfc_expr *);
-try gfc_check_link (gfc_expr *, gfc_expr *);
-try gfc_check_lge_lgt_lle_llt (gfc_expr *, gfc_expr *);
-try gfc_check_loc (gfc_expr *);
-try gfc_check_logical (gfc_expr *, gfc_expr *);
-try gfc_check_min_max (gfc_actual_arglist *);
-try gfc_check_min_max_integer (gfc_actual_arglist *);
-try gfc_check_min_max_real (gfc_actual_arglist *);
-try gfc_check_min_max_double (gfc_actual_arglist *);
-try gfc_check_malloc (gfc_expr *);
-try gfc_check_matmul (gfc_expr *, gfc_expr *);
-try gfc_check_merge (gfc_expr *, gfc_expr *, gfc_expr *);
-try gfc_check_minloc_maxloc (gfc_actual_arglist *);
-try gfc_check_minval_maxval (gfc_actual_arglist *);
-try gfc_check_nearest (gfc_expr *, gfc_expr *);
-try gfc_check_new_line (gfc_expr *);
-try gfc_check_null (gfc_expr *);
-try gfc_check_pack (gfc_expr *, gfc_expr *, gfc_expr *);
-try gfc_check_precision (gfc_expr *);
-try gfc_check_present (gfc_expr *);
-try gfc_check_product_sum (gfc_actual_arglist *);
-try gfc_check_radix (gfc_expr *);
-try gfc_check_rand (gfc_expr *);
-try gfc_check_range (gfc_expr *);
-try gfc_check_real (gfc_expr *, gfc_expr *);
-try gfc_check_rename (gfc_expr *, gfc_expr *);
-try gfc_check_repeat (gfc_expr *, gfc_expr *);
-try gfc_check_reshape (gfc_expr *, gfc_expr *, gfc_expr *, gfc_expr *);
-try gfc_check_scale (gfc_expr *, gfc_expr *);
-try gfc_check_scan (gfc_expr *, gfc_expr *, gfc_expr *, gfc_expr *);
-try gfc_check_second_sub (gfc_expr *);
-try gfc_check_secnds (gfc_expr *);
-try gfc_check_selected_char_kind (gfc_expr *);
-try gfc_check_selected_int_kind (gfc_expr *);
-try gfc_check_selected_real_kind (gfc_expr *, gfc_expr *);
-try gfc_check_set_exponent (gfc_expr *, gfc_expr *);
-try gfc_check_shape (gfc_expr *);
-try gfc_check_size (gfc_expr *, gfc_expr *, gfc_expr *);
-try gfc_check_sign (gfc_expr *, gfc_expr *);
-try gfc_check_signal (gfc_expr *, gfc_expr *);
-try gfc_check_sizeof (gfc_expr *);
-try gfc_check_spread (gfc_expr *, gfc_expr *, gfc_expr *);
-try gfc_check_srand (gfc_expr *);
-try gfc_check_stat (gfc_expr *, gfc_expr *);
-try gfc_check_sum (gfc_expr *, gfc_expr *, gfc_expr *);
-try gfc_check_symlnk (gfc_expr *, gfc_expr *);
-try gfc_check_transfer (gfc_expr *, gfc_expr *, gfc_expr *);
-try gfc_check_transpose (gfc_expr *);
-try gfc_check_trim (gfc_expr *);
-try gfc_check_ttynam (gfc_expr *);
-try gfc_check_ubound (gfc_expr *, gfc_expr *, gfc_expr *);
-try gfc_check_umask (gfc_expr *);
-try gfc_check_unlink (gfc_expr *);
-try gfc_check_unpack (gfc_expr *, gfc_expr *, gfc_expr *);
-try gfc_check_verify (gfc_expr *, gfc_expr *, gfc_expr *, gfc_expr *);
-try gfc_check_x (gfc_expr *);
+gfc_try gfc_check_a_ikind (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_a_xkind (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_a_p (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_x_yd (gfc_expr *, gfc_expr *);
+
+gfc_try gfc_check_abs (gfc_expr *);
+gfc_try gfc_check_access_func (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_achar (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_all_any (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_allocated (gfc_expr *);
+gfc_try gfc_check_associated (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_atan2 (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_besn (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_btest (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_char (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_chdir (gfc_expr *);
+gfc_try gfc_check_chmod (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_cmplx (gfc_expr *, gfc_expr *, gfc_expr *);
+gfc_try gfc_check_complex (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_count (gfc_expr *, gfc_expr *, gfc_expr *);
+gfc_try gfc_check_cshift (gfc_expr *, gfc_expr *, gfc_expr *);
+gfc_try gfc_check_ctime (gfc_expr *);
+gfc_try gfc_check_datan2 (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_dcmplx (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_dble (gfc_expr *);
+gfc_try gfc_check_digits (gfc_expr *);
+gfc_try gfc_check_dot_product (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_dprod (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_eoshift (gfc_expr *, gfc_expr *, gfc_expr *, gfc_expr *);
+gfc_try gfc_check_dtime_etime (gfc_expr *);
+gfc_try gfc_check_fgetputc (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_fgetput (gfc_expr *);
+gfc_try gfc_check_fstat (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_ftell (gfc_expr *);
+gfc_try gfc_check_fn_c (gfc_expr *);
+gfc_try gfc_check_fn_d (gfc_expr *);
+gfc_try gfc_check_fn_r (gfc_expr *);
+gfc_try gfc_check_fn_rc (gfc_expr *);
+gfc_try gfc_check_fnum (gfc_expr *);
+gfc_try gfc_check_hostnm (gfc_expr *);
+gfc_try gfc_check_huge (gfc_expr *);
+gfc_try gfc_check_hypot (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_i (gfc_expr *);
+gfc_try gfc_check_iand (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_and (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_ibclr (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_ibits (gfc_expr *, gfc_expr *, gfc_expr *);
+gfc_try gfc_check_ibset (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_ichar_iachar (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_idnint (gfc_expr *);
+gfc_try gfc_check_ieor (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_index (gfc_expr *, gfc_expr *, gfc_expr *, gfc_expr *);
+gfc_try gfc_check_int (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_intconv (gfc_expr *);
+gfc_try gfc_check_ior (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_irand (gfc_expr *);
+gfc_try gfc_check_isatty (gfc_expr *);
+gfc_try gfc_check_isnan (gfc_expr *);
+gfc_try gfc_check_ishft (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_ishftc (gfc_expr *, gfc_expr *, gfc_expr *);
+gfc_try gfc_check_kill (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_kind (gfc_expr *);
+gfc_try gfc_check_lbound (gfc_expr *, gfc_expr *, gfc_expr *);
+gfc_try gfc_check_len_lentrim (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_link (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_lge_lgt_lle_llt (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_loc (gfc_expr *);
+gfc_try gfc_check_logical (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_min_max (gfc_actual_arglist *);
+gfc_try gfc_check_min_max_integer (gfc_actual_arglist *);
+gfc_try gfc_check_min_max_real (gfc_actual_arglist *);
+gfc_try gfc_check_min_max_double (gfc_actual_arglist *);
+gfc_try gfc_check_malloc (gfc_expr *);
+gfc_try gfc_check_matmul (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_merge (gfc_expr *, gfc_expr *, gfc_expr *);
+gfc_try gfc_check_minloc_maxloc (gfc_actual_arglist *);
+gfc_try gfc_check_minval_maxval (gfc_actual_arglist *);
+gfc_try gfc_check_nearest (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_new_line (gfc_expr *);
+gfc_try gfc_check_null (gfc_expr *);
+gfc_try gfc_check_pack (gfc_expr *, gfc_expr *, gfc_expr *);
+gfc_try gfc_check_precision (gfc_expr *);
+gfc_try gfc_check_present (gfc_expr *);
+gfc_try gfc_check_product_sum (gfc_actual_arglist *);
+gfc_try gfc_check_radix (gfc_expr *);
+gfc_try gfc_check_rand (gfc_expr *);
+gfc_try gfc_check_range (gfc_expr *);
+gfc_try gfc_check_real (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_rename (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_repeat (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_reshape (gfc_expr *, gfc_expr *, gfc_expr *, gfc_expr *);
+gfc_try gfc_check_scale (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_scan (gfc_expr *, gfc_expr *, gfc_expr *, gfc_expr *);
+gfc_try gfc_check_second_sub (gfc_expr *);
+gfc_try gfc_check_secnds (gfc_expr *);
+gfc_try gfc_check_selected_char_kind (gfc_expr *);
+gfc_try gfc_check_selected_int_kind (gfc_expr *);
+gfc_try gfc_check_selected_real_kind (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_set_exponent (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_shape (gfc_expr *);
+gfc_try gfc_check_size (gfc_expr *, gfc_expr *, gfc_expr *);
+gfc_try gfc_check_sign (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_signal (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_sizeof (gfc_expr *);
+gfc_try gfc_check_spread (gfc_expr *, gfc_expr *, gfc_expr *);
+gfc_try gfc_check_srand (gfc_expr *);
+gfc_try gfc_check_stat (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_sum (gfc_expr *, gfc_expr *, gfc_expr *);
+gfc_try gfc_check_symlnk (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_transfer (gfc_expr *, gfc_expr *, gfc_expr *);
+gfc_try gfc_check_transpose (gfc_expr *);
+gfc_try gfc_check_trim (gfc_expr *);
+gfc_try gfc_check_ttynam (gfc_expr *);
+gfc_try gfc_check_ubound (gfc_expr *, gfc_expr *, gfc_expr *);
+gfc_try gfc_check_umask (gfc_expr *);
+gfc_try gfc_check_unlink (gfc_expr *);
+gfc_try gfc_check_unpack (gfc_expr *, gfc_expr *, gfc_expr *);
+gfc_try gfc_check_verify (gfc_expr *, gfc_expr *, gfc_expr *, gfc_expr *);
+gfc_try gfc_check_x (gfc_expr *);


 /* Intrinsic subroutines.  */
-try gfc_check_alarm_sub (gfc_expr *, gfc_expr *, gfc_expr *);
-try gfc_check_chdir_sub (gfc_expr *, gfc_expr *);
-try gfc_check_chmod_sub (gfc_expr *, gfc_expr *, gfc_expr *);
-try gfc_check_cpu_time (gfc_expr *);
-try gfc_check_ctime_sub (gfc_expr *, gfc_expr *);
-try gfc_check_system_clock (gfc_expr *, gfc_expr *, gfc_expr *);
-try gfc_check_date_and_time (gfc_expr *, gfc_expr *, gfc_expr *, gfc_expr *);
-try gfc_check_exit (gfc_expr *);
-try gfc_check_fdate_sub (gfc_expr *);
-try gfc_check_flush (gfc_expr *);
-try gfc_check_free (gfc_expr *);
-try gfc_check_fstat_sub (gfc_expr *, gfc_expr *, gfc_expr *);
-try gfc_check_gerror (gfc_expr *);
-try gfc_check_getarg (gfc_expr *, gfc_expr *);
-try gfc_check_getlog (gfc_expr *);
-try gfc_check_move_alloc (gfc_expr *, gfc_expr *);
-try gfc_check_mvbits (gfc_expr *, gfc_expr *, gfc_expr *, gfc_expr *,
+gfc_try gfc_check_alarm_sub (gfc_expr *, gfc_expr *, gfc_expr *);
+gfc_try gfc_check_chdir_sub (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_chmod_sub (gfc_expr *, gfc_expr *, gfc_expr *);
+gfc_try gfc_check_cpu_time (gfc_expr *);
+gfc_try gfc_check_ctime_sub (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_system_clock (gfc_expr *, gfc_expr *, gfc_expr *);
+gfc_try gfc_check_date_and_time (gfc_expr *, gfc_expr *, gfc_expr *, gfc_expr *);
+gfc_try gfc_check_exit (gfc_expr *);
+gfc_try gfc_check_fdate_sub (gfc_expr *);
+gfc_try gfc_check_flush (gfc_expr *);
+gfc_try gfc_check_free (gfc_expr *);
+gfc_try gfc_check_fstat_sub (gfc_expr *, gfc_expr *, gfc_expr *);
+gfc_try gfc_check_gerror (gfc_expr *);
+gfc_try gfc_check_getarg (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_getlog (gfc_expr *);
+gfc_try gfc_check_move_alloc (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_mvbits (gfc_expr *, gfc_expr *, gfc_expr *, gfc_expr *,
 		      gfc_expr *);
-try gfc_check_random_number (gfc_expr *);
-try gfc_check_random_seed (gfc_expr *, gfc_expr *, gfc_expr *);
-try gfc_check_dtime_etime_sub (gfc_expr *, gfc_expr *);
-try gfc_check_fgetputc_sub (gfc_expr *, gfc_expr *, gfc_expr *);
-try gfc_check_fgetput_sub (gfc_expr *, gfc_expr *);
-try gfc_check_fseek_sub (gfc_expr *, gfc_expr *, gfc_expr *, gfc_expr *);
-try gfc_check_ftell_sub (gfc_expr *, gfc_expr *);
-try gfc_check_getcwd_sub (gfc_expr *, gfc_expr *);
-try gfc_check_hostnm_sub (gfc_expr *, gfc_expr *);
-try gfc_check_itime_idate (gfc_expr *);
-try gfc_check_kill_sub (gfc_expr *, gfc_expr *, gfc_expr *);
-try gfc_check_ltime_gmtime (gfc_expr *, gfc_expr *);
-try gfc_check_perror (gfc_expr *);
-try gfc_check_rename_sub (gfc_expr *, gfc_expr *, gfc_expr *);
-try gfc_check_link_sub (gfc_expr *, gfc_expr *, gfc_expr *);
-try gfc_check_symlnk_sub (gfc_expr *, gfc_expr *, gfc_expr *);
-try gfc_check_signal_sub (gfc_expr *, gfc_expr *, gfc_expr *);
-try gfc_check_sleep_sub (gfc_expr *);
-try gfc_check_stat_sub (gfc_expr *, gfc_expr *, gfc_expr *);
-try gfc_check_system_sub (gfc_expr *, gfc_expr *);
-try gfc_check_ttynam_sub (gfc_expr *, gfc_expr *);
-try gfc_check_umask_sub (gfc_expr *, gfc_expr *);
-try gfc_check_unlink_sub (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_random_number (gfc_expr *);
+gfc_try gfc_check_random_seed (gfc_expr *, gfc_expr *, gfc_expr *);
+gfc_try gfc_check_dtime_etime_sub (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_fgetputc_sub (gfc_expr *, gfc_expr *, gfc_expr *);
+gfc_try gfc_check_fgetput_sub (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_fseek_sub (gfc_expr *, gfc_expr *, gfc_expr *, gfc_expr *);
+gfc_try gfc_check_ftell_sub (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_getcwd_sub (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_hostnm_sub (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_itime_idate (gfc_expr *);
+gfc_try gfc_check_kill_sub (gfc_expr *, gfc_expr *, gfc_expr *);
+gfc_try gfc_check_ltime_gmtime (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_perror (gfc_expr *);
+gfc_try gfc_check_rename_sub (gfc_expr *, gfc_expr *, gfc_expr *);
+gfc_try gfc_check_link_sub (gfc_expr *, gfc_expr *, gfc_expr *);
+gfc_try gfc_check_symlnk_sub (gfc_expr *, gfc_expr *, gfc_expr *);
+gfc_try gfc_check_signal_sub (gfc_expr *, gfc_expr *, gfc_expr *);
+gfc_try gfc_check_sleep_sub (gfc_expr *);
+gfc_try gfc_check_stat_sub (gfc_expr *, gfc_expr *, gfc_expr *);
+gfc_try gfc_check_system_sub (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_ttynam_sub (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_umask_sub (gfc_expr *, gfc_expr *);
+gfc_try gfc_check_unlink_sub (gfc_expr *, gfc_expr *);


 /* Simplification functions.  */
diff -rup orig/egcc-SVN20080728/gcc/fortran/io.c egcc-SVN20080728/gcc/fortran/io.c
--- orig/egcc-SVN20080728/gcc/fortran/io.c	2008-07-23 02:00:06.000000000 +0200
+++ egcc-SVN20080728/gcc/fortran/io.c	2008-07-28 17:46:10.000000000 +0200
@@ -474,7 +474,7 @@ format_lex (void)
    by itself, and we are checking it for validity.  The dual origin
    means that the warning message is a little less than great.  */

-static try
+static gfc_try
 check_format (bool is_input)
 {
   const char *posint_required	  = _("Positive width required");
@@ -489,7 +489,7 @@ check_format (bool is_input)
   format_token t, u;
   int level;
   int repeat;
-  try rv;
+  gfc_try rv;

   use_last_char = 0;
   saved_token = FMT_NONE;
@@ -981,7 +981,7 @@ finished:
 /* Given an expression node that is a constant string, see if it looks
    like a format string.  */

-static try
+static gfc_try
 check_format_string (gfc_expr *e, bool is_input)
 {
   if (!e || e->ts.type != BT_CHARACTER || e->expr_type != EXPR_CONSTANT)
@@ -1191,7 +1191,7 @@ match_ltag (const io_tag *tag, gfc_st_la

 /* Resolution of the FORMAT tag, to be called from resolve_tag.  */

-static try
+static gfc_try
 resolve_tag_format (const gfc_expr *e)
 {
   if (e->expr_type == EXPR_CONSTANT
@@ -1260,7 +1260,7 @@ resolve_tag_format (const gfc_expr *e)

 /* Do expression resolution and type-checking on an expression tag.  */

-static try
+static gfc_try
 resolve_tag (const io_tag *tag, gfc_expr *e)
 {
   if (e == NULL)
@@ -1417,7 +1417,7 @@ gfc_free_open (gfc_open *open)

 /* Resolve everything in a gfc_open structure.  */

-try
+gfc_try
 gfc_resolve_open (gfc_open *open)
 {

@@ -2017,7 +2017,7 @@ cleanup:

 /* Resolve everything in a gfc_close structure.  */

-try
+gfc_try
 gfc_resolve_close (gfc_close *close)
 {
   RESOLVE_TAG (&tag_unit, close->unit);
@@ -2141,7 +2141,7 @@ cleanup:
 }


-try
+gfc_try
 gfc_resolve_filepos (gfc_filepos *fp)
 {
   RESOLVE_TAG (&tag_unit, fp->unit);
@@ -2467,7 +2467,7 @@ gfc_free_dt (gfc_dt *dt)

 /* Resolve everything in a gfc_dt structure.  */

-try
+gfc_try
 gfc_resolve_dt (gfc_dt *dt)
 {
   gfc_expr *e;
@@ -3705,7 +3705,7 @@ cleanup:

 /* Resolve everything in a gfc_inquire structure.  */

-try
+gfc_try
 gfc_resolve_inquire (gfc_inquire *inquire)
 {
   RESOLVE_TAG (&tag_unit, inquire->unit);
@@ -3764,7 +3764,7 @@ gfc_free_wait (gfc_wait *wait)
 }


-try
+gfc_try
 gfc_resolve_wait (gfc_wait *wait)
 {
   RESOLVE_TAG (&tag_unit, wait->unit);
diff -rup orig/egcc-SVN20080728/gcc/fortran/match.h egcc-SVN20080728/gcc/fortran/match.h
--- orig/egcc-SVN20080728/gcc/fortran/match.h	2008-07-03 02:00:15.000000000 +0200
+++ egcc-SVN20080728/gcc/fortran/match.h	2008-07-28 17:46:10.000000000 +0200
@@ -175,10 +175,10 @@ match gfc_match_volatile (void);
 /* Fortran 2003 c interop.
    TODO: some of these should be moved to another file rather than decl.c */
 void set_com_block_bind_c (gfc_common_head *, int);
-try set_binding_label (char *, const char *, int);
-try set_verify_bind_c_sym (gfc_symbol *, int);
-try set_verify_bind_c_com_block (gfc_common_head *, int);
-try get_bind_c_idents (void);
+gfc_try set_binding_label (char *, const char *, int);
+gfc_try set_verify_bind_c_sym (gfc_symbol *, int);
+gfc_try set_verify_bind_c_com_block (gfc_common_head *, int);
+gfc_try get_bind_c_idents (void);
 match gfc_match_bind_c_stmt (void);
 match gfc_match_suffix (gfc_symbol *, gfc_symbol **);
 match gfc_match_bind_c (gfc_symbol *, bool);
diff -rup orig/egcc-SVN20080728/gcc/fortran/parse.c egcc-SVN20080728/gcc/fortran/parse.c
--- orig/egcc-SVN20080728/gcc/fortran/parse.c	2008-07-22 02:00:11.000000000 +0200
+++ egcc-SVN20080728/gcc/fortran/parse.c	2008-07-28 17:46:10.000000000 +0200
@@ -923,7 +923,7 @@ pop_state (void)

 /* Try to find the given state in the state stack.  */

-try
+gfc_try
 gfc_find_state (gfc_compile_state state)
 {
   gfc_state_data *p;
@@ -1575,7 +1575,7 @@ typedef struct
 }
 st_state;

-static try
+static gfc_try
 verify_st_order (st_state *p, gfc_statement st)
 {

@@ -3563,7 +3563,7 @@ add_global_program (void)

 /* Top level parser.  */

-try
+gfc_try
 gfc_parse_file (void)
 {
   int seen_program, errors_before, errors;
diff -rup orig/egcc-SVN20080728/gcc/fortran/parse.h egcc-SVN20080728/gcc/fortran/parse.h
--- orig/egcc-SVN20080728/gcc/fortran/parse.h	2008-03-14 00:34:29.000000000 +0100
+++ egcc-SVN20080728/gcc/fortran/parse.h	2008-07-28 17:46:10.000000000 +0200
@@ -61,7 +61,7 @@ extern gfc_state_data *gfc_state_stack;
 #define gfc_current_state() (gfc_state_stack->state)

 int gfc_check_do_variable (gfc_symtree *);
-try gfc_find_state (gfc_compile_state);
+gfc_try gfc_find_state (gfc_compile_state);
 gfc_state_data *gfc_enclosing_unit (gfc_compile_state *);
 const char *gfc_ascii_statement (gfc_statement);
 match gfc_match_enum (void);
diff -rup orig/egcc-SVN20080728/gcc/fortran/resolve.c egcc-SVN20080728/gcc/fortran/resolve.c
--- orig/egcc-SVN20080728/gcc/fortran/resolve.c	2008-07-25 02:00:07.000000000 +0200
+++ egcc-SVN20080728/gcc/fortran/resolve.c	2008-07-28 17:46:10.000000000 +0200
@@ -298,7 +298,7 @@ resolve_formal_arglists (gfc_namespace *
 static void
 resolve_contained_fntype (gfc_symbol *sym, gfc_namespace *ns)
 {
-  try t;
+  gfc_try t;

   /* If this namespace is not a function or an entry master function,
      ignore it.  */
@@ -767,12 +767,12 @@ resolve_contained_functions (gfc_namespa
 /* Resolve all of the elements of a structure constructor and make sure that
    the types are correct.  */

-static try
+static gfc_try
 resolve_structure_cons (gfc_expr *expr)
 {
   gfc_constructor *cons;
   gfc_component *comp;
-  try t;
+  gfc_try t;
   symbol_attribute a;

   t = SUCCESS;
@@ -1017,7 +1017,7 @@ resolve_assumed_size_actual (gfc_expr *e
    that look like procedure arguments are really simple variable
    references.  */

-static try
+static gfc_try
 resolve_actual_arglist (gfc_actual_arglist *arg, procedure_type ptype)
 {
   gfc_symbol *sym;
@@ -1261,7 +1261,7 @@ resolve_actual_arglist (gfc_actual_argli
    procedures.  If called with c == NULL, we have a function, otherwise if
    expr == NULL, we have a subroutine.  */

-static try
+static gfc_try
 resolve_elemental_actual (gfc_expr *expr, gfc_code *c)
 {
   gfc_actual_arglist *arg0;
@@ -1506,7 +1506,7 @@ resolve_generic_f0 (gfc_expr *expr, gfc_
 }


-static try
+static gfc_try
 resolve_generic_f (gfc_expr *expr)
 {
   gfc_symbol *sym;
@@ -1622,7 +1622,7 @@ found:
 }


-static try
+static gfc_try
 resolve_specific_f (gfc_expr *expr)
 {
   gfc_symbol *sym;
@@ -1656,7 +1656,7 @@ resolve_specific_f (gfc_expr *expr)

 /* Resolve a procedure call not known to be generic nor specific.  */

-static try
+static gfc_try
 resolve_unknown_f (gfc_expr *expr)
 {
   gfc_symbol *sym;
@@ -1796,10 +1796,10 @@ pure_stmt_function (gfc_expr *e, gfc_sym
 }


-static try
+static gfc_try
 is_scalar_expr_ptr (gfc_expr *expr)
 {
-  try retval = SUCCESS;
+  gfc_try retval = SUCCESS;
   gfc_ref *ref;
   int start;
   int end;
@@ -1897,14 +1897,14 @@ is_scalar_expr_ptr (gfc_expr *expr)
    and, in the case of c_associated, set the binding label based on
    the arguments.  */

-static try
+static gfc_try
 gfc_iso_c_func_interface (gfc_symbol *sym, gfc_actual_arglist *args,
                           gfc_symbol **new_sym)
 {
   char name[GFC_MAX_SYMBOL_LEN + 1];
   char binding_label[GFC_MAX_BINDING_LABEL_LEN + 1];
   int optional_arg = 0;
-  try retval = SUCCESS;
+  gfc_try retval = SUCCESS;
   gfc_symbol *args_sym;
   gfc_typespec *arg_ts;
   gfc_ref *parent_ref;
@@ -2161,13 +2161,13 @@ gfc_iso_c_func_interface (gfc_symbol *sy
 /* TODO: Check procedure arguments so that an INTENT(IN) isn't passed
    to INTENT(OUT) or INTENT(INOUT).  */

-static try
+static gfc_try
 resolve_function (gfc_expr *expr)
 {
   gfc_actual_arglist *arg;
   gfc_symbol *sym;
   const char *name;
-  try t;
+  gfc_try t;
   int temp;
   procedure_type p = PROC_INTRINSIC;

@@ -2438,7 +2438,7 @@ resolve_generic_s0 (gfc_code *c, gfc_sym
 }


-static try
+static gfc_try
 resolve_generic_s (gfc_code *c)
 {
   gfc_symbol *sym;
@@ -2698,7 +2698,7 @@ found:
 }


-static try
+static gfc_try
 resolve_specific_s (gfc_code *c)
 {
   gfc_symbol *sym;
@@ -2733,7 +2733,7 @@ resolve_specific_s (gfc_code *c)

 /* Resolve a subroutine call not known to be generic nor specific.  */

-static try
+static gfc_try
 resolve_unknown_s (gfc_code *c)
 {
   gfc_symbol *sym;
@@ -2772,10 +2772,10 @@ found:
    for functions, subroutines and functions are stored differently and this
    makes things awkward.  */

-static try
+static gfc_try
 resolve_call (gfc_code *c)
 {
-  try t;
+  gfc_try t;
   procedure_type ptype = PROC_INTRINSIC;

   if (c->symtree && c->symtree->n.sym
@@ -2864,10 +2864,10 @@ resolve_call (gfc_code *c)
    if their shapes do not match.  If either op1->shape or op2->shape is
    NULL, return SUCCESS.  */

-static try
+static gfc_try
 compare_shapes (gfc_expr *op1, gfc_expr *op2)
 {
-  try t;
+  gfc_try t;
   int i;

   t = SUCCESS;
@@ -2893,13 +2893,13 @@ compare_shapes (gfc_expr *op1, gfc_expr
 /* Resolve an operator expression node.  This can involve replacing the
    operation with a user defined function call.  */

-static try
+static gfc_try
 resolve_operator (gfc_expr *e)
 {
   gfc_expr *op1, *op2;
   char msg[200];
   bool dual_locus_error;
-  try t;
+  gfc_try t;

   /* Resolve all subnodes-- give them types.  */

@@ -3338,7 +3338,7 @@ compute_last_value_for_triplet (gfc_expr
 /* Compare a single dimension of an array reference to the array
    specification.  */

-static try
+static gfc_try
 check_dimension (int i, gfc_array_ref *ar, gfc_array_spec *as)
 {
   mpz_t last_value;
@@ -3456,7 +3456,7 @@ check_dimension (int i, gfc_array_ref *a

 /* Compare an array reference with an array specification.  */

-static try
+static gfc_try
 compare_spec_to_ref (gfc_array_ref *ar)
 {
   gfc_array_spec *as;
@@ -3495,7 +3495,7 @@ compare_spec_to_ref (gfc_array_ref *ar)

 /* Resolve one part of an array index.  */

-try
+gfc_try
 gfc_resolve_index (gfc_expr *index, int check_scalar)
 {
   gfc_typespec ts;
@@ -3539,7 +3539,7 @@ gfc_resolve_index (gfc_expr *index, int

 /* Resolve a dim argument to an intrinsic function.  */

-try
+gfc_try
 gfc_resolve_dim_arg (gfc_expr *dim)
 {
   if (dim == NULL)
@@ -3644,7 +3644,7 @@ find_array_spec (gfc_expr *e)

 /* Resolve an array reference.  */

-static try
+static gfc_try
 resolve_array_ref (gfc_array_ref *ar)
 {
   int i, check_scalar;
@@ -3705,7 +3705,7 @@ resolve_array_ref (gfc_array_ref *ar)
 }


-static try
+static gfc_try
 resolve_substring (gfc_ref *ref)
 {
   if (ref->u.ss.start != NULL)
@@ -3837,7 +3837,7 @@ gfc_resolve_substring_charlen (gfc_expr

 /* Resolve subtype references.  */

-static try
+static gfc_try
 resolve_ref (gfc_expr *expr)
 {
   int current_part_dimension, n_components, seen_part_dimension;
@@ -4035,11 +4035,11 @@ done:

 /* Resolve a variable expression.  */

-static try
+static gfc_try
 resolve_variable (gfc_expr *e)
 {
   gfc_symbol *sym;
-  try t;
+  gfc_try t;

   t = SUCCESS;

@@ -4285,10 +4285,10 @@ fixup_charlen (gfc_expr *e)
    with their operators, intrinsic operators are converted to function calls
    for overloaded types and unresolved function references are resolved.  */

-try
+gfc_try
 gfc_resolve_expr (gfc_expr *e)
 {
-  try t;
+  gfc_try t;

   if (e == NULL)
     return SUCCESS;
@@ -4373,7 +4373,7 @@ gfc_resolve_expr (gfc_expr *e)
 /* Resolve an expression from an iterator.  They must be scalar and have
    INTEGER or (optionally) REAL type.  */

-static try
+static gfc_try
 gfc_resolve_iterator_expr (gfc_expr *expr, bool real_ok,
 			   const char *name_msgid)
 {
@@ -4414,7 +4414,7 @@ gfc_resolve_iterator_expr (gfc_expr *exp
 /* Resolve the expressions in an iterator structure.  If REAL_OK is
    false allow only INTEGER type iterators, otherwise allow REAL types.  */

-try
+gfc_try
 gfc_resolve_iterator (gfc_iterator *iter, bool real_ok)
 {
   if (gfc_resolve_iterator_expr (iter->var, real_ok, "Loop variable")
@@ -4497,7 +4497,7 @@ forall_index (gfc_expr *expr, gfc_symbol
 /* Check whether the FORALL index appears in the expression or not.
    Returns SUCCESS if SYM is found in EXPR.  */

-try
+gfc_try
 find_forall_index (gfc_expr *expr, gfc_symbol *sym, int f)
 {
   if (gfc_traverse_expr (expr, sym, forall_index, f))
@@ -4597,7 +4597,7 @@ derived_inaccessible (gfc_symbol *sym)
 /* Resolve the argument of a deallocate expression.  The expression must be
    a pointer or a full array.  */

-static try
+static gfc_try
 resolve_deallocate_expr (gfc_expr *e)
 {
   symbol_attribute attr;
@@ -4712,7 +4712,7 @@ expr_to_initialize (gfc_expr *e)
    checks to see whether the expression is OK or not.  The expression must
    have a trailing array reference that gives the size of the array.  */

-static try
+static gfc_try
 resolve_allocate_expr (gfc_expr *e, gfc_code *code)
 {
   int i, pointer, allocatable, dimension, check_intent_in;
@@ -5112,7 +5112,7 @@ check_case_overlap (gfc_case *list)
    Makes sure that all case expressions are scalar constants of the same
    type.  Return FAILURE if anything is wrong.  */

-static try
+static gfc_try
 validate_case_label_expr (gfc_expr *e, gfc_expr *case_expr)
 {
   if (e == NULL) return SUCCESS;
@@ -5181,7 +5181,7 @@ resolve_select (gfc_code *code)
   int seen_logical;
   int ncases;
   bt type;
-  try t;
+  gfc_try t;

   if (code->expr == NULL)
     {
@@ -5622,12 +5622,12 @@ resolve_branch (gfc_st_label *label, gfc

 /* Check whether EXPR1 has the same shape as EXPR2.  */

-static try
+static gfc_try
 resolve_where_shape (gfc_expr *expr1, gfc_expr *expr2)
 {
   mpz_t shape[GFC_MAX_DIMENSIONS];
   mpz_t shape2[GFC_MAX_DIMENSIONS];
-  try result = FAILURE;
+  gfc_try result = FAILURE;
   int i;

   /* Compare the rank.  */
@@ -5934,7 +5934,7 @@ static void resolve_code (gfc_code *, gf
 void
 gfc_resolve_blocks (gfc_code *b, gfc_namespace *ns)
 {
-  try t;
+  gfc_try t;

   for (; b; b = b->block)
     {
@@ -6148,7 +6148,7 @@ resolve_code (gfc_code *code, gfc_namesp
   int omp_workshare_save;
   int forall_save;
   code_stack frame;
-  try t;
+  gfc_try t;

   frame.prev = cs_base;
   frame.head = code;
@@ -6666,7 +6666,7 @@ gfc_verify_binding_labels (gfc_symbol *s

 /* Resolve an index expression.  */

-static try
+static gfc_try
 resolve_index_expr (gfc_expr *e)
 {
   if (gfc_resolve_expr (e) == FAILURE)
@@ -6683,7 +6683,7 @@ resolve_index_expr (gfc_expr *e)

 /* Resolve a charlen structure.  */

-static try
+static gfc_try
 resolve_charlen (gfc_charlen *cl)
 {
   int i;
@@ -6983,7 +6983,7 @@ apply_default_init_local (gfc_symbol *sy

 /* Resolution of common features of flavors variable and procedure.  */

-static try
+static gfc_try
 resolve_fl_var_and_proc (gfc_symbol *sym, int mp_flag)
 {
   /* Constraints on deferred shape variable.  */
@@ -7025,7 +7025,7 @@ resolve_fl_var_and_proc (gfc_symbol *sym
 /* Additional checks for symbols with flavor variable and derived
    type.  To be called from resolve_fl_variable.  */

-static try
+static gfc_try
 resolve_fl_variable_derived (gfc_symbol *sym, int no_init_flag)
 {
   gcc_assert (sym->ts.type == BT_DERIVED);
@@ -7084,7 +7084,7 @@ resolve_fl_variable_derived (gfc_symbol

 /* Resolve symbols with flavor variable.  */

-static try
+static gfc_try
 resolve_fl_variable (gfc_symbol *sym, int mp_flag)
 {
   int no_init_flag, automatic_flag;
@@ -7209,7 +7209,7 @@ no_init_error:

 /* Resolve a procedure.  */

-static try
+static gfc_try
 resolve_fl_procedure (gfc_symbol *sym, int mp_flag)
 {
   gfc_formal_arglist *arg;
@@ -7451,12 +7451,12 @@ resolve_fl_procedure (gfc_symbol *sym, i
    been defined and we now know their defined arguments, check that they fulfill
    the requirements of the standard for procedures used as finalizers.  */

-static try
+static gfc_try
 gfc_resolve_finalizers (gfc_symbol* derived)
 {
   gfc_finalizer* list;
   gfc_finalizer** prev_link; /* For removing wrong entries from the list.  */
-  try result = SUCCESS;
+  gfc_try result = SUCCESS;
   bool seen_scalar = false;

   if (!derived->f2k_derived || !derived->f2k_derived->finalizers)
@@ -7610,7 +7610,7 @@ add_dt_to_dt_list (gfc_symbol *derived)

 /* Resolve the components of a derived type.  */

-static try
+static gfc_try
 resolve_fl_derived (gfc_symbol *sym)
 {
   gfc_component *c;
@@ -7707,7 +7707,7 @@ resolve_fl_derived (gfc_symbol *sym)
 }


-static try
+static gfc_try
 resolve_fl_namelist (gfc_symbol *sym)
 {
   gfc_namelist *nl;
@@ -7826,7 +7826,7 @@ resolve_fl_namelist (gfc_symbol *sym)
 }


-static try
+static gfc_try
 resolve_fl_parameter (gfc_symbol *sym)
 {
   /* A parameter array's shape needs to be constant.  */
@@ -8098,7 +8098,7 @@ resolve_symbol (gfc_symbol *sym)
       sym->attr.use_assoc == 0 && sym->attr.dummy == 0 &&
       sym->attr.flavor != FL_PROCEDURE && sym->attr.flavor != FL_DERIVED)
     {
-      try t = SUCCESS;
+      gfc_try t = SUCCESS;

       /* First, make sure the variable is declared at the
 	 module-level scope (J3/04-007, Section 15.3).	*/
@@ -8311,7 +8311,7 @@ values;

 /* Advance the values structure to point to the next value in the data list.  */

-static try
+static gfc_try
 next_data_value (void)
 {

@@ -8328,13 +8328,13 @@ next_data_value (void)
 }


-static try
+static gfc_try
 check_data_variable (gfc_data_variable *var, locus *where)
 {
   gfc_expr *e;
   mpz_t size;
   mpz_t offset;
-  try t;
+  gfc_try t;
   ar_type mark = AR_UNKNOWN;
   int i;
   mpz_t section_index[GFC_MAX_DIMENSIONS];
@@ -8491,17 +8491,17 @@ check_data_variable (gfc_data_variable *
 }


-static try traverse_data_var (gfc_data_variable *, locus *);
+static gfc_try traverse_data_var (gfc_data_variable *, locus *);

 /* Iterate over a list of elements in a DATA statement.  */

-static try
+static gfc_try
 traverse_data_list (gfc_data_variable *var, locus *where)
 {
   mpz_t trip;
   iterator_stack frame;
   gfc_expr *e, *start, *end, *step;
-  try retval = SUCCESS;
+  gfc_try retval = SUCCESS;

   mpz_init (frame.value);

@@ -8581,10 +8581,10 @@ cleanup:

 /* Type resolve variables in the variable list of a DATA statement.  */

-static try
+static gfc_try
 traverse_data_var (gfc_data_variable *var, locus *where)
 {
-  try t;
+  gfc_try t;

   for (; var; var = var->next)
     {
@@ -8605,7 +8605,7 @@ traverse_data_var (gfc_data_variable *va
    This is separate from the assignment checking because data lists should
    only be resolved once.  */

-static try
+static gfc_try
 resolve_data_variables (gfc_data_variable *d)
 {
   for (; d; d = d->next)
@@ -8821,7 +8821,7 @@ sequence_type (gfc_typespec ts)

 /* Resolve derived type EQUIVALENCE object.  */

-static try
+static gfc_try
 resolve_equivalence_derived (gfc_symbol *derived, gfc_symbol *sym, gfc_expr *e)
 {
   gfc_symbol *d;
diff -rup orig/egcc-SVN20080728/gcc/fortran/scanner.c egcc-SVN20080728/gcc/fortran/scanner.c
--- orig/egcc-SVN20080728/gcc/fortran/scanner.c	2008-07-22 02:00:11.000000000 +0200
+++ egcc-SVN20080728/gcc/fortran/scanner.c	2008-07-28 17:46:10.000000000 +0200
@@ -1672,7 +1672,7 @@ preprocessor_line (gfc_char_t *c)
 }


-static try load_file (const char *, const char *, bool);
+static gfc_try load_file (const char *, const char *, bool);

 /* include_line()-- Checks a line buffer to see if it is an include
    line.  If so, we call load_file() recursively to load the included
@@ -1751,7 +1751,7 @@ include_line (gfc_char_t *line)

 /* Load a file into memory by calling load_line until the file ends.  */

-static try
+static gfc_try
 load_file (const char *realfilename, const char *displayedname, bool initial)
 {
   gfc_char_t *line;
@@ -1921,10 +1921,10 @@ load_file (const char *realfilename, con
    it tries to determine the source form from the filename, defaulting
    to free form.  */

-try
+gfc_try
 gfc_new_file (void)
 {
-  try result;
+  gfc_try result;

   if (gfc_cpp_enabled ())
     {
diff -rup orig/egcc-SVN20080728/gcc/fortran/simplify.c egcc-SVN20080728/gcc/fortran/simplify.c
--- orig/egcc-SVN20080728/gcc/fortran/simplify.c	2008-06-20 08:07:55.000000000 +0200
+++ egcc-SVN20080728/gcc/fortran/simplify.c	2008-07-28 17:46:10.000000000 +0200
@@ -3942,7 +3942,7 @@ gfc_simplify_shape (gfc_expr *source)
   gfc_expr *result, *e, *f;
   gfc_array_ref *ar;
   int n;
-  try t;
+  gfc_try t;

   if (source->rank == 0)
     return gfc_start_constructor (BT_INTEGER, gfc_default_integer_kind,
diff -rup orig/egcc-SVN20080728/gcc/fortran/symbol.c egcc-SVN20080728/gcc/fortran/symbol.c
--- orig/egcc-SVN20080728/gcc/fortran/symbol.c	2008-07-22 02:00:11.000000000 +0200
+++ egcc-SVN20080728/gcc/fortran/symbol.c	2008-07-28 17:46:10.000000000 +0200
@@ -145,7 +145,7 @@ gfc_clear_new_implicit (void)

 /* Prepare for a new implicit range.  Sets flags in new_flag[].  */

-try
+gfc_try
 gfc_add_new_implicit_range (int c1, int c2)
 {
   int i;
@@ -172,7 +172,7 @@ gfc_add_new_implicit_range (int c1, int
 /* Add a matched implicit range for gfc_set_implicit().  Check if merging
    the new implicit types back into the existing types will work.  */

-try
+gfc_try
 gfc_merge_new_implicit (gfc_typespec *ts)
 {
   int i;
@@ -230,7 +230,7 @@ gfc_get_default_type (gfc_symbol *sym, g
    letter of its name.  Fails if the letter in question has no default
    type.  */

-try
+gfc_try
 gfc_set_default_type (gfc_symbol *sym, int error_flag, gfc_namespace *ns)
 {
   gfc_typespec *ts;
@@ -336,7 +336,7 @@ gfc_check_function_type (gfc_namespace *
                                 goto conflict_std;\
                               }

-static try
+static gfc_try
 check_conflict (symbol_attribute *attr, const char *name, locus *where)
 {
   static const char *dummy = "DUMMY", *save = "SAVE", *pointer = "POINTER",
@@ -790,7 +790,7 @@ duplicate_attr (const char *attr, locus
 /* Called from decl.c (attr_decl1) to check attributes, when declared
    separately.  */

-try
+gfc_try
 gfc_add_attribute (symbol_attribute *attr, locus *where)
 {

@@ -800,7 +800,7 @@ gfc_add_attribute (symbol_attribute *att
   return check_conflict (attr, NULL, where);
 }

-try
+gfc_try
 gfc_add_allocatable (symbol_attribute *attr, locus *where)
 {

@@ -826,7 +826,7 @@ gfc_add_allocatable (symbol_attribute *a
 }


-try
+gfc_try
 gfc_add_dimension (symbol_attribute *attr, const char *name, locus *where)
 {

@@ -852,7 +852,7 @@ gfc_add_dimension (symbol_attribute *att
 }


-try
+gfc_try
 gfc_add_external (symbol_attribute *attr, locus *where)
 {

@@ -877,7 +877,7 @@ gfc_add_external (symbol_attribute *attr
 }


-try
+gfc_try
 gfc_add_intrinsic (symbol_attribute *attr, locus *where)
 {

@@ -896,7 +896,7 @@ gfc_add_intrinsic (symbol_attribute *att
 }


-try
+gfc_try
 gfc_add_optional (symbol_attribute *attr, locus *where)
 {

@@ -914,7 +914,7 @@ gfc_add_optional (symbol_attribute *attr
 }


-try
+gfc_try
 gfc_add_pointer (symbol_attribute *attr, locus *where)
 {

@@ -939,7 +939,7 @@ gfc_add_pointer (symbol_attribute *attr,
 }


-try
+gfc_try
 gfc_add_cray_pointer (symbol_attribute *attr, locus *where)
 {

@@ -951,7 +951,7 @@ gfc_add_cray_pointer (symbol_attribute *
 }


-try
+gfc_try
 gfc_add_cray_pointee (symbol_attribute *attr, locus *where)
 {

@@ -970,7 +970,7 @@ gfc_add_cray_pointee (symbol_attribute *
 }


-try
+gfc_try
 gfc_add_protected (symbol_attribute *attr, const char *name, locus *where)
 {
   if (check_used (attr, name, where))
@@ -990,7 +990,7 @@ gfc_add_protected (symbol_attribute *att
 }


-try
+gfc_try
 gfc_add_result (symbol_attribute *attr, const char *name, locus *where)
 {

@@ -1002,7 +1002,7 @@ gfc_add_result (symbol_attribute *attr,
 }


-try
+gfc_try
 gfc_add_save (symbol_attribute *attr, const char *name, locus *where)
 {

@@ -1031,7 +1031,7 @@ gfc_add_save (symbol_attribute *attr, co
 }


-try
+gfc_try
 gfc_add_value (symbol_attribute *attr, const char *name, locus *where)
 {

@@ -1052,7 +1052,7 @@ gfc_add_value (symbol_attribute *attr, c
 }


-try
+gfc_try
 gfc_add_volatile (symbol_attribute *attr, const char *name, locus *where)
 {
   /* No check_used needed as 11.2.1 of the F2003 standard allows
@@ -1071,7 +1071,7 @@ gfc_add_volatile (symbol_attribute *attr
 }


-try
+gfc_try
 gfc_add_threadprivate (symbol_attribute *attr, const char *name, locus *where)
 {

@@ -1089,7 +1089,7 @@ gfc_add_threadprivate (symbol_attribute
 }


-try
+gfc_try
 gfc_add_target (symbol_attribute *attr, locus *where)
 {

@@ -1107,7 +1107,7 @@ gfc_add_target (symbol_attribute *attr,
 }


-try
+gfc_try
 gfc_add_dummy (symbol_attribute *attr, const char *name, locus *where)
 {

@@ -1120,7 +1120,7 @@ gfc_add_dummy (symbol_attribute *attr, c
 }


-try
+gfc_try
 gfc_add_in_common (symbol_attribute *attr, const char *name, locus *where)
 {

@@ -1139,7 +1139,7 @@ gfc_add_in_common (symbol_attribute *att
 }


-try
+gfc_try
 gfc_add_in_equivalence (symbol_attribute *attr, const char *name, locus *where)
 {

@@ -1155,7 +1155,7 @@ gfc_add_in_equivalence (symbol_attribute
 }


-try
+gfc_try
 gfc_add_data (symbol_attribute *attr, const char *name, locus *where)
 {

@@ -1167,7 +1167,7 @@ gfc_add_data (symbol_attribute *attr, co
 }


-try
+gfc_try
 gfc_add_in_namelist (symbol_attribute *attr, const char *name, locus *where)
 {

@@ -1176,7 +1176,7 @@ gfc_add_in_namelist (symbol_attribute *a
 }


-try
+gfc_try
 gfc_add_sequence (symbol_attribute *attr, const char *name, locus *where)
 {

@@ -1188,7 +1188,7 @@ gfc_add_sequence (symbol_attribute *attr
 }


-try
+gfc_try
 gfc_add_elemental (symbol_attribute *attr, locus *where)
 {

@@ -1206,7 +1206,7 @@ gfc_add_elemental (symbol_attribute *att
 }


-try
+gfc_try
 gfc_add_pure (symbol_attribute *attr, locus *where)
 {

@@ -1224,7 +1224,7 @@ gfc_add_pure (symbol_attribute *attr, lo
 }


-try
+gfc_try
 gfc_add_recursive (symbol_attribute *attr, locus *where)
 {

@@ -1242,7 +1242,7 @@ gfc_add_recursive (symbol_attribute *att
 }


-try
+gfc_try
 gfc_add_entry (symbol_attribute *attr, const char *name, locus *where)
 {

@@ -1260,7 +1260,7 @@ gfc_add_entry (symbol_attribute *attr, c
 }


-try
+gfc_try
 gfc_add_function (symbol_attribute *attr, const char *name, locus *where)
 {

@@ -1273,7 +1273,7 @@ gfc_add_function (symbol_attribute *attr
 }


-try
+gfc_try
 gfc_add_subroutine (symbol_attribute *attr, const char *name, locus *where)
 {

@@ -1286,7 +1286,7 @@ gfc_add_subroutine (symbol_attribute *at
 }


-try
+gfc_try
 gfc_add_generic (symbol_attribute *attr, const char *name, locus *where)
 {

@@ -1299,7 +1299,7 @@ gfc_add_generic (symbol_attribute *attr,
 }


-try
+gfc_try
 gfc_add_proc (symbol_attribute *attr, const char *name, locus *where)
 {

@@ -1325,7 +1325,7 @@ gfc_add_proc (symbol_attribute *attr, co
 /* Flavors are special because some flavors are not what Fortran
    considers attributes and can be reaffirmed multiple times.  */

-try
+gfc_try
 gfc_add_flavor (symbol_attribute *attr, sym_flavor f, const char *name,
 		locus *where)
 {
@@ -1361,7 +1361,7 @@ gfc_add_flavor (symbol_attribute *attr,
 }


-try
+gfc_try
 gfc_add_procedure (symbol_attribute *attr, procedure_type t,
 		   const char *name, locus *where)
 {
@@ -1397,7 +1397,7 @@ gfc_add_procedure (symbol_attribute *att
 }


-try
+gfc_try
 gfc_add_intent (symbol_attribute *attr, sym_intent intent, locus *where)
 {

@@ -1423,7 +1423,7 @@ gfc_add_intent (symbol_attribute *attr,

 /* No checks for use-association in public and private statements.  */

-try
+gfc_try
 gfc_add_access (symbol_attribute *attr, gfc_access access,
 		const char *name, locus *where)
 {
@@ -1444,7 +1444,7 @@ gfc_add_access (symbol_attribute *attr,

 /* Set the is_bind_c field for the given symbol_attribute.  */

-try
+gfc_try
 gfc_add_is_bind_c (symbol_attribute *attr, const char *name, locus *where,
                    int is_proc_lang_bind_spec)
 {
@@ -1468,7 +1468,7 @@ gfc_add_is_bind_c (symbol_attribute *att
 }


-try
+gfc_try
 gfc_add_explicit_interface (gfc_symbol *sym, ifsrc source,
 			    gfc_formal_arglist * formal, locus *where)
 {
@@ -1503,7 +1503,7 @@ gfc_add_explicit_interface (gfc_symbol *

 /* Add a type to a symbol.  */

-try
+gfc_try
 gfc_add_type (gfc_symbol *sym, gfc_typespec *ts, locus *where)
 {
   sym_flavor flavor;
@@ -1555,7 +1555,7 @@ gfc_clear_attr (symbol_attribute *attr)
 /* Check for missing attributes in the new symbol.  Currently does
    nothing, but it's not clear that it is unnecessary yet.  */

-try
+gfc_try
 gfc_missing_attr (symbol_attribute *attr ATTRIBUTE_UNUSED,
 		  locus *where ATTRIBUTE_UNUSED)
 {
@@ -1568,7 +1568,7 @@ gfc_missing_attr (symbol_attribute *attr
    attributes have a lot of side-effects but cannot be present given
    where we are called from, so we ignore some bits.  */

-try
+gfc_try
 gfc_copy_attr (symbol_attribute *dest, symbol_attribute *src, locus *where)
 {
   int is_proc_lang_bind_spec;
@@ -1681,7 +1681,7 @@ fail:
    already present.  On success, the component pointer is modified to
    point to the additional component structure.  */

-try
+gfc_try
 gfc_add_component (gfc_symbol *sym, const char *name,
 		   gfc_component **component)
 {
@@ -2034,12 +2034,12 @@ gfc_define_st_label (gfc_st_label *lp, g
    updating the unknown state.  Returns FAILURE if something goes
    wrong.  */

-try
+gfc_try
 gfc_reference_st_label (gfc_st_label *lp, gfc_sl_type type)
 {
   gfc_sl_type label_type;
   int labelno;
-  try rc;
+  gfc_try rc;

   if (lp == NULL)
     return SUCCESS;
@@ -3257,12 +3257,12 @@ get_iso_c_binding_dt (int sym_id)
    for such.  If an error occurs, the errors are reported here, allowing for
    multiple errors to be handled for a single derived type.  */

-try
+gfc_try
 verify_bind_c_derived_type (gfc_symbol *derived_sym)
 {
   gfc_component *curr_comp = NULL;
-  try is_c_interop = FAILURE;
-  try retval = SUCCESS;
+  gfc_try is_c_interop = FAILURE;
+  gfc_try retval = SUCCESS;

   if (derived_sym == NULL)
     gfc_internal_error ("verify_bind_c_derived_type(): Given symbol is "
@@ -3406,7 +3406,7 @@ verify_bind_c_derived_type (gfc_symbol *

 /* Generate symbols for the named constants c_null_ptr and c_null_funptr.  */

-static try
+static gfc_try
 gen_special_c_interop_ptr (int ptr_id, const char *ptr_name,
                            const char *module_name)
 {
diff -rup orig/egcc-SVN20080728/gcc/fortran/trans-openmp.c egcc-SVN20080728/gcc/fortran/trans-openmp.c
--- orig/egcc-SVN20080728/gcc/fortran/trans-openmp.c	2008-07-28 17:34:48.000000000 +0200
+++ egcc-SVN20080728/gcc/fortran/trans-openmp.c	2008-07-28 17:46:10.000000000 +0200
@@ -454,7 +454,7 @@ gfc_trans_omp_array_reduction (tree c, g
   tree decl, backend_decl, stmt;
   locus old_loc = gfc_current_locus;
   const char *iname;
-  try t;
+  gfc_try t;

   decl = OMP_CLAUSE_DECL (c);
   gfc_current_locus = where;
diff -rup orig/egcc-SVN20080728/gcc/fortran/trans-types.c egcc-SVN20080728/gcc/fortran/trans-types.c
--- orig/egcc-SVN20080728/gcc/fortran/trans-types.c	2008-07-22 02:00:11.000000000 +0200
+++ egcc-SVN20080728/gcc/fortran/trans-types.c	2008-07-28 17:46:10.000000000 +0200
@@ -124,14 +124,14 @@ int gfc_character_storage_size;
    if a mismatch occurs between ts->f90_type and ts->type; SUCCESS if
    they match.  */

-try
+gfc_try
 gfc_validate_c_kind (gfc_typespec *ts)
 {
    return ((ts->type == ts->f90_type) ? SUCCESS : FAILURE);
 }


-try
+gfc_try
 gfc_check_any_c_kind (gfc_typespec *ts)
 {
   int i;


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]