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

perl -CIO works but equivalent -C3 does not #14748

Closed
p5pRT opened this issue Jun 10, 2015 · 13 comments
Closed

perl -CIO works but equivalent -C3 does not #14748

p5pRT opened this issue Jun 10, 2015 · 13 comments

Comments

@p5pRT
Copy link
Collaborator

@p5pRT p5pRT commented Jun 10, 2015

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

Searchable as RT125381$

@p5pRT
Copy link
Collaborator Author

@p5pRT p5pRT commented Jun 10, 2015

From @wolfsage

Created by wolfsage@gmail.com

Tux found that -C3 stopped working properly in 5.22.0​:

  Tux | $ perl -C3 -E'say "\x{2026}"'
  │%ether
  Tux | Wide character in say at -e line 1.

-CIO still works though.

22ff313 is the commit between 5.21.9 and 5.21.10 that broke it​:

  [perl #123814] replace grok_atou with grok_atoUV

Thanks to Tux, LeoNerd, arc, and Zefram for debugging.

(I'll leave it to Zefram to fill in details if he wishes.)

Perl Info

Flags:
    category=core
    severity=medium

Site configuration information for perl 5.20.1:

Configured by Debian Project at Fri Oct 10 14:16:26 UTC 2014.

Summary of my perl5 (revision 5 version 20 subversion 1) configuration:

  Platform:
    osname=linux, osvers=3.2.0-37-generic,
archname=x86_64-linux-gnu-thread-multi
    uname='linux batsu 3.2.0-37-generic #58-ubuntu smp thu jan 24
15:28:10 utc 2013 x86_64 x86_64 x86_64 gnulinux '
    config_args='-Dusethreads -Duselargefiles -Dccflags=-DDEBIAN
-D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector-strong -Wformat
-Werror=format-security -Dldflags= -Wl,-Bsymbolic-functions
-Wl,-z,relro -Dlddlflags=-shared -Wl,-Bsymbolic-functions -Wl,-z,relro
-Dcccdlflags=-fPIC -Darchname=x86_64-linux-gnu -Dprefix=/usr
-Dprivlib=/usr/share/perl/5.20
-Darchlib=/usr/lib/x86_64-linux-gnu/perl/5.20 -Dvendorprefix=/usr
-Dvendorlib=/usr/share/perl5
-Dvendorarch=/usr/lib/x86_64-linux-gnu/perl5/5.20
-Dsiteprefix=/usr/local -Dsitelib=/usr/local/share/perl/5.20.1
-Dsitearch=/usr/local/lib/x86_64-linux-gnu/perl/5.20.1
-Dman1dir=/usr/share/man/man1 -Dman3dir=/usr/share/man/man3
-Dsiteman1dir=/usr/local/man/man1 -Dsiteman3dir=/usr/local/man/man3
-Duse64bitint -Dman1ext=1 -Dman3ext=3perl
-Dpager=/usr/bin/sensible-pager -Uafs -Ud_csh -Ud_ualarm -Uusesfio
-Uusenm -Ui_libutil -Uversiononly -DDEBUGGING=-g -Doptimize=-O2
-Duseshrplib -Dlibperl=libperl.so.5.20.1 -des'
    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 -DDEBIAN -fwrapv
-fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE
-D_FILE_OFFSET_BITS=64',
    optimize='-O2 -g',
    cppflags='-D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv
-fno-strict-aliasing -pipe -I/usr/local/include'
    ccversion='', gccversion='4.9.1', gccosandvers=''
    intsize=4, longsize=8, ptrsize=8, doublesize=8, byteorder=12345678
    d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16
    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.9/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=-lgdbm -lgdbm_compat -ldb -ldl -lm -lpthread -lc -lcrypt
    perllibs=-ldl -lm -lpthread -lc -lcrypt
    libc=libc-2.19.so, so=so, useshrplib=true, libperl=libperl.so.5.20
    gnulibc_version='2.19'
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E'
    cccdlflags='-fPIC', lddlflags='-shared -L/usr/local/lib -fstack-protector'

Locally applied patches:
    DEBPKG:debian/cpan_definstalldirs - Provide a sensible INSTALLDIRS
default for modules installed from CPAN.
    DEBPKG:debian/db_file_ver - http://bugs.debian.org/340047 Remove
overly restrictive DB_File version check.
    DEBPKG:debian/doc_info - Replace generic man(1) instructions with
Debian-specific information.
    DEBPKG:debian/enc2xs_inc - http://bugs.debian.org/290336 Tweak
enc2xs to follow symlinks and ignore missing @INC directories.
    DEBPKG:debian/errno_ver - http://bugs.debian.org/343351 Remove
Errno version check due to upgrade problems with long-running
processes.
    DEBPKG:debian/libperl_embed_doc - http://bugs.debian.org/186778
Note that libperl-dev package is required for embedded linking
    DEBPKG:fixes/respect_umask - Respect umask during installation
    DEBPKG:debian/writable_site_dirs - Set umask approproately for
site install directories
    DEBPKG:debian/extutils_set_libperl_path - EU:MM: set location of
libperl.a under /usr/lib
    DEBPKG:debian/no_packlist_perllocal - Don't install .packlist or
perllocal.pod for perl or vendor
    DEBPKG:debian/prefix_changes - Fiddle with *PREFIX and variables
written to the makefile
    DEBPKG:debian/fakeroot - Postpone LD_LIBRARY_PATH evaluation to
the binary targets.
    DEBPKG:debian/instmodsh_doc - Debian policy doesn't install
.packlist files for core or vendor.
    DEBPKG:debian/ld_run_path - Remove standard libs from LD_RUN_PATH
as per Debian policy.
    DEBPKG:debian/libnet_config_path - Set location of libnet.cfg to
/etc/perl/Net as /usr may not be writable.
    DEBPKG:debian/mod_paths - Tweak @INC ordering for Debian
    DEBPKG:debian/module_build_man_extensions -
http://bugs.debian.org/479460 Adjust Module::Build manual page
extensions for the Debian Perl policy
    DEBPKG:debian/prune_libs - http://bugs.debian.org/128355 Prune the
list of libraries wanted to what we actually need.
    DEBPKG:fixes/net_smtp_docs - [rt.cpan.org #36038]
http://bugs.debian.org/100195 Document the Net::SMTP 'Port' option
    DEBPKG:debian/perlivp - http://bugs.debian.org/510895 Make perlivp
skip include directories in /usr/local
    DEBPKG:debian/deprecate-with-apt - http://bugs.debian.org/747628
Point users to Debian packages of deprecated core modules
    DEBPKG:debian/squelch-locale-warnings -
http://bugs.debian.org/508764 Squelch locale warnings in Debian
package maintainer scripts
    DEBPKG:debian/skip-upstream-git-tests - Skip tests specific to the
upstream Git repository
    DEBPKG:debian/patchlevel - http://bugs.debian.org/567489 List
packaged patches for 5.20.1-1 in patchlevel.h
    DEBPKG:debian/skip-kfreebsd-crash - http://bugs.debian.org/628493
[perl #96272] Skip a crashing test case in t/op/threads.t on
GNU/kFreeBSD
    DEBPKG:fixes/document_makemaker_ccflags -
http://bugs.debian.org/628522 [rt.cpan.org #68613] Document that
CCFLAGS should include $Config{ccflags}
    DEBPKG:debian/find_html2text - http://bugs.debian.org/640479
Configure CPAN::Distribution with correct name of html2text
    DEBPKG:debian/perl5db-x-terminal-emulator.patch -
http://bugs.debian.org/668490 Invoke x-terminal-emulator rather than
xterm in perl5db.pl
    DEBPKG:debian/cpan-missing-site-dirs -
http://bugs.debian.org/688842 Fix CPAN::FirstTime defaults with
nonexisting site dirs if a parent is writable
    DEBPKG:fixes/memoize_storable_nstore - [rt.cpan.org #77790]
http://bugs.debian.org/587650 Memoize::Storable: respect 'nstore'
option not respected
    DEBPKG:debian/regen-skip - Skip a regeneration check in unrelated
git repositories
    DEBPKG:fixes/regcomp-mips-optim - [perl #122817]
http://bugs.debian.org/754054 Downgrade the optimization of regcomp.c
on mips and mipsel due to a gcc-4.9 bug
    DEBPKG:debian/makemaker-pasthru - http://bugs.debian.org/758471
Pass LD settings through to subdirectories
    DEBPKG:fixes/perldoc-less-R - [rt.cpan.org #98636]
http://bugs.debian.org/758689 Tell the 'less' pager to allow terminal
escape sequences
    DEBPKG:fixes/hurd_test_todo_socket.t - [perl #122657]
http://bugs.debian.org/758718 Disable failing GNU/Hurd test in
t/io/socket.t
    DEBPKG:fixes/pod_man_reproducible_date -
http://bugs.debian.org/759405 Support POD_MAN_DATE in Pod::Man for the
left-hand footer
    DEBPKG:fixes/data_dump_infinite_recurse - [19be3be] don't recurse
infinitely in Data::Dumper


@INC for perl 5.20.1:
    /etc/perl
    /usr/local/lib/x86_64-linux-gnu/perl/5.20.1
    /usr/local/share/perl/5.20.1
    /usr/lib/x86_64-linux-gnu/perl5/5.20
    /usr/share/perl5
    /usr/lib/x86_64-linux-gnu/perl/5.20
    /usr/share/perl/5.20
    /usr/local/lib/site_perl
    .


Environment for perl 5.20.1:
    HOME=/home/mhorsfall
    LANG=en_US.UTF-8
    LANGUAGE=en_US
    LD_LIBRARY_PATH (unset)
    LOGDIR (unset)
    PATH=/home/mhorsfall/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
    PERLDOC=-oman
    PERL_BADLANG (unset)
    SHELL=/bin/bash

@p5pRT
Copy link
Collaborator Author

@p5pRT p5pRT commented Jun 10, 2015

From zefram@fysh.org

The bug introduced by 22ff313 is in Perl_parse_unicode_opts() in
util.c. With the change of calling convention for the number parser, a
separate operation is required to assign the result to the opt variable
from where it will be returned. But the commit erroneously moves this
assignment inside the conditional concerned with having more characters
following the number. It needs to happen conditional only on grok_atoUV
succeeding and the U32 range check.

A side effect of the nature of the bug is that a slight variant of the
-C3 invocation works​:

  $ perl '-C3 ' -E'say "\x{2026}"'

As this is a regression from 5.20, the fix should go into 5.22.1.

-zefram

@p5pRT
Copy link
Collaborator Author

@p5pRT p5pRT commented Jun 10, 2015

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

@p5pRT
Copy link
Collaborator Author

@p5pRT p5pRT commented Jun 10, 2015

From @rjbs

* Zefram <zefram@​fysh.org> [2015-06-10T12​:16​:53]

As this is a regression from 5.20, the fix should go into 5.22.1.

+1

--
rjbs

@p5pRT
Copy link
Collaborator Author

@p5pRT p5pRT commented Jun 10, 2015

From @hvds

I'll look at this tomorrow. From the information given, it sounds like it shouldn't be hard to fix.

Hugo

@p5pRT
Copy link
Collaborator Author

@p5pRT p5pRT commented Jun 11, 2015

From @hvds

Should be fixed now by 89d84ff, apologies for the bug​:

  [perl #125381] fix -Cnn parsing
 
  Commit 22ff313 for [perl #123814] inadvertently changed the logic when
  parsing a numeric parameter to the -C option, such that the successfully
  parsed number was not saved as the option value if it parsed to the end
  of the argument.

I'm not particularly familiar with the -Cx options, someone more familiar may wish to check t/run/switchC.t to see if test coverage needs further improvement.

Assuming this smokes ok I believe it should be good to cherry-pick for 5.22.

Hugo

@p5pRT
Copy link
Collaborator Author

@p5pRT p5pRT commented Jun 11, 2015

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

@p5pRT
Copy link
Collaborator Author

@p5pRT p5pRT commented Nov 25, 2015

From jvoeckler@sdl.com

Created by jvoeckler@sdl.com

I frequently use perl to investigate Unicode code points from the astral
planes. In order to avoid warnings, I am using the -C runtime option. In
version 5.22.0 the numerical arguments are no longer accepted, but the
symbolic arguments still work​:

$ /opt/perl-5.22.0/bin/perl -C7 -le 'print chr(0x1F340)'
Wide character in print at -e line 1.
...

$ /opt/perl-5.22.0/bin/perl -CS -le 'print chr(0x1F340)'
...

Please restore the numerical arguments to the -C option. It works fine
in version 5.20.2​:

$ /opt/perl-5.20.2/bin/perl -C7 -le 'print chr(0x1F340)'
...

Perl Info

Flags:
    category=core
    severity=medium

Site configuration information for perl 5.22.0:

Configured by jvoeckler at Wed Nov 25 08:42:57 PST 2015.

Summary of my perl5 (revision 5 version 22 subversion 0) configuration:
   
  Platform:
    osname=darwin, osvers=15.0.0, archname=darwin-thread-multi-2level
    uname='darwin saidin.local 15.0.0 darwin kernel version 15.0.0: sat sep 19 15:53:46 pdt 2015; root:xnu-3247.10.11~1release_x86_64 x86_64 '
    config_args='-de -Accflags=-g -pipe -arch x86_64 -arch i686 -nostdinc -B/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include/gcc -B/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/lib/gcc -isystem/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include -F/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/System/Library/Frameworks -I/Library/Developer/CommandLineTools/usr/lib/clang/7.0.0/include -Aldflags=-arch x86_64 -arch i686 -Wl,-syslibroot,/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk -fstack-protector -Uloclibpth -Dlibpth=/usr/lib -Duseshrplib -Dman3ext=3pm -Duseperlio -Duseithreads -Dcc=cc -Dld=cc -mmacosx-version-min=10.11 -Dprefix=/opt/perl-5.22.0'
    hint=previous, useposix=true, d_sigaction=define
    useithreads=define, usemultiplicity=define
    use64bitint=define, use64bitall=define, uselongdouble=undef
    usemymalloc=n, bincompat5005=undef
  Compiler:
    cc='cc', ccflags ='-fno-common -DPERL_DARWIN -no-cpp-precomp -g -pipe -arch x86_64 -arch i686 -nostdinc -B/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include/gcc -B/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/lib/gcc -isystem/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include -F/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/System/Library/Frameworks -I/Library/Developer/CommandLineTools/usr/lib/clang/7.0.0/include -fno-strict-aliasing -fstack-protector-strong -I/usr/local/include -g -pipe -arch x86_64 -arch i686 -nostdinc -B/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include/gcc -B/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/lib/gcc -i
 system/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include -F/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/System/Library/Frameworks -I/Library/Developer/CommandLineTools/usr/lib/clang/7.0.0/include',
    optimize='-O3',
    cppflags='-no-cpp-precomp -fno-common -DPERL_DARWIN -no-cpp-precomp -g -pipe -arch x86_64 -nostdinc -B/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include/gcc -B/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/lib/gcc -isystem/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include -F/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/System/Library/Frameworks -I/Library/Developer/CommandLineTools/usr/lib/clang/7.0.0/include -fno-strict-aliasing -fstack-protector-strong -I/usr/local/include -fno-common -DPERL_DARWIN -no-cpp-precomp -g -pipe -arch x86_64 -nostdinc -B/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include/gcc -B/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/Mac
 OSX10.11.sdk/usr/lib/gcc -isystem/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include -F/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/System/Library/Frameworks -I/Library/Developer/CommandLineTools/usr/lib/clang/7.0.0/include -fno-strict-aliasing -fstack-protector-strong -I/usr/local/include -g -pipe -arch x86_64 -nostdinc -B/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include/gcc -B/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/lib/gcc -isystem/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include -F/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/System/Library/Frameworks -I/Library/Developer/CommandLineTools/usr/lib/clang/7.0.0/include'
    ccversion='', gccversion='4.2.1 Compatible Apple LLVM 7.0.0 (clang-700.1.76)', 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='env MACOSX_DEPLOYMENT_TARGET=10.3 cc -mmacosx-version-min=10.10', ldflags =' -arch x86_64 -arch i686 -Wl,-syslibroot,/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk -fstack-protector -fstack-protector-strong -arch x86_64 -arch i686 -Wl,-syslibroot,/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk -fstack-protector'
    libpth=/usr/lib /usr/local/lib /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/7.0.0/lib /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib /usr/lib /usr/local/lib /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/7.0.0/lib /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib /usr/lib
    libs=-lpthread -ldbm -ldl -lm -lutil -lc
    perllibs=-lpthread -ldl -lm -lutil -lc
    libc=, so=dylib, useshrplib=true, libperl=libperl.dylib
    gnulibc_version=''
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=bundle, d_dlsymun=undef, ccdlflags=' '
    cccdlflags=' ', lddlflags=' -bundle -undefined dynamic_lookup -fstack-protector-strong'



@INC for perl 5.22.0:
    /Users/jvoeckler/lib/perl5
    /fink/lib/perl5/darwin-thread-multi-2level
    /fink/lib/perl5
    /fink/lib/perl5/darwin
    /opt/perl-5.22.0/lib/site_perl/5.22.0/darwin-thread-multi-2level
    /opt/perl-5.22.0/lib/site_perl/5.22.0
    /opt/perl-5.22.0/lib/5.22.0/darwin-thread-multi-2level
    /opt/perl-5.22.0/lib/5.22.0
    .


Environment for perl 5.22.0:
    DYLD_LIBRARY_PATH (unset)
    HOME=/Users/jvoeckler
    LANG=en_US.UTF-8
    LANGUAGE (unset)
    LD_LIBRARY_PATH (unset)
    LOGDIR (unset)
    PATH=/Users/jvoeckler/bin:/opt/perl-5.20.2/bin:/fink/bin:/fink/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/Library/TeX/texbin:/usr/local/hadoop/bin:/opt/ant/bin:/usr/local/groovy/bin:/usr/local/scala/bin
    PERL5LIB=/Users/jvoeckler/lib/perl5:/fink/lib/perl5:/fink/lib/perl5/darwin
    PERL_BADLANG (unset)
    SHELL=/bin/bash

@p5pRT
Copy link
Collaborator Author

@p5pRT p5pRT commented Nov 25, 2015

From @tonycoz

On Wed Nov 25 09​:23​:09 2015, jvoeckler@​sdl.com wrote​:

I frequently use perl to investigate Unicode code points from the
astral
planes. In order to avoid warnings, I am using the -C runtime option.
In
version 5.22.0 the numerical arguments are no longer accepted, but the
symbolic arguments still work​:

$ /opt/perl-5.22.0/bin/perl -C7 -le 'print chr(0x1F340)'
Wide character in print at -e line 1.
...

$ /opt/perl-5.22.0/bin/perl -CS -le 'print chr(0x1F340)'
...

Please restore the numerical arguments to the -C option. It works fine
in version 5.20.2​:

$ /opt/perl-5.20.2/bin/perl -C7 -le 'print chr(0x1F340)'
...

This is a duplicate of 125381, which was fixed in blead in 89d84ff and is was backported to 80a44cc in maint-5.22, so it will be fixed in 5.22.1.

Thanks for the report.

Tony

@p5pRT
Copy link
Collaborator Author

@p5pRT p5pRT commented Nov 25, 2015

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

@p5pRT
Copy link
Collaborator Author

@p5pRT p5pRT commented Nov 27, 2015

From zefram@fysh.org

via RT wrote​:

   In order to avoid warnings\,

The option actually changes behaviour; it doesn't just turn off warnings.
You can see an obvious difference if you print "\x{ca}" or somesuch.

                               I am using the \-C runtime option\. In

version 5.22.0 the numerical arguments are no longer accepted,

This does seem to be an unintentional breakage. It changed between
5.21.9 and 5.21.10​:

  commit 22ff313
  Author​: Hugo van der Sanden <hv@​crypt.org>
  Date​: Mon Feb 23 16​:48​:15 2015 +0000

  [perl #123814] replace grok_atou with grok_atoUV

As this is a regression from 5.20, the fix should be a candidate for
5.22.N.

-zefram

@p5pRT
Copy link
Collaborator Author

@p5pRT p5pRT commented Nov 27, 2015

From @steve-m-hay

On Fri Nov 27 08​:52​:08 2015, zefram@​fysh.org wrote​:

As this is a regression from 5.20, the fix should be a candidate for
5.22.N.

As Tony already noted, this is already backported to maint-5.22, so will be in 5.22.1 (to be released very soon!).

@p5pRT p5pRT closed this Jan 10, 2016
@p5pRT
Copy link
Collaborator Author

@p5pRT p5pRT commented Jan 10, 2016

@mauke - 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
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
1 participant
You can’t perform that action at this time.