Fortran-FOSS-Programmers / Fortran-FOSS-Programmers/ford
Derived type extension of an abstract derived type
- Dominant language
- Python
- Stars
- 458
- Forks
- 138
- PR merge metrics
- No merged PRs in 30d
Description
I have a "concrete" derived type extension of an abstract derived type. The "after *contains* (module level)" part of the concrete procedure and its autodoc comments don't display in the FORD-generated doc; the abstract procedure does. Neither appear on the Procedures webpage.
FORD version: 6.2.4
---
### abstract_mod.F90
```
!> mod_abstract module
module mod_abstract
implicit none
! ---------------------------------------------------------------
!> Abstract derived type
type, abstract, public :: abstract_t
contains
procedure(output_int_abs), deferred :: output_int !! procedure in abstract derived type
end type abstract_t
! ------------------------
!> abstract interface
abstract interface
!> subroutine in abstract interface
subroutine output_int_abs(this, an_int)
import abstract_t
implicit none
class(abstract_t), intent(in) :: this
integer, intent(in) :: an_int !! dummy variable declaration in abstract interface
end subroutine output_int_abs
end interface
end module mod_abstract
```
---
### concrete_mod.F90
```
!> mod_concrete module
module mod_concrete
use mod_abstract, only : abstract_t
implicit none
!> concrete_t derived type
type, extends(abstract_t), public :: concrete_t
contains
!> procedure in concrete_t derived type
procedure output_int
end type concrete_t
contains
!> subroutine output_int in concrete_t
subroutine output_int(this, an_int)
implicit none
class(concrete_t), intent(in) :: this
integer, intent(in) :: an_int !! dummy variable declaration in concrete_t
write (*,*) "an_int = ", an_int
end subroutine output_int
end module mod_concrete
```
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.