On 2025-10-17 03:47, Manuela Friedrich wrote:
I have hit a compile error for zic.c on Windows.
Git commit 9e0bf0b42d68b3d9ad0bc7ff70fc92d87f8b40d2
zic.c
zic.c(152): error C2081: 'mode_t': name in formal parameter list illegal
Thanks for reporting the problem. I want to fix this before the next
release. Could you explain how zic.c line 152 is reached?
On MS-Windows, HAVE_DIRECT_H should be defined (via -DHAVE_DIRECT_H in
CFLAGS), and this should define 'mkdir' as a macro in line 48 of zic.c.
Since line 152 is protected by "#ifndef mkdir", line 152 should not be
reached on MS-Windows.
If you are compiling in an MS-Windows environment where <direct.h>
should not be used and a POSIX-like environment is supplied instead,
then CFLAGS should not contain -DHAVE_POSIX_DECLS=0, and this would be
another reason that zic.c line 152 should not be reached.
It sounds like you're doing the latter, so could you please try
compiling without -DHAVE_POSIX_DECLS=0? Or if my diagnosis is incorrect,
please tell me where I went wrong.