Microsoft Visual Studio 2015 release candidate. This bundle contains msvc-14.0 for which `_MSC_VER` has the value 1900.(1) Patches to byterun/floats.c(a)
#if defined (_MSC_VER)# include <float.h># if(MSC_VER < 1900)# define isnan _isnan# define isfinite _finite# endif/*(MSC_VER <= 1900)*/#endif /*defined(_MSC_VER)*/
(b)void caml_init_ieee_floats(void){...#if defined(_MSC_VER) &&_MSC_VER < 1900_set_output_format(_TWO_DIGIT_EXPONENT);#endif/*defined(_MSC_VER) &&_MSC_VER < 1900*/}(2) Patch to byterun/misc.h/* snprintf emulation for Win32 */#if defined(_WIN32) && defined(_MSC_VER) && _MSC_VER < 1900extern int caml_snprintf(char * buf, size_t size, const char * format, ...);# define snprintf caml_snprintf#endif /*defined (_WIN32) && defined (_MSC_VER)&& _MSC_VER < 1900 */(3) Rebuild flexdll objects with msvc-14.0 (in my case I am interested only in the 64-bit variants)cl.exe /nologo /MD -D_CRT_SECURE_NO_DEPRECATE /GS- /DMSVC -c /Fo"flexdll_msvc64.obj" flexdll.ccl.exe /nologo /MD -D_CRT_SECURE_NO_DEPRECATE /GS- /DMSVC -c /Fo"flexdll_initer_msvc64.obj" flexdll_initer.c(4) Patches to config/Makefile.msvc64 (refer http://blogs.msdn.com/b/vcblog/archive/2015/03/03/introducing-the-universal-crt.aspx):EXTRALIBS=legacy_stdio_wide_specifiers.lib legacy_stdio_definitions.lib vcruntime.lib ucrt.lib--(5) Build the systemmake -f Makefile.nt worldmake -f Makefile.nt bootstrapmake -f Makefile.nt optmake -f Makefile.nt opt.optmake -f Makefile.nt installShayne Fletcher