Wann bekommst Du das? Ich hatte noch nicht einen Fall, wo mich dieses Warning _nicht_ auf eine Stelle aufmerksam gemacht hat, an der ICH Mist gebaut, bzw. etwas nicht beachtet habe.
zB:
use utf8;
print 'Content-type: text/html; charset=utf-8', NL,NL,
'<html>', ....
'<input type=text name="ct" value="€urö"><br>',NL,oder nach einem m// and print $1
Es spielt übrigens keine Rolle, ob ich direkt wide char UTF Zeichen im Code eingebe oder \x{} verwende.
Ich habe persönlich noch keine Vakanz für "use utf8;" gehabt, verwende also keine Unicode Notationen im Source. HTML::Template ist mein Freund ;-)
Wenn ich Dein Beispiel verwende, erhalte ich hier auch exakt das von Dir genannte Warning.
Die gute Nachricht lautet:
binmode(STDOUT, ":utf8");
beseitig das Problem. Schau mal hier:
http://perldoc.perl.org/perluniintro.html#Perl%27s-Unicode-Model