[prev in list] [next in list] [prev in thread] [next in thread] 

List:       gcc-fortran
Subject:    Re: [patch, fortran] PR32088 - Fix implicit typing of RESULT variables
From:       Brooks Moses <brooks.moses () codesourcery ! com>
Date:       2007-05-29 7:37:54
Message-ID: 465BD852.5020005 () codesourcery ! com
[Download RAW message or body]

Tobias Burnus wrote:
> Index: gcc/testsuite/gfortran.dg/func_result_3.f90
> ===================================================================
> --- gcc/testsuite/gfortran.dg/func_result_3.f90	(revision 0)
> +++ gcc/testsuite/gfortran.dg/func_result_3.f90	(revision 0)
> @@ -0,0 +1,25 @@
> +! { dg-do compile }
> +! PR fortran/32088
> +!
> +! Test implicitly defined result variables
> +!
> +subroutine dummy
> +contains
> +  function quadric(a,b) result(c)
> +  intent(in) a,b; dimension a(0:3),b(0:3),c(0:9)
> +    c(0)=a(0)*b(0); c(1:3)=a(1:)*b(0)+a(0)*b(1:); c(4:6)=a(1:)*b(1:)
> +    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)/)
> +  end function
> +end subroutine dummy
> +
> +subroutine dummy2
> +implicit none
> +contains
> +  function quadric(a,b) result(c) ! { dg-error "no IMPLICIT type" }
> +  real :: a, b
> +  intent(in) a,b; dimension a(0:3),b(0:3),c(0:9)
> +    c(0)=a(0)*b(0); c(1:3)=a(1:)*b(0)+a(0)*b(1:); c(4:6)=a(1:)*b(1:)
> +    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)/)
> +  end function
> +end subroutine dummy2
> +end

This new testcase is producing an ICE on powerpc-apple-darwin8.9.0. 
I've filed PR 32137 for it; the details are posted there.

- Brooks


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic