This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
toke.c: Change S_scan_str parameter meaning
authorKarl Williamson <khw@cpan.org>
Thu, 12 Jun 2014 19:37:30 +0000 (13:37 -0600)
committerKarl Williamson <khw@cpan.org>
Fri, 13 Jun 2014 04:32:23 +0000 (22:32 -0600)
commit4a7e65afe24af2e709b485d8bb4a67fe3d047ada
treec4d71bdceb25a71f5f14b977890d3e50b5afd1af
parent5af51eb4f0f5aad1ed341f22945110a8bfcf415d
toke.c: Change S_scan_str parameter meaning

The 'keep_bracketed' parameter is used to tell this static function to
not delete the escaping backslash if the string's delimiter character is
also found within the interior of the string.

This parameter is always currently false, except when compiled with
PERL_MAD.  However it has been Okayed to remove this compilation option,
so the parameter can be changed to whatever is desired.

A future commit will change this parameter to be true sometimes.  In
doing so, it sets up a conflict with the fairly new 're_reparse'
parameter (this conflict also exists with PERL_MAD, but clearly nobody
has tried to compile it that way for a while)

However the new conflict only happens when the opening delimiter of the
string is the same as the closing one, and happily the new commits only
need to have this parameter be true when the opening and closing are
different, so things can be set up so that there is actually no
conflict, given that MAD is being removed.

At the time that scan_str is called, what the delimiters are is not
necessarily known, so this commit refactors the meaning of the parameter
to be TRUE iff the delimiters that scan_str finds actually differ.  It
renames the parameter to indicate this.
toke.c