develooper Front page | perl.perl5.porters | Postings from July 2009

[perl #67880] #!perl -CS again

From:
Father Chrysostomos
Date:
July 26, 2009 00:58
Subject:
[perl #67880] #!perl -CS again
Message ID:
rt-3.6.HEAD-2466-1248547603-945.67880-75-0@perl.org
# New Ticket Created by  Father Chrysostomos 
# Please include the string:  [perl #67880]
# in the subject line of all future correspondence about this issue. 
# <URL: http://rt.perl.org/rt3/Ticket/Display.html?id=67880 >


perl 5.10.0 dies if -C occurs on the #! line. This was to avoid the  
problem of the options being present but not doing anything (see  
#34087). But this breaks many existing programs that were relying on  
the kernel to read the first line and pass the switch to perl.

The attached patch changes perl to die only when the #! switch differs  
from the command line switch.

Since this is a 5.10 regression, is there any chance it could make its  
way into 5.10.1?


Father Chrysostomos
---
Flags:
     category=core
     severity=high
---
Site configuration information for perl 5.11.0:

Configured by sprout at Wed Jul 22 08:37:36 PDT 2009.

Summary of my perl5 (revision 5 version 11 subversion 0 patch GitLive- 
blead-1642-gd17935e) configuration:
   Snapshot of: d17935ef1906dca8af46fefa7ac03bfb82e88888
   Platform:
     osname=darwin, osvers=9.7.0, archname=darwin-2level
     uname='darwin pint.local 9.7.0 darwin kernel version 9.7.0: tue  
mar 31 22:52:17 pdt 2009; root:xnu-1228.12.14~1release_i386 i386 '
     config_args='-Dusedevel -de'
     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 -no-cpp-precomp -fno- 
strict-aliasing -pipe -fstack-protector -I/usr/local/include',
     optimize='-O3',
     cppflags='-no-cpp-precomp -fno-common -DPERL_DARWIN -no-cpp- 
precomp -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/ 
include'
     ccversion='', gccversion='4.0.1 (Apple Inc. build 5484)',  
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=/usr/lib/libc.dylib, 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:
     PERL_GIT_UNPUSHED_COMMITS    	/* do not remove this line */
     PERL_GIT_UNCOMMITTED_CHANGES	/* do not remove this line */

---
@INC for perl 5.11.0:
     lib
     /usr/local/lib/perl5/site_perl/5.11.0/darwin-2level
     /usr/local/lib/perl5/site_perl/5.11.0
     /usr/local/lib/perl5/5.11.0/darwin-2level
     /usr/local/lib/perl5/5.11.0
     /usr/local/lib/perl5/site_perl
     .

---
Environment for perl 5.11.0:
     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



nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About