Issue: #include <stdio.h> shall not cause intmax_t to be defined

Corinna Vinschen vinschen@redhat.com
Fri May 6 09:14:09 GMT 2022


On May  5 19:15, Pavel M wrote:
> > Is there actually a "MUST NOT" defined anywhere in the standards or was
> this change unnecessary?
> C11 specifies when header X includes header Y.
> Examples:
> 7.25 Type-generic math <tgmath.h>:
> > The header <tgmath.h> includes the headers <math.h> and <complex.h>
> 7.26 Threads <threads.h>:
> > The header <threads.h> includes the header <time.h>
> 7.8 Format conversion of integer types <inttypes.h>:
> > The header <inttypes.h> includes the header <stdint.h>
> There are no more occurrences of "includes the header".

These examples define a MUST, where exposure of certain other header
file definitions are expected by including a single other header.
None of them defines a MUST NOT, which means that certain types
are not to be exposed when including a certain other header.

But, either way, the situation should be cleared by Sebastians patch.


Corinna



More information about the Newlib mailing list