[clang] Add Clang attribute to ensure that fields are initialized explicitly (PR #102040)

Erich Keane via cfe-commits cfe-commits at lists.llvm.org
Mon Sep 30 07:29:39 PDT 2024


================
@@ -551,3 +551,14 @@ struct full_of_empty empty_test_2(void) {
   struct full_of_empty e;
   return e; // no-warning
 }
+
+struct with_explicit_field {
+  int x;
+  int y [[clang::requires_explicit_initialization]]; // expected-note {{declared}}
----------------
erichkeane wrote:

Noticed you didn't update the diagnostics check lines like I requested.  Please limit partial matches to much less than this.  Also, put the notes right next to the diagnostic, and use the `marker` feature to keep the notes together with the diagnostic (see here for how to do so https://clang.llvm.org/docs/InternalsManual.html#specifying-diagnostics).  

https://github.com/llvm/llvm-project/pull/102040


More information about the cfe-commits mailing list