in reply to Re^4: die through several evals
in thread die through several evals
That is exactly what is meant to happen.
You wrap code in an eval in order to trap any error that might occur. If you then chose to not check for an error having occurred, then the code will continue as if no error had occurred.
If you don't want the error to be ignored, you should either check for an error and rethrow if that is apppropriate; or don't use the eval in the first place.
(And your 'visible'/'invisible' strings make no sense because: a) they are both visible; b) they should be!)
I think that you'd better describe the overall goal you are trying to achieve, rather than looking to find a way to undo the very effect that the eval statement is designed to provide.