check the errata for the book :) Also use diagnostics ( and these checklists Basic debugging checklist , brian's Guide to Solving Any Perl Problem, CGI Help Guide , Troubleshooting Perl CGI scripts ... More generic advice :) On debugging, verify everything, talk to teddybear ... checklists and more , perltrap, perltrap, Common Perl Pitfalls / perltrap)
$ perl -le " sub foo { } " $ perl -le " sub foo spaces { } " Illegal declaration of subroutine main::foo at -e line 1. $ perl -le " use diagnostics; sub foo spaces { } " Illegal declaration of subroutine main::foo at -e line 1 (#1) (F) A subroutine was not declared correctly. See perlsub. Uncaught exception from user code: Illegal declaration of subroutine main::foo at -e line 1.
subs don't like spaces in names, or random *stuff* between end of name and { opening brace {
see perlsub for details
see also
chromatics free book Modern Perl a loose description of how experienced and effective Perl 5 programmers work....You can learn this too.
Learn Perl in about 2 hours 30 minutes
In reply to Re: Illegal declaration of subroutine Error (no spaces in names)
by Anonymous Monk
in thread Illegal declaration of subroutine Error
by ostra
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |