-
- Downloads
attribs.c (decl_attributes): Possibly call insert_default_attributes to insert...
attribs.c (decl_attributes): Possibly call insert_default_attributes to insert default attributes on... * attribs.c (decl_attributes): Possibly call insert_default_attributes to insert default attributes on functions in a lazy manner. * builtin-attrs.def: New file; define the default format and format_arg attributes. * c-common.c (c_format_attribute_table): Move to earlier in the file. (c_common_nodes_and_builtins): Initialize format_attribute_table. (enum built_in_attribute, built_in_attributes, c_attrs_initialized, c_init_attributes, c_common_insert_default_attributes): New. (c_common_lang_init): Don't initialize format_attribute_table. Do call c_init_attributes. * Makefile.in (c-common.o): Depend on builtin-attrs.def. * c-common.h (init_function_format_info): Don't declare. (c_common_insert_default_attributes): Declare. * c-decl.c (implicitly_declare, builtin_function): Call decl_attributes. (init_decl_processing): Don't call init_function_format_info. (insert_default_attributes): New. * c-format.c (handle_format_attribute, handle_format_arg_attribute): Be quiet about inappropriate declaration when applying default attributes. (init_function_format_info): Remove. * tree.h (enum attribute_flags): Add ATTR_FLAG_BUILT_IN. (insert_default_attributes): Declare. cp: * decl.c (init_decl_processing): Don't call init_function_format_info. Initialize lang_attribute_table earlier. (builtin_function): Call decl_attributes. (insert_default_attributes): New. testsuite: * gcc.dg/format/attr-5.c, gcc.dg/format/attr-6.c: New tests. From-SVN: r45942
Showing
- gcc/ChangeLog 29 additions, 0 deletionsgcc/ChangeLog
- gcc/Makefile.in 1 addition, 1 deletiongcc/Makefile.in
- gcc/attribs.c 9 additions, 1 deletiongcc/attribs.c
- gcc/builtin-attrs.def 166 additions, 0 deletionsgcc/builtin-attrs.def
- gcc/c-common.c 94 additions, 12 deletionsgcc/c-common.c
- gcc/c-common.h 1 addition, 1 deletiongcc/c-common.h
- gcc/c-decl.c 19 additions, 4 deletionsgcc/c-decl.c
- gcc/c-format.c 10 additions, 80 deletionsgcc/c-format.c
- gcc/cp/ChangeLog 8 additions, 0 deletionsgcc/cp/ChangeLog
- gcc/cp/decl.c 19 additions, 5 deletionsgcc/cp/decl.c
- gcc/testsuite/ChangeLog 4 additions, 0 deletionsgcc/testsuite/ChangeLog
- gcc/testsuite/gcc.dg/format/attr-5.c 28 additions, 0 deletionsgcc/testsuite/gcc.dg/format/attr-5.c
- gcc/testsuite/gcc.dg/format/attr-6.c 21 additions, 0 deletionsgcc/testsuite/gcc.dg/format/attr-6.c
- gcc/tree.h 12 additions, 1 deletiongcc/tree.h
Loading
Please register or sign in to comment