diff options
Diffstat (limited to 'gcc/lto/lto-lang.c')
-rw-r--r-- | gcc/lto/lto-lang.c | 34 |
1 files changed, 18 insertions, 16 deletions
diff --git a/gcc/lto/lto-lang.c b/gcc/lto/lto-lang.c index 5f157d6..aa928b6 100644 --- a/gcc/lto/lto-lang.c +++ b/gcc/lto/lto-lang.c @@ -52,29 +52,30 @@ static tree handle_format_arg_attribute (tree *, tree, tree, int, bool *); /* Table of machine-independent attributes supported in GIMPLE. */ const struct attribute_spec lto_attribute_table[] = { - /* { name, min_len, max_len, decl_req, type_req, fn_type_req, handler } */ + /* { name, min_len, max_len, decl_req, type_req, fn_type_req, handler, + do_diagnostic } */ { "noreturn", 0, 0, true, false, false, - handle_noreturn_attribute }, + handle_noreturn_attribute, false }, { "leaf", 0, 0, true, false, false, - handle_leaf_attribute }, + handle_leaf_attribute, false }, /* The same comments as for noreturn attributes apply to const ones. */ { "const", 0, 0, true, false, false, - handle_const_attribute }, + handle_const_attribute, false }, { "malloc", 0, 0, true, false, false, - handle_malloc_attribute }, + handle_malloc_attribute, false }, { "pure", 0, 0, true, false, false, - handle_pure_attribute }, + handle_pure_attribute, false }, { "no vops", 0, 0, true, false, false, - handle_novops_attribute }, + handle_novops_attribute, false }, { "nonnull", 0, -1, false, true, true, - handle_nonnull_attribute }, + handle_nonnull_attribute, false }, { "nothrow", 0, 0, true, false, false, - handle_nothrow_attribute }, + handle_nothrow_attribute, false }, { "sentinel", 0, 1, false, true, true, - handle_sentinel_attribute }, + handle_sentinel_attribute, false }, { "type generic", 0, 0, false, true, true, - handle_type_generic_attribute }, - { NULL, 0, 0, false, false, false, NULL } + handle_type_generic_attribute, false }, + { NULL, 0, 0, false, false, false, NULL, false } }; /* Give the specifications for the format attributes, used by C and all @@ -82,12 +83,13 @@ const struct attribute_spec lto_attribute_table[] = const struct attribute_spec lto_format_attribute_table[] = { - /* { name, min_len, max_len, decl_req, type_req, fn_type_req, handler } */ + /* { name, min_len, max_len, decl_req, type_req, fn_type_req, handler, + affects_type_identity } */ { "format", 3, 3, false, true, true, - handle_format_attribute }, + handle_format_attribute, false }, { "format_arg", 1, 1, false, true, true, - handle_format_arg_attribute }, - { NULL, 0, 0, false, false, false, NULL } + handle_format_arg_attribute, false }, + { NULL, 0, 0, false, false, false, NULL, false } }; enum built_in_attribute |