mirror of
https://github.com/autc04/Retro68.git
synced 2024-06-28 11:30:19 +00:00
37 lines
810 B
Fortran
37 lines
810 B
Fortran
! { dg-do compile }
|
|
!
|
|
! PR 57966: [OOP] Using a TBP to specify the shape of a dummy argument
|
|
!
|
|
! Contributed by Stefan Mauerberger <stefan.mauerberger@gmail.com>
|
|
|
|
MODULE my_mod
|
|
IMPLICIT NONE
|
|
|
|
TYPE config_cls
|
|
CONTAINS
|
|
PROCEDURE, NOPASS :: my_size
|
|
PROCEDURE, NOPASS :: my_sub
|
|
GENERIC :: sz => my_size
|
|
GENERIC :: sub => my_sub
|
|
END TYPE
|
|
|
|
TYPE(config_cls) :: config
|
|
|
|
CONTAINS
|
|
|
|
PURE INTEGER FUNCTION my_size()
|
|
my_size = 10
|
|
END FUNCTION
|
|
|
|
SUBROUTINE my_sub
|
|
END SUBROUTINE
|
|
|
|
SUBROUTINE test (field1, field2, field3, field4)
|
|
REAL :: field1 (config%my_size())
|
|
REAL :: field2 (config%sz())
|
|
REAL :: field3 (config%my_sub()) ! { dg-error "should be a FUNCTION" }
|
|
REAL :: field4 (config%sub()) ! { dg-error "should be a FUNCTION" }
|
|
END SUBROUTINE
|
|
|
|
END MODULE
|