aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorRichard Kenner <kenner@vlsi1.ultra.nyu.edu>2001-09-22 15:13:42 +0000
committerRichard Kenner <kenner@gcc.gnu.org>2001-09-22 11:13:42 -0400
commit0c96e96535d1e50689ce27625e5d01c504ff3310 (patch)
tree6b34238871ed2a82c32557e0119183a69fd00ce6 /gcc
parentaaed02065e41d8385592ce84f9585c88eac7d2f5 (diff)
downloadgcc-0c96e96535d1e50689ce27625e5d01c504ff3310.zip
gcc-0c96e96535d1e50689ce27625e5d01c504ff3310.tar.gz
gcc-0c96e96535d1e50689ce27625e5d01c504ff3310.tar.bz2
c-common.c (format_attribute_table): Remove decl.
* c-common.c (format_attribute_table): Remove decl. * tree.h (format_attribute_table, lang_attribute_table): New decls. (lang_attribute_common): Likewise. From-SVN: r45754
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/c-common.c2
-rw-r--r--gcc/tree.h18
3 files changed, 22 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 1a0e10c..e3f1a65 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,9 @@
Sat Sep 22 09:09:32 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+ * c-common.c (format_attribute_table): Remove decl.
+ * tree.h (format_attribute_table, lang_attribute_table): New decls.
+ (lang_attribute_common): Likewise.
+
* function.c (fix_lexical_address): Use set_mem_alias_set.
(expand_function_start): Likewise.
* config/alpha/alpha.h (SETUP_INCOMING_VARARGS): Likewise.
diff --git a/gcc/c-common.c b/gcc/c-common.c
index fd1aef1..74a5552 100644
--- a/gcc/c-common.c
+++ b/gcc/c-common.c
@@ -3784,8 +3784,6 @@ static const struct attribute_spec c_format_attribute_table[] =
{ NULL, 0, 0, false, false, false, NULL }
};
-extern const struct attribute_spec *format_attribute_table;
-
/* Do the parts of lang_init common to C and C++. */
void
c_common_lang_init ()
diff --git a/gcc/tree.h b/gcc/tree.h
index 8bec94f..b95a4aa 100644
--- a/gcc/tree.h
+++ b/gcc/tree.h
@@ -2907,8 +2907,26 @@ extern rtx emit_line_note PARAMS ((const char *, int));
extern int setjmp_call_p PARAMS ((tree));
/* In attribs.c. */
+
+/* Process the attributes listed in ATTRIBUTES and install them in *NODE,
+ which is either a DECL (including a TYPE_DECL) or a TYPE. If a DECL,
+ it should be modified in place; if a TYPE, a copy should be created
+ unless ATTR_FLAG_TYPE_IN_PLACE is set in FLAGS. FLAGS gives further
+ information, in the form of a bitwise OR of flags in enum attribute_flags
+ from tree.h. Depending on these flags, some attributes may be
+ returned to be applied at a later stage (for example, to apply
+ a decl attribute to the declaration rather than to its type). */
extern tree decl_attributes PARAMS ((tree *, tree, int));
+/* Table of machine-independent attributes for checking formats, if used. */
+extern const struct attribute_spec *format_attribute_table;
+
+/* Table of machine-independent attributes for a particular language. */
+extern const struct attribute_spec *lang_attribute_table;
+
+/* Flag saying whether common language attributes are to be supported. */
+extern int lang_attribute_common;
+
/* In front end. */
extern int mark_addressable PARAMS ((tree));