Skip to content

调研:YACL 即将升级到 C++20 并放弃对老版本 C++ 的兼容 #171

Open
@usafchn

Description

鉴于 C++20 带来了许多语言新特性,可以提高代码可读性,简化写法,提升 meta programing 能力,提升性能,加快编译速度等等,YACL/HEU/SPU/SCQL 计划从 C++17 全面迁移到 C++20。

目前 YACL 最低要求是 C++17,GCC > 11.2,升级后最低要求 C++20,GCC > 11.2

对使用者的影响

仅影响直接通用 C++ 调用 YACL 的用户,通过其它语言接口(Python SDK)的用户不受影响。

对于 C++ 使用者:YACL 升级 C++20 后直接依赖项目也需要在 20 模式下编译,其中 GCC 11.2 已经支持 C++20 语法,编译器不用变,需要做的是 GCC 编译参数把 -std=c++17 改为 -std=c++20

反馈

考虑到一些项目从 C++17 升到 20 后可能编译不过,如果您对升级 20 有什么疑问或需要技术支持,请留言;或者您确实必须依赖 C++17 版本,也请留言告诉我们

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions