[randstruct] Enforce using a designated init for a randomized struct
authorBill Wendling <isanbard@gmail.com>
Fri, 15 Apr 2022 18:37:52 +0000 (11:37 -0700)
committerBill Wendling <isanbard@gmail.com>
Fri, 15 Apr 2022 19:29:32 +0000 (12:29 -0700)
commitaed923b1246ac38335b222b89594516fcf0d6385
tree4eb3e07ffea13f37cc00b199e2caa847b762b695
parent73110f1306705746c1f765fdf2bedb0971570ad6
[randstruct] Enforce using a designated init for a randomized struct

A randomized structure needs to use a designated or default initializer.
Using a non-designated initializer will result in values being assigned
to the wrong fields.

Differential Revision: https://reviews.llvm.org/D123763
clang/include/clang/Basic/DiagnosticSemaKinds.td
clang/lib/Sema/SemaInit.cpp
clang/test/Sema/init-randomized-struct.c [new file with mode: 0644]