in reply to Re^9: perl eval
in thread perl eval

At last after a long fight I figured it out. It was due to defining the egal sub which is like:

sub egal () { # .... }

# Rather than:

sub egal { # .... }

This was imposing argument prototypes on egal (i.e. no args). This was the reason why Perl can't find the sub when an argument is passed.