in reply to Re^2: File does not exist: 500 read failed
in thread File does not exist: 500 read failed

Inappropriately named eval BLOCK is very different from eval EXPR.
eval EXPR invokes the Perl parser to parse and execute EXPR. This should be avoided whenever possible.
eval BLOCK, the function used in the parent, is the benign construct known as try in other languages.

See eval.