https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117381
kargls at comcast dot net changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |kargls at comcast dot net --- Comment #4 from kargls at comcast dot net --- (In reply to Jordan from comment #3) > I tested this: > > program main > use, intrinsic :: iso_c_binding > implicit none > > integer :: > VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_PROPERTIES_KHR = 1 > end program main > > with: > gfortran -std=f95 -fmax-identifier-length=80 ./app/main.f90 > > with result: > f951: Fatal Error: Maximum supported identifier length is 63 > compilation terminated. The option should likely by removed or the documentation improved. It can be set to any value up to and including 63. Anything larger will not work. % cd gcc/gcc/fortran % grep GFC_MAX_SYMBOL_LEN *.cc | grep + | wc -l 149 There are 149 instances of the symbol and many of those appear in declarations of buffers such as in match.cc /* Match an ELSE IF statement. */ match gfc_match_elseif (void) { char name[GFC_MAX_SYMBOL_LEN + 1]; As a side note, the Fortran 2023 standard has a numbered constraint F2023:C601 (R603) The maximum length of a name is 63 characters. which means a Fortran compiler is oblige to detect and report the issue. As an additional side note, you don't need to create a custom vulkan. You can create a custom gfortran with this patch. diff --git a/gcc/fortran/gfortran.h b/gcc/fortran/gfortran.h index dd599bc97a2..85f0597bed0 100644 --- a/gcc/fortran/gfortran.h +++ b/gcc/fortran/gfortran.h @@ -54,7 +54,7 @@ not after. /* Major control parameters. */ -#define GFC_MAX_SYMBOL_LEN 63 /* Must be at least 63 for F2003. */ +#define GFC_MAX_SYMBOL_LEN 127 /* Must be at least 63 for F2003. */ #define GFC_LETTERS 26 /* Number of letters in the alphabet. */ #define MAX_SUBRECORD_LENGTH 2147483639 /* 2**31-9 */ Change 127 to whatever you want.