Hello Paul,

With current head rev I am getting a link failure:

zic.obj : error LNK2019: unresolved external symbol fchmod referenced in function chmetadata
zic.exe : fatal error LNK1120: 1 unresolved externals
NMAKE :  U1077: '"C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Tools\MSVC\14.12.25827\bin\HostX64\x64\cl.EXE"' : return code '0x2'
Stop.

Regards
Manuela Friedrich

On Fri, Oct 24, 2025 at 6:00 PM Paul Eggert <eggert@cs.ucla.edu> wrote:
On 2025-10-24 04:25, Manuela Friedrich wrote:
> zic.c(104): error C2061: syntax error: identifier 'creat_perms'

Thanks again. I see that your platform has sys/stat.h but it does not
define mode_t as per POSIX. Let's try the attached proposed patch, which
I installed in the development repo. This simplifies the code a bit.

The idea is that we know how gid_t, mode_t and uid_t work on
MS-Windows-like platforms that have <direct.h>: the types are unsigned
short so let's just use that as a convenience (though it puzzles me why
Microsoft doesn't do that for us). On other non-POSIX platforms we can
continue to ask the builder to use something like -Dmode_t=int. (This
would be needed if a mad scientist built tzcode on UNIX System III or
earlier!)