[asperl] fixups to make it build and pass tests under both compilers
[p5sagit/p5-mst-13.2.git] / scope.h
diff --git a/scope.h b/scope.h
index 757161e..cc349f0 100644 (file)
--- a/scope.h
+++ b/scope.h
@@ -22,7 +22,9 @@
 #define SAVEt_REGCONTEXT 21
 #define SAVEt_STACK_POS  22
 #define SAVEt_I16      23
-#define SAVEt_OP       24
+#define SAVEt_AELEM     24
+#define SAVEt_HELEM     25
+#define SAVEt_OP       26
 
 #define SSCHECK(need) if (savestack_ix + need > savestack_max) savestack_grow()
 #define SSPUSHINT(i) (savestack[savestack_ix++].any_i32 = (I32)(i))
 #ifdef PERL_OBJECT
 #define CALLDESTRUCTOR this->*SSPOPDPTR
 #define SAVEDESTRUCTOR(f,p) \
-         save_destructor((DESTRUCTORFUNC)(f),SOFT_CAST(void*)(p))
+         save_destructor((DESTRUCTORFUNC)(FUNC_NAME_TO_PTR(f)),        \
+                         SOFT_CAST(void*)(p))
 #else
 #define CALLDESTRUCTOR *SSPOPDPTR
 #define SAVEDESTRUCTOR(f,p) \
-         save_destructor(SOFT_CAST(void(*)_((void*)))(f),SOFT_CAST(void*)(p))
+         save_destructor(SOFT_CAST(void(*)_((void*)))(FUNC_NAME_TO_PTR(f)), \
+                         SOFT_CAST(void*)(p))
 #endif
 #define SAVESTACK_POS() STMT_START {   \
     SSCHECK(2);                                \