summaryrefslogtreecommitdiff
path: root/dump.c
diff options
context:
space:
mode:
authorGurusamy Sarathy <gsar@cpan.org>1999-11-13 02:17:53 +0000
committerGurusamy Sarathy <gsar@cpan.org>1999-11-13 02:17:53 +0000
commit971a9dd36d83520d7040365d2791ad56b6d39411 (patch)
tree2bb4f700b96a8e36132040891ef26db29f3d45a9 /dump.c
parent11faa288e292c27cb2ddc4ccdc483b523d26ce19 (diff)
downloadperl-971a9dd36d83520d7040365d2791ad56b6d39411.tar.gz
cloned interpreters now actually run and pass all but 55/10386
subtests; various subtle bugs, new and old, observed when running cloned interpreters have been fixed still to do: | * dup psig_ptr table | * merge PADOP GVs support with "our" SVs (existing PADOPs are too | simple-minded and grab one pad entry each, heavily bloating | the pad by not avoiding dups) | * overloaded constants are not really immutable--they need to | be PADOPs | * allocator for constants and OPs need to be spelled differently | (shared vs interpreter-local allocations) | * optree refcounting is still missing locking (macros are in place) | * curstackinfo, {mark,scope,save,ret}stack need to be cloned so | perl_clone() can be called from within runops*() p4raw-id: //depot/perl@4553
Diffstat (limited to 'dump.c')
-rw-r--r--dump.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/dump.c b/dump.c
index 41116b873f..bb8adf2ff0 100644
--- a/dump.c
+++ b/dump.c
@@ -510,18 +510,23 @@ Perl_do_op_dump(pTHX_ I32 level, PerlIO *file, OP *o)
}
switch (o->op_type) {
+ case OP_AELEMFAST:
case OP_GVSV:
case OP_GV:
- if (cGVOPo) {
+#ifdef USE_ITHREADS
+ Perl_dump_indent(aTHX_ level, file, "PADIX = %d\n", cPADOPo->op_padix);
+#else
+ if (cSVOPo->op_sv) {
SV *tmpsv = NEWSV(0,0);
ENTER;
SAVEFREESV(tmpsv);
- gv_fullname3(tmpsv, (GV*)cGVOPo, Nullch);
+ gv_fullname3(tmpsv, (GV*)cSVOPo->op_sv, Nullch);
Perl_dump_indent(aTHX_ level, file, "GV = %s\n", SvPV(tmpsv, n_a));
LEAVE;
}
else
Perl_dump_indent(aTHX_ level, file, "GV = NULL\n");
+#endif
break;
case OP_CONST:
case OP_METHOD_NAMED: