OSDN Git Service

2007-10-19 Jerry DeLisle <jvdelisle@gcc.gnu.org>
authorjvdelisle <jvdelisle@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 19 Oct 2007 14:06:05 +0000 (14:06 +0000)
committerjvdelisle <jvdelisle@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 19 Oct 2007 14:06:05 +0000 (14:06 +0000)
PR fortran/33544
* simplify.c (gfc_simplify_transfer): Only warn for short transfer when
-Wsurprising is given.
* invoke.texi: Document revised behavior.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129488 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/fortran/ChangeLog
gcc/fortran/invoke.texi
gcc/fortran/simplify.c

index a813ce6..ff09b47 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 49ab55b..1a2d1a7 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 0bb13c1..cdf1118 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);