On Sun, Oct 12, 2025 at 12:44 PM Jose E. Marchesi <[email protected]> wrote: > > This commit makes GCC aware of the DWARF numbers recently allocated > for Algol 68. > > For DWARF 5, DW_LANG_Algol68 = 0x44. > For DWARF 6, DW_LNAME_Algol68 = 0x2e > with versioning schema YYYY, starting with 1973 for the original > Revised language. The language extensions we are working on will > be encoded in subsequent versions, 2025 etc. > > See https://dwarfstd.org/issues/250304.1.html for more information. > > Signed-off-by: Jose E. Marchesi <[email protected]> > > gcc/ChangeLog > > * dwarf2out.cc: Set DW_LANG_Algol68 an DW_LNAME_Algol68. > > include/ChangeLog > > * dwarf2.h (DW_LANG_Algol68): Define. > (DW_LNAME_Algol68): Likewise. > --- > gcc/dwarf2out.cc | 8 ++++++++ > include/dwarf2.h | 4 +++- > 2 files changed, 11 insertions(+), 1 deletion(-) > > diff --git a/gcc/dwarf2out.cc b/gcc/dwarf2out.cc > index a817c69c95a..563f049e795 100644 > --- a/gcc/dwarf2out.cc > +++ b/gcc/dwarf2out.cc > @@ -25799,6 +25799,14 @@ gen_compile_unit_die (const char *filename) > else if (strcmp (language_string, "GNU Rust") == 0) > language = DW_LANG_Rust; > } > + else if (!dwarf_strict) > + { > + if (strcmp (language_string, "GNU Algol 68") == 0) > + { > + language = DW_LANG_Algol68; > + lname = DW_LNAME_Algol68; > + } > + } > } > /* Use a degraded Fortran setting in strict DWARF2 so is_fortran works. */ > else if (startswith (language_string, "GNU Fortran")) > diff --git a/include/dwarf2.h b/include/dwarf2.h > index 344447fbc36..bc8c1c23b9d 100644 > --- a/include/dwarf2.h > +++ b/include/dwarf2.h > @@ -409,6 +409,7 @@ enum dwarf_source_language > DW_LANG_Ruby = 0x0040, > DW_LANG_Move = 0x0041, > DW_LANG_Hylo = 0x0042, > + DW_LANG_Algol68 = 0x0044, > > DW_LANG_lo_user = 0x8000, /* Implementation-defined range start. */ > DW_LANG_hi_user = 0xffff, /* Implementation-defined range end. */ > @@ -425,7 +426,7 @@ enum dwarf_source_language > DW_LANG_HP_Assembler = 0x8007, > > /* Rust extension, but replaced in DWARF 5. */ > - DW_LANG_Rust_old = 0x9000 > + DW_LANG_Rust_old = 0x9000,
OK with this unrelated change removed. Richard. > }; > > /* DWARF 6 source language names and codes. */ > @@ -476,6 +477,7 @@ enum dwarf_source_language_name > DW_LNAME_Odin = 0x002a, > DW_LNAME_P4 = 0x002b, > DW_LNAME_Metal = 0x002c, > + DW_LNAME_Algol68 = 0x002e, > > DW_LNAME_lo_user = 0x8000, /* Implementation-defined range start. */ > DW_LNAME_hi_user = 0xffff /* Implementation-defined range end. */ > -- > 2.30.2 >
