Bug 98897 - Erroneous procedure attribute for associate name
Damian Rouson
damian@sourceryinstitute.org
Sat Jan 30 00:19:59 GMT 2021
The behavior demonstrated below also occurs if the procedure
definition is moved to a submodule. Workarounds include (1) declaring
"output_data" as a variable instead of an associate name or (2) making
"output" a function referencing it as such instead of calling it as a
subroutine.
% cat bug.f90
module output_data_m
implicit none
type output_data_t
contains
procedure output
end type
interface
module subroutine output(self)
implicit none
class(output_data_t) self
end subroutine
end interface
contains
module procedure output
end procedure
end module
use output_data_m
implicit none
associate(output_data => output_data_t())
call output_data%output
end associate
end
% gfortran bug.f90
bug.f90:24:20:
24 | call output_data%output
| 1
Error: VARIABLE attribute of ‘output_data’ conflicts with PROCEDURE
attribute at (1)
% gfortran --version
GNU Fortran (GCC) 11.0.0 20201231 (experimental)
More information about the Fortran
mailing list