diff options
author | Jerry DeLisle <jvdelisle@gcc.gnu.org> | 2007-10-19 14:06:05 +0000 |
---|---|---|
committer | Jerry DeLisle <jvdelisle@gcc.gnu.org> | 2007-10-19 14:06:05 +0000 |
commit | 39a184ce43e9d52c6b648e3c963a45d73cbf47e5 (patch) | |
tree | ddeca01033913e88e16bf4009b645768e2976f6f | |
parent | ab58d043a76b3c8483c5fb3e301810c2ad61e34c (diff) | |
download | gcc-39a184ce43e9d52c6b648e3c963a45d73cbf47e5.zip gcc-39a184ce43e9d52c6b648e3c963a45d73cbf47e5.tar.gz gcc-39a184ce43e9d52c6b648e3c963a45d73cbf47e5.tar.bz2 |
re PR fortran/33544 ([4.3 only] Warning in TRANSFER intrinsic should be made optional)
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
-rw-r--r-- | gcc/fortran/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/fortran/invoke.texi | 3 | ||||
-rw-r--r-- | gcc/fortran/simplify.c | 2 |
3 files changed, 11 insertions, 1 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index a813ce6..ff09b47 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -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 diff --git a/gcc/fortran/invoke.texi b/gcc/fortran/invoke.texi index 49ab55b..1a2d1a7 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 0bb13c1..cdf1118 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); |