!RUN: %flang_fc1 -fsyntax-only %s 2>&1 | FileCheck %s --allow-empty | |
!CHECK-NOT: error: | |
module m | |
type t | |
contains | |
procedure nonelemental | |
generic :: operator(+) => nonelemental | |
end type | |
interface operator(+) | |
procedure elemental | |
end interface | |
contains | |
type(t) elemental function elemental (a, b) | |
class(t), intent(in) :: a, b | |
elemental = t() | |
end | |
type(t) function nonelemental (a, b) | |
class(t), intent(in) :: a, b(:) | |
nonelemental = t() | |
end | |
end | |
program main | |
use m | |
type(t) x, y(1) | |
x = x + y ! ok | |
end |