首页 > TAG信息列表 > compiler-bug
c – 带有gcc 7.3的__atomic_fetch_or的意外x64程序集
我试图使用64位积分作为位图,并原子地获取/释放各个位的所有权. 为此,我编写了以下无锁代码: #include <cstdint> #include <atomic> static constexpr std::uint64_t NO_INDEX = ~std::uint64_t(0); class AtomicBitMap { public: static constexpr std::uint64_t occupied(c – [成员变量] [[maybe_unused]],GCC警告(错误?)该属性被忽略
在以下example中: struct Foo { [[maybe_unused]] int member = 1; void bar() { [[maybe_unused]] int local = 0; } }; int main(int argc, char* argv[]) { Foo f{}; f.bar(); return 0; } 海湾合作委员会发出警告,其中Clang和MSVC不: warnin在std :: initializer_list中的c – std :: shared_ptr似乎过早被破坏了
编辑:这确实是由Visual Studio中的错误引起的 – 它已经被修复.将Update 2应用于Visual Studio(release candidate available here)后,该问题无法重现.我道歉;我以为我和我的补丁达成了约会. 我不能为我的生活找出当我在Visual Studio 2013中运行以下代码时出现seg错误的原因: #incl