1! { dg-do compile }
2!
3! PR 70601: [5/6/7 Regression] [OOP] ICE on procedure pointer component call
4!
5! Contributed by zmi <zmi007@gmail.com>
6
7program test
8  implicit none
9
10  type :: concrete_type
11    procedure (run_concrete_type), pointer :: run
12  end type
13
14  type(concrete_type), allocatable :: concrete
15
16  allocate(concrete)
17  concrete % run => run_concrete_type
18  call concrete % run()
19
20contains
21
22   subroutine run_concrete_type(this)
23      class(concrete_type) :: this
24   end subroutine
25
26end
27