Hi, The error message was fixed by Harald in:
commit fb132276d173907d575ea61fda3b846a9bc6e456 Author: Harald Anlauf <anl...@gmx.de> Date: 2025-03-28 20:31:08 +0100 Fortran: fix spelling of flag -fallow-invalid-boz gcc/fortran/ChangeLog: * check.cc (gfc_invalid_boz): Correct spelling of compiler flag in hint to -fallow-invalid-boz. >>> Third, and the main point of this email I guess, is that the >>> porting-to page should mention this: >>> https://www.gnu.org/software/gcc/gcc-10/porting_to.html The changes page for gcc 10 (https://www.gnu.org/software/gcc/gcc-10/changes.html) says: "The handling of a BOZ literal constant has been reworked to provide better conformance to the Fortran 2008 and 2018 standards. In these Fortran standards, a BOZ literal constant is a typeless and kindless entity. As a part of the rework, documented and undocumented extensions to the Fortran standard now emit errors during compilation. Some of these extensions are permitted with the -fallow-invalid-boz option, which degrades the error to a warning and the code is compiled as with older gfortran." BOZ handling was quite inconsistent in early days, and was simplified and clarified. Some cases are indeed no longer accepted, but there was really a lot of weird old code out there. They should be relatively easy to fix. If I am not mistaken, the standard way to write your code: fcn = x * '0100'X is fcn = x * int(z’0100') Best, FX