I also agree ... completely.
“Warnings are your friends,” because the only party that can realistically tell you what a computer program is doing wrong is ... the computer itself. Nevertheless you may decide that there are specific places in your program where an innocuous condition such as this one is causing a boatload of unwanted error-messages, e.g. in an Apache error log, and therefore you justifiably want to stamp the message out because it’s doing more harm than good. In those cases, Perl does allow you to do that. And, as BrowserUK wisely suggests, when you elect to do such a thing, you ought to do so in a very targeted way. Suppress only the specific warnings you need to suppress, and do so only within a limited section of the code. (I further advise that you add detailed comments surrounding the area: “exactly what are you intending to suppress, and exactly why.” Copying a representative handful of the actual message-texts and pasting them right into the comment-block is a pretty good idea to me, ’cuz you will forget these things.)