mirror of git://gcc.gnu.org/git/gcc.git
re PR fortran/31306 (ICE with implicit character variables)
2007-10-27 Jerry DeLisle <jvdelisle@gcc.gnu.org> PR fortran/31306 * gfortran.dg/argument_check_7.f90: New test. * gfortran.dg/argument_check_8.f90: New test. From-SVN: r129686
This commit is contained in:
parent
cba28dad93
commit
19e8402866
|
|
@ -1,3 +1,9 @@
|
||||||
|
2007-10-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
||||||
|
|
||||||
|
PR fortran/31306
|
||||||
|
* gfortran.dg/argument_check_7.f90: New test.
|
||||||
|
* gfortran.dg/argument_check_8.f90: New test.
|
||||||
|
|
||||||
2007-10-27 Uros Bizjak <ubizjak@gmail.com>
|
2007-10-27 Uros Bizjak <ubizjak@gmail.com>
|
||||||
|
|
||||||
* g++.dg/other/i386-2.C: Include bmmintrin.h. Add -msse5 to dg-options.
|
* g++.dg/other/i386-2.C: Include bmmintrin.h. Add -msse5 to dg-options.
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,18 @@
|
||||||
|
! { dg-do compile }
|
||||||
|
! PR31306 ICE with implicit character variables
|
||||||
|
! Test case from PR and prepared by Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
||||||
|
module cyclic
|
||||||
|
implicit none
|
||||||
|
contains
|
||||||
|
function ouch(x,y) ! { dg-error "has no IMPLICIT type" }
|
||||||
|
implicit character(len(ouch)) (x) ! { dg-error "Conflict in attributes" }
|
||||||
|
implicit character(len(x)+1) (y)
|
||||||
|
implicit character(len(y)-1) (o)
|
||||||
|
intent(in) x,y
|
||||||
|
character(len(y)-1) ouch
|
||||||
|
integer i
|
||||||
|
do i = 1, len(ouch)
|
||||||
|
ouch(i:i) = achar(ieor(iachar(x(i:i)),iachar(y(i:i)))) ! { dg-error " PROCEDURE attribute conflicts" }
|
||||||
|
end do
|
||||||
|
end function ouch
|
||||||
|
end module cyclic
|
||||||
|
|
@ -0,0 +1,29 @@
|
||||||
|
! { dg-do run }
|
||||||
|
! PR31306 ICE with implicit character variables
|
||||||
|
! Test case from PR and prepared by Jerry DeLisle <jvdelisle@gcc.gnu.org>
|
||||||
|
module cyclic
|
||||||
|
implicit none
|
||||||
|
contains
|
||||||
|
character(10) function ouch(x,y)
|
||||||
|
implicit character(len(ouch)) (x)
|
||||||
|
implicit character(len(x)+1) (y)
|
||||||
|
intent(in) x,y
|
||||||
|
integer i
|
||||||
|
do i = 1, len(ouch)
|
||||||
|
ouch(i:i) = achar(ieor(iachar(x(i:i)),iachar(y(i:i))))
|
||||||
|
end do
|
||||||
|
end function ouch
|
||||||
|
end module cyclic
|
||||||
|
|
||||||
|
program test
|
||||||
|
use cyclic
|
||||||
|
implicit none
|
||||||
|
character(10) astr
|
||||||
|
integer i
|
||||||
|
write(astr,'(a)') ouch('YOW! ','jerry ')
|
||||||
|
if (astr(1:5) /= "3*%SY") call abort
|
||||||
|
do i=6,10
|
||||||
|
if (astr(i:i) /= achar(0)) call abort
|
||||||
|
end do
|
||||||
|
end program test
|
||||||
|
! { dg-final { cleanup-modules "cyclic" } }
|
||||||
Loading…
Reference in New Issue