diff options
author | Nicholas Clark <nick@ccl4.org> | 2010-02-20 17:40:04 +0000 |
---|---|---|
committer | Nicholas Clark <nick@ccl4.org> | 2010-05-03 20:24:50 +0100 |
commit | 6550424581c83583e72aa799a12d2a2e68d9e5f1 (patch) | |
tree | 39aff86558d4860022c180494b62764e0a22e34c /scope.c | |
parent | 1c3d5054181a1dff3dab69a3f7c820ac692c8730 (diff) | |
download | perl-6550424581c83583e72aa799a12d2a2e68d9e5f1.tar.gz |
For SAVEt_BOOL, save the value with the type.
Diffstat (limited to 'scope.c')
-rw-r--r-- | scope.c | 7 |
1 files changed, 3 insertions, 4 deletions
@@ -373,10 +373,9 @@ Perl_save_bool(pTHX_ bool *boolp) PERL_ARGS_ASSERT_SAVE_BOOL; - SSCHECK(3); - SSPUSHBOOL(*boolp); + SSCHECK(2); SSPUSHPTR(boolp); - SSPUSHUV(SAVEt_BOOL); + SSPUSHUV(SAVEt_BOOL | (*boolp << 8)); } void @@ -799,7 +798,7 @@ Perl_leave_scope(pTHX_ I32 base) break; case SAVEt_BOOL: /* bool reference */ ptr = SSPOPPTR; - *(bool*)ptr = cBOOL(SSPOPBOOL); + *(bool*)ptr = cBOOL(uv >> 8); break; case SAVEt_I32: /* I32 reference */ ptr = SSPOPPTR; |