https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118337

--- Comment #6 from anlauf at gcc dot gnu.org ---
(In reply to kargls from comment #4)
> If you now compile the following with 14
> 
>   program bar
>     use foo
>     print *, len(f_c_string(c_char_'abc'))
>   end program
> 
> you get
> 
> % gfortran14 -o z ss.f90 
> f951: internal compiler error: in gfc_intrinsic_function_by_id, at
> fortran/intrinsic.cc:1069
> 0x247159ab9 __libc_start1
>         /usr/src/lib/libc/csu/libc_start1.c:157
> Please submit a full bug report, with preprocessed source (by using
> -freport-bug).
> Please include the complete backtrace with any bug report.
> See <https://gcc.gnu.org/bugs/> for instructions.
> 
> The ICE is similar to what you report.  Even if the module is arranged
> to prevent the ICE. 14's libgfortran.so does not contain f_c_string(),
> so it will not compile due to a missing reference.

It is clear that one cannot have 2-way compatibility.

But I wish we could have a limited version of backward-compatibility,
i.e. trying to consume older module versions with newer compilers.
Commercial compilers at least try.  We might do that for our users, too.

It is a PITA to have to recompile a full software stack only because
there is a simple addition to the module format.

Reply via email to