diff options
author | Karl Williamson <khw@cpan.org> | 2015-10-12 12:31:58 -0600 |
---|---|---|
committer | Karl Williamson <khw@cpan.org> | 2015-10-13 13:09:42 -0600 |
commit | 4003ea2907cb4c4494ae771b15039c6c5bd6cb7e (patch) | |
tree | c6bd45c956e30d2415c44a5763c453efe7fa2af7 /pod | |
parent | 3ba22297ff4a9da653012e79529b56cab9e194f7 (diff) | |
download | perl-4003ea2907cb4c4494ae771b15039c6c5bd6cb7e.tar.gz |
qr/\p{pkg1::...foo}/ must be a user-defined property
So, if it isn't found and 'foo' doesn't begin with 'In' or 'Is', we know
that there would be a run-time error, which we can fail with at
compile time instead. We use a different error message than if we don't
know if it is a user-defined property.
See thread beginning at
http://nntp.perl.org/group/perl.perl5.porters/231658
I didn't make a perldelta entry, as I doubt that this has ever come up
in the field, as I discovered the issue myself while playing around
investigating other bugs.
Diffstat (limited to 'pod')
-rw-r--r-- | pod/perldelta.pod | 4 | ||||
-rw-r--r-- | pod/perldiag.pod | 9 |
2 files changed, 13 insertions, 0 deletions
diff --git a/pod/perldelta.pod b/pod/perldelta.pod index ae65866de1..12cf544ea0 100644 --- a/pod/perldelta.pod +++ b/pod/perldelta.pod @@ -194,6 +194,10 @@ and New Warnings L<Character following \p must be '{' or a single-character Unicode property name in regex;|perldiag/"Character following \%c must be '{' or a single-character Unicode property name in regex; marked by <-- HERE in m/%s/"> +=item * + +L<perldiag/"Illegal user-defined property name"> + =back =head3 New Warnings diff --git a/pod/perldiag.pod b/pod/perldiag.pod index 46df14d83f..db798d7936 100644 --- a/pod/perldiag.pod +++ b/pod/perldiag.pod @@ -2549,6 +2549,15 @@ L<C<(?I<PARNO>)>|perlre/(?PARNO) (?-PARNO) (?+PARNO) (?R) (?0)>. (X) The PERL5OPT environment variable may only be used to set the following switches: B<-[CDIMUdmtw]>. +=item Illegal user-defined property name + +(F) You specified a Unicode-like property name in a regular expression +pattern (using C<\p{}> or C<\P{}>) that Perl knows isn't an official +Unicode property, and was likely meant to be a user-defined property +name, but it can't be one of those, as they must begin with either C<In> +or C<Is>. Check the spelling. See also +L</Can't find Unicode property definition "%s">. + =item Ill-formed CRTL environ value "%s" (W internal) A warning peculiar to VMS. Perl tried to read the CRTL's |