[Dwarf-discuss] Proposal: C standard release dates for DW_AT_language_version, clarify semantics

Adrian Prantl aprantl@apple.com
Wed Apr 24 21:25:37 GMT 2024


# C standard release dates for DW_AT_language_version, clarify semantics

## Background

The list of languages at https://dwarfstd.org/languages-v6.html does not list release dates for the ISO C standard. Producers need to know what version numbers they should produce though. I scanned the ISO website for appropriate dates to use.

## Proposed Changes

Augment the table of language encodings to add
C (K&R and ISO) DW_LNAME_C 0x0003 0 YYYYMM 

K&R 000000
C89 198912
C99 199912
C11 201112
C17 201806 (sic!)
C2x >201806

Add the following non-normative wording: 

To convert a version number to a specific release, it is good practice to treat the YYYMM version numbers listed in this document as the maximum version that is interpreted as belonging to a specific release. This way consumers can emit version numbers for unreleased upcoming specifications, by using, e.g., the date the compiler was built.

## Dependencies

Issue 210419.1 

## References

https://iso-9899.info/wiki/The_Standard

C89: https://www.iso.org/standard/17782.html
C99: https://www.iso.org/standard/29237.html
C11: https://www.iso.org/standard/57853.html
C17: https://www.iso.org/standard/74528.html

https://dwarfstd.org/languages-v6.html


More information about the Dwarf-discuss mailing list