This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug fortran/61179] Can not compile "type is(double complex)"


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61179

Dominique d'Humieres <dominiq at lps dot ens.fr> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |WAITING
   Last reconfirmed|                            |2014-05-13
     Ever confirmed|0                           |1

--- Comment #2 from Dominique d'Humieres <dominiq at lps dot ens.fr> ---
module m
 implicit none
contains

 subroutine test(x)
  integer, parameter :: dp=kind(0.0d0)
  class(*), intent(in) :: x
   select type(x)
    type is(complex)
     write(*,*) "complex"
     print *, x
!    type is(double complex)
    type is(complex(dp))
     write(*,*) "double complex"
     print *, x
   end select
 end subroutine test

end module m

use m
complex :: y=(1.0,2.0)
complex(8) :: z=(2.0,3.0)

call test(y)
call test(z)

end

compiles and gives at run time

 complex
 (  1.00000000    ,  2.00000000    )
 double complex
 (  2.0000000000000000     ,  3.0000000000000000     )

> So, my example above is not required to work, and I think the error
> message is probably OK. (Although one could maybe consider allowing it
> as part of the GNU extension...)

IMO the GNU extensions should be restricted to the compatibility with g77.
I am in favor to close this PR as WONTFIX.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]