On 8 March 2018 at 15:57, bulk88 <perlbug-followup@perl.org> wrote: > # New Ticket Created by bulk88 > # Please include the string: [perl #132955] > # in the subject line of all future correspondence about this issue. > # <URL: https://rt.perl.org/Ticket/Display.html?id=132955 > > > > This is a bug report for perl from bulk88@hotmail.com, > generated with the help of perlbug 1.41 running under perl 5.27.9. > > > ----------------------------------------------------------------- > [Please describe your issue here] > > 5.26 (maint-5.26) and 5.27 blead both fail with Win32 VC perl compiled > with USE_CPLUSPLUS=define build option. Solution need backporting to 5.26. > > -------------------------------------- > cl -c -nologo -GF -W3 -TP -EHsc -O1 -MD -Zi -DNDEBUG -GL > -DWIN32 -D_CO > NSOLE -DNO_STRICT -DPERL_TEXTMODE_SCRIPTS -DPERL_IMPLICIT_CONTEXT > -DPERL_IMPLICI > T_SYS -DWIN32_NO_REGISTRY -D_USE_32BIT_TIME_T -O1 -MD -Zi -DNDEBUG -GL > -DVERS > ION=\"1.76\" -DXS_VERSION=\"1.76\" "-I..\..\lib\CORE" POSIX.c > POSIX.c > "..\..\miniperl.exe" "-I..\..\lib" -MExtUtils::Mksymlists \ > -e "Mksymlists('NAME'=>\"POSIX\", 'DLBASE' => 'POSIX', 'DL_FUNCS' > => { }, > 'FUNCLIST' => [], 'IMPORTS' => { }, 'DL_VARS' => []);" > link -out:..\..\lib\auto\POSIX\POSIX.dll -dll -nologo -nodefaultlib > -debug -opt: > ref,icf -ltcg -libpath:"c:\perl\lib\CORE" > -machine:x86 POS > IX.obj "..\..\lib\CORE\perl526.lib" oldnames.lib kernel32.lib > user32.lib gdi32 > .lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib > oleaut32.lib n > etapi32.lib uuid.lib ws2_32.lib mpr.lib winmm.lib version.lib odbc32.lib > odbccp3 > 2.lib comctl32.lib msvcrt.lib -def:POSIX.def > Creating library ..\..\lib\auto\POSIX\POSIX.lib and object > ..\..\lib\auto\POS > IX\POSIX.exp > POSIX.obj : error LNK2001: unresolved external symbol _PL_nan > ..\..\lib\auto\POSIX\POSIX.dll : fatal error LNK1120: 1 unresolved externals > dmake: Error code 224, while making '..\..\lib\auto\POSIX\POSIX.dll' I also see this with VC10 and VC12. With VC14 and VC141 I the build fails earlier with a problem in vutil.c: cl -c -nologo -GF -W3 -TP -EHsc -I..\lib\CORE -I.\include -I. -I.. -DWIN32 -D_CONSOLE -DNO_STRICT -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -D_WINSOCK_DEPRECATED_NO_WARNINGS -DPERLDLL -DPERL_CORE -O1 -MD -Zi -DNDEBUG -GL -DPERL_EXTERNAL_GLOB -DPERL_IS_MINIPERL -Fo.\mini\util.obj ..\util.c util.c c:\dev\git\perl\vutil.c(696): error C3688: invalid literal suffix 'NVff'; literal operator or literal operator template 'operator ""NVff' not found c:\dev\git\perl\vutil.c(696): error C2664: 'void Perl_sv_catpvf(SV *const ,const char *const ,...)': cannot convert argument 2 from 'NV' to 'const char *const ' c:\dev\git\perl\vutil.c(701): error C3688: invalid literal suffix 'NVff'; literal operator or literal operator template 'operator ""NVff' not found c:\dev\git\perl\vutil.c(701): error C2664: 'int Perl_my_snprintf(char *,const std::size_t,const char *,...)': cannot convert argument 3 from 'NV' to 'const char *' c:\dev\git\perl\vutil.c(992): error C3688: invalid literal suffix 'IVdf'; literal operator or literal operator template 'operator ""IVdf' not found c:\dev\git\perl\vutil.c(996): error C3688: invalid literal suffix 'IVdf'; literal operator or literal operator template 'operator ""IVdf' not found c:\dev\git\perl\vutil.c(996): error C2664: 'void Perl_sv_catpvf(SV *const ,const char *const ,...)': cannot convert argument 2 from 'IV' to 'const char *const ' c:\dev\git\perl\vutil.c(996): note: Conversion from integral type to pointer type requires reinterpret_cast, C-style cast or function-style cast NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 14.0 \VC\BIN\cl.EXE"' : return code '0x2' Stop. (All these versions of VC work fine without USE_CPLUSPLUS=define.)Thread Previous | Thread Next