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

Corinna Vinschen <[email protected]>
Newsgroups gmane.comp.lib.newlib
Message-ID <[email protected]>
On May  4 09:59, Sebastian Huber wrote:
> On 03/05/2022 19:00, Corinna Vinschen wrote:
> > On Apr 27 00:41, Pavel M wrote:
> > > Hi all,
> > > 
> > > Issue: #include <stdio.h> shall not cause intmax_t to be defined. However,
> > > now it causes. This is because now <stdio.h> includes <sys/types.h>, which
> > > includes <sys/_stdint.h>.
> > > Note: per C11 the types intmax_t and uintmax_t defined in the header
> > > <stdint.h>, and <stdint.h> is not included in <stdio.h>.
> > > Consider fixing.
> > I pushed a patch to fix this.
> 
> In FreeBSD, <sys/types.h> provides the stdint.h types. Could we bring back
> this with

Is that with FreeeBSD only, or is that with BSDs in general?

> #if __BSD_VISIBLE
> #include <machine/endian.h>
> #include <sys/select.h>
> #include <sys/_stdint.h>
> #  define	physadr		physadr_t
> #  define	quad		quad_t
> 
> ?
> 
> In addition, the C11 header files should not include <sys/types.h>.

Which files are these exactly?  Feel free to submit patches.


Corinna
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.