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

Owner: Nobody
Requestors: sprout <sprout [at] cpan.org>
Cc:
AdminCc:

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



Subject: Inconsistent treatment of nulls and newlines in <...>
Date: Sun, 14 Oct 2012 13:09:27 -0700
To: perlbug [...] perl.org
From: Father Chrysostomos <sprout [...] cpan.org>
Download (untitled) / with headers
text/plain 2.7k
This one fails: eval "<\n>; 1" or print $@; This one succeeds in perl, but not miniperl (because miniperl calls sh, which doesn’t like the null): eval "<\0\n>; 1" or print $@; This one fails (it has to be in a sring eval to work): perl -e 'print "<\0\n>"' | perl -MO=Deparse --- Flags: category=core severity=low --- Site configuration information for perl 5.17.5: Configured by sprout at Sat Sep 22 18:51:23 PDT 2012. Summary of my perl5 (revision 5 version 17 subversion 5) configuration: Snapshot of: 451f421fe4742646fa2efbed0f45a19f0713d00f Platform: osname=darwin, osvers=10.5.0, archname=darwin-2level uname='darwin pint.local 10.5.0 darwin kernel version 10.5.0: fri nov 5 23:20:39 pdt 2010; root:xnu-1504.9.17~1release_i386 i386 ' config_args='-de -Dusedevel -DDEBUGGING' hint=recommended, useposix=true, d_sigaction=define useithreads=undef, usemultiplicity=undef useperlio=define, d_sfio=undef, uselargefiles=define, usesocks=undef use64bitint=undef, use64bitall=undef, uselongdouble=undef usemymalloc=n, bincompat5005=undef Compiler: cc='cc', ccflags ='-fno-common -DPERL_DARWIN -DDEBUGGING -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include', optimize='-O3 -g', cppflags='-fno-common -DPERL_DARWIN -DDEBUGGING -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include' ccversion='', gccversion='4.2.1 (Apple Inc. build 5664)', gccosandvers='' intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16 ivtype='long', ivsize=4, 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', ldflags =' -fstack-protector -L/usr/local/lib' libpth=/usr/local/lib /usr/lib libs=-ldbm -ldl -lm -lutil -lc perllibs=-ldl -lm -lutil -lc libc=, so=dylib, useshrplib=false, libperl=libperl.a gnulibc_version='' Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=bundle, d_dlsymun=undef, ccdlflags=' ' cccdlflags=' ', lddlflags=' -bundle -undefined dynamic_lookup -L/usr/local/lib -fstack-protector' Locally applied patches: --- @INC for perl 5.17.5: /usr/local/lib/perl5/site_perl/5.17.5/darwin-2level /usr/local/lib/perl5/site_perl/5.17.5 /usr/local/lib/perl5/5.17.5/darwin-2level /usr/local/lib/perl5/5.17.5 /usr/local/lib/perl5/site_perl . --- Environment for perl 5.17.5: DYLD_LIBRARY_PATH (unset) HOME=/Users/sprout LANG=en_US.UTF-8 LANGUAGE (unset) LD_LIBRARY_PATH (unset) LOGDIR (unset) PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/usr/local/bin PERL_BADLANG (unset) SHELL=/bin/bash
RT-Send-CC: perl5-porters [...] perl.org
Download (untitled) / with headers
text/plain 238b
On Sun Oct 14 13:09:47 2012, sprout wrote: Show quoted text
> > This one fails: > > eval "<\n>; 1" or print $@;
Is this the failure you are referring to: ##### $ perl -E 'eval "<\n>; 1" or print $@;' Unterminated <> operator at (eval 1) line 1. #####
Subject: Re: [perl #115252] Inconsistent treatment of nulls and newlines in <...>
Date: Sun, 14 Oct 2012 17:59:02 -0700
To: perlbug-followup [...] perl.org
From: Father Chrysostomos <sprout [...] cpan.org>
Download (untitled) / with headers
text/plain 400b
On Oct 14, 2012, at 5:54 PM, James E Keenan via RT wrote: Show quoted text
> On Sun Oct 14 13:09:47 2012, sprout wrote:
>> >> This one fails: >> >> eval "<\n>; 1" or print $@;
> > Is this the failure you are referring to: > > ##### > $ perl -E 'eval "<\n>; 1" or print $@;' > Unterminated <> operator at (eval 1) line 1. > ##### >
Yes, but you can sneak past it with a null, *if* it is inside a string eval.
From: Zefram <zefram [...] fysh.org>
Subject: Re: [perl #115252] Inconsistent treatment of nulls and newlines in <...>
To: perl5-porters [...] perl.org
Date: Fri, 15 Dec 2017 07:45:25 +0000
Download (untitled) / with headers
text/plain 231b
Leaving aside miniperl, which doesn't matter, the inconsistency in "<\0\n>" was recently resolved by commit 85bb8b90c60f216f831d25542414634aa17a32fc "toke.c: Convert some strchr to memchr". This ticket can now be closed. -zefram


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