1*2216c4c6SPeter Klausler! RUN: %python %S/test_errors.py %s %flang_fc1 2*2216c4c6SPeter Klausler! Test name conflicts with type-bound generics 3*2216c4c6SPeter Klauslermodule m 4*2216c4c6SPeter Klausler type base1(k) 5*2216c4c6SPeter Klausler integer, kind :: k = 4 6*2216c4c6SPeter Klausler real x 7*2216c4c6SPeter Klausler contains 8*2216c4c6SPeter Klausler procedure, nopass :: tbp => sub 9*2216c4c6SPeter Klausler generic :: gen => tbp 10*2216c4c6SPeter Klausler end type 11*2216c4c6SPeter Klausler type, extends(base1) :: ext1 12*2216c4c6SPeter Klausler contains 13*2216c4c6SPeter Klausler procedure, nopass :: sub 14*2216c4c6SPeter Klausler !ERROR: Type parameter, component, or procedure binding 'base1' already defined in this type 15*2216c4c6SPeter Klausler generic :: base1 => sub 16*2216c4c6SPeter Klausler !ERROR: Type bound generic procedure 'k' may not have the same name as a non-generic symbol inherited from an ancestor type 17*2216c4c6SPeter Klausler generic :: k => sub 18*2216c4c6SPeter Klausler !ERROR: Type bound generic procedure 'x' may not have the same name as a non-generic symbol inherited from an ancestor type 19*2216c4c6SPeter Klausler generic :: x => sub 20*2216c4c6SPeter Klausler !ERROR: Type bound generic procedure 'tbp' may not have the same name as a non-generic symbol inherited from an ancestor type 21*2216c4c6SPeter Klausler generic :: tbp => sub 22*2216c4c6SPeter Klausler generic :: gen => sub ! ok 23*2216c4c6SPeter Klausler end type 24*2216c4c6SPeter Klausler contains 25*2216c4c6SPeter Klausler subroutine sub 26*2216c4c6SPeter Klausler end 27*2216c4c6SPeter Klauslerend 28