【发布时间】:2019-02-07 11:15:38
【问题描述】:
我发现这个 sn-p 可以用 GCC7.3 编译和运行,但不能用 clang7:
const std::vector foo({1, 2, 3, 4});
foo.clear();
我预计会出现编译器错误,但 GCC 很乐意清除向量。
【问题讨论】:
-
似乎在版本 8 中已修复:godbolt.org/z/Fg7qdW
我发现这个 sn-p 可以用 GCC7.3 编译和运行,但不能用 clang7:
const std::vector foo({1, 2, 3, 4});
foo.clear();
我预计会出现编译器错误,但 GCC 很乐意清除向量。
【问题讨论】:
这是 GCC 错误83818;它已通过 GCC 8 修复。
不幸的是,那里没有更多信息——唯一的“修复”似乎是不使用类模板参数推导或升级编译器。
【讨论】: