diff options
Diffstat (limited to 'gcc/fortran')
-rw-r--r-- | gcc/fortran/ChangeLog | 8 | ||||
-rw-r--r-- | gcc/fortran/options.c | 9 |
2 files changed, 17 insertions, 0 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 34d31ff..d4a24ddc 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,11 @@ +2009-03-30 Joseph Myers <joseph@codesourcery.com> + + PR rtl-optimization/323 + * options.c (gfc_post_options): Set + flag_excess_precision_cmdline. Give an error for + -fexcess-precision=standard for processors where the option is + significant. + 2009-03-29 Joseph Myers <joseph@codesourcery.com> PR preprocessor/34695 diff --git a/gcc/fortran/options.c b/gcc/fortran/options.c index 587fb36..17c577d 100644 --- a/gcc/fortran/options.c +++ b/gcc/fortran/options.c @@ -32,6 +32,8 @@ along with GCC; see the file COPYING3. If not see #include "gfortran.h" #include "target.h" #include "cpp.h" +#include "toplev.h" +#include "tm.h" gfc_option_t gfc_option; @@ -228,6 +230,13 @@ gfc_post_options (const char **pfilename) char *source_path; int i; + /* Excess precision other than "fast" requires front-end + support. */ + if (flag_excess_precision_cmdline == EXCESS_PRECISION_STANDARD + && TARGET_FLT_EVAL_METHOD_NON_DEFAULT) + sorry ("-fexcess-precision=standard for Fortran"); + flag_excess_precision_cmdline = EXCESS_PRECISION_FAST; + /* Issue an error if -fwhole-program was used. */ if (flag_whole_program) gfc_fatal_error ("Option -fwhole-program is not supported for Fortran"); |