Commit 22b128c5 by Dominique d'Humieres

re PR fortran/84094 (several correctness issues in gfortran.dg)

2018-02-04  Dominique d'Humieres <dominiq@gcc.gnu.org>

	PR fortran/84094
	* gfortran.dg/associate_23.f90: Fix invalid code.
	* gfortran.dg/intrinsic_actual_4.f90: Likewise.
	* gfortran.dg/matmul_3.f90: Likewise.
	* gfortran.dg/transfer_array_intrinsic_2.f90: Likewise.

From-SVN: r257364
parent 26f822c2
2018-02-04 Dominique d'Humieres <dominiq@gcc.gnu.org>
PR fortran/84094
* gfortran.dg/associate_23.f90: Fix invalid code.
* gfortran.dg/intrinsic_actual_4.f90: Likewise.
* gfortran.dg/matmul_3.f90: Likewise.
* gfortran.dg/transfer_array_intrinsic_2.f90: Likewise.
2018-02-04 Paul Thomas <pault@gcc.gnu.org> 2018-02-04 Paul Thomas <pault@gcc.gnu.org>
PR fortran/84115 PR fortran/84115
......
...@@ -27,7 +27,7 @@ program test_this ...@@ -27,7 +27,7 @@ program test_this
! Found to be failing during debugging ! Found to be failing during debugging
ASSOCIATE(should_work=>char_var_dim(1:2)) ASSOCIATE(should_work=>char_var_dim(1:2))
should_work = ["test SUCCESFUL", "test_SUCCESFUL", "test.SUCCESFUL"] should_work = ["test SUCCESFUL", "test_SUCCESFUL"]
write (buffer, *) should_work(:)(5:14) write (buffer, *) should_work(:)(5:14)
END ASSOCIATE END ASSOCIATE
......
...@@ -13,6 +13,7 @@ ...@@ -13,6 +13,7 @@
implicit none implicit none
integer i integer i
intrinsic len
i = len ("123") i = len ("123")
call sub (len, "abcdef") call sub (len, "abcdef")
end end
...@@ -22,7 +22,7 @@ ...@@ -22,7 +22,7 @@
iX2(1:n,1) = matmul( iB(2,1:n),iC(1:n,1:n) ) iX2(1:n,1) = matmul( iB(2,1:n),iC(1:n,1:n) )
! Whereas, we should have 8, 8, 99 ! Whereas, we should have 8, 8, 99
if (any (iX1(1:n,1) .ne. (/8, 8, 99/))) call abort () if (any (iX1(1:n+1,1) .ne. (/8, 8, 99/))) call abort ()
if (any (iX1 .ne. iX2)) call abort () if (any (iX1 .ne. iX2)) call abort ()
! Make sure that the fix does not break transpose temporaries. ! Make sure that the fix does not break transpose temporaries.
......
...@@ -88,7 +88,7 @@ contains ...@@ -88,7 +88,7 @@ contains
ch(1:2) = transfer (y, ch, 2) ch(1:2) = transfer (y, ch, 2)
if (any (ch(1:2) .ne. (/"ABCD","EFGH"/))) call abort () if (any (ch(1:2) .ne. (/"ABCD","EFGH"/))) call abort ()
z = transfer (ch, y) z = transfer (ch, y, 2)
if (any (y(1:2) .ne. z)) call abort () if (any (y(1:2) .ne. z)) call abort ()
end subroutine test2 end subroutine test2
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment