[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Tinycc-devel] Missing C99 standard headers in win32
From: |
Christian Jullien |
Subject: |
Re: [Tinycc-devel] Missing C99 standard headers in win32 |
Date: |
Tue, 22 Jan 2019 07:48:06 +0100 |
Michael,
I'm just talking about includes that come in win32/include to provide a
standalone C compiler on Windows. Your remark perfectly makes sense, tcc
works because it uses also a libraries. I've just added iso646.h which is a
header only C99 feature. Other require help from library that Windows does
not provide.
Of course, on Linux (or other non-Windows systems), tcc uses includes as
provided by system (generally in /usr/include). If Linux does not provide
missing includes, it's not the role of tcc to add them.
I'm just trying, when it's free and non-intrusive, to clarify what feature
comes with a given C version. If full conformance is not a goal, I hope tcc
will evolve to better support more and more interesting features from
different ISO standard versions (like _Generic). As said, it's better if:
CC=tcc ./configure
Has all the material to detect supported feature in a portable way. I
recognize that ./configure works especially well when CC=gcc and other CC
must often tune the discovery.
Hence, I think we are in sync with tcc goals.
C.
-----Original Message-----
From: Tinycc-devel [mailto:address@hidden
On Behalf Of Michael Matz
Sent: lundi 21 janvier 2019 19:49
To: address@hidden
Subject: Re: [Tinycc-devel] Missing C99 standard headers in win32
Hi,
On Sun, 13 Jan 2019, Christian Jullien wrote:
> ISO/IEC 9899 :1999 (E) specifies that (Section 7.1.2 p. 165), Standard
> headers are:
>
> Those already in win32 lack
>
> <complex.h> complex (and imaginary) support
> <iso646.h> restricted character set support via digraphs
> <tgmath.h> type-generic math macros
>
> To make tcc a little bit more C99 conformant I added <iso646.h>
Hmm? TCC follows the traditional split between compiler and C library.
You can only consider the combination of both to determine standard
conformance. Maybe you want to provide C99 compatibility somehow via some
project, but I don't see why TCC should be that project. But OTOH there
are already project that provide that, e.g. mingw for Windows and
$arbitrary-libc for everyone else.
Ciao,
Michael.
_______________________________________________
Tinycc-devel mailing list
address@hidden
https://lists.nongnu.org/mailman/listinfo/tinycc-devel