diff options
author | Manuel López-Ibáñez <manu@gcc.gnu.org> | 2007-01-25 21:15:34 +0000 |
---|---|---|
committer | Manuel López-Ibáñez <manu@gcc.gnu.org> | 2007-01-25 21:15:34 +0000 |
commit | 4428e682fbb43a7eba4af9db9d43ea5d55a82b57 (patch) | |
tree | ae99d681e8fc21bd381de32f00477b07892126f9 /gcc/fortran/options.c | |
parent | 161a649cb95838bb373e2bcdaab050d2215c9754 (diff) | |
download | gcc-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.c | 33 |
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: |