summaryrefslogtreecommitdiff
path: root/ext
diff options
context:
space:
mode:
authorDave Mitchell <davem@fdisolutions.com>2004-10-10 19:18:00 +0000
committerDave Mitchell <davem@fdisolutions.com>2004-10-10 19:18:00 +0000
commit131b3ad08b25bcfcb31b9933319b3186bdd13248 (patch)
tree49a4863bce88baf2d0050c81f56637cb3eb2c742 /ext
parent54cf8e17f0d40db1139c694ac85474f8b0c35b86 (diff)
downloadperl-131b3ad08b25bcfcb31b9933319b3186bdd13248.tar.gz
Turn regcomp into a list op
p4raw-id: //depot/perl@23357
Diffstat (limited to 'ext')
-rw-r--r--ext/B/B/Deparse.pm12
1 files changed, 12 insertions, 0 deletions
diff --git a/ext/B/B/Deparse.pm b/ext/B/B/Deparse.pm
index 9ab926b92f..6071af85e1 100644
--- a/ext/B/B/Deparse.pm
+++ b/ext/B/B/Deparse.pm
@@ -3950,6 +3950,18 @@ sub regcomp {
my $kid = $op->first;
$kid = $kid->first if $kid->name eq "regcmaybe";
$kid = $kid->first if $kid->name eq "regcreset";
+ if ($kid->name eq "null" and !null($kid->first)
+ and $kid->first->name eq 'pushmark')
+ {
+ my $str = '';
+ $kid = $kid->first->sibling;
+ while (!null($kid)) {
+ $str .= $self->re_dq($kid, $extended);
+ $kid = $kid->sibling;
+ }
+ return $str, 1;
+ }
+
return ($self->re_dq($kid, $extended), 1) if $self->pure_string($kid);
return ($self->deparse($kid, $cx), 0);
}