diff options
Diffstat (limited to 'gcc/fortran/options.c')
-rw-r--r-- | gcc/fortran/options.c | 27 |
1 files changed, 15 insertions, 12 deletions
diff --git a/gcc/fortran/options.c b/gcc/fortran/options.c index bd8f6ebf05e..e4f6092663c 100644 --- a/gcc/fortran/options.c +++ b/gcc/fortran/options.c @@ -36,6 +36,18 @@ Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA gfc_option_t gfc_option; +/* Set flags that control warnings and errors for different + Fortran standards to their default values. */ + +static void +set_default_std_flags (void) +{ + gfc_option.allow_std = GFC_STD_F95_OBS | GFC_STD_F95_DEL + | GFC_STD_F2003 | GFC_STD_F95 | GFC_STD_F77 | GFC_STD_GNU + | GFC_STD_LEGACY; + gfc_option.warn_std = GFC_STD_F95_DEL | GFC_STD_LEGACY; +} + /* Get ready for options handling. */ unsigned int @@ -97,10 +109,7 @@ gfc_init_options (unsigned int argc ATTRIBUTE_UNUSED, flag_errno_math = 0; - gfc_option.allow_std = GFC_STD_F95_OBS | GFC_STD_F95_DEL - | GFC_STD_F2003 | GFC_STD_F95 | GFC_STD_F77 | GFC_STD_GNU - | GFC_STD_LEGACY; - gfc_option.warn_std = GFC_STD_F95_DEL | GFC_STD_LEGACY; + set_default_std_flags (); gfc_option.warn_nonstd_intrinsics = 0; @@ -624,17 +633,11 @@ gfc_handle_option (size_t scode, const char *arg, int value) break; case OPT_std_gnu: - gfc_option.allow_std = GFC_STD_F95_OBS | GFC_STD_F95_DEL - | GFC_STD_F77 | GFC_STD_F95 | GFC_STD_F2003 - | GFC_STD_GNU | GFC_STD_LEGACY; - gfc_option.warn_std = GFC_STD_F95_OBS | GFC_STD_F95_DEL - | GFC_STD_LEGACY; + set_default_std_flags (); break; case OPT_std_legacy: - gfc_option.allow_std = GFC_STD_F95_OBS | GFC_STD_F95_DEL - | GFC_STD_F77 | GFC_STD_F95 | GFC_STD_F2003 - | GFC_STD_GNU | GFC_STD_LEGACY; + set_default_std_flags (); gfc_option.warn_std = 0; break; |