This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: PATCH: flag_external and DECL_EXTERNAL documentation


Jason Merrill <jason@redhat.com> writes:
> No, this is wrong.  DECL_EXTERNAL is set on a function declaration when
> created, but it is cleared in start_function if the declaration is also a
> definition.

Right.  How about this patch?

2001-02-01  lars brinkhoff  <lars@nocrew.org>

        * tree.h (DECL_EXTERNAL): update comment.

Index: tree.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/tree.h,v
retrieving revision 1.222
diff -u -r1.222 tree.h
--- tree.h      2001/01/30 01:38:41     1.222
+++ tree.h      2001/02/01 07:54:54
@@ -1418,9 +1418,10 @@
 /* Language-specific decl information.  */
 #define DECL_LANG_SPECIFIC(NODE) (DECL_CHECK (NODE)->decl.lang_specific)

-/* In a VAR_DECL or FUNCTION_DECL,
-   nonzero means external reference:
-   do not allocate storage, and refer to a definition elsewhere.  */
+/* In a VAR_DECL or FUNCTION_DECL, nonzero means external reference:
+   do not allocate storage, and refer to a definition elsewhere.
+   Note that DECL_EXTERNAL is always set when a non-nested function is
+   declared, and cleared when the function definition is encountered. */
 #define DECL_EXTERNAL(NODE) (DECL_CHECK (NODE)->decl.external_flag)

 /* In a VAR_DECL for a RECORD_TYPE, sets number for non-init_priority

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]