* know. Run now! Hope is in speed!" --Gandalf
*/
-dEXT char **watchaddr = 0;
-dEXT char *watchok;
+#ifdef PERL_OBJECT
+#define CALLOP this->*op
+#else
+#define CALLOP *op
+#endif
int
-runops_standard() {
+runops_standard(void)
+{
dTHR;
- while ( op = (*op->op_ppaddr)(ARGS) ) ;
+ while ( op = (CALLOP->op_ppaddr)(ARGS) ) ;
TAINT_NOT;
return 0;
}
#ifdef DEBUGGING
+
+dEXT char **watchaddr = 0;
+dEXT char *watchok;
+
+#ifndef PERL_OBJECT
static void debprof _((OP*o));
+#endif
+
+#endif /* DEBUGGING */
int
-runops_debug() {
+runops_debug(void)
+{
+#ifdef DEBUGGING
dTHR;
if (!op) {
warn("NULL OP IN RUN");
DEBUG_t(debop(op));
DEBUG_P(debprof(op));
}
- } while ( op = (*op->op_ppaddr)(ARGS) );
+ } while ( op = (CALLOP->op_ppaddr)(ARGS) );
TAINT_NOT;
return 0;
+#else
+ return runops_standard();
+#endif /* DEBUGGING */
}
I32
-debop(o)
-OP *o;
+debop(OP *o)
{
+#ifdef DEBUGGING
SV *sv;
deb("%s", op_name[o->op_type]);
switch (o->op_type) {
break;
}
PerlIO_printf(Perl_debug_log, "\n");
+#endif /* DEBUGGING */
return 0;
}
void
-watch(addr)
-char **addr;
+watch(char **addr)
{
+#ifdef DEBUGGING
watchaddr = addr;
watchok = *addr;
PerlIO_printf(Perl_debug_log, "WATCHING, %lx is currently %lx\n",
(long)watchaddr, (long)watchok);
+#endif /* DEBUGGING */
}
-static void
-debprof(o)
-OP* o;
+STATIC void
+debprof(OP *o)
{
+#ifdef DEBUGGING
if (!profiledata)
New(000, profiledata, MAXO, U32);
++profiledata[o->op_type];
+#endif /* DEBUGGING */
}
void
-debprofdump()
+debprofdump(void)
{
+#ifdef DEBUGGING
unsigned i;
if (!profiledata)
return;
PerlIO_printf(Perl_debug_log,
"%u\t%lu\n", i, (unsigned long)profiledata[i]);
}
+#endif /* DEBUGGING */
}
-
-#endif
-