[Top][All Lists]

[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


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.


-----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


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.


Tinycc-devel mailing list

reply via email to

[Prev in Thread] Current Thread [Next in Thread]