#include <stdio.h>
#include <string.h>
+#ifndef Newx
+# define Newx(v,n,t) New(0,v,n,t)
+#endif /* !Newx */
+
+#if 1
#define DD_HAS_TRAITS
+#endif
+
#if 0
#define DD_DEBUG
#endif
while (*s && *s != '{') ++s;
if (*s) {
int tlen = s - traitstart;
- New(0, found_traits, tlen+1, char);
+ Newx(found_traits, tlen+1, char);
Copy(traitstart, found_traits, tlen, char);
found_traits[tlen] = 0;
#ifdef DD_DEBUG
STATIC OP *dd_ck_entereval(pTHX_ OP *o) {
o = dd_old_ck_entereval(aTHX_ o); /* let the original do its job */
- o->op_ppaddr = dd_pp_entereval;
+ if (o->op_ppaddr == PL_ppaddr[OP_ENTEREVAL])
+ o->op_ppaddr = dd_pp_entereval;
return o;
}