1! { dg-do compile }
2! PR fortran/32088
3!
4! Test implicitly defined result variables
5!
6subroutine dummy
7contains
8  function quadric(a,b) result(c)
9  intent(in) a,b; dimension a(0:3),b(0:3),c(0:9)
10    c(0)=a(0)*b(0); c(1:3)=a(1:)*b(0)+a(0)*b(1:); c(4:6)=a(1:)*b(1:)
11    c(7:9)=(/a(1)*b(2)+b(1)*a(2),a(1)*b(3)+b(1)*a(3),a(2)*b(3)+b(2)*a(3)/)
12  end function
13end subroutine dummy
14
15subroutine dummy2
16implicit none
17contains
18  function quadric(a,b) result(c) ! { dg-error "no IMPLICIT type" }
19  real :: a, b
20  intent(in) a,b; dimension a(0:3),b(0:3),c(0:9)
21    c(0)=a(0)*b(0); c(1:3)=a(1:)*b(0)+a(0)*b(1:); c(4:6)=a(1:)*b(1:)
22    c(7:9)=(/a(1)*b(2)+b(1)*a(2),a(1)*b(3)+b(1)*a(3),a(2)*b(3)+b(2)*a(3)/)
23  end function
24end subroutine dummy2
25end
26