diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index f4c0284cf70..ad5c0e17eb7 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2018-10-14 Paul Thomas + + PR fortran/83146 + * gfortran.dg/associate_43.f90: New test. + 2018-10-14 Anthony Green * gcc.c-torture/execute/20101011-1.c: Adjust for moxie. diff --git a/gcc/testsuite/gfortran.dg/associate_43.f90 b/gcc/testsuite/gfortran.dg/associate_43.f90 new file mode 100644 index 00000000000..a1460efc371 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/associate_43.f90 @@ -0,0 +1,35 @@ +! { dg-do run } +! +! Check that PR83146 remains fixed. +! +! Contributed by Neil Carlson +! + type foo + integer n + end type + type bar + type(foo) array(2) + end type + + type(bar) b + integer :: m=0 + + b%array(1)%n = 42 + b%array(2)%n = 43 + + call assoc(1) + m = 1 + call assoc(2) +contains + subroutine assoc (n) + integer :: n + associate (n_array => b%array%n) + select case (n_array(n)) + case (42) + if (m .ne. 0) stop 1 + case default + if (m .eq. 0) stop 2 + end select + end associate + end subroutine assoc +end \ No newline at end of file