summaryrefslogtreecommitdiff
path: root/sv.h
Commit message (Collapse)AuthorAgeFilesLines
* Fix API docs:SvGAMAGIC returns a U32, not a char*Steffen Mueller2009-06-231-1/+1
| | | | (cherry picked from commit 458b44e7bc48569051e0eb9b5630ba87d7e5eed4)
* Make SvOK and SvTRUE API docs slightly less utterly confusingSteffen Mueller2009-06-131-3/+3
| | | | (cherry picked from commit c0b6140e88943756b7fb000be354186a3d2d4398)
* Bump coopyright year in embed.pl and various files that were just touchedRafael Garcia-Suarez2009-03-301-1/+1
| | | | | | (and run "make regen") (cherry picked from commit 83706693c63eb4fe0fd171a88263c83548c89029)
* Allow lvalue usage of SvRV() and add MUTABLE_SV() check.Marcus Holland-Moritz2009-03-301-1/+13
| | | | | | | | | Also add new SvRV_const() macro for read-only access. p4raw-id: //depot/perl@34804 (cherry-picked from commit f19a12a3a65a1b840e4df1373a12eab6e50a8d5c with some mods because SVt_RV no longer exists is such in bleed)
* Revert SvPVX() to allow lvalue usage, but also add aMarcus Holland-Moritz2009-03-291-1/+1
| | | | | | | | | | MUTABLE_SV() check. Use SvPVX_const() instead of SvPVX() where only a const SV* is available. Also fix two falsely consted pointers in Perl_sv_2pv_flags(). p4raw-id: //depot/perl@34770 (cherry-picked from commit d2c6dc5ee586de7e57a1fe8c160cf7c8aaf3f3f8)
* Correct SvVALID() and SvTAIL() - they are actually const.Nicholas Clark2009-03-291-2/+2
| | | | | | p4raw-id: //depot/perl@34613 (cherry picked from commit e9726144eab9da5d0ccdc0c6f4308a69bed719ee)
* Add a macro MUTABLE_PTR(p), which on (non-pedantic) gcc will not castNicholas Clark2009-03-291-42/+42
| | | | | | | | | | | | | away const, returning a void *. Add MUTABLE_SV(sv) which uses this, and replace all (SV *) casts either with MUTABLE_SV(sv), or (const SV *). This probably still needs some work - assigning to SvPVX() and SvRV() is now likely to generate a casting error. The core doesn't do this. But as-is it's finding bugs that can be fixed. p4raw-id: //depot/perl@34605 (cherry-picked from commit b1bc3f345d4dfe19cd94c120c46649336b5cb92b)
* Define sv_insert() as a wrapper to sv_insert_flags(), and moveNicholas Clark2009-03-251-0/+3
| | | | | | | | Perl_sv_insert() to mathoms.c p4raw-id: //depot/perl@33627 (cherry-picked from commit 84335ee93339f99a0959258e640fa57e9f0ba6ab)
* Fix bit-fields for VC [was RE: [perl #50386] GIMME_V broken with 5.10.0/GCC ↵Jan Dubois2009-03-221-4/+4
| | | | | | | | | | | | | | and XS?] From: "Jan Dubois" <jand@activestate.com> Message-ID: <02ee01c8651b$17ef72f0$47ce58d0$@com> p4raw-id: //depot/perl@33292 partially cherry-picked from commit 654eccd594bfe8deab367b0f4cdda726a7796ff3: The PERL_BITFIELD* macros are merged, but the VC-specific overrride of their values has been ommited to mainbtain BinCompat, as has the -mms-bitfields compile option.
* revert the SvOOK re-implementation:Nicholas Clark2009-03-191-12/+5
| | | | | | | | | | | | | | | | | ------------ Re-implement the SvOOK() hack to store the offset as a BER encoded number in the part of the PVX that is being released. (It will always fit, as chopping off 1 byte gives just enough space for recording a delta of up to 127). This allows SvOOK() to co-exist with SvIOK_on(), which means all the calls to SvOOK_off() [with the possibility of a call to sv_backoff()] in SvIOK_on() can be removed. This ought to make a lot of straight line code a little bit simpler. OOK()d scalars can now be SVt_PV, as the IVX isn't needed. p4raw-id: //depot/perl@32836 (cherry-picked from commit 7a4bba223aa750dd886fe6a2fddef224e59c717f) ------------
* Revert the SvOOK reimplementation:Nicholas Clark2009-03-191-63/+6
| | | | | | | | | | | | | | ---------- BER is all very well, but it turns out that it's better to store the offset as either a byte (if <256), or a 0 byte with a STRLEN before. "better" in that the reading can be inlined, and even then the object code is smaller (function calls have space overhead). So goodbye Perl_sv_read_offset() and hello SvOOK_offset(). p4raw-id: //depot/perl@32838 (cherry-picked from commit 69240efd70fee399a5232ed995c383b154000a08) ----------
* BER is all very well, but it turns out that it's better to store theNicholas Clark2009-03-061-6/+63
| | | | | | | | | | | offset as either a byte (if <256), or a 0 byte with a STRLEN before. "better" in that the reading can be inlined, and even then the object code is smaller (function calls have space overhead). So goodbye Perl_sv_read_offset() and hello SvOOK_offset(). p4raw-id: //depot/perl@32838 (cherry-picked from commit 69240efd70fee399a5232ed995c383b154000a08)
* Re-implement the SvOOK() hack to store the offset as a BER encodedNicholas Clark2009-03-061-5/+12
| | | | | | | | | | | | | | number in the part of the PVX that is being released. (It will always fit, as chopping off 1 byte gives just enough space for recording a delta of up to 127). This allows SvOOK() to co-exist with SvIOK_on(), which means all the calls to SvOOK_off() [with the possibility of a call to sv_backoff()] in SvIOK_on() can be removed. This ought to make a lot of straight line code a little bit simpler. OOK()d scalars can now be SVt_PV, as the IVX isn't needed. p4raw-id: //depot/perl@32836 (cherry-picked from commit 7a4bba223aa750dd886fe6a2fddef224e59c717f)
* Take code that occurs in three places to take a scalar and ready it toNicholas Clark2009-03-051-0/+14
| | | | | | | | | hold a reference, and convert it to a macro define prepare_SV_for_RV(). p4raw-id: //depot/perl@32737 (cherry-picked from 43230e26bd52e1dcdb541bb4a927c941262b74ed, but changed to allow that SVt_RV still exists in 5.10.x)
* In SvPV_free(), assert() that no-one is trying to free up a reference.Nicholas Clark2009-03-051-0/+1
| | | | | | p4raw-id: //depot/perl@32717 (cherry picked from commit e537ac38cb8a0eeb6351f73ebefac120742db282)
* Update comments and documentation dealing with utfKarl2009-02-261-4/+4
| | | | (cherry-picked from commit fe749c9aa803ce74d997ff797103481a55741837)
* It looks like the previous patch is working fine on UNIXish boxes,Steve Peters2009-02-251-0/+4
| | | | | | | but is failing on Windows. Anyways sv_utf8_upgrade_nomg() is a macro anyways, so moving the documentation to sv.h. (cherry-picked from commit dc96081217a267e72cb4c28ba8c95ca5811a4b9d)
* Add SV allocation tracing to -Dm and PERL_MEM_LOGMarcus Holland-Moritz2009-01-021-0/+1
| | | | | | | | Message-ID: <20081022013731.23b5a2e5@r2d2> p4raw-id: //depot/perl@34568 (cherry-picked from d7a2c63ca1dd960ced99dbacbd31f848d2ffa77f)
* un-integrate #34133:Dave Mitchell2008-12-061-2/+0
| | | | | | PVFMs don't need to access the IVX any more. (as of change 32836, which re-implemented SvOOK() to avoid using it) p4raw-id: //depot/maint-5.10/perl@35026
* Integrate:Dave Mitchell2008-12-051-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ 34132] Test that formats can be dumped. [ 34133] PVFMs don't need to access the IVX any more. (as of change 32836, which re-implemented SvOOK() to avoid using it) [ 34167] You can't (and shouldn't) use CvDEPTH on a PVFM. [ 35022] in Dump output, PV field of format may or not be displayed in 5.10.0 [ 35023] whether DEPTH gets dumped in formats varies within 5.10.0 p4raw-link: @35023 on //depot/perl: c12100a4ed3b3e95d0575985eb4996cefd3a2ee5 p4raw-link: @35022 on //depot/perl: 251a4af1a6b9bdceab1c562d9a6bf0544b2bcbe0 p4raw-link: @34167 on //depot/perl: 5129b2ca8d01c31a5ccad56604afff370ba7562e p4raw-link: @34133 on //depot/perl: 30ec677dd4d12a9c099bac3f654b308d387386e9 p4raw-link: @34132 on //depot/perl: bfe27a58755fd70d150ce6080e7cfdd2f87f2358 p4raw-id: //depot/maint-5.10/perl@35024 p4raw-integrated: from //depot/perl@35022 'ignore' ext/Devel/Peek/t/Peek.t (@34167..) p4raw-integrated: from //depot/perl@34167 'edit in' dump.c (@34133..) 'merge in' cv.h (@34030..) p4raw-integrated: from //depot/perl@34133 'merge in' sv.h (@34038..)
* Integrate:Reini Urban2008-12-041-1/+1
| | | | | | | | | | | | | | | | [ 34038] Subject: Re: [PATCH] More COW lvalues Message-ID: <484D491D.9050704@x-ray.at> [ 34039] Strength reduction optimisation seems to spot that a = a + 1; is just a++; so write it as the former, to keep PERL_DEBUG_COW happy. p4raw-link: @34039 on //depot/perl: 3a92e6ae8711ddb5b5574745041a3e03a98b1f1c p4raw-link: @34038 on //depot/perl: 3ec35e0f92217816d70cf483b3b012476ca9b9d7 p4raw-id: //depot/maint-5.10/perl@35014 p4raw-integrated: from //depot/perl@34039 'edit in' regcomp.c (@34038..) p4raw-integrated: from //depot/perl@34038 'merge in' sv.h (@34031..)
* Integrate:Reini Urban2008-12-041-89/+89
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ 34029] Subject: [PATCH] readable assertion names From: "Reini Urban" <rurban@x-ray.at> Date: Sun, 8 Jun 2008 14:41:51 +0200 Message-ID: <6910a60806080541n4f7e1939q254797411545ebea@mail.gmail.com> [ 34030] Subject: Re: [PATCH] readable assertion names, now the rest From: "Reini Urban" <rurban@x-ray.at> Date: Sun, 8 Jun 2008 16:17:32 +0200 Message-ID: <6910a60806080717h1aaaef1fh425a2ef21a62c9ed@mail.gmail.com> [ 34031] Subject: Re: [PATCH] readable assertion names, now sv.h From: "Reini Urban" <rurban@x-ray.at> Date: Sun, 8 Jun 2008 15:26:41 +0200 Message-ID: <6910a60806080626kfda0dd1ja906513e8fd0aa39@mail.gmail.com> p4raw-link: @34031 on //depot/perl: e5ae200f29f943d2dad731c89f20babe8c7c8786 p4raw-link: @34030 on //depot/perl: 7948fc082b7916e5f602700f36d83fdcf421314c p4raw-link: @34029 on //depot/perl: 603aa20df51288786331f1d6680081156c2ce5a9 p4raw-id: //depot/maint-5.10/perl@35005 p4raw-integrated: from //depot/perl@34031 'edit in' sv.h (@33627..) p4raw-integrated: from //depot/perl@34030 'edit in' regexp.h (@33292..) 'ignore' op.h (@33679..) 'merge in' pad.h (@32982..) cv.h (@33051..) p4raw-integrated: from //depot/perl@34029 'merge in' gv.h (@33702..)
* Integrate:Nicholas Clark2008-10-261-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | [ 34585] Update copyright years. [ 34586] Update copyright year in embed.pl, and everything that it builds. p4raw-link: @34586 on //depot/perl: 67edeb9aab7e64ec46e81a9ccb767449a20cad5f p4raw-link: @34585 on //depot/perl: 1129b882ced9d5881a47214405219a2e6e332a92 p4raw-id: //depot/maint-5.10/perl@34599 p4raw-integrated: from //depot/perl@34593 'copy in' perlapi.c (@31245..) perlsdio.h (@32793..) XSUB.h (@32820..) perly.c (@33370..) cc_runtime.h (@34002..) pp.h (@34055..) 'merge in' av.h (@33051..) mg.h (@33256..) deb.c locale.c numeric.c pad.c pp_pack.c regexec.c taint.c (@33291..) embed.pl (@33539..) mathoms.c (@33627..) scope.h (@33654..) cop.h (@33656..) gv.c (@33814..) doop.c (@33831..) perly.y (@33858..) global.sym (@33901..) pp_sort.c (@33937..) gv.h (@34029..) op.h pad.h regexp.h (@34030..) perl.h (@34069..) doio.c mg.c pp.c pp_sys.c xsutils.c (@34092..) pp_ctl.c (@34140..) cv.h dump.c (@34167..) toke.c (@34224..) universal.c (@34354..) mro.c (@34357..) op.c (@34358..) av.c (@34381..) hv.c (@34383..) utf8.c (@34416..) scope.c (@34494..) pp_hot.c (@34506..) regcomp.c (@34507..) intrpvar.h sv.h (@34568..) embed.h embedvar.h perlapi.h (@34569..) util.c (@34574..) sv.c (@34576..) p4raw-integrated: from //depot/perl@34585 'ignore' proto.h (@34574..) 'merge in' perlio.c (@33978..) handy.h (@34577..)
* Integrate:Nicholas Clark2008-01-301-1/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ 32807] Add a new function newSVpvn_flags(), which takes a third parameter of flag bits. Right now the only flag bit is SVf_UTF8, which will call SvUTF8_on() on the new SV for you. Provide a wrapper newSVpvn_utf8(), which takes a boolean, and passes in SVf_UTF8 if that is true. Refactor the core to use it where possible. It makes the source code clearer and smaller, but seems to be swings and roundabouts on object code size. [ 32812] Add HeUTF8() to complement HePV() and then immediately suggest that newSVhek(HeKEY_hek(he) is probably what you wanted all along. [ 32818] Extend newSVpvn_flags() to also call sv_2mortal() if SVs_TEMP is set in the flags. Move its implementation just ahead of sv_2mortal()'s for CPU cache locality. Refactor all code that can be to use this. [ 32819] Add newSVpvs_flags() as a wrapper to newSVpvn_flags(), and rework sv_2mortal(newSVpvs(...)) constructions to use it. [ 32820] Missed three sv_2mortal(newSVpvn(...))s in the headers. [ 32821] Add macros mPUSHs() and mXPUSHs() for pushing SVs on the stack and mortalizing them. Use these macros where possible. And also mX?PUSH[inpu] where possible. [ 32823] Run regen.pl (fixes build on Win32, at least) [ 32824] There's no need to handle 'set' magic in the mX?PUSH macros. The macros all create new mortals using sv_newmortal(), and those cannot be magical. This is in contrary to the X?PUSH macros, which operate on TARG, which can be magical. With that in mind, mentioning whether or not mX?PUSH can handle 'set' magic doesn't make sense any longer. [ 32834] Re-implement mPUSHp() and mXPUSHp() using Perl_newSVpvn_flags(), which results in slightly smaller object code. (No extra work is done.) p4raw-link: @32834 on //depot/perl: 8f14ea018e8d1f6c6a67be29ee2ae899993d0f0e p4raw-link: @32824 on //depot/perl: 121b77126d4ab6098abde56a8c4175a9704d61b2 p4raw-link: @32823 on //depot/perl: ae374e95f2465dddad54f12486ab8266e5ccbb5a p4raw-link: @32821 on //depot/perl: 6e449a3ab1e3bd9d7e138ca681c733e57d4daa49 p4raw-link: @32820 on //depot/perl: ad25789c15269a04312e0efede81842547aa8212 p4raw-link: @32819 on //depot/perl: 84bafc024a74c819ac3d2b4406253dbe983e6502 p4raw-link: @32818 on //depot/perl: 59cd0e26eb6c10499b25d783562357dd68cc16f2 p4raw-link: @32812 on //depot/perl: 289d3c6afee2ee5aaa9c3c2e0498d35fffce0173 p4raw-link: @32807 on //depot/perl: 740cce10afff4bec3346f61ab3d0f7bfa424948c p4raw-id: //depot/maint-5.10/perl@33139 p4raw-integrated: from //depot/perl@33138 'copy in' doop.c (@31270..) XSUB.h (@31697..) xsutils.c (@32237..) gv.c (@32478..) pp_pack.c (@32818..) utf8.c (@32819..) pp.h (@32824..) 'edit in' hv.c (@32807..) mro.c (@32818..) 'merge in' doio.c (@32681..) av.c (@32792..) p4raw-integrated: from //depot/perl@32823 'edit in' embed.h (@32807..) 'merge in' global.sym (@32806..) p4raw-integrated: from //depot/perl@32821 'edit in' perl.c (@32813..) pp_hot.c (@32818..) mg.c pp.c pp_ctl.c pp_sys.c (@32819..) p4raw-integrated: from //depot/perl@32820 'edit in' hv.h (@32812..) p4raw-integrated: from //depot/perl@32819 'copy in' cop.h (@32237..) toke.c (@32818..) 'edit in' universal.c (@32817..) sv.c (@32818..) 'merge in' handy.h (@32793..) p4raw-integrated: from //depot/perl@32818 'edit in' regcomp.c (@32813..) p4raw-integrated: from //depot/perl@32807 'edit in' pod/perlapi.pod (@32707..) sv.h util.c (@32804..) 'merge in' embed.fnc proto.h (@32804..)
* Integrate:Nicholas Clark2008-01-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ 32763] Perl_sv_chop() can return early if it's being asked to do nothing. [ 32777] Move all code that relies on reading the to-be-thrown-away buffer ahead of the call to sv_chop() that throws it away. [ 32781] Include SVf_UTF8 in the bitmask when checking the SvFLAGS in SvPVutf8_force(), as otherwise the conditional expression will always be false and the optimisation will never kick in. [ 33013] In Perl_cx_dup(), block copy the entire context stack, then walk it to duplicate/fixup only the things that aren't simple binary copies. [ 33068] Using PL_sv_no in place of any !SvOK() maximum removes a little bit of hot code in pp_iter. p4raw-link: @33068 on //depot/perl: 267cc4a8114e05742ba94bb40aa5728a5cfaa166 p4raw-link: @33013 on //depot/perl: c2d565bf20398393b9b05727867496686647584f p4raw-link: @32781 on //depot/perl: b7a4fb4f15fdc766da6e47dfceacff29a5121ae5 p4raw-link: @32777 on //depot/perl: 0d3c21b03f6bad2977f965669c308bd429cf00bf p4raw-link: @32763 on //depot/perl: 15895f8a35fabf511cbf5a8aa01ab74e51cbae24 p4raw-id: //depot/maint-5.10/perl@33137 p4raw-integrated: from //depot/perl@33068 'edit in' pp_ctl.c (@33067..) p4raw-integrated: from //depot/perl@32781 'merge in' sv.h (@32751..) p4raw-integrated: from //depot/perl@32777 'edit in' pp_hot.c (@32761..) p4raw-integrated: from //depot/perl@32763 'edit in' sv.c (@32751..)
* Integrate:Nicholas Clark2008-01-301-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ 32688] Update the hash documentation to reflect the changes between 5.8.1 and 5.8.2, that disabled the automatic randomisation of all hashes. [ 32729] Subject: [PATCH] docs: replace FH by my $fh in open From: "Gabor Szabo" <szabgab@gmail.com> Date: Wed, 26 Dec 2007 06:03:29 +0200 Message-ID: <d8a74af10712252003m2d3244fbv2955fe17e683063d@mail.gmail.com> [ 32730] Subject: [PATCH] docs: list of places where $_ is used From: "Gabor Szabo" <szabgab@gmail.com> Date: Wed, 26 Dec 2007 06:49:34 +0200 Message-ID: <d8a74af10712252049t1b63b475mfca9225324f5fce6@mail.gmail.com> [ 32732] Subject: [PATCH perl5100delta.pod] change/correction to 32246 From: "Robin Barker" <Robin.Barker@npl.co.uk> Date: Fri, 9 Nov 2007 14:40:22 -0000 Message-ID: <2C2E01334A940D4792B3E115F95B722601604912@exchsvr1.npl.ad.local> [ 32759] Note to future self about moving the regexp flag bits around. [ 32793] Add editor blocks to some header files. [ 32805] Subject: [PATCH] Small documentation nits From: Sébastien Aperghis-Tramoni <maddingue@free.fr> Date: Mon, 31 Dec 2007 21:05:47 +0100 Message-Id: <2AF110D6-9183-47C5-BBBA-26C3FB97C3D3@free.fr> [ 32844] Remove a comment that is no longer necessary since Perl Object bit the dust some time around 5.6 [ 32875] Document that sitecustomize.pl in run from a BEGIN block [ 32887] Subject: - perlcommunity.patch (1/1) [PATCH] perlcommunity: "Perl Mongers" and calendar corrections From: brian d foy <brian.d.foy@gmail.com> Date: Fri, 04 Jan 2008 14:07:27 -0600 Message-ID: <040120081407272341%brian.d.foy@gmail.com> [ 32895] Clarify the use of SVf_BREAK on PL_reg_curpm. [ 32904] Subject: Re: [PATCH] docs more open() and $_ related entries From: "Gabor Szabo" <szabgab@gmail.com> Date: Tue, 8 Jan 2008 22:07:54 +0200 Message-ID: <d8a74af10801081207q2637419dy59f1a3600bcc4a76@mail.gmail.com> [ 32916] Add a few =cuts (so configpm is displayed mostly correctly by perldoc or by search.cpan.org) [ 32944] Better descriptions for PL_regex_pad and PL_regex_padav. [ 32982] A couple of POD fixes by Steven Schubiger [ 32993] Add Weed out needless PERL_UNUSED_ARG to perltodo. It's a good "cage cleaner" task. [ 33066] Subject: [PATCH] socketpair() *is* available on Win32 From: "Jan Dubois" <jand@activestate.com> Date: Thu, 24 Jan 2008 14:17:23 -0800 Message-ID: <032201c85ed6$e56edf40$b04c9dc0$@com> [ 33082] fix misleading comment in op.h [ 33095] Minor rewording of the localtime() documentation, based on : Subject: [perl #49914] gmtime()/localtime() do not use time() From: Abe Timmerman (via RT) <perlbug-followup@perl.org> Date: Thu, 17 Jan 2008 18:05:07 -0800 Message-ID: <rt-3.6.HEAD-18434-1200621906-376.49914-75-0@perl.org> [ 33101] Subject: [PATCH] mistaken variable in pod From: "Yitzchak Scott-Thoennes" <sthoenna@efn.org> Date: Mon, 28 Jan 2008 13:39:29 -0800 (PST) Message-ID: <40783.64.81.167.122.1201556369.squirrel@webmail.efn.org> [ 33104] More wording nits about perl's time() versus the libc's time() p4raw-link: @33104 on //depot/perl: e3176d09175983fa5c9fa7bc6d286b6349cbc891 p4raw-link: @33101 on //depot/perl: a0604b4cdf35e86e96dd5002c652cb32430e1735 p4raw-link: @33095 on //depot/perl: e199845280bc7d6fec24a11bbe30c154943f9814 p4raw-link: @33082 on //depot/perl: b900987b60cce8e0dffc3b8fd3835992d58ce664 p4raw-link: @33066 on //depot/perl: f38e12df2246599f9c1104d703d0b8bb03353e86 p4raw-link: @32993 on //depot/perl: 3d826b294b9e4cbc002b8f9eeaf0e88c52d9ee96 p4raw-link: @32982 on //depot/perl: d77cdebfaf0c7eb784a132b575c93953a56db215 p4raw-link: @32944 on //depot/perl: e68531976a39b1bb777ce9a7b75bd5a3eaf8de8b p4raw-link: @32916 on //depot/perl: c90cd22b2f0d69bba1abd4ca7cd7ece1531bbb93 p4raw-link: @32904 on //depot/perl: b0169937a1833d262bdcef83fc6595ccc076cb56 p4raw-link: @32895 on //depot/perl: 36c662f48c9a23ec4251c3cf747c3f42c63a6fd9 p4raw-link: @32887 on //depot/perl: 10a3d64ebfb9fbd83a25907c9ad1c5709db66e15 p4raw-link: @32875 on //depot/perl: e846cbe53fd65a133ee59961dd2b0d9ae211552a p4raw-link: @32844 on //depot/perl: e16f71082347dd9854a05b7cece1dc02f0f9f3a8 p4raw-link: @32805 on //depot/perl: d991eed6a698716065b2039839dd7d319bc188db p4raw-link: @32793 on //depot/perl: e9a8c0991ec6634f51266c0ad53e02c328bc0761 p4raw-link: @32759 on //depot/perl: a1cf41cd41cfa3d3c737acde06e0d3bbd02dd08d p4raw-link: @32732 on //depot/perl: 62ba2c934831b412d226e94c53b2ed4d0a5c0726 p4raw-link: @32730 on //depot/perl: db1511c850bfe94373082caa16c1f91ab1ce8510 p4raw-link: @32729 on //depot/perl: 460b70c2ae94a254c087c06a9e5a5c4c3d88a0b5 p4raw-link: @32688 on //depot/perl: 22883ac550dc5dbe0c35890635d3c37c4084f3a1 p4raw-id: //depot/maint-5.10/perl@33123 p4raw-integrated: from //depot/perl@33122 'copy in' fakethr.h (@19242..) nostdio.h (@26736..) fakesdio.h (@27355..) thread.h (@27834..) pod/perlsec.pod (@28800..) ext/POSIX/POSIX.pod (@31137..) configpm (@31366..) parser.h (@31618..) pod/perlcommunity.pod (@31626..) iperlsys.h (@32013..) perliol.h (@32215..) dosish.h mg.h perlio.h perlsdio.h perlsfio.h unixish.h utf8.h utfebcdic.h util.h (@32237..) pod/perlport.pod (@32492..) pod/perlsyn.pod (@32559..) pod/perlvar.pod (@32730..) pad.h (@32793..) 'edit in' op.h (@33030..) 'merge in' pod/perltodo.pod (@32731..) p4raw-integrated: from //depot/perl@33095 'edit in' pod/perlfunc.pod (@32969..) p4raw-integrated: from //depot/perl@32982 'copy in' pod/perlintern.pod (@32148..) 'merge in' pod/perlapi.pod (@32925..) sv.c (@32969..) p4raw-integrated: from //depot/perl@32944 'merge in' intrpvar.h (@32681..) p4raw-integrated: from //depot/perl@32895 'merge in' regexec.c sv.h (@32861..) p4raw-integrated: from //depot/perl@32875 'copy in' pod/perlrun.pod (@32461..) p4raw-integrated: from //depot/perl@32844 'merge in' embed.fnc (@32840..) p4raw-integrated: from //depot/perl@32793 'copy in' scope.h (@29695..) regcomp.h (@32237..) 'merge in' handy.h (@32707..) perl.h (@32789..) p4raw-integrated: from //depot/perl@32759 'merge in' regexp.h (@32758..) p4raw-integrated: from //depot/perl@32732 'ignore' pod/perl5100delta.pod (@32649..)
* Bug fix for storing shared objects in shared structuresJerry D. Hedden2007-11-081-0/+1
| | | | | | | | From: "Jerry D. Hedden" <jdhedden@cpan.org> Message-ID: <1ff86f510711061136t52a1fe62waf384c4551612181@mail.gmail.com> (core patch only) p4raw-id: //depot/perl@32241
* Nothing is using IoSUBPROCESS() so eliminate xio_subprocess.Nicholas Clark2007-10-011-3/+1
| | | | | | Make xio_flags a U8, which is what it should have been all along (rather than a char, which might be signed). B.xs had its wrapper as U8 p4raw-id: //depot/perl@32001
* Under -DDEBUGGING (on gcc), assert that SvRV(sv) is being called onNicholas Clark2007-09-231-2/+16
| | | | | a valid SvTYPE(). p4raw-id: //depot/perl@31941
* Add some information to the comments describing SV flag bits.Nicholas Clark2007-07-011-1/+6
| | | p4raw-id: //depot/perl@31512
* Also get copy on write working with ithreads. It hadn't been workingNicholas Clark2007-06-241-1/+3
| | | | | | | since change 26684 (which uses sv_setsv_flags to copy a value from an SV in one interpreter context to an SV in another), despite what change 31120 thought. ext/Compress/Raw/Zlib/t/07bufsize.t still fails. p4raw-id: //depot/perl@31454
* Where possible, use SvIV instead of SvIVX, SvNV instead of SvNVX,Nicholas Clark2007-04-211-7/+11
| | | | | | | | | SvUV instead of SvUVX, and SvPV* variants instead of SvPVX*. Document that the non-x variants are preferable whenever the expression has no side effects. (Compilers perform common subexression elimination). Likewise SvREFCNT_inc simple variants are valid for all cases apart from expressions with side effects. p4raw-id: //depot/perl@31010
* Wrap the SvTYPE macro definition in parens.Rafael Garcia-Suarez2007-02-071-1/+1
| | | p4raw-id: //depot/perl@30153
* Fix a typo and some doubled spaces in comments.Nicholas Clark2007-01-221-3/+3
| | | p4raw-id: //depot/perl@29922
* Make PERL_OLD_COPY_ON_WRITE build again. Inline Perl_sv_release_IVX().Nicholas Clark2007-01-171-2/+2
| | | | | (Currently it fails ext/Compress/Raw/Zlib/t/07bufsize.t) p4raw-id: //depot/perl@29853
* Change the API doc for some of the SvXXX testing macros.Rafael Garcia-Suarez2007-01-081-24/+24
| | | | | | | Often, those macros simply test a bit in sv_flags, so the return value should be assigned to a U32 instead of a bool to avoid truncation. (bug perl #32884) p4raw-id: //depot/perl@29718
* Rename OURSTASH to SvOURSTASH and OURSTASH_set to SvOURSTASH_set.Nicholas Clark2007-01-031-2/+2
| | | p4raw-id: //depot/perl@29679
* Update copyright years to include 2007. (Plus a couple of 2006s andNicholas Clark2007-01-021-1/+1
| | | | | earlier we missed in av.h and hv.h) p4raw-id: //depot/perl@29670
* Remove the vestigal "#if 0"s from header files that defined same-sizedNicholas Clark2007-01-021-8/+0
| | | | | *allocated structs, as these are not going to be needed again. p4raw-id: //depot/perl@29664
* Move SVt_BIND to be the lowest type after SVt_NULL. This will force allNicholas Clark2006-12-311-5/+7
| | | | | | | | | code attempting to upgrade a BIND to anything into sv_upgrade(), which for now will croak, but in future can DTRT, for whatever TRT is decided to be. Make SvOK() check the flags of the referenant for a BIND, as I envisage that the only flag bit that will get set on a BIND is SVf_UTF8 even if the referant has a defined value. p4raw-id: //depot/perl@29642
* Eliminate BmPREVIOUS_set - with the complexity gone from how the datumNicholas Clark2006-12-281-2/+0
| | | | | is stored, there's no need for it. p4raw-id: //depot/perl@29635
* Move all the FBM data fields from the table into a struct xbm_s whichNicholas Clark2006-12-281-46/+63
| | | | | is part of the xnv union. p4raw-id: //depot/perl@29634
* Move the low/high cop sequences from NVX/IVX to a two U32 structureNicholas Clark2006-12-281-0/+36
| | | | | | in the xnv union. This frees up IVX for the PL_generation code, which in turn will allow SvCUR to return to its real purpose. p4raw-id: //depot/perl@29630
* Silence an unused variable warning in sv.c.Steve Peters2006-12-221-9/+7
| | | p4raw-id: //depot/perl@29611
* Add a new flag SVprv_PCS_IMPORTED (which is a pseudonym for SVf_SCREAM)Nicholas Clark2006-12-161-0/+9
| | | | | | | to note when a proxy constant subroutine is copied. This allows us to correctly set GvIMPORTED_CV_on() if the symbol is ever turned into a real GV. p4raw-id: //depot/perl@29566
* Split out the use of SVp_SCREAM for GVs with GPs into a new symbolicNicholas Clark2006-12-161-3/+19
| | | | | flag SVpgv_GP, and use this in isGV_with_GP_on/off. p4raw-id: //depot/perl@29565
* Better documentation for SVf_UTF8. Including SvPV() 1st, SvUTF() 2nd.Nicholas Clark2006-12-151-2/+8
| | | p4raw-id: //depot/perl@29559
* Turn a tab into 2 spaces to make more room for comments about SV flags.Nicholas Clark2006-12-141-59/+57
| | | | | | Sorry about damaging the change history - dig through this change with http://public.activestate.com/cgi-bin/perlbrowse?show_blame=Show+Annotated+File&filename=sv.h&rev=&change=29552 p4raw-id: //depot/perl@29554
* Swap the order of PERL_FBM_PREVIOUS_{L,H}_OFFSET_FROM_TABLE on littleNicholas Clark2006-12-131-2/+7
| | | | | endian machines to hint to the compiler that a 16 bit read could work. p4raw-id: //depot/perl@29552
* Restore the two comments describing BmRARE and BmPREVIOUS that I'dNicholas Clark2006-12-131-1/+4
| | | | | | inadvertently deleted. Explain the setting and testing of SVpbm_VALID. p4raw-id: //depot/perl@29551