From 39a184ce43e9d52c6b648e3c963a45d73cbf47e5 Mon Sep 17 00:00:00 2001 From: Jerry DeLisle Date: Fri, 19 Oct 2007 14:06:05 +0000 Subject: [PATCH] re PR fortran/33544 ([4.3 only] Warning in TRANSFER intrinsic should be made optional) 2007-10-19 Jerry DeLisle PR fortran/33544 * simplify.c (gfc_simplify_transfer): Only warn for short transfer when -Wsurprising is given. * invoke.texi: Document revised behavior. From-SVN: r129488 --- gcc/fortran/ChangeLog | 7 +++++++ gcc/fortran/invoke.texi | 3 +++ gcc/fortran/simplify.c | 2 +- 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index a813ce6e6bc..ff09b4798f6 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,10 @@ +2007-10-19 Jerry DeLisle + + PR fortran/33544 + * simplify.c (gfc_simplify_transfer): Only warn for short transfer when + -Wsurprising is given. + * invoke.texi: Document revised behavior. + 2007-10-18 Jerry DeLisle PR fortran/33795 diff --git a/gcc/fortran/invoke.texi b/gcc/fortran/invoke.texi index 49ab55bb872..1a2d1a7eb8e 100644 --- a/gcc/fortran/invoke.texi +++ b/gcc/fortran/invoke.texi @@ -481,6 +481,9 @@ lower value is greater than its upper value. @item A LOGICAL SELECT construct has three CASE statements. + +@item +A TRANSFER specifies a source that is shorter than the destination. @end itemize @item -Wtabs diff --git a/gcc/fortran/simplify.c b/gcc/fortran/simplify.c index 0bb13c14adb..cdf1118c214 100644 --- a/gcc/fortran/simplify.c +++ b/gcc/fortran/simplify.c @@ -4065,7 +4065,7 @@ gfc_simplify_transfer (gfc_expr *source, gfc_expr *mold, gfc_expr *size) result_size = result_elt_size; } - if (source_size < result_size) + if (gfc_option.warn_surprising && source_size < result_size) gfc_warning("Intrinsic TRANSFER at %L has partly undefined result: " "source size %ld < result size %ld", &source->where, (long) source_size, (long) result_size); -- 2.30.2