Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Obsolete ?PATTERN? still documented #15956

Closed
p5pRT opened this issue Apr 19, 2017 · 8 comments
Closed

Obsolete ?PATTERN? still documented #15956

p5pRT opened this issue Apr 19, 2017 · 8 comments

Comments

@p5pRT
Copy link

p5pRT commented Apr 19, 2017

Migrated from rt.perl.org#131176 (status was 'resolved')

Searchable as RT131176$

@p5pRT
Copy link
Author

p5pRT commented Apr 19, 2017

From @ikegami

Created by @ikegami

?PATTERN? was removed in 5.22, but it's still documented.

$ perldoc -o term perlop | grep -P 'PATTERN'
  PATTERN in "m/PATTERN/". If "'" is used as the delimiter, no
  "m/PATTERN/msixpodualngc"
  "/PATTERN/msixpodualngc"
  described in "m?PATTERN?" below. If "'" (single quote) is the
  delimiter, no interpolation is performed on the PATTERN. When
  PATTERN may contain variables, which will be interpolated every
  If the PATTERN evaluates to the empty string, the last
  "m?PATTERN?msixpodualngc"
  "?PATTERN?msixpodualngc"
  This is just like the "m/PATTERN/" search, except that it
matches
  In the past, the leading "m" in "m?PATTERN?" was optional, but
  "s/PATTERN/REPLACEMENT/msixpodualngcer"
  done on either the PATTERN or the REPLACEMENT. Otherwise, if the
  PATTERN contains a "$" that looks like a variable rather than an
  replacement text is not evaluated as a command. If the PATTERN
is

$ perl -e'?foo?'
syntax error at -e line 1, near "?"
Execution of -e aborted due to compilation errors.

Perl Info

Flags:
    category=core
    severity=low

Site configuration information for perl 5.24.0:

Configured by ikegami at Wed May 25 21:22:43 PDT 2016.

Summary of my perl5 (revision 5 version 24 subversion 0) configuration:

  Platform:
    osname=linux, osvers=3.2.61-grsec-modsign,
archname=x86_64-linux-thread-multi
    uname='linux springfield 3.2.61-grsec-modsign #1 smp tue aug 12
09:58:26 utc 2014 x86_64 x86_64 x86_64 gnulinux '
    config_args='-de -Dprefix=/home/ikegami/usr/perlbrew/perls/5.24.0t
-DPERL_SUB_DEPTH_WARN=1000 -Dusethreads
-Aeval:scriptdir=/home/ikegami/usr/perlbrew/perls/5.24.0t/bin'
    hint=recommended, useposix=true, d_sigaction=define
    useithreads=define, usemultiplicity=define
    use64bitint=define, use64bitall=define, uselongdouble=undef
    usemymalloc=n, bincompat5005=undef
  Compiler:
    cc='cc', ccflags ='-D_REENTRANT -D_GNU_SOURCE -fwrapv
-fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
    optimize='-O2',
    cppflags='-D_REENTRANT -D_GNU_SOURCE -fwrapv -fno-strict-aliasing -pipe
-fstack-protector -I/usr/local/include'
    ccversion='', gccversion='4.6.3', 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 -L/usr/local/lib'
    libpth=/usr/local/lib /usr/lib/gcc/x86_64-linux-gnu/4.6/include-fixed
/usr/include/x86_64-linux-gnu /usr/lib /lib/x86_64-linux-gnu /lib/../lib
/usr/lib/x86_64-linux-gnu /usr/lib/../lib /lib
    libs=-lpthread -lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc
-lgdbm_compat
    perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc
    libc=libc-2.15.so, so=so, useshrplib=false, libperl=libperl.a
    gnulibc_version='2.15'
  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'



@INC for perl 5.24.0:

/home/ikegami/usr/perlbrew/perls/5.24.0t/lib/site_perl/5.24.0/x86_64-linux-thread-multi
    /home/ikegami/usr/perlbrew/perls/5.24.0t/lib/site_perl/5.24.0

/home/ikegami/usr/perlbrew/perls/5.24.0t/lib/5.24.0/x86_64-linux-thread-multi
    /home/ikegami/usr/perlbrew/perls/5.24.0t/lib/5.24.0
    .


Environment for perl 5.24.0:
    HOME=/home/ikegami
    LANG (unset)
    LANGUAGE (unset)
    LC_ALL=en_CA.utf8
    LC_COLLATE=C
    LD_LIBRARY_PATH=/home/ikegami/lib
    LOGDIR (unset)

