guile-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: c99 support


From: Hans Åberg
Subject: Re: c99 support
Date: Fri, 29 Jun 2018 12:34:07 +0200

> On 29 Jun 2018, at 12:10, Chris Vine <address@hidden> wrote:
> 
>> For C++, these are only optional, cf. [1], as they require no padding. So an 
>> alternative is to typedef the obligatory int_fast<2^k>_t types, perhaps 
>> leaving the API unchanged.
>> 
>> 1. https://en.cppreference.com/w/cpp/types/integer
> 
> The fixed size integer types are optional in C99/11 also, depending on
> whether the platform provides a fixed size integer of the type in
> question without padding and (for negative integers) a two's complement
> representation.  

Yes, I saw that, too. It is important to ensure two's complement, too, which 
the other types do not.

> If, say, uint8_t is available in stdint.h for C, it
> will be available for C++.  §21.4.1/2 of C++17 makes this even more
> explicit: "The [cstdint] header defines all types and macros the
> same as the C standard library header <stdint.h>".

Which C version? In g++7, __STDC_VERSION__ is not defined, only __STDC__.

> I imagine guile will not run on any platform that does not support 8
> and 32 bit fixed size integers.

I would think all CPUs support those types nowadays, so it is rather 
theoretical.





reply via email to

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