Can you give a non-empty error quine for perl? By an error quine, I mean a perl script that, when ran perl, prints exactly the same bytes to its standard error as its source code and nothing on its stdout. The printout shall be an error message coming from the perl core (or maybe a core module), not eg. something explicitly printed with a die or print statement in the source code. The program shall be ran by redirecting it to the stdin of perl, invoked without any switches.
If there is such an error quine, please give one, preferably an elegant one which doesn't seem like cheating. Please tell what version of perl the script works with.
As an example that doesn't work, take the following script:
Number found where operator expected at - line 1, near "line 1"
(Do you need to predeclare line?)
If you run this with perl 5.16.3, you get the same error message as the source, but then get other error messages too, so this isn't an error quine.
Update: asked for perl version.
Update: ais523 says these are called “Kimian quines”