<div><div>Hi,</div><div> </div><div><div>I'm trying to identify match std::atomic<T> with is_always_lock_free = true. The problem is that VarDecl->ensureEvaluatedStmt() for VarDecl of is_always_lock_free gives ValueKind::None instead of Int.</div><div> </div><div>The evaluation is <a href="https://reviews.llvm.org/D93940" rel="noopener noreferrer" target="_blank">https://reviews.llvm.org/D93940</a> AsyncBlockingCheck.cpp:319, the analyzed code is atomic class at concurrency-async-blocking.cpp:188 and template instantiation at concurrency-async-blocking.cpp:284. The code works as expected with --std=c++11, but gives ValueKind::None for --std=c++17.</div><div> </div><div>Any help where to look or how the constexpr value should ve evaluated is appreciated.</div></div></div>