1 ! RUN: %S/test_errors.sh %s %t %flang_fc1
26 !ERROR: The binding of 'a' ('missing') must be either an accessible module procedure or an external procedure with an explicit interface
27 procedure
, nopass
:: a
=> missing
28 procedure
, nopass
:: b
=> s
, s2
29 !ERROR: Type parameter, component, or procedure binding 'c' already defined in this type
30 procedure
, nopass
:: c
31 !ERROR: DEFERRED is only allowed when an interface-name is provided
32 procedure
, nopass
, deferred
:: d
=> s
33 !Note: s3 not found because it's not accessible -- should we issue a message
35 !ERROR: 's3' must be either an accessible module procedure or an external procedure with an explicit interface
36 procedure
, nopass
:: s3
37 procedure
, nopass
:: foo
38 !ERROR: 'bar' must be either an accessible module procedure or an external procedure with an explicit interface
39 procedure
, nopass
:: bar
40 !ERROR: 'i' must be either an accessible module procedure or an external procedure with an explicit interface
41 procedure
, nopass
:: i
42 !ERROR: Type parameter, component, or procedure binding 'b' already defined in this type
43 procedure
, nopass
:: b
=> s4
44 !ERROR: DEFERRED is required when an interface-name is provided
45 procedure(foo
), nopass
:: g
47 type, abstract
:: t1a
! DEFERRED valid only in ABSTRACT derived type
49 procedure(foo
), nopass
, deferred
:: e
50 procedure(s
), nopass
, deferred
:: f
51 !ERROR: Type parameter, component, or procedure binding 'f' already defined in this type
52 procedure(foo
), nopass
, deferred
:: f
53 !ERROR: 'bar' must be an abstract interface or a procedure with an explicit interface
54 procedure(bar
), nopass
, deferred
:: h
59 procedure
, nopass
:: b
=> s
61 !ERROR: FINAL subroutine 'i' of derived type 't2' must be a module procedure
67 procedure
, nopass
:: b
=> s
68 procedure
, nopass
, public
:: f