https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64862
--- Comment #5 from Tom Tromey <tromey at gcc dot gnu.org> --- I have a patch for this. I think it fixes bug 38308 and bug 20110 as well. It works by adding a new function to libcpp to convert a string back to the source charset. I still have to get a new copyright assignment. And the test cases are being a pain to update.