1! Don't compile this anywhere.
2! { dg-do compile { target { lp64 && { ! lp64 } } } }
3!
4! Test the fix for PR41583, in which the different source files
5! would generate the same 'vindex' for different class declared
6! types.
7!
8! The test comprises class_4a, class_4b and class_4c.f03
9!
10! Contributed by Tobias Burnus <burnus@gcc.gnu.org>
11!
12  use m
13  use m2
14  type,extends(t) :: t3
15  end type t3
16
17  integer :: i
18  class(t), allocatable :: a
19  allocate(t3 :: a)
20  select type(a)
21    type is(t)
22      i = 1
23    type is(t2)
24      i = 2
25    type is(t3)
26      i = 3
27  end select
28  print *, i
29end
30