diff options
author | Zefram <zefram@fysh.org> | 2010-09-08 09:51:29 +0200 |
---|---|---|
committer | Rafael Garcia-Suarez <rgs@consttype.org> | 2010-09-08 10:15:44 +0200 |
commit | ea25a9b2cf73948b1e8c5675de027e0ad13277bd (patch) | |
tree | 2b8bc87185e0e9e01b643752f911cdf4eeac0f85 /embed.h | |
parent | c99cfaa7c4ced6145d9642cd15da5bb2ea4ad19e (diff) | |
download | perl-ea25a9b2cf73948b1e8c5675de027e0ad13277bd.tar.gz |
make qw(...) first-class syntax
This makes a qw(...) list literal a distinct token type for the
parser, where previously it was munged into a "(",THING,")" sequence.
The change means that qw(...) can't accidentally supply parens to parts
of the grammar that want real parens. Due to many bits of code taking
advantage of that by "foreach my $x qw(...) {}", this patch also includes
a hack to coerce qw(...) to the old-style parenthesised THING, emitting
a deprecation warning along the way.
Diffstat (limited to 'embed.h')
-rw-r--r-- | embed.h | 4 |
1 files changed, 4 insertions, 0 deletions
@@ -2081,6 +2081,9 @@ #ifdef PERL_CORE #define boot_core_mro Perl_boot_core_mro #endif +#ifdef PERL_CORE +#define coerce_qwlist_to_paren_list Perl_coerce_qwlist_to_paren_list +#endif #if defined(USE_ITHREADS) # if defined(PERL_IN_SV_C) #ifdef PERL_CORE @@ -4556,6 +4559,7 @@ #ifdef PERL_CORE #endif #ifdef PERL_CORE +#define coerce_qwlist_to_paren_list(a) Perl_coerce_qwlist_to_paren_list(aTHX_ a) #endif #if defined(USE_ITHREADS) # if defined(PERL_IN_SV_C) |