Hi all,

I'm trying to build LyX at head, but MSVC isn't too happy with libiconv
1.18:

D:\LyX\lyx\3rdparty\libiconv\1.18\lib\genflags.c(37): error C2016: C
requires that a struct or union have at least one member
D:\LyX\lyx\3rdparty\libiconv\1.18\lib\genflags.c(38): error C2016: C
requires that a struct or union have at least one member
D:\LyX\lyx\3rdparty\libiconv\1.18\lib\genflags.c(39): error C2016: C
requires that a struct or union have at least one member

I'm not sure what I can do, as it's in generated code… Apparently, it's not
really legal C code, which MSVC and GCC/Clang resolve differently (e.g.,
https://stackoverflow.com/questions/78525821/handling-c2016-error-on-windows-using-visual-studio-code
).

Here is a short excerpt of the problematic code:

/* Consider all encodings, including the system dependent ones. */
#define USE_AIX
#define USE_OSF1
#define USE_DOS
#define USE_ZOS
#define USE_EXTRA

struct loop_funcs {};
struct iconv_hooks {};
struct iconv_fallbacks {};
#define ICONV_SURFACE_EBCDIC_ZOS_UNIX  1
#include "converters.h"


Some people patch libiconv to avoid this error:
https://github.com/AiMiDi/libiconv/issues/1. Others suggest switching to
ICU (which Qt already uses).

Thibaut Cuvelier
-- 
lyx-devel mailing list
[email protected]
https://lists.lyx.org/mailman/listinfo/lyx-devel

Reply via email to