[Bug fortran/58331] New: [OOP] Bogus rank checking with explicit-/assumed-size arrays and CLASS
burnus at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Fri Sep 6 06:00:00 GMT 2013
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58331
Bug ID: 58331
Summary: [OOP] Bogus rank checking with explicit-/assumed-size
arrays and CLASS
Product: gcc
Version: 4.9.0
Status: UNCONFIRMED
Keywords: rejects-valid
Severity: normal
Priority: P3
Component: fortran
Assignee: unassigned at gcc dot gnu.org
Reporter: burnus at gcc dot gnu.org
CC: janus at gcc dot gnu.org
The following code seems to be valid and to work, except for the bogus error
message:
Error: Rank mismatch in argument 'a' at (1) (rank-1 and rank-2)
Reported by Simon Geard at
https://groups.google.com/forum/#!topic/comp.lang.fortran/5oi9Sa4lnX4
module mymod
implicit none
contains
subroutine mysub(a, n)
integer, intent(in) :: n
class(*), intent(in) :: a(n)
select type(a)
type is(integer)
print *,'a is integer'
class default
print *,'a is unsupported type'
end select
end subroutine mysub
end module mymod
program upv
use mymod
implicit none
integer :: a(3), b(2,2)
a = [1, 2, 3]
call mysub(a,3)
b = reshape([1, 2, 3, 4], [2,2])
call mysub(b,4)
end program upv
More information about the Gcc-bugs
mailing list