// RUN: %clang_cc1 -std=c++20 -Wdeprecated-declarations -verify %s struct A { [[deprecated("use something else")]] int x = 42; // expected-note {{marked deprecated here}} }; A makeDefaultA() { return {}; } // ctor is implicit → no warn A copyA(const A &a) { return a; } // copy-ctor implicit → no warn void assignA() { A a, b; a = b; // copy-assign implicit → no warn } void useA() { A a; (void)a.x; // expected-warning {{is deprecated}} } // Explicitly-defaulted ctor – now silent struct B { [[deprecated]] int y; B() = default; // no warning under new policy };