diff options
author | wilson <wilson@138bc75d-0d04-0410-961f-82ee72b054a4> | 1992-09-16 00:55:38 +0000 |
---|---|---|
committer | wilson <wilson@138bc75d-0d04-0410-961f-82ee72b054a4> | 1992-09-16 00:55:38 +0000 |
commit | 91ccdac7f8b3f30dfcf0ec796143ae6a228813f5 (patch) | |
tree | aba0d52e0a05d04bc0df72010d45471b592833a4 /gcc/c-tree.h | |
parent | b33192317368d4d0194c8b738f450fffa1773539 (diff) | |
download | gcc-91ccdac7f8b3f30dfcf0ec796143ae6a228813f5.tar.gz |
(lang_identifier): Add limbo_value field for out of
scope block level extern declarations.
(IDENTIFIER_LIMBO_VALUE): New define, to access that field.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@2129 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/c-tree.h')
-rw-r--r-- | gcc/c-tree.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/c-tree.h b/gcc/c-tree.h index dc70540a1ab..68d29d9749e 100644 --- a/gcc/c-tree.h +++ b/gcc/c-tree.h @@ -19,6 +19,10 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ /* Language-dependent contents of an identifier. */ +/* The limbo_value is used for block level extern declarations, which need + to be type checked against subsequent extern declarations. They can't + be referenced after they fall out of scope, so they can't be global. */ + struct lang_identifier { struct tree_identifier ignore; @@ -53,6 +57,8 @@ struct lang_identifier message for this identifier. Value is a FUNCTION_DECL or null. */ #define IDENTIFIER_ERROR_LOCUS(NODE) \ (((struct lang_identifier *)(NODE))->error_locus) +#define IDENTIFIER_LIMBO_VALUE(NODE) \ + (((struct lang_identifier *)(NODE))->limbo_value) /* In identifiers, C uses the following fields in a special way: TREE_PUBLIC to record that there was a previous local extern decl. |