Author: petdance
Date: Fri Jul  6 19:53:49 2007
New Revision: 19661

Modified:
   trunk/include/parrot/inter_call.h

Log:
safetied up the ADD_OP_VAR_PART macro

Modified: trunk/include/parrot/inter_call.h
==============================================================================
--- trunk/include/parrot/inter_call.h   (original)
+++ trunk/include/parrot/inter_call.h   Fri Jul  6 19:53:49 2007
@@ -197,13 +197,14 @@
 #define SIG_ELEMS(sig) PMC_int_val(sig)
 #define SIG_ARRAY(sig) (INTVAL*)PMC_data(sig)
 #define SIG_ITEM(sig, idx) (SIG_ARRAY(sig))[idx]
+
+/* XXX Remove interp from this */
 #define ADD_OP_VAR_PART(interp, seg, pc, n) do { \
-    if (*pc == PARROT_OP_set_args_pc || \
-            *pc == PARROT_OP_get_results_pc || \
-            *pc == PARROT_OP_get_params_pc || \
-            *pc == PARROT_OP_set_returns_pc) { \
-        PMC *sig; \
-        sig = seg->const_table->constants[pc[1]]->u.key; \
+    if (*(pc) == PARROT_OP_set_args_pc || \
+            *(pc) == PARROT_OP_get_results_pc || \
+            *(pc) == PARROT_OP_get_params_pc || \
+            *(pc) == PARROT_OP_set_returns_pc) { \
+        PMC * const sig = seg->const_table->constants[pc[1]]->u.key; \
         n += SIG_ELEMS(sig); \
     } \
 } while (0)

Reply via email to