diff options
| author | neil <neil@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-03-27 23:16:17 +0000 | 
|---|---|---|
| committer | neil <neil@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-03-27 23:16:17 +0000 | 
| commit | 26ca6c20d7d4a617492ff36de39dd6db5f954c9f (patch) | |
| tree | 27099856cce240c3bcd83ede60b64841aa5a0aa9 /gcc | |
| parent | f457b1b8350ea26180d60c739dfd7258552ee41a (diff) | |
| download | ppe42-gcc-26ca6c20d7d4a617492ff36de39dd6db5f954c9f.tar.gz ppe42-gcc-26ca6c20d7d4a617492ff36de39dd6db5f954c9f.zip  | |
	* Makefile.in (attribs.o): Update.
	* attribs.c: Include langhooks.h.
	(decl_attributes): Use langhook.
	* c-decl.c (insert_default_attributes): Rename.
	* c-tree.h (c_insert_default_attributes): New.
	* langhooks-def.h (LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES):New.
	(LANG_HOOKS_INITIALIZER): Update.
	* langhooks.h (struct lang_hooks): New hook.
	* tree.h (insert_default_attributes): Remove.
ada:
	* misc.c (insert_default_attributes): Remove.
cp:
	* cp-lang.c (LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES): Redefine.
	* cp-tree.h (cxx_insert_default_attributes): New.
	* decl.c (insert_default_attributes): Rename.
objc:
	* objc-lang.c (LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES): Redefine.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@51488 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc')
