Slashdot 的长期读者 robinsrowe 分享了来自 The Register 的这篇报道:据提案的共同作者称,尽管内存安全问题持续存在,C++ 标准委员会还是放弃了一项旨在创建严格安全 C++ 子集的详细提案。“安全与保障工作组投票决定优先考虑 Profiles,而不是 Safe C++。请咨询 Profiles 的人员了解最新进展。Safe C++ 不会继续推进了,”尖端 Circle C++ 编译器的作者 Sean Baxter 在今年 6 月评论道。这个话题的提出是因为像 Simone Bellavia 这样的开发者注意到了该提案的周年纪念日,并发现 Safe C++ 已经做出了决定。一年前,Baxter 告诉 The Reg,该项目将使 C++ 开发者能够获得 Rust 的内存安全性,而无需学习一门新的语言。“Safe C++ 可以防止用户编写不完善的代码,”他说道。“这包括编译时智能,例如借位检查以防止释放后使用错误,以及初始化分析以确保类型安全。”安全 C++ 将支持代码的增量迁移,因为它仅适用于安全上下文中的代码。现有的非安全代码将照常运行。甚至该提案是否已被放弃也尚不明确。C++ 委员会成员兼 C++ 演进工作组 (EWG) 联合主席 Erich Keane 表示,Baxter 的提案“获得了鼓励票,大约一半(20/45)的人支持 Sean 的论文,30/45 的人鼓励改进配置文件(6 人持中立态度)……我们完全欢迎 Sean 继续努力,委员会中的许多人也乐于看到他为标准化做出进一步的努力。” Baxter 对此回应道:“Rust 安全模型在委员会中并不受欢迎。我这边的进一步工作不会改变这一点。配置文件赢得了这场争论。” 他补充说,EWG 采用的语言演进原则包括以下声明:“我们应该避免要求安全或纯函数注解具有这样的语义:一个安全或纯函数只能调用其他安全或纯函数。”他说,这是“不可调和的设计分歧……”
在 Slashdot 上阅读更多内容。