aboutsummaryrefslogtreecommitdiff
path: root/gcc/opts.c
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2020-05-04 09:31:27 +0200
committerJakub Jelinek <jakub@redhat.com>2020-05-04 09:31:27 +0200
commitefaffc6997f33f663f887f63c72e589d4318f902 (patch)
treee177e8c94490dd6f7cf2759f7a65d36118830915 /gcc/opts.c
parentcb8274155a31f2bb134edb91b5dcf8f1ad4f98d1 (diff)
downloadgcc-efaffc6997f33f663f887f63c72e589d4318f902.zip
gcc-efaffc6997f33f663f887f63c72e589d4318f902.tar.gz
gcc-efaffc6997f33f663f887f63c72e589d4318f902.tar.bz2
diagnostics: get_option_html_page fixes
While testing the --with-documentation-root-url= changes, I run into [Wreturn-type] URL pointing to gfortran documentation where it obviously isn't documented. The following patch updates the list of options to match reality (on the other side -Wconversion-extra is gfortran only option documented in gfortran.texi). Or, perhaps better use the attached patch instead, which doesn't have a hardcoded list and instead uses the flags? I went through options.c and the updated list of options matches exactly the cases where CL_Fortran is set for "-W*" options together with CL_C and/or CL_CXX (ok, there is also -Wall and -Wextra, but hopefully we don't emit [Wall] or [Wextra] for anything). 2020-05-04 Jakub Jelinek <jakub@redhat.com> * opts.c (get_option_html_page): Instead of hardcoding a list of options common between C/C++ and Fortran only use gfortran/ documentation for warnings that have CL_Fortran set but not CL_C or CL_CXX.
Diffstat (limited to 'gcc/opts.c')
-rw-r--r--gcc/opts.c28
1 files changed, 9 insertions, 19 deletions
diff --git a/gcc/opts.c b/gcc/opts.c
index 3dccef3..ec3ca07 100644
--- a/gcc/opts.c
+++ b/gcc/opts.c
@@ -3143,25 +3143,15 @@ get_option_html_page (int option_index)
return "gcc/Static-Analyzer-Options.html";
#ifdef CL_Fortran
- if (cl_opt->flags & CL_Fortran)
- {
- switch (option_index)
- {
- default:
- /* Most Fortran warnings are documented on this page. */
- return "gfortran/Error-and-Warning-Options.html";
-
- case OPT_Wdate_time:
- case OPT_Wconversion:
- case OPT_Wconversion_extra:
- case OPT_Wmissing_include_dirs:
- case OPT_Wopenmp_simd:
- /* These warnings are marked in fortran/lang.opt as
- "Documented in C" and thus use the common
- Warning-Options page below. */
- break;
- }
- }
+ if ((cl_opt->flags & CL_Fortran) != 0
+ /* If it is option common to both C/C++ and Fortran, it is documented
+ in gcc/ rather than gfortran/ docs. */
+ && (cl_opt->flags & CL_C) == 0
+#ifdef CL_CXX
+ && (cl_opt->flags & CL_CXX) == 0
+#endif
+ )
+ return "gfortran/Error-and-Warning-Options.html";
#endif
return "gcc/Warning-Options.html";