James Edward Gray II wrote: > >> Bareword found where operator expected at (eval 2) line 1, near "'a > >> poorly 'nested::nested" > >> (Missing operator before nested::nested?) > >> String found where operator expected at (eval 2) line 1, near > >> "nested::nested' string'" > >> Caught: syntax error at (eval 2) line 1, near "'a poorly > >> 'nested::nested" > > > > Here, perl successfully parses the full identifier nested::nested. > > What it doesn't understand is, why is there an identifier at this > > place ? > > It was expecting an operator instead. > > But since it's inside an eval() call, those messages should get stuck > in $@ and NOT printed. As Randy has said, they would kill a normal > program, if they were in the source. They are not warnings.
Nope. They are warnings, except that they are mandatory ones. You need to write explicitly "no warnings" to disable them. If you do, those messages go in $@ instead. > eval() is > correctly keeping the program running here, but incorrectly printing > the messages that would have killed it, right? -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] <http://learn.perl.org/> <http://learn.perl.org/first-response>