perl5 icon indicating copy to clipboard operation
perl5 copied to clipboard

BBC: Blead Breaks Promise::ES6

Open cjg-cguevara opened this issue 1 year ago • 5 comments

This is a bug report for perl from "Carlos Guevara" [email protected], generated with the help of perlbug 1.43 running under perl 5.39.4.


BBC: Blead Breaks Promise::ES6

Please see http://fast-matrix.cpantesters.org/?dist=Promise::ES6


Flags

  • category=core
  • severity=low

Perl configuration

Site configuration information for perl 5.39.4:

Configured by cpan at Tue Sep 26 14:11:09 EDT 2023.

Summary of my perl5 (revision 5 version 39 subversion 4) configuration:
  Commit id: b5f24b1f49b3a977a4b039f4bf3a593941351661
  Platform:
    osname=linux
    osvers=6.1.55-0-lts
    archname=x86_64-linux
    uname='linux cjg-alpine3 6.1.55-0-lts #1-alpine smp preempt_dynamic sun, 24 sep 2023 23:14:02 +0000 x86_64 linux '
    config_args='-des -Dprefix=/home/cpan/bin/perl -Dscriptdir=/home/cpan/bin/perl/bin -Dusedevel -Duse64bitall'
    hint=recommended
    useposix=true
    d_sigaction=define
    useithreads=undef
    usemultiplicity=undef
    use64bitint=define
    use64bitall=define
    uselongdouble=undef
    usemymalloc=n
    default_inc_excludes_dot=define
  Compiler:
    cc='cc'
    ccflags ='-D_GNU_SOURCE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
    optimize='-O2'
    cppflags='-D_GNU_SOURCE -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong'
    ccversion=''
    gccversion='12.2.1 20220924'
    gccosandvers=''
    intsize=4
    longsize=8
    ptrsize=8
    doublesize=8
    byteorder=12345678
    doublekind=3
    d_longlong=define
    longlongsize=8
    d_longdbl=define
    longdblsize=16
    longdblkind=3
    ivtype='long'
    ivsize=8
    nvtype='double'
    nvsize=8
    Off_t='off_t'
    lseeksize=8
    alignbytes=8
    prototype=define
  Linker and Libraries:
    ld='cc'
    ldflags =' -fstack-protector-strong -L/usr/local/lib'
    libpth=/usr/lib /usr/local/lib /lib
    libs=-lpthread -ldb -ldl -lm -lcrypt -lutil -lc
    perllibs=-lpthread -ldl -lm -lcrypt -lutil -lc
    libc=/usr/lib/libc.a
    so=so
    useshrplib=false
    libperl=libperl.a
    gnulibc_version=''
  Dynamic Linking:
    dlsrc=dl_dlopen.xs
    dlext=so
    d_dlsymun=undef
    ccdlflags='-Wl,-E'
    cccdlflags='-fPIC'
    lddlflags='-shared -O2 -L/usr/local/lib -fstack-protector-strong'


---
@INC for perl 5.39.4:
    /home/cpan/bin/perl/lib/site_perl/5.39.4/x86_64-linux
    /home/cpan/bin/perl/lib/site_perl/5.39.4
    /home/cpan/bin/perl/lib/5.39.4/x86_64-linux
    /home/cpan/bin/perl/lib/5.39.4

---
Environment for perl 5.39.4:
    HOME=/home/cpan
    LANG=C.UTF-8
    LANGUAGE (unset)
    LC_COLLATE=C
    LD_LIBRARY_PATH (unset)
    LOGDIR (unset)
    PATH=/home/cpan/bin/perl/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
    PERL_BADLANG (unset)
    SHELL=/bin/bash

cjg-cguevara avatar Sep 26 '23 18:09 cjg-cguevara

Bisecting with this invocation:

perl Porting/bisect.pl --module=Promise::ES6 \
--start=41d0ddc96a06ae00a2a5d821dd25fba6f7ee0a41 \
--end=b5f24b1f49b3a977a4b039f4bf3a593941351661

... points to 386907f061 as the breaking commit:

386907f061c1812ecaa5f3c88d9f729828408097 is the first bad commit
commit 386907f061c1812ecaa5f3c88d9f729828408097
Author: Tony Cook <[email protected]>
Date:   Thu Sep 14 10:37:42 2023 +1000
Commit:     Tony Cook <[email protected]>
CommitDate: Mon Sep 25 10:24:07 2023 +1000

    Revert "[perl #89544] Non-eval closures don’t need CvOUTSIDE"

@Tonycoz, can you take a look? Thanks.

jkeenan avatar Sep 26 '23 21:09 jkeenan

I haven't looked at it yet, but I have a suspicion as to what's going on, given what was reverted.

I expect it can be fixed by moving a closure to a higher scope, and I'll look at that when I can.

tonycoz avatar Oct 04 '23 22:10 tonycoz

I haven't looked at it yet, but I have a suspicion as to what's going on, given what was reverted.

I expect it can be fixed by moving a closure to a higher scope, and I'll look at that when I can.

@tonycoz can you take a look at this BBC ticket re Promise::ES6? Thanks.

jkeenan avatar Feb 12 '24 01:02 jkeenan

Right now I think the new behaviour is going to be the 5.40 behaviour, I don't see a way to make what Promise::ES6 expects to work, work, and still have eval EXPR in package DB to work as documented.

I've commented on the downstream ticket.

tonycoz avatar Feb 12 '24 03:02 tonycoz

Right now I think the new behaviour is going to be the 5.40 behaviour, I don't see a way to make what Promise::ES6 expects to work, work, and still have eval EXPR in package DB to work as documented.

I've commented on the downstream ticket.

Thanks for looking into this. I recommend that, for tracking purposes, we keep this open until just after 5.40 is released.

jkeenan avatar Feb 12 '24 13:02 jkeenan