typedef of missing types

Daniel Kochmański daniel at turtleware.eu
Wed Feb 1 12:00:34 UTC 2017


thanks for the report, I've added signed prefixes to all types in that

 /* 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,

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