Randy W. Sims wrote: > > If I give perl the program: > > 'a 'nested' string' > > I get the first error above, which is a compile time error. No code is > executed.
It's tokenized as : string literal : 'a ' identifier : nested' and then it expects the rest of the identifier, doesn't see it, bail out. > If I change it slightly (spaces around the bare word): > > 'a ' nested ' string' > ^ ^ > > I get the second error above, also compile time errors. No code is executed. This one is correctly tokenized, and this time it's the parser that emits the error. The tokens are ok, their arrangement isn't grammatically correct. > The only thing missing from my understanding is why eval EXPR let's some > errors through and catches some in [EMAIL PROTECTED] It lets warnings through. > I know it is documented not to > trap errors, I.e. you need to do something like $SIG{__WARN__}=sub{} to > silence the output. What is the differentiator between the two cases? I think we are ultimately facing here design decisions about the error recovery process of the perl parser. -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] <http://learn.perl.org/> <http://learn.perl.org/first-response>