aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/options.c
diff options
context:
space:
mode:
authorManuel López-Ibáñez <manu@gcc.gnu.org>2007-01-25 21:15:34 +0000
committerManuel López-Ibáñez <manu@gcc.gnu.org>2007-01-25 21:15:34 +0000
commit4428e682fbb43a7eba4af9db9d43ea5d55a82b57 (patch)
treeae99d681e8fc21bd381de32f00477b07892126f9 /gcc/fortran/options.c
parent161a649cb95838bb373e2bcdaab050d2215c9754 (diff)
downloadgcc-4428e682fbb43a7eba4af9db9d43ea5d55a82b57.zip
gcc-4428e682fbb43a7eba4af9db9d43ea5d55a82b57.tar.gz
gcc-4428e682fbb43a7eba4af9db9d43ea5d55a82b57.tar.bz2
re PR fortran/30437 (-Wno-all is rejected (even when fortran is not included))
2007-01-25 Manuel Lopez-Ibanez <manu@gcc.gnu.org> PR fortran/30437 fortran/ * lang.opt (Wall): Remove RejectNegative. * options.c (gfc_handle_option): Wall can be disabled. (set_Wall): Add a parameter for disabling Wall. testsuite/ * gcc.dg/Wall.c: New. * gcc.dg/Wno-all.c: New. * gfortran.dg/Wall.f90: New. * gfortran.dg/Wno-all.f90: New. From-SVN: r121186
Diffstat (limited to 'gcc/fortran/options.c')
-rw-r--r--gcc/fortran/options.c33
1 files changed, 17 insertions, 16 deletions
diff --git a/gcc/fortran/options.c b/gcc/fortran/options.c
index e3879f0..056ba33 100644
--- a/gcc/fortran/options.c
+++ b/gcc/fortran/options.c
@@ -298,26 +298,27 @@ gfc_post_options (const char **pfilename)
/* Set the options for -Wall. */
static void
-set_Wall (void)
+set_Wall (int setting)
{
- gfc_option.warn_aliasing = 1;
- gfc_option.warn_ampersand = 1;
- gfc_option.warn_line_truncation = 1;
- gfc_option.warn_nonstd_intrinsics = 1;
- gfc_option.warn_surprising = 1;
- gfc_option.warn_tabs = 0;
- gfc_option.warn_underflow = 1;
- gfc_option.warn_character_truncation = 1;
-
- set_Wunused (1);
- warn_return_type = 1;
- warn_switch = 1;
+ gfc_option.warn_aliasing = setting;
+ gfc_option.warn_ampersand = setting;
+ gfc_option.warn_line_truncation = setting;
+ gfc_option.warn_nonstd_intrinsics = setting;
+ gfc_option.warn_surprising = setting;
+ gfc_option.warn_tabs = !setting;
+ gfc_option.warn_underflow = setting;
+ gfc_option.warn_character_truncation = setting;
+
+ set_Wunused (setting);
+ warn_return_type = setting;
+ warn_switch = setting;
/* We save the value of warn_uninitialized, since if they put
-Wuninitialized on the command line, we need to generate a
warning about not using it without also specifying -O. */
-
- if (warn_uninitialized != 1)
+ if (setting == 0)
+ warn_uninitialized = 0;
+ else if (warn_uninitialized != 1)
warn_uninitialized = 2;
}
@@ -404,7 +405,7 @@ gfc_handle_option (size_t scode, const char *arg, int value)
break;
case OPT_Wall:
- set_Wall ();
+ set_Wall (value);
break;
case OPT_Waliasing: