I bisected MoarVM and the offending commit is here: https://github.com/MoarVM/MoarVM/commit/c98634cf2542874d7daa5b45f77f7de4cf04a081
From what I see, this commit did not actually cause the root bug, it just exposed it. The Unicode Database was rebuilt so that NFG_QC=False for Emoji characters, which the ♥ is. Also interestingly: <samcv> m:my $f1 = "/tmp/foo121212".IO; $f1.spurt: "fo♥22"; $f1.open.readchars(2).say <evalable6> samcv, rakudo-moar 0c5fe56cc: OUTPUT: «fo♥22»
signature.asc
Description: This is a digitally signed message part.