So my question : who has corrupted Clémence ?
As far as I can tell,
XML::Twig::print did. It seems to me (from your post) the problem goes away with
keep_encoding => 1?
sub print {
...
if($perl_version > 5.006 && ! $t->{twig_keep_encoding})
{ if( grep /useperlio=define/, `$^X -V`)
{ binmode( $fh || \*STDOUT, ":utf8" ); }
}
...
Since you didn't
use utf8; in your code, Clémence is not utf-8 (for Perl's purposes). Printing it to utf-8 filehandle will wreck Clémence.
Also I don't understand what utf-8 has to do with Perl 5.018 in particular