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.