typedef of missing types
Daniel Kochmański
daniel at turtleware.eu
Wed Feb 1 12:00:34 UTC 2017
Hey,
thanks for the report, I've added signed prefixes to all types in that
part:
/* Missing integer types */
#if _MSC_VER < 1900
-typedef char int8_t;
-typedef short int16_t;
-typedef int int32_t;
+typedef signed char int8_t;
+typedef signed short int16_t;
+typedef signed int int32_t;
typedef unsigned char uint8_t;
typedef unsigned short uint16_t;
as a side note, at least in principle ECL requires C99 support from
16.1.2 release.
I'll push the fix when gitlab gets up again.
Best regards,
Daniel
Jón Hallur Haraldsson writes:
> In ecl/config.h line 220 there is a block labelled /* Missing integer types
> */
>
> The int8_t has a typedef of char which is incompatible with Windows
> standard types.
>
> https://msdn.microsoft.com/en-us/library/323b6b3k.aspx
>
> changing line 221 from:
>
> typedef char int8_t;
> to
> typedef signed char int8_t;
>
> Fixes the issue for me and allows me to compile both lisp code and C++
> projects using ecl.lib
>
>
> I know that char and signed char should be the same but the MS VS compile
> disagrees.
--
Daniel Kochmański ;; aka jackdaniel | Przemyśl, Poland
TurtleWare - Daniel Kochmański | www.turtleware.eu
"Be the change that you wish to see in the world." - Mahatma Gandhi
More information about the ecl-devel
mailing list