diff options
Diffstat (limited to 'gcc-4.8/gcc/testsuite/gfortran.dg/assumed_rank_12.f90')
-rw-r--r-- | gcc-4.8/gcc/testsuite/gfortran.dg/assumed_rank_12.f90 | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/gcc-4.8/gcc/testsuite/gfortran.dg/assumed_rank_12.f90 b/gcc-4.8/gcc/testsuite/gfortran.dg/assumed_rank_12.f90 new file mode 100644 index 000000000..f947f4941 --- /dev/null +++ b/gcc-4.8/gcc/testsuite/gfortran.dg/assumed_rank_12.f90 @@ -0,0 +1,21 @@ +! { dg-do run } +! { dg-options "-fdump-tree-original" } +! +! PR fortran/48820 +! +! Ensure that the value of scalars to assumed-rank arrays is +! copied back - and everything happens in the correct order. + +call sub(f()) +contains +subroutine sub(x) + integer, pointer :: x(..) +end subroutine sub +function f() result(res) + integer, pointer :: res +end function f +end + +! { dg-final { scan-tree-dump " = f \\(\\);.*desc.0.dtype = .*;.*desc.0.data = .void .. D.*;.*sub \\(&desc.0\\);.*D.*= .integer.kind=4. .. desc.0.data;" "original" } } +! { dg-final { cleanup-tree-dump "original" } } + |