#2953·googletest

打印到 XML 输出的字符无效

作者: ReneOschmann创建于 2020年7月23日更新于 2026年9月7日

Hi gtest-team, 在我们的项目中,我们发现自从使用编译器选项 -funsigned-char 以来,XML 输出出现了一些问题。字符 U+FFFE 和 U+FFFF 以及替代符号在 XML 中是不允许的,但在 UTF-8/-16 中是合法的。例如,对于解析器的参数化测试,如果设置了编译器标志,则可能会打印出这些字符。原因是,IsValidUTF8 实际上依赖于有符号字符的行为。我知道有 #1931、#1957 和 #2932 等问题,它们都朝着在 XML 输出中提供完整的 UTF-8 支持的方向发展。但目前,我只会修改 IsValidUTF8,使其在使用无符号字符作为默认值时具有类似的行为。如果您认为这是一个合理的提案,我可以提供 Pull Request。

内容来源: google/googletest