summaryrefslogtreecommitdiff
path: root/ext
Commit message (Collapse)AuthorAgeFilesLines
* Fix for [perl #90106] 5.14.0-RC2 ODBM_File failures on Ubuntu natty [multiarch]Vladimir Timofeev2011-05-181-3/+3
| | | | | Ubuntu has juggled lib paths so we get to play games to catch up with them.
* ext/Devel-Peek/Peek.pm: Fix broken linksKarl Williamson2011-05-181-2/+2
|
* FieldHash.pm: Fix broken linksKarl Williamson2011-05-181-6/+6
|
* POSIX.pod: fix broken linkKarl Williamson2011-05-181-1/+1
|
* Fix broken linkKarl Williamson2011-05-181-2/+3
|
* IPC::Open3 needs porting to work on VMS.Craig A. Berry2011-04-151-0/+4
| | | | | So skip the test for now. Something like the Win32 mechanism spawn_with_handles() may be workable but needs investigation.
* PATCH: final [perl #86972]: Allow /(?aia)/Karl Williamson2011-04-112-13/+34
| | | | | This fixes "use re '/aia'", and completes the sequence of commits for this ticket.
* [perl #87064] eval no longer shares filtersFather Chrysostomos2011-04-033-1/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Before this commit: commit f07ec6dd59215a56bc1159449a9631be7a02a94d Author: Zefram <zefram@fysh.org> Date: Wed Oct 13 19:05:19 2010 +0100 remove filter inheritance option from lex_start The only uses of lex_start that had the new_filter parameter false, to make the new lexer context share source filters with the previous lexer context, were uses with rsfp null, which therefore never invoked source filters. Inheriting source filters from a logically unrelated file seems like a silly idea anyway. string evals could inherit the same source filter space as the cur- rently compiling code. Despite what the quoted commit message says, sharing source filters allows filters to be inherited in both direc- tions: A source filter created when the eval is being compiled also applies to the file with which it is sharing its space. There are at least 20 CPAN distributions relying on this behaviour (or, rather, what could be considered a Test::More bug). So this com- mit restores the source-filter-sharing capability. It does not change the current API or make public the API for sharing source filters, as this is supposed to be a temporary stop-gap measure for 5.14.
* [perl #86566] Allow Pod::Html to write to STDOUT againDavid Leadbeater2011-03-281-5/+10
| | | | | | | | | 7319fd7 introduced lexical file handles but also switched to 3 arg open; Pod::Html was relying on 2 arg open's behaviour to make '-' mean STDOUT. There was also a single quoted argument that obviously needed to be interpolated.
* Minimise the actions of the BEGIN block in B.pmNicholas Clark2011-03-201-15/+17
| | | | | | | Retain the call to XSLoader::load() at BEGIN time, as we want the constants loaded before the compiler meets OPf_KIDS below, as the combination of having the constant stay a Proxy Constant Subroutine and its value being inlined saves a little over .5K
* In B, use typeglob aliasing instead of subref to typeglob assignment.Nicholas Clark2011-03-201-4/+4
| | | | | | | Typeglob aliasing saves just about 1.25K, because fewer internal structures are created. In the general case the behaviour of the two differs, but as the only package variables of these names are subroutines, and we are within our own namespace, there is no difference here.
* More version bumps in view of recent PERL_NO_GE_CONTEXT commitsFather Chrysostomos2011-03-192-2/+2
|
* Add PERL_NO_GET_CONTEXT to NDBM_FileNicholas Clark2011-03-191-0/+2
| | | | | For threaded platforms, this reduces the object code size, and should slightly reduce CPU usage.
* Add PERL_NO_GET_CONTEXT to GDBM_FileNicholas Clark2011-03-191-0/+2
| | | | | For threaded platforms, this reduces the object code size, and should slightly reduce CPU usage.
* Version bumps for the recent PERL_NO_GET_CONTEXT commitsFather Chrysostomos2011-03-198-8/+8
|
* Add PERL_NO_GET_CONTEXT to mroNicholas Clark2011-03-191-0/+2
| | | | | For threaded platforms, this reduces the object code size, and should slightly reduce CPU usage.
* Add PERL_NO_GET_CONTEXT to attributesNicholas Clark2011-03-191-0/+1
| | | | | For threaded platforms, this reduces the object code size, and should slightly reduce CPU usage.
* Add PERL_NO_GET_CONTEXT to XS::TypemapNicholas Clark2011-03-191-1/+2
| | | | For threaded platforms, this almost halves the object code size.
* Add PERL_NO_GET_CONTEXT to Sys::HostnameNicholas Clark2011-03-191-0/+2
| | | | | For threaded platforms, this reduces the object code size, and should slightly reduce CPU usage.
* Add PERL_NO_GET_CONTEXT to I18N::LanginfoNicholas Clark2011-03-191-0/+2
| | | | | For threaded platforms, this reduces the object code size, and should slightly reduce CPU usage.
* Add PERL_NO_GET_CONTEXT to Hash::UtilNicholas Clark2011-03-191-0/+2
| | | | | For threaded platforms, this reduces the object code size, and should slightly reduce CPU usage.
* Add PERL_NO_GET_CONTEXT to Hash::Util::FieldHashNicholas Clark2011-03-191-45/+63
| | | | | For threaded platforms, this reduces the object code size, and should slight reduce CPU usage.
* Add PERL_NO_GET_CONTEXT to File::GlobNicholas Clark2011-03-191-0/+2
| | | | | For threaded platforms, this reduces the object code size, and should slightly reduce CPU usage.
* Add PERL_NO_GET_CONTEXT to dl_dlopen.xsNicholas Clark2011-03-191-0/+2
| | | | | | For threaded builds on platforms using dlopen() for dynamic loading, this should reduce object size, and slightly reduce CPU usage when loading extensions.
* Redefine errno values for Visual Studio 2010Steve Hay2011-03-192-81/+115
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Perl traditionally stores WinSock error codes (values above 10000) in errno, with corresponding support for $! to stringify them properly. In Visual Studio 2010 (and presumably newer Windows SDKs) Microsoft has started to define additional errno constants in errno.h (values between 100 and 200) with conflicting names (e.g. EWOULDBLOCK). There are 2 ways to deal with this situation: 1) Redefine the errno.h constants back to the winsock values for the Errno and POSIX modules. 2) Translate the winsock error codes to the new errno constants in the socket implementation in win32/win32sck.c. Solution 1) has the advantage that any existing Perl code that has numeric error codes hard-coded in it will continue to work. Solution 2) has the advantage that XS code using external libaries can set errno to the new constants, and they will be handled consistently in the Perl core. It will however need additional support for other compilers and runtime libraries that don't support these new error codes. This commit implements solution 1). Blame attribution: the commit message is from Jan Dubois, the actual patch was created by Steve Hay. Signed-off-by: Jan Dubois <jand@activestate.com>
* Remove the couple of references to AutoLoader that remained inDavid Leadbeater2011-03-131-6/+2
| | | | DynaLoader after 0a0b6c96e6.
* fix C++ build error introducted in f8088870Tony Cook2011-03-091-1/+1
|
* Add PERL_NO_GET_CONTEXT to NamedCapture.xsNicholas Clark2011-03-081-0/+1
|
* Tweak Tie::Hash::NamedCapture's BOOT code - get the stash from the CV.Nicholas Clark2011-03-081-4/+9
| | | | | | This will result in less work than using newSVrv(), as the character string passed to that is used to walk the symbol table to find the stash. We already have a fast way to get to the stash - via the CV's GV. So use that directly.
* In Tie::Hash::NamedCapture move the tie of %+ and %- from perl to XS.Nicholas Clark2011-03-082-8/+19
|
* Convert Tie::Hash::NamedCapture::TIEHASH to XS.Nicholas Clark2011-03-082-10/+22
|
* Add tests for documented behaviour of Tie::Hash::NamedCapture::TIEHASH.Nicholas Clark2011-03-081-0/+34
|
* Ensure that the C<exists &Errno::EFOO> idiom continues to work as documented.Nicholas Clark2011-03-072-3/+29
| | | | | | | A change post-5.12 (probably 42607a60df6df19b) caused the documented idiom not to work if Errno was loaded after the C<exists> code had been compiled, as the compiler implicitly creates typeglobs in the Errno symbol table when it builds the optree for the C<exists code>.
* Move t/re/re.t to ext/re/t/re_funcs_u.t, so that it is not part of minitest.Nicholas Clark2011-03-061-0/+143
| | | | | | | The test file is for functions in the re:: namespace implemented in universal.c, but needs to load re, which isn't built for minitest. As none of these functions are used as part of the core's build process, seems best to move it with all the other tests related to the re extension.
* A clearer layout for the fall-through logic of Socket::inet_aton()Nicholas Clark2011-03-061-6/+10
|
* In inet_aton(), use newSVpvn_flags() instead of sv_newmortal(), sv_setpvn()Nicholas Clark2011-03-061-3/+1
| | | | The API calls are equivalent, but the object code is slightly smaller.
* In Errno, use typeglob aliasing instead of subref to typeglob assignment.Nicholas Clark2011-02-191-2/+1
| | | | | | | Typeglob aliasing saves just over .5K, because fewer internal structures are created. In the general case the behaviour of the two differs, but as the only package variables of these names are subroutines, and we are within our own namespace, there is no difference here.
* Dispatch dl_expandspec at build time, not run time.Craig A. Berry2011-02-181-7/+5
| | | | | | | | | | Before 0a0b6c96e6042658aa123b3990724be593a2bb63, dl_expandspec was an autoloaded function that would never be called if an XS version was already loaded. Without autoloading in DynaLoader anymore, the pure Perl version gets loaded first, which causes trouble if the XS version is what's expected. It looks as though VMS is the only platform that has an XS version, so just avoid declaring the Perl version there.
* Dual-life Devel::DProfFlorian Ragwitz2011-02-1924-2705/+0
| | | | It's not actually on CPAN yet, but it will be in the next couple of days.
* Add a deprecation notice to the Devel::DProf docsFlorian Ragwitz2011-02-181-1/+7
|
* Allow Devel::DProf's tests to run without text.plFlorian Ragwitz2011-02-181-6/+12
| | | | This allows us to run the tests outside of the core.
* Don't call the new __loaded_from_core on old perlsFlorian Ragwitz2011-02-181-2/+2
| | | | | On perls that don't have deprecate::__loaded_from_core yet, dprofpp isn't deprecated yet, so all is good.
* Remove Devel::DProf from the core distribution. Get it from CPAN now.Nicholas Clark2011-02-182-1/+10
| | | | | | | Recommend Devel::NYTProf over Devel::DProf. [Devel::DProf isn't actually on CPAN quite yet, but will be well before 5.14.0 "escapes"]
* Avoid segfault in re::regmust with pluggable RE enginesDavid Leadbeater2011-02-181-5/+8
| | | | | | re::regmust would segfault if called on a Regexp belonging to a pluggable regexp engine, only allow on the core and debugging engine. Also correctly moralize the return values to avoid leaking.
* DynaLoader.t: AUTOLOAD TODO tests passingDavid Mitchell2011-02-181-6/+3
| | | | | Now that AUTOLOAD has been removed from DynaLoader, some TODO tests are passing, so unmark them as TODO.
* Increase DynaLoader’s versionFather Chrysostomos2011-02-171-1/+1
|
* [perl #84358] Removing AutoLoader from DynaLoaderLeon Timmermans2011-02-171-16/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | DynaLoader currently uses Autoloader. This was an optimization going back to perl 5.000 in 1994. However, this implementation detail leaks in a rather troublesome way. DynaLoader is used by subclassing it. Because of this, when you call some undefined method on an instance of any class that derives from DynaLoader (directly or indirectly) you do not get this error message: Can't locate object method "undefined_method" via package "Foo" But this rather cryptic error: Can't locate auto/Foo/undefined_m.al in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.10.0 /usr/local/share/perl/5.10.0 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.10 /usr/share/perl/5.10 /usr/local/lib/site_perl .) This is totally incomprehensible for anyone who isn't familiar with what's going on. It was rather a premature optimization anyway if you ask me, on my machine it's just 66 non-empty lines of code that are being autoloaded. Therefore, I think AutoLoader should be removed from DynaLoader.
* Move dprofpp from utils/ to ext/Devel-DProf/binFlorian Ragwitz2011-02-182-12/+951
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This way the script can easily be part of the CPAN distribution, where ExtUtils::MakeMaker will do its shebang munging. In the core, we still have utils/dprofpp.PL, which also does shebang munging and takes care of creating `dprofpp.com' instead of just `dprofpp' on VMS, which ExtUtils::MakeMaker doesn't seem to be up to yet. To make this work, some things had to be moved from script-generation-time to run-time: * location of the stty binary This is probably better for binary perl distributions anyway * Devel::DProf version detection This is needed for `dprofpp -V'. The version number used to be copied into the script, but is now determined by actually loading Devel::DProf. In order for this to work it's necessary to be able to load DProf without causing profiling to start. For that, starting of the profiler has been moved to `import', causing require Devel::DProf; to not trigger it anymore, while use Devel::DProf; (and therefore perl -d:DProf) still does.
* Delete subroutines Socket::fake_get{addr,name}info if they are not used.Nicholas Clark2011-02-161-1/+6
| | | | | | Nothing outside of Socket.pm uses them, and removing them from the symbol table frees up about 12K. (And likely reduces the per-thread overhead under ithreads, as their pads won't need cloning.)
* More POD correctionsTom Christiansen2011-02-151-2/+2
| | | | | [Extracted by the committer from <nntp://nntp.perl.org/19662.1297825146@chthon>]