summaryrefslogtreecommitdiff
path: root/regcomp.c
diff options
context:
space:
mode:
authorKarl Williamson <public@khwilliamson.com>2013-07-30 11:27:20 -0600
committerKarl Williamson <public@khwilliamson.com>2013-07-30 12:05:48 -0600
commit36b347b9c8caf3680cadf3c3cb98018a41a92507 (patch)
treefdfcec3c25e649d74372f072122e239ccd3e764e /regcomp.c
parentb60fb2ed2680b5d8e070d120472a5888810bbd95 (diff)
downloadperl-36b347b9c8caf3680cadf3c3cb98018a41a92507.tar.gz
regcomp.c: Remove extraneous debug info
Prior to this commit the prhase {unicode} was emitted to mark what a bracketed character class matched that wasn't in that classes bitmap. This was oftern accompanied by another phrase that gave further details. Since everything is {unicode}, the first phrase isn't very helpful. Now it is changed to {utf8} for those things that won't match unless the target string is in utf8 (this includes some upper latin1 code points under /d matches), or {outside bitmap} for where utf8 isn't necessasily required (this happens for user-defined Unicode properties that aren't known at compile time).
Diffstat (limited to 'regcomp.c')
-rw-r--r--regcomp.c17
1 files changed, 10 insertions, 7 deletions
diff --git a/regcomp.c b/regcomp.c
index 99c758e698..8c7a6f8cbf 100644
--- a/regcomp.c
+++ b/regcomp.c
@@ -14768,17 +14768,20 @@ Perl_regprop(pTHX_ const regexp *prog, SV *sv, const regnode *o)
/* output information about the unicode matching */
if (flags & ANYOF_UNICODE_ALL)
sv_catpvs(sv, "{unicode_all}");
- else if (ANYOF_NONBITMAP(o))
- sv_catpvs(sv, "{unicode}");
- if (flags & ANYOF_NONBITMAP_NON_UTF8)
- sv_catpvs(sv, "{outside bitmap}");
+ else if (ANYOF_NONBITMAP(o)) {
+ SV *lv; /* Set if there is something outside the bit map. */
- if (ANYOF_NONBITMAP(o)) {
- SV *lv; /* Set if there is something outside the bit map */
+ if (flags & ANYOF_NONBITMAP_NON_UTF8) {
+ sv_catpvs(sv, "{outside bitmap}");
+ }
+ else {
+ sv_catpvs(sv, "{utf8}");
+ }
+
+ /* Get the stuff that wasn't in the bitmap */
SV * const sw = regclass_swash(prog, o, FALSE, &lv, NULL);
bool byte_output = FALSE; /* If something in the bitmap has been
output */
-
if (lv && lv != &PL_sv_undef) {
char *s = savesvpv(lv);
char * const origs = s;