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


>>>>> "Lars" == Lars Brinkhoff <lars.spam@nocrew.org> writes:

> 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?

> -/* 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. */

This is describing C-specific behavior, and should not be in a backend
file.  In C, function declarations are implicitly extern, but this may not
be true of other languages.

I think the existing comment is fine.

Jason

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