1978 is the year of the publication of the Revised Report that defines
the revised language. And this is the version set by gcc a68. So when
we see DW_LANG_Algol68 we translate it to DW_LNAME_Algol68 with
lversion set to 1978 to match gcc a68.

        * libdw/dwarf_srclang.c (srclang_to_language): Set lversion to
        1978 for DW_LANG_Algol68.

Signed-off-by: Mark Wielaard <[email protected]>
---
 libdw/dwarf_srclang.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libdw/dwarf_srclang.c b/libdw/dwarf_srclang.c
index 3df13757be67..aa1567fbbf29 100644
--- a/libdw/dwarf_srclang.c
+++ b/libdw/dwarf_srclang.c
@@ -309,7 +309,7 @@ static int srclang_to_language (Dwarf_Word srclang,
       return 0;
     case DW_LANG_Algol68:
       *lname = DW_LNAME_Algol68;
-      *lversion = 0;
+      *lversion = 1978; /* Year of the Revised Report for revised language.  */
       return 0;
     case DW_LANG_Nim:
       *lname = DW_LNAME_Nim;
-- 
2.52.0

Reply via email to