perldoc -f ucfirst clearly states:
ucfirst EXPR ucfirst Returns the value of EXPR with the first character in uppercase. This + is the internal function implementing the \u escape in double-quoted stri +ngs. Respects current LC_CTYPE locale if use locale in force. See perlloca +le. If EXPR is omitted, uses $_.
So ucfirst($foo) returns a string with the first characterer in upper case, but doesn't change the the value in the scalar. Hence, if you're not assining the result to some value nothing is gained from it, and the warning "Useless use of upper case first in void context" is generated.
anyway, I don't know why your return value is not correct, because after I fixed those errors, it printec out something ( I didn't bother checking if it was correct, though ).
Since you don't seem to be using strict, I suspect that the cause of your problem is somewhere else other than in this sub
In reply to Re: Updated code...
by lestrrat
in thread Making a title/headline
by Kickstart
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |