Skip to content

Commit 09fa455

Browse files
committed
Revert "Move Perl_ref(), Perl_sv_unref() from mathoms to macros"
This reverts commit 08ad541.
1 parent f1c84f8 commit 09fa455

File tree

6 files changed

+33
-18
lines changed

6 files changed

+33
-18
lines changed

embed.fnc

+2-2
Original file line numberDiff line numberDiff line change
@@ -3526,7 +3526,7 @@ Adp |int |sv_unmagic |NN SV * const sv \
35263526
Adp |int |sv_unmagicext |NN SV * const sv \
35273527
|const int type \
35283528
|NULLOK const MGVTBL *vtbl
3529-
Admp |void |sv_unref |NN SV *sv
3529+
AMbdp |void |sv_unref |NN SV *sv
35303530
Adp |void |sv_unref_flags |NN SV * const ref \
35313531
|const U32 flags
35323532
Cdp |void |sv_untaint |NN SV * const sv
@@ -4789,7 +4789,7 @@ ST |int |adjust_size_and_find_bucket \
47894789
#endif
47904790
#if defined(PERL_IN_MATHOMS_C) || defined(PERL_IN_OP_C) || \
47914791
defined(PERL_IN_PERLY_C) || defined(PERL_IN_TOKE_C)
4792-
mp |OP * |ref |NULLOK OP *o \
4792+
Mbp |OP * |ref |NULLOK OP *o \
47934793
|I32 type
47944794
#endif
47954795
#if defined(PERL_IN_MG_C)

embed.h

-5
Original file line numberDiff line numberDiff line change
@@ -818,7 +818,6 @@
818818
# define sv_uni_display(a,b,c,d) Perl_sv_uni_display(aTHX_ a,b,c,d)
819819
# define sv_unmagic(a,b) Perl_sv_unmagic(aTHX_ a,b)
820820
# define sv_unmagicext(a,b,c) Perl_sv_unmagicext(aTHX_ a,b,c)
821-
# define sv_unref(a) Perl_sv_unref(aTHX,a)
822821
# define sv_unref_flags(a,b) Perl_sv_unref_flags(aTHX_ a,b)
823822
# define sv_untaint(a) Perl_sv_untaint(aTHX_ a)
824823
# define sv_upgrade(a,b) Perl_sv_upgrade(aTHX_ a,b)
@@ -1500,10 +1499,6 @@
15001499
# if defined(PERL_IN_MALLOC_C)
15011500
# define adjust_size_and_find_bucket S_adjust_size_and_find_bucket
15021501
# endif
1503-
# if defined(PERL_IN_MATHOMS_C) || defined(PERL_IN_OP_C) || \
1504-
defined(PERL_IN_PERLY_C) || defined(PERL_IN_TOKE_C)
1505-
# define ref(a,b) Perl_ref(aTHX,a,b)
1506-
# endif
15071502
# if defined(PERL_IN_MG_C)
15081503
# define fixup_errno_string(a) S_fixup_errno_string(aTHX_ a)
15091504
# define magic_methcall1(a,b,c,d,e,f) S_magic_methcall1(aTHX_ a,b,c,d,e,f)

mathoms.c

+17
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,23 @@
7373
* without a compiler warning */
7474
GCC_DIAG_IGNORE(-Wdeprecated-declarations)
7575

76+
/* ref() is now a macro using Perl_doref;
77+
* this version provided for binary compatibility only.
78+
*/
79+
OP *
80+
Perl_ref(pTHX_ OP *o, I32 type)
81+
{
82+
return doref(o, type, TRUE);
83+
}
84+
85+
void
86+
Perl_sv_unref(pTHX_ SV *sv)
87+
{
88+
PERL_ARGS_ASSERT_SV_UNREF;
89+
90+
sv_unref_flags(sv, 0);
91+
}
92+
7693
#if defined(HUGE_VAL) || (defined(USE_LONG_DOUBLE) && defined(HUGE_VALL))
7794
/*
7895
* This hack is to force load of "huge" support from libm.a

op.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -670,7 +670,7 @@ typedef enum {
670670
list of SVs */
671671

672672
#if defined(PERL_IN_PERLY_C) || defined(PERL_IN_OP_C) || defined(PERL_IN_TOKE_C)
673-
#define Perl_ref(mTHX, o, type) Perl_doref(aTHX_ o, type, TRUE)
673+
#define ref(o, type) doref(o, type, TRUE)
674674
#endif
675675

676676

proto.h

+12-9
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

sv.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -2172,7 +2172,7 @@ Returns the hash for C<sv> created by C<L</newSVpvn_share>>.
21722172
#endif
21732173

21742174

2175-
#define Perl_sv_unref(mTHX, sv) Perl_sv_unref_flags(aTHX_ sv, 0)
2175+
#define sv_unref(sv) sv_unref_flags(sv, 0)
21762176
#define Perl_sv_force_normal(mTHX, sv) Perl_sv_force_normal_flags(aTHX_ sv, 0)
21772177
#define Perl_sv_usepvn(mTHX, sv, p, l) \
21782178
Perl_sv_usepvn_flags(aTHX_ sv, p, l, 0)

0 commit comments

Comments
 (0)