diff options
author | Martin Liska <mliska@suse.cz> | 2022-08-18 15:35:14 +0200 |
---|---|---|
committer | Martin Liska <mliska@suse.cz> | 2022-08-18 15:35:14 +0200 |
commit | c4cf402822be5b52516a727e6b2abc923d1a9d52 (patch) | |
tree | d97b4c3407d27282cc3bcfda5a0052d37a325580 /gcc/fortran | |
parent | 87e8197e4012801477e3743601d6d6ead64e851c (diff) | |
parent | 03119249b9cfedb48e910b8df6a832b206cced2b (diff) | |
download | gcc-c4cf402822be5b52516a727e6b2abc923d1a9d52.zip gcc-c4cf402822be5b52516a727e6b2abc923d1a9d52.tar.gz gcc-c4cf402822be5b52516a727e6b2abc923d1a9d52.tar.bz2 |
Merge branch 'master' into devel/sphinx
Diffstat (limited to 'gcc/fortran')
-rw-r--r-- | gcc/fortran/ChangeLog | 20 | ||||
-rw-r--r-- | gcc/fortran/invoke.texi | 16 | ||||
-rw-r--r-- | gcc/fortran/lang.opt | 4 | ||||
-rw-r--r-- | gcc/fortran/openmp.cc | 10 | ||||
-rw-r--r-- | gcc/fortran/options.cc | 7 |
5 files changed, 53 insertions, 4 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 74968c9..678059b 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,23 @@ +2022-08-17 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org> + Jakub Jelinek <jakub@redhat.com> + + PR fortran/46539 + * lang.opt (static-libquadmath): New option. + * invoke.texi (-static-libquadmath): Document it. + * options.cc (gfc_handle_option): Error out if -static-libquadmath + is passed but we do not support it. + +2022-08-17 Tobias Burnus <tobias@codesourcery.com> + + PR fortran/106566 + * openmp.cc (gfc_match_omp_clauses): Fix setting linear-step value + to 1 when not specified. + (gfc_match_omp_declare_simd): Accept module procedures. + +2022-08-16 Martin Liska <mliska@suse.cz> + + * gfortran.texi: Fix link destination to a valid URL. + 2022-07-31 Harald Anlauf <anlauf@gmx.de> Steven G. Kargl <kargl@gcc.gnu.org> diff --git a/gcc/fortran/invoke.texi b/gcc/fortran/invoke.texi index 251e151..0d0343d 100644 --- a/gcc/fortran/invoke.texi +++ b/gcc/fortran/invoke.texi @@ -138,7 +138,7 @@ and warnings}. @item Link Options @xref{Link Options,,Options for influencing the linking step}. -@gccoptlist{-static-libgfortran} +@gccoptlist{-static-libgfortran -static-libquadmath} @item Runtime Options @xref{Runtime Options,,Options for influencing runtime behavior}. @@ -1393,6 +1393,20 @@ configured, this option has no effect. @end table +@table @gcctabopt +@item -static-libquadmath +@opindex @code{static-libquadmath} +On systems that provide @file{libquadmath} as a shared and a static +library, this option forces the use of the static version. If no +shared version of @file{libquadmath} was built when the compiler was +configured, this option has no effect. + +Please note that the @file{libquadmath} runtime library is licensed under the +GNU Lesser General Public License (LGPL), and linking it statically introduces +requirements when redistributing the resulting binaries. +@end table + + @node Runtime Options @section Influencing runtime behavior @cindex options, runtime diff --git a/gcc/fortran/lang.opt b/gcc/fortran/lang.opt index cf39712..e8cd735 100644 --- a/gcc/fortran/lang.opt +++ b/gcc/fortran/lang.opt @@ -863,6 +863,10 @@ static-libgfortran Fortran Statically link the GNU Fortran helper library (libgfortran). +static-libquadmath +Fortran +Statically link the GCC Quad-Precision Math Library (libquadmath). + std=f2003 Fortran Conform to the ISO Fortran 2003 standard. diff --git a/gcc/fortran/openmp.cc b/gcc/fortran/openmp.cc index a7eb6c3..5949077 100644 --- a/gcc/fortran/openmp.cc +++ b/gcc/fortran/openmp.cc @@ -2480,7 +2480,7 @@ gfc_match_omp_clauses (gfc_omp_clauses **cp, const omp_mask mask, goto error; } } - else + if (step == NULL) { step = gfc_get_constant_expr (BT_INTEGER, gfc_default_integer_kind, @@ -4213,9 +4213,13 @@ gfc_match_omp_declare_simd (void) gfc_omp_declare_simd *ods; bool needs_space = false; - switch (gfc_match (" ( %s ) ", &proc_name)) + switch (gfc_match (" ( ")) { - case MATCH_YES: break; + case MATCH_YES: + if (gfc_match_symbol (&proc_name, /* host assoc = */ true) != MATCH_YES + || gfc_match (" ) ") != MATCH_YES) + return MATCH_ERROR; + break; case MATCH_NO: proc_name = NULL; needs_space = true; break; case MATCH_ERROR: return MATCH_ERROR; } diff --git a/gcc/fortran/options.cc b/gcc/fortran/options.cc index d0fa634..38249d6 100644 --- a/gcc/fortran/options.cc +++ b/gcc/fortran/options.cc @@ -692,6 +692,13 @@ gfc_handle_option (size_t scode, const char *arg, HOST_WIDE_INT value, #endif break; + case OPT_static_libquadmath: +#ifndef HAVE_LD_STATIC_DYNAMIC + gfc_fatal_error ("%<-static-libquadmath%> is not supported in this " + "configuration"); +#endif + break; + case OPT_fintrinsic_modules_path: case OPT_fintrinsic_modules_path_: |