! RUN: %python %S/test_errors.py %s %flang_fc1 ! Ensure that an impure bound operator can't be called ! from a pure context. module m type t contains procedure :: binding => func generic :: operator(.not.) => binding end type contains impure integer function func(x) class(t), intent(in) :: x func = 0 end pure integer function test !ERROR: Procedure 'func' referenced in pure subprogram 'test' must be pure too test = .not. t() end end