diff options
author | Tobias Burnus <burnus@net-b.de> | 2012-12-20 09:13:21 +0100 |
---|---|---|
committer | Tobias Burnus <burnus@gcc.gnu.org> | 2012-12-20 09:13:21 +0100 |
commit | 64ff24b33ee82bfdef545551709aae354aecf685 (patch) | |
tree | 5de530b655e61a697a99f2f57209b595f9a6e109 /gcc/fortran | |
parent | d19a6672c9e798d7e5b18d4eabc355f2123ca2f0 (diff) | |
download | gcc-64ff24b33ee82bfdef545551709aae354aecf685.zip gcc-64ff24b33ee82bfdef545551709aae354aecf685.tar.gz gcc-64ff24b33ee82bfdef545551709aae354aecf685.tar.bz2 |
re PR fortran/54818 (error: type mismatch in binary expression)
2012-12-20 Tobias Burnus <burnus@net-b.de>
PR fortran/54818
* trans-intrinsic.c (gfc_conv_intrinsic_transfer): Ensure that
the string length is of type gfc_charlen_type_node.
2012-12-20 Tobias Burnus <burnus@net-b.de>
PR fortran/54818
* gfortran.dg/transfer_intrinsic_4.f: New.
From-SVN: r194628
Diffstat (limited to 'gcc/fortran')
-rw-r--r-- | gcc/fortran/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/fortran/trans-intrinsic.c | 2 |
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index ab271a4..5a72e8a 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,9 @@ +2012-12-20 Tobias Burnus <burnus@net-b.de> + + PR fortran/54818 + * trans-intrinsic.c (gfc_conv_intrinsic_transfer): Ensure that + the string length is of type gfc_charlen_type_node. + 2012-12-19 Paul Thomas <pault@gcc.gnu.org> * array.c (resolve_array_list): Apply C4106. diff --git a/gcc/fortran/trans-intrinsic.c b/gcc/fortran/trans-intrinsic.c index 52f24c1..b9d13cc 100644 --- a/gcc/fortran/trans-intrinsic.c +++ b/gcc/fortran/trans-intrinsic.c @@ -5662,7 +5662,7 @@ scalar_transfer: gfc_add_expr_to_block (&se->pre, tmp); se->expr = tmpdecl; - se->string_length = dest_word_len; + se->string_length = fold_convert (gfc_charlen_type_node, dest_word_len); } else { |