主要观点:C-Reduce 是 Regehr 及其朋友开发的用于最小化 C 编译器错误重现器的工具,可在几秒内快速大幅削减文件大小,且适用于多种情况,只需确定性条件、快速重现器和可修改源文件等,还介绍了在 RustPython 运行 scrapscript 时使用 C-Reduce 报告 bug 的过程,同时列举了其他类似的测试用例缩减工具及相关参考。
关键信息:
- 2024 年 11 月 15 日,介绍 C-Reduce 工具及用途。
- C-Reduce 能快速削减文件,如削减 10000 行 C 文件至 50%左右。
- 运行 C-Reduce 时可使用
--not-c
避免使用 C 特定的 passes。 - 列举了其他类似的测试用例缩减工具如 delta、cvise、Shrink Ray、treereduce 等。
重要细节: - 给出了用于重现 RustPython 运行 scrapscript 时 bug 的脚本
interesting.sh
。 - 展示了 C-Reduce 削减文件过程中不同阶段的百分比和字节数。
- 提到有人在提交日志上实现了更高级的 delta 调试但找不到链接。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。