Improve error message for bogus -MO=… arguments
Commit
7a9b44b9 expanded the scope of the string eval that loads the
B::* backend module, but didn't move the $@ check and croak to outside
it. Restore it and further improve the error message.
Before:
$ perl -MO=Concise=-debug -e1
syntax error at (eval 2) line 18, near "="
BEGIN failed--compilation aborted.
After:
$ ./perl -Ilib -MO=Concise=-debug -e1
Loading compiler backend 'B::Concise=-debug' failed: syntax error at (eval 2) line 18, near "="
at -e line 0.
BEGIN failed--compilation aborted.