summaryrefslogtreecommitdiff
path: root/toke.c
diff options
context:
space:
mode:
authorKarl Williamson <public@khwilliamson.com>2011-02-09 21:18:48 -0700
committerKarl Williamson <public@khwilliamson.com>2011-02-09 22:46:03 -0700
commit17a3df4c6a07533e2c03c46fdd27e3ee295d61d0 (patch)
treee0ee85739319695ef7c320b28890ad2f49ebade2 /toke.c
parent3efe3cb8c0229e34f5e21774151ddbfdcf27adf4 (diff)
downloadperl-17a3df4c6a07533e2c03c46fdd27e3ee295d61d0.tar.gz
Fix up \cX for 5.14
Throughout 5.13 there was temporary code to deprecate and forbid certain values of X following a \c in qq strings. This patch fixes this to the final 5.14 semantics. These are: 1) a utf8 non-ASCII character will croak. This is the same behavior as pre-5.13, but it gives a correct error message, rather than the malformed utf8 message previously. 2) \c{ and \cX where X is above ASCII will generate a deprecated message. The intent is to remove these capabilities in 5.16. The original agreement was to croak on above ASCII, but that does violate our stability policy, so I'm deprecating it instead. 3) A non-deprecated warning is generated for all other \cX; this is the same as throughout the 5.13 series. I did not have the tuits to use \c{} as I had planned in 5.14, but \N{} can be used instead.
Diffstat (limited to 'toke.c')
-rw-r--r--toke.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/toke.c b/toke.c
index 17152e5cd5..8dadf61257 100644
--- a/toke.c
+++ b/toke.c
@@ -3363,7 +3363,7 @@ S_scan_const(pTHX_ char *start)
case 'c':
s++;
if (s < send) {
- *d++ = grok_bslash_c(*s++, 1);
+ *d++ = grok_bslash_c(*s++, has_utf8, 1);
}
else {
yyerror("Missing control char name in \\c");