| -rw-r--r-- | gcc/ChangeLog | 14 | ||||
| -rw-r--r-- | gcc/Makefile.in | 2 | ||||
| -rw-r--r-- | gcc/ada/ChangeLog | 4 | ||||
| -rw-r--r-- | gcc/ada/misc.c | 8 | ||||
| -rw-r--r-- | gcc/attribs.c | 3 | ||||
| -rw-r--r-- | gcc/c-decl.c | 2 | ||||
| -rw-r--r-- | gcc/c-lang.c | 2 | ||||
| -rw-r--r-- | gcc/c-tree.h | 1 | ||||
| -rw-r--r-- | gcc/cp/ChangeLog | 6 | ||||
| -rw-r--r-- | gcc/cp/cp-lang.c | 2 | ||||
| -rw-r--r-- | gcc/cp/cp-tree.h | 1 | ||||
| -rw-r--r-- | gcc/cp/decl.c | 2 | ||||
| -rw-r--r-- | gcc/langhooks-def.h | 2 | ||||
| -rw-r--r-- | gcc/langhooks.h | 4 | ||||
| -rw-r--r-- | gcc/objc/objc-lang.c | 2 | ||||
| -rw-r--r-- | gcc/tree.h | 4 | 
16 files changed, 43 insertions, 16 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 6689e62c4dc..540dc828342 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,17 @@ +2002-03-27  Neil Booth  <neil@daikokuya.demon.co.uk> + +	* Makefile.in (attribs.o): Update. +	* attribs.c: Include langhooks.h. +	(decl_attributes): Use langhook. +	* c-decl.c (insert_default_attributes): Rename. +	* c-tree.h (c_insert_default_attributes): New. +	* langhooks-def.h (LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES):New. +	(LANG_HOOKS_INITIALIZER): Update. +	* langhooks.h (struct lang_hooks): New hook. +	* tree.h (insert_default_attributes): Remove. +objc: +	* objc-lang.c (LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES): Redefine. +  2002-03-27  Andreas Schwab  <schwab@suse.de>  	* config/i386/i386.c (classify_argument): Also check for diff --git a/gcc/Makefile.in b/gcc/Makefile.in index 0603e261b04..2a71b731bf1 100644 --- a/gcc/Makefile.in +++ b/gcc/Makefile.in @@ -1214,7 +1214,7 @@ c-common.o : c-common.c $(CONFIG_H) $(SYSTEM_H) $(TREE_H) $(OBSTACK_H) \  attribs.o : attribs.c $(CONFIG_H) $(SYSTEM_H) $(TREE_H) $(OBSTACK_H) flags.h \  	toplev.h output.h c-pragma.h $(RTL_H) $(GGC_H) $(EXPR_H) $(TM_P_H) \ -	builtin-types.def $(TARGET_H) +	builtin-types.def $(TARGET_H) langhooks.h  c-format.o : c-format.c $(CONFIG_H) $(SYSTEM_H) $(TREE_H) \  	$(C_COMMON_H) flags.h toplev.h intl.h diagnostic.h diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 03f747711e9..3738cd4e183 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,5 +1,9 @@  2002-03-27  Neil Booth  <neil@daikokuya.demon.co.uk> +	* misc.c (insert_default_attributes): Remove. + +2002-03-27  Neil Booth  <neil@daikokuya.demon.co.uk> +  	* misc.c (LANG_HOOKS_EXPAND_EXPR): Redefine.  	(gnat_init): Don't set hook.  	(gnat_expand_expr): Fix prototype. diff --git a/gcc/ada/misc.c b/gcc/ada/misc.c index 5a2c68ae470..000e6046ce5 100644 --- a/gcc/ada/misc.c +++ b/gcc/ada/misc.c @@ -801,14 +801,6 @@ gnat_get_alias_set (type)    return -1;  } -/* Set default attributes for functions.  We do nothing.  */ - -void -insert_default_attributes (decl) -     tree decl ATTRIBUTE_UNUSED; -{ -} -  /* GNU_TYPE is a type. Determine if it should be passed by reference by     default.  */ diff --git a/gcc/attribs.c b/gcc/attribs.c index 74f6b05d010..69d2ef26a64 100644 --- a/gcc/attribs.c +++ b/gcc/attribs.c @@ -32,6 +32,7 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA  #include "obstack.h"  #include "cpplib.h"  #include "target.h" +#include "langhooks.h"  static void init_attributes		PARAMS ((void)); @@ -274,7 +275,7 @@ decl_attributes (node, attributes, flags)    if (DECL_P (*node) && TREE_CODE (*node) == FUNCTION_DECL        && !(flags & (int) ATTR_FLAG_BUILT_IN)) -    insert_default_attributes (*node); +    (*lang_hooks.insert_default_attributes) (*node);    for (a = attributes; a; a = TREE_CHAIN (a))      { diff --git a/gcc/c-decl.c b/gcc/c-decl.c index e1d104d4fc9..620a16f5d5d 100644 --- a/gcc/c-decl.c +++ b/gcc/c-decl.c @@ -3087,7 +3087,7 @@ builtin_function (name, type, function_code, class, library_name)     attributes.  */  void -insert_default_attributes (decl) +c_insert_default_attributes (decl)       tree decl;  {    if (!TREE_PUBLIC (decl)) diff --git a/gcc/c-lang.c b/gcc/c-lang.c index a41730cff7b..c49c948fc46 100644 --- a/gcc/c-lang.c +++ b/gcc/c-lang.c @@ -56,6 +56,8 @@ static void c_post_options PARAMS ((void));  #define LANG_HOOKS_EXPAND_EXPR c_expand_expr  #undef LANG_HOOKS_PARSE_FILE  #define LANG_HOOKS_PARSE_FILE c_common_parse_file +#undef LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES +#define LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES c_insert_default_attributes  #undef LANG_HOOKS_STATICP  #define LANG_HOOKS_STATICP c_staticp  #undef LANG_HOOKS_PRINT_IDENTIFIER diff --git a/gcc/c-tree.h b/gcc/c-tree.h index ad2d88df228..53d55d4309b 100644 --- a/gcc/c-tree.h +++ b/gcc/c-tree.h @@ -175,6 +175,7 @@ extern void insert_block			PARAMS ((tree));  extern void set_block				PARAMS ((tree));  extern tree pushdecl				PARAMS ((tree)); +extern void c_insert_default_attributes		PARAMS ((tree));  extern void c_init_decl_processing		PARAMS ((void));  extern void c_dup_lang_specific_decl		PARAMS ((tree));  extern void c_print_identifier			PARAMS ((FILE *, tree, int)); diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 7bd5c22137c..5a936bae11f 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,9 @@ +2002-03-27  Neil Booth  <neil@daikokuya.demon.co.uk> + +	* cp-lang.c (LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES): Redefine. +	* cp-tree.h (cxx_insert_default_attributes): New. +	* decl.c (insert_default_attributes): Rename. +  2002-03-27  Mark Mitchell  <mark@codesourcery.com>  	PR c++/4884 diff --git a/gcc/cp/cp-lang.c b/gcc/cp/cp-lang.c index fd6c29f02dc..7516b4352ec 100644 --- a/gcc/cp/cp-lang.c +++ b/gcc/cp/cp-lang.c @@ -61,6 +61,8 @@ static bool ok_to_generate_alias_set_for_type PARAMS ((tree));  #define LANG_HOOKS_UNSAVE_EXPR_NOW cxx_unsave_expr_now  #undef LANG_HOOKS_MAYBE_BUILD_CLEANUP  #define LANG_HOOKS_MAYBE_BUILD_CLEANUP cxx_maybe_build_cleanup +#undef LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES +#define LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES cxx_insert_default_attributes  #undef LANG_HOOKS_MARK_TREE  #define LANG_HOOKS_MARK_TREE cxx_mark_tree  #undef LANG_HOOKS_PRINT_STATISTICS diff --git a/gcc/cp/cp-tree.h b/gcc/cp/cp-tree.h index 99cde0f8f3e..bab908b9a81 100644 --- a/gcc/cp/cp-tree.h +++ b/gcc/cp/cp-tree.h @@ -3667,6 +3667,7 @@ extern void set_block				PARAMS ((tree));  extern tree pushdecl				PARAMS ((tree));  extern void cxx_init_decl_processing		PARAMS ((void));  extern void cxx_mark_tree			PARAMS ((tree)); +extern void cxx_insert_default_attributes	PARAMS ((tree));  extern int toplevel_bindings_p			PARAMS ((void));  extern int namespace_bindings_p			PARAMS ((void));  extern void keep_next_level			PARAMS ((int)); diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c index 208370793f4..7dbb55bdfbd 100644 --- a/gcc/cp/decl.c +++ b/gcc/cp/decl.c @@ -6886,7 +6886,7 @@ push_throw_library_fn (name, type)     attributes.  */  void -insert_default_attributes (decl) +cxx_insert_default_attributes (decl)       tree decl;  {    if (!DECL_EXTERN_C_FUNCTION_P (decl)) diff --git a/gcc/langhooks-def.h b/gcc/langhooks-def.h index 974f8625360..61559a17d3b 100644 --- a/gcc/langhooks-def.h +++ b/gcc/langhooks-def.h @@ -82,6 +82,7 @@ tree lhd_tree_inlining_convert_parm_for_inlining PARAMS ((tree, tree, tree));  #define LANG_HOOKS_EXPAND_EXPR		lhd_expand_expr  #define LANG_HOOKS_SAFE_FROM_P		lhd_safe_from_p  #define LANG_HOOKS_STATICP		lhd_staticp +#define LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES lhd_do_nothing_t  #define LANG_HOOKS_DUP_LANG_SPECIFIC_DECL lhd_do_nothing_t  #define LANG_HOOKS_UNSAVE_EXPR_NOW	lhd_unsave_expr_now  #define LANG_HOOKS_MAYBE_BUILD_CLEANUP	lhd_return_null_tree @@ -177,6 +178,7 @@ int lhd_tree_dump_type_quals			PARAMS ((tree));    LANG_HOOKS_GET_ALIAS_SET, \    LANG_HOOKS_EXPAND_CONSTANT, \    LANG_HOOKS_EXPAND_EXPR, \ +  LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES, \    LANG_HOOKS_SAFE_FROM_P, \    LANG_HOOKS_STATICP, \    LANG_HOOKS_DUP_LANG_SPECIFIC_DECL, \ diff --git a/gcc/langhooks.h b/gcc/langhooks.h index 332ede8d32f..a71f7ec37f6 100644 --- a/gcc/langhooks.h +++ b/gcc/langhooks.h @@ -165,6 +165,10 @@ struct lang_hooks       Fourth argument is actually an enum expand_modifier.  */    rtx (*expand_expr) PARAMS ((tree, rtx, enum machine_mode, int)); +  /* Possibly apply default attributes to a function (represented by +     a FUNCTION_DECL).  */ +  void (*insert_default_attributes) PARAMS ((tree)); +    /* Hook called by safe_from_p for language-specific tree codes.  It is       up to the language front-end to install a hook if it has any such       codes that safe_from_p needs to know about.  Since same_from_p will diff --git a/gcc/objc/objc-lang.c b/gcc/objc/objc-lang.c index 702bbad632a..b189d6bfe93 100644 --- a/gcc/objc/objc-lang.c +++ b/gcc/objc/objc-lang.c @@ -50,6 +50,8 @@ static void objc_post_options                   PARAMS ((void));  #define LANG_HOOKS_MARK_TREE c_mark_tree  #undef LANG_HOOKS_EXPAND_EXPR  #define LANG_HOOKS_EXPAND_EXPR c_expand_expr +#undef LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES +#define LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES c_insert_default_attributes  #undef LANG_HOOKS_STATICP  #define LANG_HOOKS_STATICP c_staticp  #undef LANG_HOOKS_DUP_LANG_SPECIFIC_DECL diff --git a/gcc/tree.h b/gcc/tree.h index 3018f2a4490..6635248f928 100644 --- a/gcc/tree.h +++ b/gcc/tree.h @@ -2976,10 +2976,6 @@ extern tree decl_attributes		PARAMS ((tree *, tree, int));  /* The following function must be provided by front ends     using attribs.c.  */ -/* Possibly apply default attributes to a function (represented by -   a FUNCTION_DECL).  */ -extern void insert_default_attributes PARAMS ((tree)); -  /* Table of machine-independent attributes for checking formats, if used.  */  extern const struct attribute_spec *format_attribute_table;  | 

