Authors: Jay Ghiron
Date: 2026-02-26
Submitted against: C23
Status: Open
Cross-references: 0147
The standard never directly says that standard library types cannot be variably modified, though it would be impossible to actually define any of the types this way in a normal C header. Given DR 147 was accepted and that library functions needed special wording to ensure proper sequence points, it seems necessary to do the same with types to ensure that they are not variably modified.
Modify C23 7.1.2 paragraph 1:
Declarations of types described here, in Annex H, or in Annex K, shall not
include type qualifiersbe qualified or variably modified, unless explicitly stated otherwise.
Note: The existing wording "include type qualifiers" is changed here
so it is clear that types such as const int* are not forbidden.