PATH=/home/ikegami/usr/perlbrew/bin:/home/ikegami/usr/perlbrew/perls/latest/bin:.:/home/ikegami/bin:/home/ikegami/.gems/bin:/usr/lib/ruby/gems/1.8/bin/:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games
    PERLBREW_BASHRC_VERSION=0.71
    PERLBREW_HOME=/home/ikegami/.perlbrew
    PERLBREW_MANPATH=/home/ikegami/usr/perlbrew/perls/latest/man

PERLBREW_PATH=/home/ikegami/usr/perlbrew/bin:/home/ikegami/usr/perlbrew/perls/latest/bin
    PERLBREW_PERL=latest
    PERLBREW_ROOT=/home/ikegami/usr/perlbrew
    PERLBREW_VERSION=0.71
    PERL_BADLANG (unset)
    SHELL=/bin/bash

@p5pRT
Copy link
Author

p5pRT commented Apr 20, 2017

From @ikegami

perlreref also mentions ?pattern?

On Wed, 19 Apr 2017 09​:33​:41 -0700, ikegami@​adaelis.com wrote​:

This is a bug report for perl from ikegami@​adaelis.com,
generated with the help of perlbug 1.40 running under perl 5.24.0.

-----------------------------------------------------------------
[Please describe your issue here]

?PATTERN? was removed in 5.22, but it's still documented.

$ perldoc -o term perlop | grep -P 'PATTERN'
PATTERN in "m/PATTERN/". If "'" is used as the delimiter,
no
"m/PATTERN/msixpodualngc"
"/PATTERN/msixpodualngc"
described in "m?PATTERN?" below. If "'" (single quote) is
the
delimiter, no interpolation is performed on the PATTERN.
When
PATTERN may contain variables, which will be interpolated
every
If the PATTERN evaluates to the empty string, the last
"m?PATTERN?msixpodualngc"
"?PATTERN?msixpodualngc"
This is just like the "m/PATTERN/" search, except that it
matches
In the past, the leading "m" in "m?PATTERN?" was optional,
but
"s/PATTERN/REPLACEMENT/msixpodualngcer"
done on either the PATTERN or the REPLACEMENT. Otherwise,
if the
PATTERN contains a "$" that looks like a variable rather
than an
replacement text is not evaluated as a command. If the
PATTERN
is

$ perl -e'?foo?'
syntax error at -e line 1, near "?"
Execution of -e aborted due to compilation errors.

[Please do not change anything below this line]
-----------------------------------------------------------------
---
Flags​:
category=core
severity=low
---
Site configuration information for perl 5.24.0​:

Configured by ikegami at Wed May 25 21​:22​:43 PDT 2016.

Summary of my perl5 (revision 5 version 24 subversion 0)
configuration​:

Platform​:
osname=linux, osvers=3.2.61-grsec-modsign,
archname=x86_64-linux-thread-multi
uname='linux springfield 3.2.61-grsec-modsign #1 smp tue aug 12
09​:58​:26 utc 2014 x86_64 x86_64 x86_64 gnulinux '
config_args='-de -Dprefix=/home/ikegami/usr/perlbrew/perls/5.24.0t
-DPERL_SUB_DEPTH_WARN=1000 -Dusethreads
-Aeval​:scriptdir=/home/ikegami/usr/perlbrew/perls/5.24.0t/bin'
hint=recommended, useposix=true, d_sigaction=define
useithreads=define, usemultiplicity=define
use64bitint=define, use64bitall=define, uselongdouble=undef
usemymalloc=n, bincompat5005=undef
Compiler​:
cc='cc', ccflags ='-D_REENTRANT -D_GNU_SOURCE -fwrapv
-fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
optimize='-O2',
cppflags='-D_REENTRANT -D_GNU_SOURCE -fwrapv -fno-strict-aliasing
-pipe
-fstack-protector -I/usr/local/include'
ccversion='', gccversion='4.6.3', 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 -L/usr/local/lib'
libpth=/usr/local/lib /usr/lib/gcc/x86_64-linux-gnu/4.6/include-
fixed
/usr/include/x86_64-linux-gnu /usr/lib /lib/x86_64-linux-gnu
/lib/../lib
/usr/lib/x86_64-linux-gnu /usr/lib/../lib /lib
libs=-lpthread -lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc
-lgdbm_compat
perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc
libc=libc-2.15.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version='2.15'
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'

