re PR fortran/33544 ([4.3 only] Warning in TRANSFER intrinsic should be made optional)
authorJerry DeLisle <jvdelisle@gcc.gnu.org>
Fri, 19 Oct 2007 14:06:05 +0000 (14:06 +0000)
committerJerry DeLisle <jvdelisle@gcc.gnu.org>
Fri, 19 Oct 2007 14:06:05 +0000 (14:06 +0000)
2007-10-19  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

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
gcc/fortran/invoke.texi
gcc/fortran/simplify.c

index a813ce6e6bc977531c57c5c52e30573d61f9e8a0..ff09b4798f6e86f8d082cf957ba9564fc3721ae7 100644 (file)
@@ -1,3 +1,10 @@
+2007-10-19  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
+
+       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  <jvdelisle@gcc.gnu.org>
 
        PR fortran/33795
index 49ab55bb872c94b9e13e0974827f7b9e3e58080b..1a2d1a7eb8e7a097a0bcbbf4d09f3d74e5540cbf 100644 (file)
@@ -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
index 0bb13c14adbb9ef8d881c39f39e81adb5bfceb4d..cdf1118c214ba7f9548f54abb509c4ece5657a1e 100644 (file)
@@ -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);