pr59000: Clarify packed-non-pod warning that it's pod-for-the-purposes-of-layout
authorDavid Blaikie <dblaikie@gmail.com>
Mon, 21 Nov 2022 23:59:21 +0000 (23:59 +0000)
committerDavid Blaikie <dblaikie@gmail.com>
Tue, 22 Nov 2022 00:02:09 +0000 (00:02 +0000)
clang/include/clang/Basic/DiagnosticASTKinds.td
clang/test/CodeGenCXX/warn-padded-packed.cpp

index 15bd9d7..6a2d15e 100644 (file)
@@ -960,8 +960,11 @@ def warn_padded_struct_size : Warning<
   InGroup<Padded>, DefaultIgnore;
 def warn_unnecessary_packed : Warning<
   "packed attribute is unnecessary for %0">, InGroup<Packed>, DefaultIgnore;
-def warn_unpacked_field : Warning<
-  "not packing field %0 as it is non-POD">, InGroup<PackedNonPod>, DefaultIgnore;
+def warn_unpacked_field
+    : Warning<
+          "not packing field %0 as it is non-POD for the purposes of layout">,
+      InGroup<PackedNonPod>,
+      DefaultIgnore;
 
 // -Wunaligned-access
 def warn_unaligned_access : Warning<
index 60cf5e4..cf4890e 100644 (file)
@@ -154,7 +154,7 @@ struct S28 {
   char c1;
   short s1;
   char c2;
-  S28_non_pod p1; // expected-warning {{not packing field 'p1' as it is non-POD}}
+  S28_non_pod p1; // expected-warning {{not packing field 'p1' as it is non-POD for the purposes of layout}}
 } __attribute__((packed));
 
 struct S29_non_pod_align_1 {