Skip Menu |
Report information
Id: 133125
Status: resolved
Priority: 0/
Queue: perl5

Owner: Nobody
Requestors: bulk88 <bulk88 [at] hotmail.com>
Cc:
AdminCc:

Operating System: (no value)
PatchStatus: (no value)
Severity: low
Type: core
Perl Version: 5.27.9
Fixed In: (no value)

Attachments
0001-133125-revise-DNO_MATHOM-logic-again-in-makedef.pl.patch



To: "perlbug [...] perl.org" <perlbug [...] perl.org>
From: bulk 88 <bulk88 [...] hotmail.com>
Subject: more -DNO_MATHOMS breakage on Win32
Date: Fri, 20 Apr 2018 03:43:14 +0000
Download (untitled) / with headers
text/plain 12.2k
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] This is a 5.28 blocker. Round #2 of https://rt.perl.org/Public/Bug/Display.html?id=133098 . The patch "fix -DNO_MATHOMS build, mathomed syms were not removed from perldll.def" breaks a WITH_MATHOMS (not a define) win32 build. I didn't test on my main machine a WITH_MATHOMS (default) build before submitting the patch but I tested today on another machine and got breakage. ----------------------------------------------- cl -c -nologo -GF -W3 -O1 -MD -Zi -DNDEBUG -GL -DWIN32 -D_CONSOLE -DNO_STRICT -DPERL_TEXTMODE_SCRIPTS -DPERL_HASH_FUNC_ONE_AT_A_TIME -DPERL_DISABLE_PMC -DPERL _IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DWIN32_NO_REGISTRY -DUSE_PERLIO -D_USE_32 BIT_TIME_T -O1 -MD -Zi -DNDEBUG -GL -DVERSION=\"0.97\" -DXS_VERSION=\"0.97\" "-I..\..\lib\CORE" APItest.c APItest.c "..\..\miniperl.exe" "-I..\..\lib" "C:\perl521\srcnew\dist\ExtUtils-ParseXS\lib\ ExtUtils/xsubpp" -typemap C:\perl521\srcnew\lib\ExtUtils\typemap -typemap C:\pe rl521\srcnew\ext\XS-APItest\typemap XSUB-undef-XS_VERSION.xs > XSUB-undef-XS_VE RSION.xsc C:\perl521\srcnew\miniperl.exe "-I..\..\lib" -MExtUtils::Command -e mv -- XSUB-u ndef-XS_VERSION.xsc XSUB-undef-XS_VERSION.c cl -c -nologo -GF -W3 -O1 -MD -Zi -DNDEBUG -GL -DWIN32 -D_CONSOLE -DNO_STRICT -DPERL_TEXTMODE_SCRIPTS -DPERL_HASH_FUNC_ONE_AT_A_TIME -DPERL_DISABLE_PMC -DPERL _IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DWIN32_NO_REGISTRY -DUSE_PERLIO -D_USE_32 BIT_TIME_T -O1 -MD -Zi -DNDEBUG -GL -DVERSION=\"0.97\" -DXS_VERSION=\"0.97\" "-I..\..\lib\CORE" XSUB-undef-XS_VERSION.c XSUB-undef-XS_VERSION.c "..\..\miniperl.exe" "-I..\..\lib" "C:\perl521\srcnew\dist\ExtUtils-ParseXS\lib\ ExtUtils/xsubpp" -typemap C:\perl521\srcnew\lib\ExtUtils\typemap -typemap C:\pe rl521\srcnew\ext\XS-APItest\typemap XSUB-redefined-macros.xs > XSUB-redefined-m acros.xsc C:\perl521\srcnew\miniperl.exe "-I..\..\lib" -MExtUtils::Command -e mv -- XSUB-r edefined-macros.xsc XSUB-redefined-macros.c cl -c -nologo -GF -W3 -O1 -MD -Zi -DNDEBUG -GL -DWIN32 -D_CONSOLE -DNO_STRICT -DPERL_TEXTMODE_SCRIPTS -DPERL_HASH_FUNC_ONE_AT_A_TIME -DPERL_DISABLE_PMC -DPERL _IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DWIN32_NO_REGISTRY -DUSE_PERLIO -D_USE_32 BIT_TIME_T -O1 -MD -Zi -DNDEBUG -GL -DVERSION=\"0.97\" -DXS_VERSION=\"0.97\" "-I..\..\lib\CORE" XSUB-redefined-macros.c XSUB-redefined-macros.c cl -c -nologo -GF -W3 -O1 -MD -Zi -DNDEBUG -GL -DWIN32 -D_CONSOLE -DNO_STRICT -DPERL_TEXTMODE_SCRIPTS -DPERL_HASH_FUNC_ONE_AT_A_TIME -DPERL_DISABLE_PMC -DPERL _IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DWIN32_NO_REGISTRY -DUSE_PERLIO -D_USE_32 BIT_TIME_T -O1 -MD -Zi -DNDEBUG -GL -DVERSION=\"0.97\" -DXS_VERSION=\"0.97\" "-I..\..\lib\CORE" core.c core.c cl -c -nologo -GF -W3 -O1 -MD -Zi -DNDEBUG -GL -DWIN32 -D_CONSOLE -DNO_STRICT -DPERL_TEXTMODE_SCRIPTS -DPERL_HASH_FUNC_ONE_AT_A_TIME -DPERL_DISABLE_PMC -DPERL _IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DWIN32_NO_REGISTRY -DUSE_PERLIO -D_USE_32 BIT_TIME_T -O1 -MD -Zi -DNDEBUG -GL -DVERSION=\"0.97\" -DXS_VERSION=\"0.97\" "-I..\..\lib\CORE" exception.c exception.c cl -c -nologo -GF -W3 -O1 -MD -Zi -DNDEBUG -GL -DWIN32 -D_CONSOLE -DNO_STRICT -DPERL_TEXTMODE_SCRIPTS -DPERL_HASH_FUNC_ONE_AT_A_TIME -DPERL_DISABLE_PMC -DPERL _IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DWIN32_NO_REGISTRY -DUSE_PERLIO -D_USE_32 BIT_TIME_T -O1 -MD -Zi -DNDEBUG -GL -DVERSION=\"0.97\" -DXS_VERSION=\"0.97\" "-I..\..\lib\CORE" notcore.c notcore.c "..\..\miniperl.exe" "-I..\..\lib" -MExtUtils::Mksymlists \ -e "Mksymlists('NAME'=>\"XS::APItest\", 'DLBASE' => 'APItest', 'DL_FUNCS' = Show quoted text
> { }, 'FUNCLIST' => [], 'IMPORTS' => { }, 'DL_VARS' => []);"
link -out:..\..\lib\auto\XS\APItest\APItest.dll -dll -nologo -nodefaultlib -debu g -opt:ref,icf -ltcg -libpath:"c:\perl\lib\CORE" -machine:x86 APItest.obj XSUB-u ndef-XS_VERSION.obj XSUB-redefined-macros.obj core.obj exception.obj notcore.obj "..\..\lib\CORE\perl527.lib" oldnames.lib kernel32.lib user32.lib gdi32.lib w inspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib netapi3 2.lib uuid.lib ws2_32.lib mpr.lib winmm.lib version.lib odbc32.lib odbccp32.lib comctl32.lib msvcrt.lib -def:APItest.def Creating library ..\..\lib\auto\XS\APItest\APItest.lib and object ..\..\lib\a uto\XS\APItest\APItest.exp APItest.obj : error LNK2001: unresolved external symbol __imp__Perl_to_utf8_titl e APItest.obj : error LNK2001: unresolved external symbol __imp__Perl_to_utf8_fold APItest.obj : error LNK2001: unresolved external symbol __imp__Perl_to_utf8_lowe r APItest.obj : error LNK2001: unresolved external symbol __imp__Perl_to_utf8_uppe r ..\..\lib\auto\XS\APItest\APItest.dll : fatal error LNK1120: 4 unresolved extern als makefile:483: recipe for target '..\..\lib\auto\XS\APItest\APItest.dll' failed gmake[1]: *** [..\..\lib\auto\XS\APItest\APItest.dll] Error 1120 gmake[1]: Leaving directory 'C:/perl521/srcnew/ext/XS-APItest' Unsuccessful make(ext/XS-APItest): code=512 at ..\make_ext.pl line 570. GNUmakefile:1578: recipe for target 'Extensions' failed gmake: *** [Extensions] Error 2 -------------------------- These link errors bring up a question of what is a mathom-ed function anyways. The link error I see is because of https://perl5.git.perl.org/perl.git/commitdiff/607313a19740cb756ab98d5e58e6040ea8c125d4 which used mathomed functions by their full name "Perl_to_utf8_title" and not "to_utf8_title" which is redirected to a newer C func by preproc in https://perl5.git.perl.org/perl.git/blob/4273b0cccad37ddd85afb1abe763af2c6a6023a5:/utf8.h#l86 The top of embed.fnc https://perl5.git.perl.org/perl.git/blob/4273b0cccad37ddd85afb1abe763af2c6a6023a5:/embed.fnc#l107 says that "m" symbols are not exported. Docs for "b" are ambiguous https://perl5.git.perl.org/perl.git/blob/4273b0cccad37ddd85afb1abe763af2c6a6023a5:/embed.fnc#l67 Those 4 funcs are "ApbmdD" So "A" for public API (IE exported), "b" for not avail on -DNO_MATHOMS, "m" for macro not a func. I thought I got the permutation right in https://perl5.git.perl.org/perl.git/commitdiff/1545ba5b042c208e23333479730479c0acd55325 "xmi" flags mean not exported. Previous KHW code that I was fixing https://perl5.git.perl.org/perl.git/commitdiff/3f1866a8f6c7a9d70d0c8bb1b4f20d2db63756f1 so what is the definition of "b"? I did a diff of my "fix -DNO_MATHOMS build, mathomed syms were not removed from perldll.def" commit and cooked up this regex of now deleted in WITH_MATHOMS symbols because they all have "m" flag but are also "b". Perl_do_aexec|Perl_do_open|Perl_gv_AVadd|Perl_gv_HVadd|Perl_gv_IOadd|Perl_gv_SVadd|Perl_gv_efullname3|Perl_gv_fetchmethod|Perl_gv_fullname3|Perl_hv_delete|Perl_hv_delete_ent|Perl_hv_exists|Perl_hv_exists_ent|Perl_hv_fetch|Perl_hv_fetch_ent|Perl_hv_iternext|Perl_hv_magic|Perl_hv_store|Perl_hv_store_ent|Perl_hv_store_flags|Perl_instr|Perl_is_utf8_char_buf|Perl_is_utf8_string_loc|Perl_mem_collxfrm|Perl_my_lstat|Perl_my_stat|Perl_newAV|Perl_newHV|Perl_newIO|Perl_newSUB|Perl_ref|Perl_save_freeop|Perl_save_freepv|Perl_save_freesv|Perl_save_mortalizesv|Perl_save_op|Perl_sv_2iv|Perl_sv_2pv|Perl_sv_2pv_nolen|Perl_sv_2pvbyte_nolen|Perl_sv_2pvutf8_nolen|Perl_sv_2uv|Perl_sv_catpvn|Perl_sv_catpvn_mg|Perl_sv_catsv|Perl_sv_catsv_mg|Perl_sv_copypv|Perl_sv_force_normal|Perl_sv_insert|Perl_sv_mortalcopy|Perl_sv_nolocking|Perl_sv_pv|Perl_sv_pvbyte|Perl_sv_pvn_force|Perl_sv_pvutf8|Perl_sv_setsv|Perl_sv_taint|Perl_sv_unref|Perl_sv_usepvn|Perl_sv_usepvn_mg|Perl_sv_utf8_upgrade|Perl_to_utf8_fold|P erl_to_utf8_lower|Perl_to_utf8_title|Perl_to_utf8_upper but grep.metacpan.org doesn't pull up anything unless I narrow the search "to_utf8_title" (design bugs/search limit in seconds) and the more trusty grep.cpan.me is down. So again, I wonder, what is the definition of "b"? Is https://perl5.git.perl.org/perl.git/commitdiff/607313a19740cb756ab98d5e58e6040ea8c125d4 correct and exactly how mathom symbols are supposed to be used in fallback mode and "b" always means exported from binary unless NO_MATHOMS? or does "m" always mean "never exported" regardless of any other build choices and XS-Apitest and any CPAN code is wrong? A decision must be made for 5.28. [Please do not change anything below this line] ----------------------------------------------------------------- --- Flags: category=core severity=low --- Site configuration information for perl 5.27.9: Configured by Administrator at Tue Jan 30 20:34:30 2018. Summary of my perl5 (revision 5 version 27 subversion 9) configuration: Platform: osname=MSWin32 osvers=5.2.3790 archname=MSWin32-x86-multi-thread uname='' config_args='undef' hint=recommended useposix=true d_sigaction=undef useithreads=define usemultiplicity=define use64bitint=undef use64bitall=undef uselongdouble=undef usemymalloc=n default_inc_excludes_dot=define bincompat5005=undef Compiler: cc='cl' ccflags ='-nologo -GF -W3 -O1 -MD -Zi -DNDEBUG -GL -DWIN32 -D_CONSOLE -DNO_STRICT -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -DPERL_TEXTMODE_SCRIPTS -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DWIN32_NO_REGISTRY' optimize='-O1 -MD -Zi -DNDEBUG -GL' cppflags='-DWIN32' ccversion='15.00.30729.01' gccversion='' gccosandvers='' intsize=4 longsize=4 ptrsize=4 doublesize=8 byteorder=1234 doublekind=3 d_longlong=undef longlongsize=8 d_longdbl=define longdblsize=8 longdblkind=0 ivtype='long' ivsize=4 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:"c:\perl\lib\CORE" -machine:x86' libpth="C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\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 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 libc=msvcrt.lib so=dll useshrplib=true libperl=perl527.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:"c:\perl\lib\CORE" -machine:x86' --- @INC for perl 5.27.9: lib C:/p527/srcnew/lib --- Environment for perl 5.27.9: CYGWIN=tty HOME (unset) LANG (unset) LANGUAGE (unset) LD_LIBRARY_PATH=/usr/lib/x86:/usr/X11R6/lib LOGDIR (unset) PATH=C:\WINDOWS\system32;C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\BIN;C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin;C:\Perl\bin;C:\WINDOWS;C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE;C:\Program Files (x86)\Git\bin;C:\sp3220\c\bin; PERL_BADLANG (unset) SHELL (unset)
RT-Send-CC: perl5-porters [...] perl.org
Download (untitled) / with headers
text/plain 581b
On Thu, 19 Apr 2018 20:43:35 -0700, bulk88 wrote: Show quoted text
> 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] > > This is a 5.28 blocker.
If nobody can come with any discussion or design, here is a patch that I think is the right solution and on the conservative side (assume you can use Perl_FOO() funcs freely as if they are public API when I dont think they are). -- bulk88 ~ bulk88 at hotmail.com
Subject: 0001-133125-revise-DNO_MATHOM-logic-again-in-makedef.pl.patch
From fc2890081ff90cf3a8d02927a682fd1341fb9ba0 Mon Sep 17 00:00:00 2001 From: Daniel Dragan <bulk88@hotmail.com> Date: Fri, 20 Apr 2018 10:46:39 -0400 Subject: [PATCH] #133125 revise -DNO_MATHOM logic again in makedef.pl Revision of patch in #133098. There is a problem described in #133125 with XS-APITest using with "Perl_" mathomed C symbols instead of the Perl_-less ones which would get preprocessor redirected to newer C funcs, then link failure of XS-APITest on Win32 because missing symbols. These symbols were missing because they were marked "m" and I thought in commit 1545ba5b04 "m" means no C symbol, ever, but that isn't true. It seems that "b" means must export on a with-mathoms default perl. So put back part of the original code before commit 1545ba5b04 from commit 3f1866a8f6, so that on with mathoms builds all "b"s are exported, but on no mathom builds, all "b"s are removed/not exported. There are some logic holes here for strange or impossible combinations of flags, like flags "Abi" or just "b" without "A", that I wont address here. --- makedef.pl | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/makedef.pl b/makedef.pl index daf6b40..dbd756d 100644 --- a/makedef.pl +++ b/makedef.pl @@ -736,7 +736,8 @@ unless ($define{'USE_QUADMATH'}) { foreach (@$embed) { my ($flags, $retval, $func, @args) = @$_; next unless $func; - if ($flags =~ /[AX]/ && $flags !~ $excludedre) + if (($flags =~ /[AX]/ && $flags !~ $excludedre) + || (!$define{'NO_MATHOMS'} && $flags =~ /b/)) { # public API, so export -- 2.5.0.windows.1
Date: Fri, 20 Apr 2018 10:05:36 -0500
To: Craig Berry via RT <perlbug-followup [...] perl.org>
CC: "Perl5 Porters (E-mail)" <perl5-porters [...] perl.org>
Subject: Re: [perl #133125] more -DNO_MATHOMS breakage on Win32
From: "Craig A. Berry" <craig.a.berry [...] gmail.com>
Download (untitled) / with headers
text/plain 2.1k
On Fri, Apr 20, 2018 at 9:50 AM, bulk88 via RT <perlbug-followup@perl.org> wrote: Show quoted text
> On Thu, 19 Apr 2018 20:43:35 -0700, bulk88 wrote:
>> 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] >> >> This is a 5.28 blocker.
> > If nobody can come with any discussion or design, here is a patch that I think is the right solution and on the conservative side (assume you can use Perl_FOO() funcs freely as if they are public API when I dont think they are).
FWIW, VMS is broken the same way. I'll try to take your patch for a spin later today. Link /Debug/Trace/Map /Shareable=[--.LIB.AUTO.XS.APITEST]PL_XS__APITEST.EXE APItest.opt/Option,[--]perlshr_attr.opt/Option %ILINK-W-NUDFSYMS, 4 undefined symbols: %ILINK-I-UDFSYM, PERL_TO_UTF8_FOLD %ILINK-I-UDFSYM, PERL_TO_UTF8_LOWER %ILINK-I-UDFSYM, PERL_TO_UTF8_TITLE %ILINK-I-UDFSYM, PERL_TO_UTF8_UPPER %ILINK-W-USEUNDEF, undefined symbol PERL_TO_UTF8_LOWER referenced section: $CODE$ offset: %X00000000000FB890 slot: 1 module: APITEST file: D0:[craig.blead.lib.auto.XS.APItest]APITEST.OLB;1 %ILINK-W-USEUNDEF, undefined symbol PERL_TO_UTF8_FOLD referenced section: $CODE$ offset: %X00000000000FE400 slot: 1 module: APITEST file: D0:[craig.blead.lib.auto.XS.APItest]APITEST.OLB;1 %ILINK-W-USEUNDEF, undefined symbol PERL_TO_UTF8_UPPER referenced section: $CODE$ offset: %X0000000000100F40 slot: 1 module: APITEST file: D0:[craig.blead.lib.auto.XS.APItest]APITEST.OLB;1 %ILINK-W-USEUNDEF, undefined symbol PERL_TO_UTF8_TITLE referenced section: $CODE$ offset: %X0000000000103070 slot: 1 module: APITEST file: D0:[craig.blead.lib.auto.XS.APItest]APITEST.OLB;1 %MMK-F-ERRUPD, error status %X1789A0C0 occurred when updating target [--.LIB.AUTO.XS.APITEST]PL_XS__APITEST.EXE %MMK-F-ERRUPD, error status %X1789A0C0 occurred when updating target [--.LIB.AUTO.XS.APITEST]PL_XS__APITEST.EXE
From: "Craig A. Berry" <craig.a.berry [...] gmail.com>
Subject: Re: [perl #133125] more -DNO_MATHOMS breakage on Win32
CC: "Perl5 Porters (E-mail)" <perl5-porters [...] perl.org>
To: Craig Berry via RT <perlbug-followup [...] perl.org>
Date: Fri, 20 Apr 2018 14:42:12 -0500
On Fri, Apr 20, 2018 at 10:05 AM, Craig A. Berry <craig.a.berry@gmail.com> wrote: Show quoted text
> On Fri, Apr 20, 2018 at 9:50 AM, bulk88 via RT > <perlbug-followup@perl.org> wrote:
>> On Thu, 19 Apr 2018 20:43:35 -0700, bulk88 wrote:
>>> 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] >>> >>> This is a 5.28 blocker.
>> >> If nobody can come with any discussion or design, here is a patch that I think is the right solution and on the conservative side (assume you can use Perl_FOO() funcs freely as if they are public API when I dont think they are).
> > FWIW, VMS is broken the same way. I'll try to take your patch for a > spin later today.
bulk88's patch works for me and also seems like the right thing to do. I don't think we can just add an X flag to those symbols in embed.fnc because that would conflict with the m flag that's already there. Since we're in freeze, do I need a pumpking ruling to push this?
To: "Craig A. Berry" <craig.a.berry [...] gmail.com>, Craig Berry via RT <perlbug-followup [...] perl.org>
CC: "Perl5 Porters (E-mail)" <perl5-porters [...] perl.org>
Subject: Re: [perl #133125] more -DNO_MATHOMS breakage on Win32
From: Sawyer X <xsawyerx [...] gmail.com>
Date: Sat, 21 Apr 2018 10:22:10 +0200
Download (untitled) / with headers
text/plain 1.1k
On 04/20/2018 09:42 PM, Craig A. Berry wrote: Show quoted text
> On Fri, Apr 20, 2018 at 10:05 AM, Craig A. Berry > <craig.a.berry@gmail.com> wrote:
>> On Fri, Apr 20, 2018 at 9:50 AM, bulk88 via RT >> <perlbug-followup@perl.org> wrote:
>>> On Thu, 19 Apr 2018 20:43:35 -0700, bulk88 wrote:
>>>> 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] >>>> >>>> This is a 5.28 blocker.
>>> If nobody can come with any discussion or design, here is a patch that I think is the right solution and on the conservative side (assume you can use Perl_FOO() funcs freely as if they are public API when I dont think they are).
>> FWIW, VMS is broken the same way. I'll try to take your patch for a >> spin later today.
> bulk88's patch works for me and also seems like the right thing to do. > I don't think we can just add an X flag to those symbols in embed.fnc > because that would conflict with the m flag that's already there. > Since we're in freeze, do I need a pumpking ruling to push this?
Yes. And you have it. Go for it. Thanks, Craig.
From: "Craig A. Berry" <craig.a.berry [...] gmail.com>
CC: Craig Berry via RT <perlbug-followup [...] perl.org>, "Perl5 Porters (E-mail)" <perl5-porters [...] perl.org>
Subject: Re: [perl #133125] more -DNO_MATHOMS breakage on Win32
To: Sawyer X <xsawyerx [...] gmail.com>
Date: Sat, 21 Apr 2018 08:46:51 -0500
Download (untitled) / with headers
text/plain 1.3k
On Sat, Apr 21, 2018 at 3:22 AM, Sawyer X <xsawyerx@gmail.com> wrote: Show quoted text
> > > On 04/20/2018 09:42 PM, Craig A. Berry wrote:
>> On Fri, Apr 20, 2018 at 10:05 AM, Craig A. Berry >> <craig.a.berry@gmail.com> wrote:
>>> On Fri, Apr 20, 2018 at 9:50 AM, bulk88 via RT >>> <perlbug-followup@perl.org> wrote:
>>>> On Thu, 19 Apr 2018 20:43:35 -0700, bulk88 wrote:
>>>>> 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] >>>>> >>>>> This is a 5.28 blocker.
>>>> If nobody can come with any discussion or design, here is a patch that I think is the right solution and on the conservative side (assume you can use Perl_FOO() funcs freely as if they are public API when I dont think they are).
>>> FWIW, VMS is broken the same way. I'll try to take your patch for a >>> spin later today.
>> bulk88's patch works for me and also seems like the right thing to do. >> I don't think we can just add an X flag to those symbols in embed.fnc >> because that would conflict with the m flag that's already there. >> Since we're in freeze, do I need a pumpking ruling to push this?
> > Yes. And you have it. Go for it.
Thanks. Now done as c41ed02688c7d0eea7fe888ba996b3a9165df529.


This service is sponsored and maintained by Best Practical Solutions and runs on Perl.org infrastructure.

For issues related to this RT instance (aka "perlbug"), please contact perlbug-admin at perl.org