aboutsummaryrefslogtreecommitdiff
path: root/scripts/gcc-plugins/latent_entropy_plugin.c
diff options
context:
space:
mode:
authorKees Cook2018-02-05 17:27:46 -0800
committerKees Cook2018-02-05 17:27:46 -0800
commitb86729109c5fd0a480300f40608aac68764b5adf (patch)
tree0db6d7a68f0c223652413c0dc3132aa8d8ad418b /scripts/gcc-plugins/latent_entropy_plugin.c
parent80d172431696482d9acd8d2c4ea78fed8956e2a1 (diff)
gcc-plugins: Use dynamic initializers
GCC 8 changed the order of some fields and is very picky about ordering in static initializers, so instead just move to dynamic initializers, and drop the redundant already-zero field assignments. Suggested-by: Valdis Kletnieks <valdis.kletnieks@vt.edu> Signed-off-by: Kees Cook <keescook@chromium.org>
Diffstat (limited to 'scripts/gcc-plugins/latent_entropy_plugin.c')
-rw-r--r--scripts/gcc-plugins/latent_entropy_plugin.c17
1 files changed, 5 insertions, 12 deletions
diff --git a/scripts/gcc-plugins/latent_entropy_plugin.c b/scripts/gcc-plugins/latent_entropy_plugin.c
index 65264960910d..cbe1d6c4b1a5 100644
--- a/scripts/gcc-plugins/latent_entropy_plugin.c
+++ b/scripts/gcc-plugins/latent_entropy_plugin.c
@@ -255,21 +255,14 @@ static tree handle_latent_entropy_attribute(tree *node, tree name,
return NULL_TREE;
}
-static struct attribute_spec latent_entropy_attr = {
- .name = "latent_entropy",
- .min_length = 0,
- .max_length = 0,
- .decl_required = true,
- .type_required = false,
- .function_type_required = false,
- .handler = handle_latent_entropy_attribute,
-#if BUILDING_GCC_VERSION >= 4007
- .affects_type_identity = false
-#endif
-};
+static struct attribute_spec latent_entropy_attr = { };
static void register_attributes(void *event_data __unused, void *data __unused)
{
+ latent_entropy_attr.name = "latent_entropy";
+ latent_entropy_attr.decl_required = true;
+ latent_entropy_attr.handler = handle_latent_entropy_attribute;
+
register_attribute(&latent_entropy_attr);
}