Skip Menu |
Report information
Id: 128949
Status: new
Priority: 0/
Queue: perl6

Owner: Nobody
Requestors: zefram [at] fysh.org
Cc:
AdminCc:

Severity: (no value)
Tag: Bug
Platform: (no value)
Patch Status: (no value)
VM: (no value)



Date: Mon, 15 Aug 2016 20:50:57 +0100
To: rakudobug [...] perl.org
Subject: [BUG] bad \ quoting in operator names in error message
From: Zefram <zefram [...] fysh.org>
Download (untitled) / with headers
text/plain 853b
Show quoted text
> &prefix:<+\\\\+>
===SORRY!=== Error while compiling: Undeclared routine: prefix:<+\\+> used at line 1. Did you mean 'prefix:<++>', 'prefix:<~>', 'prefix:<temp>'? Observe that what I input as <+\\\\+> has been echoed back in the error message as <+\\+>. Those are not equivalent subscripts, so that error message is erroneous. Aside from simply applying the quoting rules to see what the subscripts mean, one can see that they're different by inputting <+\\+> in the same context for comparison: Show quoted text
> &prefix:<+\\+>
===SORRY!=== Error while compiling: Undeclared routine: prefix:<+\+> used at line 1. Did you mean 'prefix:<++>', 'prefix:<+>', 'prefix:<+^>'? Note that it's echoed differently and gets a different list of suggested typo resolutions. This time it's actually been echoed back correctly: <+\+> is equivalent to <+\\+>. -zefram
Download (untitled) / with headers
text/plain 505b
The issue is the message shows literal name of the stuff inside the brackets. Same applies to having a > in it: $ perl6 -e '&prefix:«+\\\>\+»' ===SORRY!=== Error while compiling -e Undeclared routine: prefix:<+\\>+> used at line 1. Did you mean 'prefix:<++>', 'prefix:<~>', 'prefix:<temp>'?


This service is sponsored and maintained by Best Practical Solutions and runs on Perl.org infrastructure.

For issues related to this RT instance (aka "perlbug"), please contact perlbug-admin at perl.org