summaryrefslogtreecommitdiff
path: root/ext/B/B.xs
diff options
context:
space:
mode:
Diffstat (limited to 'ext/B/B.xs')
-rw-r--r--ext/B/B.xs6
1 files changed, 5 insertions, 1 deletions
diff --git a/ext/B/B.xs b/ext/B/B.xs
index 8935174455..90bf8d5f60 100644
--- a/ext/B/B.xs
+++ b/ext/B/B.xs
@@ -1715,11 +1715,15 @@ REGEX(sv)
ALIAS:
precomp = 1
qr_anoncv = 2
+ compflags = 3
PPCODE:
if (ix == 1) {
PUSHs(newSVpvn_flags(RX_PRECOMP(sv), RX_PRELEN(sv), SVs_TEMP));
- } else if (ix) {
+ } else if (ix == 2) {
PUSHs(make_sv_object(aTHX_ (SV *)ReANY(sv)->qr_anoncv));
+ } else if (ix) {
+ dXSTARG;
+ PUSHu(RX_COMPFLAGS(sv));
} else {
dXSTARG;
/* FIXME - can we code this method more efficiently? */