aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorTobias Burnus <burnus@net-b.de>2010-11-27 22:22:00 +0100
committerTobias Burnus <burnus@gcc.gnu.org>2010-11-27 22:22:00 +0100
commitdb0bba8ca8aeb0b8b53fed0a4919886d9ddfe6ae (patch)
treebca22cd0e1ea3d937908ad8a944a820c59ea004e /gcc
parent267eb218c34a2b8d9e0d27f018547b69cf67a56c (diff)
downloadgcc-db0bba8ca8aeb0b8b53fed0a4919886d9ddfe6ae.zip
gcc-db0bba8ca8aeb0b8b53fed0a4919886d9ddfe6ae.tar.gz
gcc-db0bba8ca8aeb0b8b53fed0a4919886d9ddfe6ae.tar.bz2
re PR fortran/46638 (Wrong result with TRANSFER from string to DT)
2010-11-27 Tobias Burnus <burnus@net-b.de> PR fortran/46638 PR fortran/46668 * gfortran.dg/transfer_simplify_10.f90: Fix endian issue. From-SVN: r167209
Diffstat (limited to 'gcc')
-rw-r--r--gcc/testsuite/ChangeLog6
-rw-r--r--gcc/testsuite/gfortran.dg/transfer_simplify_10.f9010
2 files changed, 14 insertions, 2 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index d7cb044..ef529c9 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,9 @@
+2010-11-27 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/46638
+ PR fortran/46668
+ * gfortran.dg/transfer_simplify_10.f90: Fix endian issue.
+
2010-11-27 Nicola Pero <nicola.pero@meta-innovation.com>
PR objc++/46222
diff --git a/gcc/testsuite/gfortran.dg/transfer_simplify_10.f90 b/gcc/testsuite/gfortran.dg/transfer_simplify_10.f90
index d0c83b5..3a56e65 100644
--- a/gcc/testsuite/gfortran.dg/transfer_simplify_10.f90
+++ b/gcc/testsuite/gfortran.dg/transfer_simplify_10.f90
@@ -17,11 +17,17 @@ program test5
type(CPUID_TYPE) result
result = transfer(achar(10)//achar(0)//achar(0)//achar(0)//'GenuineIntel'//'abcd',result)
- if ( int(z'0000000A') /= result%eax &
+ if(( int(z'0000000A') /= result%eax &
.or. int(z'756E6547') /= result%ebx &
.or. int(z'49656E69') /= result%edx &
.or. int(z'6C65746E') /= result%ecx &
- .or. int(z'64636261') /= result%bbb) then
+ .or. int(z'64636261') /= result%bbb) &
+ .and. & ! Big endian
+ ( int(z'0A000000') /= result%eax &
+ .or. int(z'47656E75') /= result%ebx &
+ .or. int(z'696E6549') /= result%edx &
+ .or. int(z'6E74656C') /= result%ecx &
+ .or. int(z'61626364') /= result%bbb)) then
write(*,'(5(z8.8:1x))') result
call abort()
end if