in reply to Re^3: no error messages for syntax errors?
in thread no error messages for syntax errors?

well, as my previous post hypothesized, and you clarified in your reply, the error was indeed CGI::Carp redirecting stderr. The reason I didn't catch it before is still unclear, but it deserves attention because I think it has something to do with the order in which packages are included (via use). I am also curious about the same question I asked before, on whether it's kosher for a package to use CGI::Carp, or if that should always just remain in the main::module.

I use a package that has some utility functions, but I only import the functions themselves. I assumed (naively and stupidly, because I never thoroughly read the doc on this narrower issue) that perl only includes those functions that you request, and leaves everything else alone. Apparently not.

This also raises the problem I've had in other circumstances, where packages include functions from other packages, and if my perl code includes one or more of those packages, certain functions end up getting important more than they need to. Again, I just assume that perl will figure this out and all works fine. The problem I ran into, though, is that sometimes the function reference doesn't work, and I have to switch the order in which I list the "use" lines in the perl code to get it to work.

Sometimes, even that doesn't work, and I'm forced to actually use Package::function() before it actually works.

Clearly, I'm not experienced at writing packages, and while I go off and figure that out, perhaps we can bring resolution to the problem that started all this: is it wrong for a package to include cgi::carp?