---
@​INC for perl 5.24.0​:

/home/ikegami/usr/perlbrew/perls/5.24.0t/lib/site_perl/5.24.0/x86_64-
linux-thread-multi
/home/ikegami/usr/perlbrew/perls/5.24.0t/lib/site_perl/5.24.0

/home/ikegami/usr/perlbrew/perls/5.24.0t/lib/5.24.0/x86_64-linux-
thread-multi
/home/ikegami/usr/perlbrew/perls/5.24.0t/lib/5.24.0
.

---
Environment for perl 5.24.0​:
HOME=/home/ikegami
LANG (unset)
LANGUAGE (unset)
LC_ALL=en_CA.utf8
LC_COLLATE=C
LD_LIBRARY_PATH=/home/ikegami/lib
LOGDIR (unset)

PATH=/home/ikegami/usr/perlbrew/bin​:/home/ikegami/usr/perlbrew/perls/latest/bin​:.​:/home/ikegami/bin​:/home/ikegami/.gems/bin​:/usr/lib/ruby/gems/1.8/bin/​:/usr/local/bin​:/usr/bin​:/bin​:/usr/bin/X11​:/usr/games
PERLBREW_BASHRC_VERSION=0.71
PERLBREW_HOME=/home/ikegami/.perlbrew
PERLBREW_MANPATH=/home/ikegami/usr/perlbrew/perls/latest/man

PERLBREW_PATH=/home/ikegami/usr/perlbrew/bin​:/home/ikegami/usr/perlbrew/perls/latest/bin
PERLBREW_PERL=latest
PERLBREW_ROOT=/home/ikegami/usr/perlbrew
PERLBREW_VERSION=0.71
PERL_BADLANG (unset)
SHELL=/bin/bash

@p5pRT
Copy link
Author

p5pRT commented Apr 20, 2017

From @demerphq

We still support m?...?, so the docs just need to have the bare ?? form removed.

Yves

On 20 April 2017 at 05​:52, Eric Brine via RT <perlbug-followup@​perl.org> wrote​:

perlreref also mentions ?pattern?

On Wed, 19 Apr 2017 09​:33​:41 -0700, ikegami@​adaelis.com wrote​:

This is a bug report for perl from ikegami@​adaelis.com,
generated with the help of perlbug 1.40 running under perl 5.24.0.

-----------------------------------------------------------------
[Please describe your issue here]

?PATTERN? was removed in 5.22, but it's still documented.

$ perldoc -o term perlop | grep -P 'PATTERN'
PATTERN in "m/PATTERN/". If "'" is used as the delimiter,
no
"m/PATTERN/msixpodualngc"
"/PATTERN/msixpodualngc"
described in "m?PATTERN?" below. If "'" (single quote) is
the
delimiter, no interpolation is performed on the PATTERN.
When
PATTERN may contain variables, which will be interpolated
every
If the PATTERN evaluates to the empty string, the last
"m?PATTERN?msixpodualngc"
"?PATTERN?msixpodualngc"
This is just like the "m/PATTERN/" search, except that it
matches
In the past, the leading "m" in "m?PATTERN?" was optional,
but
"s/PATTERN/REPLACEMENT/msixpodualngcer"
done on either the PATTERN or the REPLACEMENT. Otherwise,
if the
PATTERN contains a "$" that looks like a variable rather
than an
replacement text is not evaluated as a command. If the
PATTERN
is

$ perl -e'?foo?'
syntax error at -e line 1, near "?"
Execution of -e aborted due to compilation errors.

[Please do not change anything below this line]
-----------------------------------------------------------------
---
Flags​:
category=core
severity=low
---
Site configuration information for perl 5.24.0​:

Configured by ikegami at Wed May 25 21​:22​:43 PDT 2016.

Summary of my perl5 (revision 5 version 24 subversion 0)
configuration​:

Platform​:
osname=linux, osvers=3.2.61-grsec-modsign,
archname=x86_64-linux-thread-multi
uname='linux springfield 3.2.61-grsec-modsign #1 smp tue aug 12
09​:58​:26 utc 2014 x86_64 x86_64 x86_64 gnulinux '
config_args='-de -Dprefix=/home/ikegami/usr/perlbrew/perls/5.24.0t
-DPERL_SUB_DEPTH_WARN=1000 -Dusethreads
-Aeval​:scriptdir=/home/ikegami/usr/perlbrew/perls/5.24.0t/bin'
hint=recommended, useposix=true, d_sigaction=define
useithreads=define, usemultiplicity=define
use64bitint=define, use64bitall=define, uselongdouble=undef
usemymalloc=n, bincompat5005=undef
Compiler​:
cc='cc', ccflags ='-D_REENTRANT -D_GNU_SOURCE -fwrapv
-fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
optimize='-O2',
cppflags='-D_REENTRANT -D_GNU_SOURCE -fwrapv -fno-strict-aliasing
-pipe
-fstack-protector -I/usr/local/include'
ccversion='', gccversion='4.6.3', 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 -L/usr/local/lib'
libpth=/usr/local/lib /usr/lib/gcc/x86_64-linux-gnu/4.6/include-
fixed
/usr/include/x86_64-linux-gnu /usr/lib /lib/x86_64-linux-gnu
/lib/../lib
/usr/lib/x86_64-linux-gnu /usr/lib/../lib /lib
libs=-lpthread -lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc
-lgdbm_compat
perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc
libc=libc-2.15.so, so=so, useshrplib=false, libperl=libperl.a
gnulibc_version='2.15'
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'

---
@​INC for perl 5.24.0​:

/home/ikegami/usr/perlbrew/perls/5.24.0t/lib/site_perl/5.24.0/x86_64-
linux-thread-multi
/home/ikegami/usr/perlbrew/perls/5.24.0t/lib/site_perl/5.24.0

/home/ikegami/usr/perlbrew/perls/5.24.0t/lib/5.24.0/x86_64-linux-
thread-multi
/home/ikegami/usr/perlbrew/perls/5.24.0t/lib/5.24.0
.

---
Environment for perl 5.24.0​:
HOME=/home/ikegami
LANG (unset)
LANGUAGE (unset)
LC_ALL=en_CA.utf8
LC_COLLATE=C
LD_LIBRARY_PATH=/home/ikegami/lib
LOGDIR (unset)

PATH=/home/ikegami/usr/perlbrew/bin​:/home/ikegami/usr/perlbrew/perls/latest/bin​:.​:/home/ikegami/bin​:/home/ikegami/.gems/bin​:/usr/lib/ruby/gems/1.8/bin/​:/usr/local/bin​:/usr/bin​:/bin​:/usr/bin/X11​:/usr/games
PERLBREW_BASHRC_VERSION=0.71
PERLBREW_HOME=/home/ikegami/.perlbrew
PERLBREW_MANPATH=/home/ikegami/usr/perlbrew/perls/latest/man

PERLBREW_PATH=/home/ikegami/usr/perlbrew/bin​:/home/ikegami/usr/perlbrew/perls/latest/bin
PERLBREW_PERL=latest
PERLBREW_ROOT=/home/ikegami/usr/perlbrew
PERLBREW_VERSION=0.71
PERL_BADLANG (unset)
SHELL=/bin/bash

---
via perlbug​: queue​: perl5 status​: new
https://rt-archive.perl.org/perl5/Ticket/Display.html?id=131176

--
perl -Mre=debug -e "/just|another|perl|hacker/"

@p5pRT
Copy link
Author

p5pRT commented Apr 20, 2017

The RT System itself - Status changed from 'new' to 'open'

@p5pRT
Copy link
Author

p5pRT commented Apr 20, 2017

From @khwilliamson

Thanks for reporting this. Should be now fixed by
9c6deb9
--
Karl Williamson

@p5pRT
Copy link
Author

p5pRT commented Apr 20, 2017

@khwilliamson - Status changed from 'open' to 'pending release'

@p5pRT
Copy link
Author

p5pRT commented May 30, 2017

From @khwilliamson

Thank you for filing this report. You have helped make Perl better.

With the release today of Perl 5.26.0, this and 210 other issues have been
resolved.

Perl 5.26.0 may be downloaded via​:
https://metacpan.org/release/XSAWYERX/perl-5.26.0

If you find that the problem persists, feel free to reopen this ticket.

@p5pRT p5pRT closed this as completed May 30, 2017
@p5pRT
Copy link
Author

p5pRT commented May 30, 2017

@khwilliamson - Status changed from 'pending release' to 'resolved'

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant