summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJames Mastros <james@mastros.biz>2010-06-02 18:27:48 +0100
committerRafael Garcia-Suarez <rgs@consttype.org>2010-07-26 10:13:02 +0200
commit4da603770916eeea54d6ad0bca34bd83bd01dc35 (patch)
tree7f263779c6951fb2e510f1ec8907e967f43376f3
parent1ef43bca16a834dad67a76e73eb6ed31d2a46cb1 (diff)
downloadperl-4da603770916eeea54d6ad0bca34bd83bd01dc35.tar.gz
Document "Ambiguous use of %c{%s%s} resolved to %c%s%s"
-rw-r--r--pod/perldiag.pod8
-rw-r--r--t/porting/diag.t1
2 files changed, 8 insertions, 1 deletions
diff --git a/pod/perldiag.pod b/pod/perldiag.pod
index 15af00a909..793bcddeb4 100644
--- a/pod/perldiag.pod
+++ b/pod/perldiag.pod
@@ -107,6 +107,14 @@ the varable, you can just write C<@foo>. If you wanted to call the
function, write C<@{foo()}> ... or you could just not have a variable
and a function with the same name, and save yourself a lot of trouble.
+=item Ambiguous use of %c{%s%s} resolved to %c%s%s
+
+(W ambiguous) You wrote something like C<${foo[2]}>, which might be
+looking for element number 2 of the array named C<@foo>, in which case
+please write C<$foo[2]>, or you might have meant to pass an anonymous
+arrayref to the function named foo, then do a scalar deref on the
+value it returns. If you meant that, write C<${foo([2])}>.
+
=item '|' and '<' may not both be specified on command line
(F) An error peculiar to VMS. Perl does its own command line
diff --git a/t/porting/diag.t b/t/porting/diag.t
index 084afb7984..a9c5e643d9 100644
--- a/t/porting/diag.t
+++ b/t/porting/diag.t
@@ -226,7 +226,6 @@ sub check_file {
# PLEASE DO NOT ADD TO THIS LIST. Instead, write an entry in
# pod/perldiag.pod for your new (warning|error).
__DATA__
-Ambiguous use of %c{%s%s} resolved to %c%s%s
Ambiguous use of -%s resolved as -&%s()
Argument "%s" isn't numeric
Argument "%s" isn't numeric in %s