use feature qw( say ); use Inline C => <<'__EOI__'; STRLEN mylength(SV* sv) { STRLEN len; (void)SvPV(sv, len); return len; } __EOI__ $x="\xE9"; utf8::downgrade($x); $y="\xE9"; utf8::upgrade($y); say $x eq $y ? "equal" : "not equal"; # equal say mylength($x); # 1 say mylength($y); # 2