This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Zefram [Sun, 15 Aug 2010 20:36:11 +0000 (21:36 +0100)]
add lex_stuff_pvs()
New macro lex_stuff_pvs(), wrapping lex_stuff_pvn() for literal strings.
Florian Ragwitz [Sat, 21 Aug 2010 08:27:28 +0000 (10:27 +0200)]
Stop installing manpages for XS::APItest*
We don't install the modules anyway, so there's no need to have confusing docs
installed for them.
Ben Morrow [Sat, 14 Aug 2010 01:07:09 +0000 (02:07 +0100)]
Remove CALL_FPTR and CPERLscope.
These are left from PERL_OBJECT, which was an implementation of
multiplicity using C++ objects. PERL_OBJECT was removed in 5.8, but the
macros seem to have been cargo-culted all over the core (including in
places where they would have been inappropriate originally). Since they
now do exactly nothing, it's cleaner to remove them.
I have left the definitions in perl.h, under #ifndef PERL_CORE, since
some CPAN XS code uses them (also often incorrectly). I have also left
STATIC alone, since it seems potentially more useful and is much more
ingrained.
The only appearance of these macros this patch doesn't touch is in
Devel-PPPort, because that's a CPAN module.
Ben Morrow [Fri, 20 Aug 2010 17:35:58 +0000 (18:35 +0100)]
Fix my $x = 3; $x = length(undef);.
Assignment of length() to a lexical is optimized by passing the
assigned-to variable as TARG, avoiding a pp_padsv and pp_sassign.
9f621b which changed length(undef) to return undef didn't take this into
account, and used SETs (which doesn't set TARG), so the code above left
$x == 3.
Nicholas Clark [Fri, 20 Aug 2010 19:44:39 +0000 (20:44 +0100)]
Move the declaration for more_bodies outside of an #if defined(PERL_IN_SV_C)
It used to be a static function, hence the location, and I failed to spot that
I needed to move it, when I edited it to be non-static.
Problem spotted by Jerry D. Hedden.
Nicholas Clark [Fri, 20 Aug 2010 19:22:45 +0000 (21:22 +0200)]
while_readdir.t needs a private directory to run in.
It assumes that it can read the contents twice and get the same result.
It's running in parallel with tests which do sometimes write in t/ so if it
runs at that level, it will sometimes fail due to race conditions.
Nicholas Clark [Fri, 20 Aug 2010 16:05:12 +0000 (17:05 +0100)]
In sv.c, tidy up body allocation code.
Move the definition of del_body() closer to where it is used.
Inline del_body_allocated() into its only remaining user, del_XPVGV().
Coalesce adjacent C comments.
Nicholas Clark [Fri, 20 Aug 2010 14:54:28 +0000 (15:54 +0100)]
Inline S_get_arena() into Perl_more_bodies(), its only caller.
Nicholas Clark [Fri, 20 Aug 2010 14:31:42 +0000 (15:31 +0100)]
Expose more_bodies(), and use it to replace S_more_he().
Convert get_arena() to be static, as now its only user is Perl_more_bodies().
Perl_get_arena() was not in the public API, and neither Google codesearch
nor an upacked CPAN show anything to be using it.
Nicholas Clark [Fri, 20 Aug 2010 13:14:34 +0000 (14:14 +0100)]
In sv.c, pass in values to S_more_bodies, instead of using bodies_by_type.
Also fix one value passed to the debugging *_printf() in the #else block.
Nicholas Clark [Fri, 20 Aug 2010 10:25:50 +0000 (11:25 +0100)]
Refactor the loop of S_more_bodies() to be (hopefully) clearer.
Nicholas Clark [Fri, 20 Aug 2010 09:44:40 +0000 (10:44 +0100)]
Correct the size calculations for FIT_ARENA for SVt_REGEXP.
This should have been done as part of commit
601dfd0af0604fa7. Its omission
did not cause bugs; it merely resulted in slightly less effective arena sizing.
Florian Ragwitz [Fri, 20 Aug 2010 16:30:54 +0000 (18:30 +0200)]
Bump the version of Module-CoreList in Maintainers.pl
Abigail [Fri, 20 Aug 2010 16:23:21 +0000 (18:23 +0200)]
Mention Florian under THE KEEPERS OF THE PUMPKIN
Florian Ragwitz [Wed, 18 Aug 2010 02:17:01 +0000 (04:17 +0200)]
update TOC and perldelta references
Florian Ragwitz [Wed, 18 Aug 2010 02:08:09 +0000 (04:08 +0200)]
retitle perl5134delta.pod
Florian Ragwitz [Wed, 18 Aug 2010 02:13:35 +0000 (04:13 +0200)]
create perl5135delta.pod
Florian Ragwitz [Mon, 16 Aug 2010 22:00:36 +0000 (00:00 +0200)]
Add 5.13.4 epigraph
Florian Ragwitz [Fri, 20 Aug 2010 04:13:06 +0000 (06:13 +0200)]
Disable regeneration of regcharclass.h on win32
There's really no need to do this on the user side, as regcharclass.h is a real
file in the repository. Having this rule, while maybe handy for regexp
developers working on win32, otherwise only causes trouble if regcharclass.pl
changes in a way that doesn't require regcharclass.h to change.
Florian Ragwitz [Tue, 17 Aug 2010 02:02:41 +0000 (04:02 +0200)]
Add 5.13.4 to perlhist
Florian Ragwitz [Wed, 18 Aug 2010 22:49:00 +0000 (00:49 +0200)]
Update Module::Corelist for 5.13.4
Florian Ragwitz [Tue, 17 Aug 2010 01:15:27 +0000 (03:15 +0200)]
Update Changes for 5.13.4
Florian Ragwitz [Tue, 17 Aug 2010 01:15:07 +0000 (03:15 +0200)]
Bump the perl version to 5.13.4
Florian Ragwitz [Fri, 20 Aug 2010 01:53:52 +0000 (03:53 +0200)]
Improve perldelta formatting
Florian Ragwitz [Wed, 18 Aug 2010 02:33:11 +0000 (04:33 +0200)]
Finish up perl5134delta
Jan Dubois [Fri, 20 Aug 2010 01:43:59 +0000 (18:43 -0700)]
Fix stack corruption by unsupported filetests
Commit
c410dd6ad7 indiscriminately pops elements from the stack
even when nothing has been pushed: file tests without arguments
(testing $_) and stacked filetests don't have anything on the
stack that needs to be removed.
The general idea is that we need to have the same side effects
as if we had called my_stat_flags(), so we shall only call POPs
under the same conditions as the code in my_stat_flags().
Florian Ragwitz [Fri, 20 Aug 2010 01:30:41 +0000 (03:30 +0200)]
We break Switch
Florian Ragwitz [Thu, 19 Aug 2010 23:54:16 +0000 (01:54 +0200)]
HTML::Parser is fixed already
Florian Ragwitz [Thu, 19 Aug 2010 23:47:55 +0000 (01:47 +0200)]
perldelta t/re/overload.t
Florian Ragwitz [Thu, 19 Aug 2010 23:46:19 +0000 (01:46 +0200)]
Add t/re/overload.t to MANIFEST
Florian Ragwitz [Thu, 19 Aug 2010 21:24:24 +0000 (23:24 +0200)]
*.t and test.pl don't need to be executable
Florian Ragwitz [Thu, 19 Aug 2010 21:23:29 +0000 (23:23 +0200)]
Test for +x bits for all the files in exec-bit.txt
The globbing only works when done in the right directory.
Florian Ragwitz [Thu, 19 Aug 2010 21:20:52 +0000 (23:20 +0200)]
Make everything exec-bit.txt lists executable
All these files used to be executable in the release tarballs. Apparently things
also work without that in the repository, but I'd rather add this possibly
unecessary change to blead instead of breaking the upcoming release. This should
probably be looked into again afterwards.
Steve Peters [Thu, 19 Aug 2010 19:47:41 +0000 (14:47 -0500)]
Silence a warning in time64.c. Need to downgrade a const char *
to a char *.
Steve Peters [Thu, 19 Aug 2010 18:20:59 +0000 (13:20 -0500)]
Moved prototype check to XS code, allowing the .pm file change from yesterday
to be removed. Thanks to Rafael for pointing out prototypes in XS.
Abigail [Thu, 19 Aug 2010 16:37:11 +0000 (18:37 +0200)]
Added a test for bug #77084.
Steve Peters [Thu, 19 Aug 2010 05:04:59 +0000 (00:04 -0500)]
Some nits picked on the 5.13.4 delta.
Florian Ragwitz [Thu, 19 Aug 2010 03:08:29 +0000 (05:08 +0200)]
Update META.yml
Florian Ragwitz [Thu, 19 Aug 2010 03:05:39 +0000 (05:05 +0200)]
Porting/mergelog is no more
We're using cherrymaint on camel now.
Florian Ragwitz [Thu, 19 Aug 2010 03:00:35 +0000 (05:00 +0200)]
CoreList, not Corelist
Florian Ragwitz [Wed, 18 Aug 2010 02:33:11 +0000 (04:33 +0200)]
Get perl5134delta into a mostly finished state
Florian Ragwitz [Wed, 18 Aug 2010 22:12:36 +0000 (00:12 +0200)]
perldelta up to 41f69a9
Chris 'BinGOs' Williams [Wed, 18 Aug 2010 22:07:13 +0000 (23:07 +0100)]
Revert "Version bump Module-CoreList to 2.37 for a CPAN release"
This reverts commit
d98a0e0610723630e3a6cf6f1de20f87701b22bc.
Yeah, I'm an idiot.
Chris 'BinGOs' Williams [Wed, 18 Aug 2010 21:57:24 +0000 (22:57 +0100)]
Version bump Module-CoreList to 2.37 for a CPAN release
Florian Ragwitz [Wed, 18 Aug 2010 21:36:20 +0000 (23:36 +0200)]
Ensure Filespec wont't show up in Module::Corelist
Florian Ragwitz [Wed, 18 Aug 2010 21:10:30 +0000 (23:10 +0200)]
There never was a `Filespec.pm'
A bug in Porting/corelist.pl made Module::Corelist think the VMS::Filespec
module was called Filespec. This bug was fixed in
f4ccb67a0c5b6089da1ebe8b42943cf67d6c087a. This change updates all the old
corelist entries accordingly.
David Mitchell [Wed, 18 Aug 2010 21:31:49 +0000 (22:31 +0100)]
fix 'might be used uninitialized' in PerlIO_tmpfile
sv can't actually be used uninitialized, but set it to zero to
shut up stupid compilers
David Mitchell [Wed, 18 Aug 2010 21:11:01 +0000 (22:11 +0100)]
fix 'might be used uninitialized' in S_regmatch
Strictly speaking charid would only get used uninitialized in debugging
output with a trie state machine that has no entries, but initialise it
to zero just to keep everyone happy.
Florian Ragwitz [Wed, 18 Aug 2010 21:00:57 +0000 (23:00 +0200)]
It's `VMS::Filespec', not `Filespec'
Florian Ragwitz [Wed, 18 Aug 2010 20:46:05 +0000 (22:46 +0200)]
Ignore xsubpp temp files
Florian Ragwitz [Wed, 18 Aug 2010 20:44:56 +0000 (22:44 +0200)]
Make perl is not enough
corelist.pl also needs a few modules that aren't built by just `make perl'.
Steve Peters [Wed, 18 Aug 2010 20:52:50 +0000 (15:52 -0500)]
Merge branch 'blead' of ssh://stevep@perl5.git.perl.org/perl into blead
Steve Peters [Wed, 18 Aug 2010 20:50:17 +0000 (15:50 -0500)]
Make I18N::Langinfo::langinfo take $_ as an argument if none is specified as
its documentation advertises. Bump version for this change.
Florian Ragwitz [Wed, 18 Aug 2010 18:21:33 +0000 (20:21 +0200)]
Karl convinced me this isn't revelant
They've always been sort of private, even tho the symbols are exported.
Florian Ragwitz [Wed, 18 Aug 2010 18:21:29 +0000 (20:21 +0200)]
perldelta up to ff7894f
Chris 'BinGOs' Williams [Wed, 18 Aug 2010 10:20:06 +0000 (11:20 +0100)]
Update Archive-Tar to CPAN version 1.68
[DELTA]
* important changes in version 1.68 17/08/2010
- Apply a patch from Colin Newell that checks whether long files can be created or
not in 02_methods.t. Hopefully resolves RT #57312 and RT #56163
Most importantly it should resolve test failures when building on encrypted
filesystems.
Florian Ragwitz [Wed, 18 Aug 2010 02:44:21 +0000 (04:44 +0200)]
Note the HTML::Parser breakage
Also fix a link to substr().
Florian Ragwitz [Wed, 18 Aug 2010 02:20:40 +0000 (04:20 +0200)]
Ignore *.old files
We already ignored a couple of them, but there's many more of them showing up
every now and then, especially because of some of the porting tools.
Florian Ragwitz [Wed, 18 Aug 2010 00:14:36 +0000 (02:14 +0200)]
Steal some rewording from perl5122delta
Florian Ragwitz [Wed, 18 Aug 2010 00:00:54 +0000 (02:00 +0200)]
perldelta up to a8a2f4f
George Greer [Tue, 17 Aug 2010 23:10:13 +0000 (19:10 -0400)]
Re-sort MANIFEST and use tabs for new entry.
MANIFEST is in "dictionary order" (ignore-case and consider whitespace
and alphanumeric only) so it can be surprising at times
Andy Armstrong [Sun, 15 Aug 2010 11:05:23 +0000 (12:05 +0100)]
Make sure the stack is balanced in the case that we fake the result of unsupported filetests.
This time with an appropriate comment on the test. And with that I'll
attempt to stop spamming P5P, at least for today, and go and do
something less risky. Running with scissors perhaps.
Jerry D. Hedden [Tue, 17 Aug 2010 17:17:11 +0000 (13:17 -0400)]
Move POSIX.pm to lib/POSIX.pm to fix autosplitter problem
Nicholas Clark [Tue, 17 Aug 2010 16:28:03 +0000 (17:28 +0100)]
Fix building with PERL_GLOBAL_STRUCT defined.
Presumably this compilation option was broken when Perl_clone_params_del
and Perl_clone_params_new were added in
f7abe70be985cb91.
Nicholas Clark [Tue, 17 Aug 2010 15:54:12 +0000 (16:54 +0100)]
Add an -X option to expand-macro.pl to show how XSUBs see the macro.
The default is to show macros as seen by the core.
Florian Ragwitz [Tue, 17 Aug 2010 07:13:47 +0000 (09:13 +0200)]
perldelta Eric's lvalue/TARG changes
Florian Ragwitz [Tue, 17 Aug 2010 05:01:29 +0000 (07:01 +0200)]
Remove DATE section from README.aix
The date in there requires a manual edit for every release, which seems silly
for a bit of information that's also in various other places like perlhist.
Instead, only mention the perl version the document refers to somewhere at the
top. Porting/bump-perl-version can update that automatically for us.
Florian Ragwitz [Mon, 16 Aug 2010 23:22:27 +0000 (01:22 +0200)]
PERL_API_* doesn't need to be maintained manually
Florian Ragwitz [Mon, 16 Aug 2010 23:06:29 +0000 (01:06 +0200)]
Release managers need to be careful in INSTALL
Everything is binary incompatible with each other, except for maint releases
from the same maint branch.
Florian Ragwitz [Mon, 16 Aug 2010 23:06:09 +0000 (01:06 +0200)]
Update INSTALL regarding binary compatibility
Florian Ragwitz [Mon, 16 Aug 2010 22:34:24 +0000 (00:34 +0200)]
perldelta up to d5da2b2
Florian Ragwitz [Mon, 16 Aug 2010 22:09:43 +0000 (00:09 +0200)]
Bump $feature::VERSION
It hasn't seen many changes since 5.13.3, but it was changed slightly in the
docs, and cmpVERSION.pl kindly asked me to bump the verion even for that.
Nicholas Clark [Mon, 16 Aug 2010 21:12:13 +0000 (23:12 +0200)]
Only copy op.c to opmini.c if op.c is a symlink, else use a symlink.
Similarly for perl.c to perlmini.c
This avoids the work of a file copy if a symlink would do the job, but ensures
that we don't create a symlink to a symlink to a file, which (comments suggest)
upsets gcc.
Nicholas Clark [Mon, 16 Aug 2010 19:43:19 +0000 (21:43 +0200)]
Use a loop to generate the Makefile rules for opmini.c and perlmini.c.
Nicholas Clark [Mon, 16 Aug 2010 19:22:44 +0000 (21:22 +0200)]
For both opmini.o and perlmini.o define PERL_EXTERNAL_GLOB and PERL_IS_MINIPERL
Previously only opmini.o was compiled with -DPERL_EXTERNAL_GLOB, and only
perlmini.o with -DPERL_IS_MINIPERL. Add "PERL_EXTERNAL_GLOB" to the output
of (mini)perl -V if it is defined.
Florian Ragwitz [Mon, 16 Aug 2010 20:54:10 +0000 (22:54 +0200)]
perldelta up to b474a1b
Chris 'BinGOs' Williams [Mon, 16 Aug 2010 16:05:41 +0000 (17:05 +0100)]
Corrected typo in documentation for glob().
Chris 'BinGOs' Williams [Mon, 16 Aug 2010 16:04:27 +0000 (17:04 +0100)]
Update Test-Harness to CPAN version 3.22
[DELTA]
3.22 2010-08-14
- Allow TAP::Parser to recognize a nested BAIL_OUT directive.
- Add brief HOWTO for creating and running pgTAP tests to
TAP::Parser::SourceHandler::pgTAP.
- Fix trailing plan + embedded YAML + TAP 13 case. Thanks to
Steffen Schwigon. #54518.
- Numerous spelling fixes. Thanks to Ville Skytt<C3><A4>.
- Add new option --tapversion for prove to set the default
assumed TAP version. Thanks to Steffen Schwigon.
- Fixed tests to run successfully under Devel::Cover. Thanks to
Phillipe Bruhat.
- Fixed injection of test args to work with general executables
as well as Perl scripts (#59186).
- Allow multiple --ext=.foo arguments to prove, to allow running
different types of tests in the same prove run.
- App::Prove::extension() is now App::Prove::extensions(), and
returns an arrayref of extensions, rather than a single scalar.
The same change has been made to App::Prove::State::extension().
- Preserve old semantics for test scripts with a shebang line
by favouring Perl as the intepreter for any file with a
shebang (#59457).
- Add --trap (summary on Ctrl-C) option to prove (#59427).
- Removed TAP::Parser::SourceHandler::pgTAP. Find it in its own
distribution on CPAN.
- Source options to prove can now be specified so as to be passed to
the source as a hash reference, eg:
prove --source XYZ --xyz-option pset=foo=bar
Ths "pset" option will be passed as a hash reference with the key
"foo" and the value "bar".
Nicholas Clark [Mon, 16 Aug 2010 15:12:24 +0000 (17:12 +0200)]
Remove compile-time conditionals from PVIV and PVNV body sizes.
Alignment issues that aggressive (but legal) sparc compilers tripped over
were resolved by
69ba284b5e077075. Hence the conditional sizing added in
889d28b2ea2c1751 is not needed, and prevents viable size optimisations.
(The compiler could "see" that the structure contained a double, hence the
alignment was constrained, hence it was legal to use a single 64 bit load on 2
adjacent 32 bit values. Which fails badly when the structure isn't actually
aligned, which was possible prior to
69ba284b5e077075.)
Zefram [Sat, 1 May 2010 17:47:58 +0000 (18:47 +0100)]
fix [perl #74118] $[ assignment not noisy enough
Warn about list assignment to $[, as in "($[)=1", in addition to scalar
assignment such as "$[=1".
Florian Ragwitz [Mon, 16 Aug 2010 01:08:01 +0000 (03:08 +0200)]
Remove MacOS 9 support code from XS-APItest
EUMM dropped support for it ages ago, and so did perl core a couple of releases
back. This is an attempt to stop MacOS 9 support from being cargo-culted into
new XS-APItest tests.
Florian Ragwitz [Sun, 15 Aug 2010 22:16:00 +0000 (00:16 +0200)]
Revert "Make the peep recurse via PL_peepp"
This reverts commit
65bfe90c4b4ea5706a50067179e60d4e8de6807a.
While it made a few of the things I wanted possible, a couple of other things
one might need to do and I thought this change would enable don't actually
work. Thanks Zefram for pointing out my mistake.
Conflicts:
ext/XS-APItest/APItest.xs
op.c
Florian Ragwitz [Sun, 15 Aug 2010 21:04:05 +0000 (23:04 +0200)]
perldelta up to a98d1b3
Chris 'BinGOs' Williams [Sun, 15 Aug 2010 21:12:54 +0000 (22:12 +0100)]
Fix the overload tests marked as TODO in
22afb09b13a6dc17f20388991422fdbe6166e3ed
As is() doesn't stringify its arguments anymore we have to.
Florian Ragwitz [Thu, 12 Aug 2010 16:45:48 +0000 (18:45 +0200)]
perldelta up to 2be7097
Florian Ragwitz [Thu, 12 Aug 2010 16:32:16 +0000 (18:32 +0200)]
Add a note on API versions for release managers
Nicholas Clark [Sun, 15 Aug 2010 12:14:44 +0000 (13:14 +0100)]
Remove the vestigial my_safe{calloc,malloc,free} macros from sv.c
These existed for LEAKTEST, which would change the implementations.
LEAKTEST was removed in
7bab3ede7bf671f5 in 2002.
Nicholas Clark [Sun, 15 Aug 2010 11:39:36 +0000 (12:39 +0100)]
Remove the unused new_X*V and del_X*V macros from sv.c
The use of most of these macros was eliminated by
82bb6deb04ad3686, but it did
not delete their definitions.
Nicholas Clark [Sun, 15 Aug 2010 12:20:41 +0000 (13:20 +0100)]
Note the e-mail address Robin Barker used in
db7198b53dd9e7c0.
Without this, t/porting/authors.t fails because it believes that a new person
is missing from AUTHORS.
Slaven Rezic [Sat, 14 Aug 2010 19:28:05 +0000 (14:28 -0500)]
[perl #72588] t/op/mkdir.t fails, setting LC_ALL=C does not work
Robin Barker [Sat, 14 Aug 2010 18:58:51 +0000 (13:58 -0500)]
RT #74436: [PATCH] Add -Wwrite-strings
The perl source has for some while been clean to -Wwrite-strings.
I suggest this warning be added to cflags.
The patch makes the appropriate change to cflags.SH and silences a warning from mg.c
Chas. Owens [Sat, 14 Aug 2010 18:05:18 +0000 (13:05 -0500)]
RT #77150: perlre documentation issue and possible fix
Chris 'BinGOs' Williams [Sat, 14 Aug 2010 16:47:46 +0000 (17:47 +0100)]
Made a number of tests TODO in lib/overload.t due to changes to Test-Simple
Feature Changes
* is() and others will no longer stringify its arguments before
comparing. Overloaded objects will make use of their eq
overload rather than their "" overload. This can break tests of
impolitely string overloaded objects. DateTime prior to 0.54 is
the biggest example.
Chris 'BinGOs' Williams [Sat, 14 Aug 2010 14:06:07 +0000 (15:06 +0100)]
Update Test-Simple to CPAN version 0.96
[DELTA]
0.96 Tue Aug 10 21:13:04 PDT 2010
Bug Fixes
* You can call done_testing() again after reset() [googlecode 59]
Other
* Bug tracker moved to github
0.95_02 Wed May 19 15:46:52 PDT 2010
Bug Fixes
* Correct various typos and spelling errors (Nick Cleaton)
* Fix alignment of indented multi-line diagnostics from subtests
(Nick Cleaton)
* Fix incorrect operation when subtest called from within a todo block
(Nick Cleaton)
* Avoid spurious output after a fork within a subtest
(Nick Cleaton)
0.95_01 Wed Mar 3 15:36:59 PST 2010
Bug Fixes
* is_deeply() didn't see a difference in regexes [rt.cpan.org 53469]
* Test::Builder::Tester now sets $tb->todo_output to the output handle and
not the error handle (to be in accordance with the default behaviour of
Test::Builder and allow for testing TODO test behaviour).
* Fixed file/line in failing subtest() diagnostics. (Nick Cleaton)
* Protect against subtests setting $Level (Nick Cleaton)
New Features
* subtests without a 'plan' or 'no_plan' have an implicit 'done_testing()'
added to them.
* is_deeply() performance boost for large structures consisting of
mostly non-refs (Nick Cleaton)
Feature Changes
* is() and others will no longer stringify its arguments before
comparing. Overloaded objects will make use of their eq
overload rather than their "" overload. This can break tests of
impolitely string overloaded objects. DateTime prior to 0.54 is
the biggest example.
Nicholas Clark [Sat, 14 Aug 2010 15:46:20 +0000 (16:46 +0100)]
Properly reinstate space optimisations to SV body structures.
889d28b2ea2c1751 was incomplete; XPV, XPVIV and XPVNV were returning pointers
correctly offset within the allocated space to align the structures consistent
with XPVMG, but were allocating the full length, not just the used parts.
Jan Dubois [Sat, 14 Aug 2010 00:22:00 +0000 (17:22 -0700)]
Add Wolfram Humann to AUTHORS
Wolfram Humann [Sat, 14 Aug 2010 00:20:26 +0000 (17:20 -0700)]
make string-append on win32 100 times faster
When a string grows (e.g. gets appended to), perl calls sv_grow. When
sv_grow decides that the memory currently allocated to the string is
insufficient, it calls saferealloc. Depending on whether or not perl
was compiled with 'usemymalloc' this calls realloc in either perls
internal version or on the operating system. Perl requests from
realloc just the amount of memory required for the current
operation. With 'usemymalloc' this is not a problem because it rounds
up memory allocation to a certain geometric progression anyway. When
the operating system's realloc is called, this may or may not lead to
desaster, depending on how it's implemented. On win32 it does lead to
desaster: when I loop 1000 times and each time append 1000 chars to an
initial string size of 10 million, the memory grows from 10.000e6 to
10.001e6 to 10.002e6 and so on 1000 times till it ends at 11.000e6.
Tony Cook [Fri, 13 Aug 2010 14:21:29 +0000 (00:21 +1000)]
POSIX/t/posix.t expects a certain start to Makefile.PL
6695a346 changed the start of Makefile.PL, but t/posix.t reads that to
test its read() implementation, restore enough of the original for the
test to pass.
Tony Cook [Fri, 13 Aug 2010 13:57:52 +0000 (23:57 +1000)]
two of my patches had a bad From, teach checkAUTHORs.pl about them
I build these patches on a VM so they ended up with a bad author, stop
t/porting/authors.t from failing because of that.
Tony Cook [Wed, 21 Jul 2010 23:54:13 +0000 (09:54 +1000)]
make_ext.pl populates @INC correctly, don't override it badly
PERL5LIB is populated by make_ext.pl with paths to the modules we need
to run, don't override this with "../../lib" since that may not have
been populated yet in a parallel build.