B-C
view release on metacpan or search on metacpan
Detect new Encode-2.58 which stores encodings better to handle proper
compile-time usage (#305, RT #94221)
Add special SV associations for $/, $@ and $\ (#306, #256)
Save @ISA for all included packages, esp. DynaLoader dependencies (#308)
Replace each %hash with foreach sort keys (#307)
Set ${^GLOBAL_PHASE} with -O3 for END and DESTRUCT (#197, #208)
Do not store invalid GvCV symbols, only cv or &sv_list entries (#313)
Support GvFORM pseudo CVs (B::FM objects) on 5.10 (#149)
Support local $/ = "somestring" (only used empty values before) (#314),
A regression from 1.43
Support local $\ = "somestring" (#318), also a regression from 1.43
Fix special 5.6. associations for $, $\ as they are no SVs there (#306)
Fix wrong caching of internal LEXWARN symbols (#322)
Warn on bad IO::Socket::SSL versions 1.956-1.983 which would SEGV if used as server (#317)
Support __DATA__ blocks in packages without printing wrong warnings (#310)
Support ->(maybe|next)::(method|can) mro method calls (#324, #301)
Support mro c3 (#316)
Support @- @LAST_MATCH_START, the array of the last submatches (#281, #220, #295)
Workaround a 5.18 de-optimization which disabled ++PL_sv_objcount on bless
by adding it if a DESTROY method exists. This will fail since 5.18 if DESTROY
is added at run-time. (#208, #197)
Add new init0 section to initialize -fppaddr ops before init, not afterwards. (#330)
Needed to call utf8::SWASHINIT at init with CALLREGCOMP and /i
Avoid duplicate PL_utf8_tofold ToCf swash initialization with 5.18 (#330)
* CC (1.15): Skip saving non-existing methods analog to B::C 1.43_06 (CC test 50)
Fix failing CopFILE_free and CopSTASH_free in END blocks with threads (#296, CC test 48)
Handle duplicate function names, like multiple END blocks or anon functions (#297)
Replace each %hash with foreach sort keys (#307)
* Bytecode (1.15): Replace each %hash with foreach keys (#307)
* Bblock (1.04): Do not pollute B::CC (find_leaders) with B::Concise
1.45 2014-02-11 rurban
* t/issue281.t: fix wrong test ($[ vs $])
1.44 2014-02-10 rurban
added adjusted CORE testsuite for 5.14. passes for 5.14.4-nt, not for 5.18.2-nt
(cPanel code_monkeys)
still missing in general are:
- global destruction (use lexicals!),
- attribute handlers,
- compile-time perlio layers
* C: Fix -O3 with ~ and ~~ formatstrings (#277)
Fix SvLEN and PV ptr for empty shared hash keys (#272)
Use the natural @dl_modules boot order, just put attributes to the front (#259)
Store cop_hints to support lexical numeric hints pragmas,
esp. use bytes and use open attributes
(fixes #81 #152 #174 #176 #180 #185 #224 #235 #238 #241 #245 #253 #255 #256 #277)
Skip saving defined(&cv) subs (#96)
Fix format STDOUT/STDERR (#238, #239, #277, #284, #285, #283)
Save now empty bodyless subs if they exist, for signal handlers,
prototypes declarations and cvrefs (#251, #159, #235, #246, #270, #271, #275, #279)
Fix PVMG PV overwriting the RV, overload sub (#273)
* CC (1.14): Skip saving non-existing methods analog to B::C 1.43_06 (CC test 50)
* perlcc (2.17): Accept -A for -DALLOW_PERL_OPTIONS
* t/testc.sh: Accept -A for -DALLOW_PERL_OPTIONS
1.43 2014-01-15 rurban
new 5.16, and partial 5.18, 5.20 and windows support.
Many more fixes and testcases.
Bytecode is still broken on 5.18, esp non-threaded. 5.20 looks pretty good though.
* C: Fix -u<module> without file extension.
With hek do not drop FAKE, only for const pv.
Fixed $$ ($PID) to be dynamic, issue 108. Thanks to flexvault for reporting this.
Fixed double precision to 16 digits. The nbody shootout test passes now.
Fixed refcounts of *ENV, issue 111.
Fixed wrong boot_ arg for the xs version check with --staticxs
Better fix for overwriting of @ARGV <O3, test c_argv:1 and c_allow_opts.t:1
Fixed refinition warnings of XS CONSTSUB. Ignore them as they are
loaded later.
Add $dlmodule::VERSION as 2nd arg to boot_$dlmodule resp. $dlmodule::bootstrap
to get rid of the pesky Invalid version format error in xs_version_bootcheck
if the $VERSION had already version magic attached. (no testcase, hard to repro)
perl 5.16.0 shipped a slightly broken B without cop_stashlen. As workaround
we do not support utf8 stashes nor null bytes in stashes on 5.16.0 threaded.
Fixed Null COP storage for 5.16 and 5.17
Fix amagic_generation which was removed with 5.17
Fix ALLOW_PERL_OPTIONS: add -e behind all processed options, not before
Fixed HvAUX init. Previously only with magic hashes, now on all OOK hashes (OOK+SHAREKEYS)
e.g. %warning::Bits
Added support for new PADLIST type since 5.17.4 (with xpadl_id) and 5.17.6 (without)
$^X returns now the real executable name, not just perl or perl.exe
Adjust COW string lengths to hold the COW_REFCNT byte at the end
Fix unicode string CUR and LEN (#142, #162)
Fix unicode hashkeys (HEK) mostly (#200), but not yet testc.sh 2001 (compile-time
stored utf8 heks)
Save HvTOTALKEYS at run-time as max added to the number of run-time added keys (#178)
Fix UV uvuformat on 32bit -Duse64bitint (#145)
op_pmreplstart is now run-time initialized >= 5.10 (#160)
Fixed special usage of magic vars @-,@+,%+,$-,$! (#90)
Fixed wrong REGEXP length for compiled QR data (#143)
Fixed wrong -O3 comparison of strings to numbers (#138,#141, branch new-cog), unified
PV handling, disabled -fcog replaced by -O3 -fconst-strings
Fixed NUL-byte handling in strings by using B::SV->PV instead of PVX (#237)
Storing now bareword filehandles (#148,#149)
Do not create GvGP at all. This also removes the need for newGP() (Windows/AIX)
use Config does not include B anymore, Internals::V now in __ANON__ package
Fixed handling of empty - not successfully autoloaded - CVs (#235, #159, ...)
by storing the SV and XPVCV but ignoring it and defer to run-time get_cv()
Unify handling of static and dynamic strings, use ptr_undef throughout instead
of NULL vs &PL_sv_undef (save_pv_or_rv => savesym, cur, len, pv, static)
Restore $^H, the numeric value of global warnings flags (#193,#207,#243)
Restore more missing globals: ${^UNICODE} ${^UTF8LOCALE} $; $\ $, $/ $" $|
$^A $^L $: $^H $^R $% $- $= if set in a BEGIN block or via cmdline (#256,#231)
Restore even deprecated vars $] $# $* (#171)
Fix HvAUX memory corruption, accessing HvAUX beyond HE fields, esp. with threaded perls.
Initialize now HvAUX backref and mro_meta fields.
Do not boot internal core XS packages twice, refer to internal XS functions dynamically
and do not link to them. Fixes fix Windows/AIX with strict linking.
Defer dynaloaded GvCV initialization after dl_init()
Fixed storage of non-special lexical warnings (#258 warnsize-i258)
Fixed storage of shared heks, support IsCOW_hek (i.e. method names)
Support new ReANY since 5.17.6 (#258 reg_temp_copy)
Support stash symtab magic for PMf_ONCE m?? and reset (#188)
Fixed POSIX overflow constants warnings for DBL_MAX,DBL_MIN,LONG_MIN,LONG_MAX (#262)
Support user-defined static_ext modules, which are already booted from core.
Add more DynaLoader::dl_debug output (set PERL_DL_DEBUG=1)
Enforce -ffold on an ucfirst op or $INC{'unicore/To/Title.pl'} (#242)
Mark empty but overloaded packages (#172). This is merely workaround for reduced testcases.
Set PadnamelistMAXNAMED(comppad_name) needed since 5.19.3 for eval string (#268)
( run in 0.602 second using v1.01-cache-2.11-cpan-39bf76dae61 )