Hello Paul, I did feel like there was something up with restrict causing these issues. Adding #define restrict /* empty */ in private.h helped build everything successfully. So I wonder if you can decouple the new condition to set restrict to empty as it is causing the windows issues. #if PORT_TO_C89 && __STDC_VERSION__ < 199901 && !defined restrict # define restrict /* empty */ #endif We are compiling with nmake from Visual Studio 2017. _MSC_VER is 1912 __STDC_VERSION__ is not defined Regards Manuela Friedrich -----Original Message----- From: Paul Eggert <eggert@cs.ucla.edu> Sent: Dienstag, 20. Dezember 2022 05:31 To: Manuela Friedrich <Manuela.Friedrich@actian.com>; tz@iana.org Cc: Steven Shuriff <Steven.Shuriff@actian.com> Subject: Re: Windows build failures Oh, one more thing. If you compile with /std:c11 or /std:c17, does that fix the problem? If so, perhaps we should just recommend that somewhere. If not, I have some more questions: How about if you instead compile with -DPORT_TO_C89? I am asking these questions because of the following recently-changed code in private.h: #if PORT_TO_C89 && __STDC_VERSION__ < 199901 && !defined restrict # define restrict /* empty */ #endif Perhaps the "#define restrict /* empty */" is needed in your Microsoft-based setup. I have some other questions about your compiler, assuming you don't use any of the above flags: What is the value of __STDC_VERSION__ on your platform? And what is the value of _MSC_VER? Does "#include <stdbool.h>" work? Does "#include <inttypes.h>" work? How about "#include <stdint.h>"? Is there a snprintf function?