https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66695
G. Steinmetz <gs...@t-online.de> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |gs...@t-online.de --- Comment #6 from G. Steinmetz <gs...@t-online.de> --- Update : $ cat z1.f90 module m contains integer function f() end end module m2 use m contains subroutine s() bind(c, name='f') integer :: x x = f() end end $ gfortran-9-20181111 -c z1.f90 z1.f90:11:0: 11 | x = f() | internal compiler error: in fold_convert_loc, at fold-const.c:2426 0x8a9b87 fold_convert_loc(unsigned int, tree_node*, tree_node*) ../../gcc/fold-const.c:2425 0x6ed255 gfc_trans_scalar_assign(gfc_se*, gfc_se*, gfc_typespec, bool, bool, bool) ../../gcc/fortran/trans-expr.c:9063 0x6fd58d gfc_trans_assignment_1 ../../gcc/fortran/trans-expr.c:10449 0x6bfdaf trans_code ../../gcc/fortran/trans.c:1822 0x6e7674 gfc_generate_function_code(gfc_namespace*) ../../gcc/fortran/trans-decl.c:6509 0x6c3b39 gfc_generate_module_code(gfc_namespace*) ../../gcc/fortran/trans.c:2216 0x67440b translate_all_program_units ../../gcc/fortran/parse.c:6112 0x67440b gfc_parse_file() ../../gcc/fortran/parse.c:6328 0x6bc89f gfc_be_parse_file ../../gcc/fortran/f95-lang.c:204 --- $ cat z2.f90 module m contains integer function f() end end module m2 use m contains subroutine s() bind(c, name='f') print *, f() end end $ gfortran-9-20181111 -c z2.f90 f951: Error: using result of function returning 'void'