tags:

views:

224

answers:

2

I'm trying to understand the following piece of code:

sub foo {
    ...
    if ( $@ ) {
        ...
        die $@;
    }
}
+14  A: 

perldoc -f eval:

If there is a syntax error or runtime error, or a "die" statement is executed, an undefined value is returned by "eval", and $@ is set to the error message. If there was no error, $@ is guaranteed to be a null string.

See also perldoc perlvar.

Sinan Ünür
+3  A: 

$@ is a magic variable containing the error message of the last eval command, if any.

Nick Lewis
Not ***just*** syntax errors.
Sinan Ünür