Issue 240424.2: C standard release dates for DW_AT_language_version, clarify semantics

Author: Adrian Prantl
Champion:
Date submitted: 2024-04-24
Date revised:
Date closed: 2024-04-29
Type: Enhancement
Status: Accepted with clarification
DWARF Version: 6

Background

The list of languages at languages-v6 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 199901
C11 201112
C17 201710
C23 202311

Add the following non-normative wording:

To convert a version number to a specific release, it is good practice to treat the YYYYMM 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.

References


2024-04-29: Accepted. Table of language encodings will remain website only. Suggested non-normative wording for YYYYMM (and YYYY and YYYYRR) to be added below Table 3.2.