-
Notifications
You must be signed in to change notification settings - Fork 601
Open
Labels
Description
6fb21d6 (which was part of #23896) breaks unthreaded MSVC builds of perl-5.43.5.
During the compilation of perllib.c I'm getting:
perllib.c(265): error C2055: expected formal parameter list, not a type list
It looks to me that, while the affected code is "C++" for Mingw, the same is not the case for MSVC.
However, I don't know why it's only the unthreaded builds that are affected.
Do we want to make the code "C++" for MSVC, too ? (Is that a viable option ?)
Or do we want to switch to @khwilliamson's original suggestion of specifying PERL_UNUSED_ARG(lpvReserved); ?
Or maybe there's some better way.
My workaround was merely to revert perllib.c to the way it was in perl-5.43.4 - which works fine but, of course, does not silence the targeted warning.
Summary of my perl5 (revision 5 version 43 subversion 5) configuration:
Platform:
osname=MSWin32
osvers=10.0.26100.7171
archname=MSWin32-x64-perlio
uname=''
config_args='undef'
hint=recommended
useposix=true
d_sigaction=undef
useithreads=undef
usemultiplicity=undef
use64bitint=define
use64bitall=undef
uselongdouble=undef
usemymalloc=n
default_inc_excludes_dot=define
Compiler:
cc='cl'
ccflags ='-nologo -GF -W3 -MD -DWIN32 -D_CONSOLE -DNO_STRICT -DWIN64 -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -D_WINSOCK_DEPRECATED_NO_WARNINGS -DPERL_TEXTMODE_SCRIPTS'
optimize='-O1 -Zi -GL -fp:precise'
cppflags='-DWIN32'
ccversion='19.33.31630'
gccversion=''
gccosandvers=''
intsize=4
longsize=4
ptrsize=8
doublesize=8
byteorder=12345678
doublekind=3
d_longlong=undef
longlongsize=8
d_longdbl=define
longdblsize=8
longdblkind=0
ivtype='__int64'
ivsize=8
nvtype='double'
nvsize=8
Off_t='__int64'
lseeksize=8
alignbytes=8
prototype=define
Linker and Libraries:
ld='link'
ldflags ='-nologo -nodefaultlib -debug -opt:ref,icf -ltcg -libpath:"D:\perl-5.43.5-vs\lib\MSWin32-x64-perlio\CORE" -machine:AMD64 -subsystem:console,"5.02"'
libpth="C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.33.31629\\lib\x64" D:\_64\msys_1520_winpos\1.0\local_dyn\lib
libs=oldnames.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib netapi32.lib uuid.lib ws2_32.lib mpr.lib winmm.lib version.lib odbc32.lib odbccp32.lib comctl32.lib msvcrt.lib vcruntime.lib ucrt.lib
perllibs=oldnames.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib netapi32.lib uuid.lib ws2_32.lib mpr.lib winmm.lib version.lib odbc32.lib odbccp32.lib comctl32.lib msvcrt.lib vcruntime.lib ucrt.lib
libc=ucrt.lib
so=dll
useshrplib=true
libperl=perl543.lib
gnulibc_version=''
Dynamic Linking:
dlsrc=dl_win32.xs
dlext=dll
d_dlsymun=undef
ccdlflags=' '
cccdlflags=' '
lddlflags='-dll -nologo -nodefaultlib -debug -opt:ref,icf -ltcg -libpath:"D:\perl-5.43.5-vs\lib\MSWin32-x64-perlio\CORE" -machine:AMD64 -subsystem:console,"5.02"'
Characteristics of this binary (from libperl):
Compile-time options:
HAS_LONG_DOUBLE
HAS_TIMES
HAVE_INTERP_INTERN
PERLIO_LAYERS
PERL_COPY_ON_WRITE
PERL_DONT_CREATE_GVSV
PERL_HASH_FUNC_SIPHASH13
PERL_HASH_USE_SBOX32
PERL_MALLOC_WRAP
PERL_OP_PARENT
PERL_PRESERVE_IVUV
PERL_USE_SAFE_PUTENV
USE_64_BIT_INT
USE_LARGE_FILES
USE_LOCALE
USE_LOCALE_COLLATE
USE_LOCALE_CTYPE
USE_LOCALE_NUMERIC
USE_LOCALE_TIME
USE_PERLIO
USE_PERL_ATOF
Built under MSWin32
Compiled at Nov 21 2025 11:19:17
@INC:
D:/perl-5.43.5-vs/site/lib/MSWin32-x64-perlio
D:/perl-5.43.5-vs/site/lib
D:/perl-5.43.5-vs/lib/MSWin32-x64-perlio
D:/perl-5.43.5-vs/lib