When I create a gnulib testdir with the an AC_SYS_LARGEFILE_REQUIRED invocation: ./gnulib-tool --create-testdir --dir=... --single-configure largefile-required stat it configures and builds fine on MSVC (both 64-bit and 32-bit). That is OK because the AC_SYS_LARGEFILE[_REQUIRED] macro sets the variables WINDOWS_64_BIT_OFF_T, WINDOWS_64_BIT_ST_SIZE, which are then AC_SUBSTed by the 'stat' module, and the Gnulib code of the 'stat' module uses the value of WINDOWS_64_BIT_ST_SIZE to do the right thing. Also, don't be confused by the 'configure' output that contains: checking for /home/bruno/msvc/compile cl -nologo option to enable large file support... support not detected ... checking for 64-bit off_t... no checking for 64-bit st_size... no This output means that at the Autoconf level, the Unix way of just adding a -D option did not work out. But with Gnulib, large file support *is* enabled. On the other hand, when I create a gnulib testdir with an AC_SYS_YEAR2038_REQUIRED invocation: ./gnulib-tool --create-testdir --dir=... --single-configure year2038-required stat it fails during the configure stage on MSVC (both 64-bit and 32-bit): checking for /home/bruno/msvc/compile cl -nologo option to enable large file support... support not detected configure: error: in `/home/bruno/testdir7/build-msvc32': configure: error: support for large files is required See `config.log' for more details This is wrong, because it is not consistent with the way AC_SYS_LARGEFILE_REQUIRED works. Like AC_SYS_LARGEFILE_REQUIRED, it should allow Gnulib to do the right thing by obeying the variables WINDOWS_64_BIT_OFF_T, WINDOWS_64_BIT_ST_SIZE. Also, maybe it is necessary to distinguish the use of these two Autoconf macros without and with Gnulib? - Without Gnulib, they could both fail on MSVC. - But with Gnulib, they should both succeed on MSVC. Bruno