C linkage patch

Fergus Henderson fjh@cs.mu.oz.au
Mon Feb 26 07:47:00 GMT 2001


On 26-Feb-2001, Jason Merrill <jason@redhat.com> wrote:
> rest_of_decl_compilation was making the invalid assumption that a VAR_DECL
> with a null DECL_INIT was a 'tentative definition', a concept that only
> applies to C.  This was causing unnecessary deferral of things in C++, and
> presumably other languages as well.
> 
> This patch also extends the handling of DECL_COMDAT in
> wrapup_global_declarations to VAR_DECLs as well as FUNCTION_DECLs.
> 
> Applied to trunk only.
> 
> 2001-02-26  Jason Merrill  <jason@redhat.com>
> 
> 	* c-decl.c (finish_decl): Set DECL_DEFER_OUTPUT on tentative file-scope
> 	definitions.
> 	* toplev.c (rest_of_decl_compilation): Check DECL_DEFER_OUTPUT to
> 	recognize a tentative definition.  Lose obsolete code.
> 
> 	* toplev.c (wrapup_global_declarations): Don't emit DECL_COMDAT
> 	variables unless necessary, either.

That change seems like a reasonably significant change to the
semantics of the front-end interface.  How about documenting that in
the LANGUAGES file?

-- 
Fergus Henderson <fjh@cs.mu.oz.au>  |  "I have always known that the pursuit
                                    |  of excellence is a lethal habit"
WWW: < http://www.cs.mu.oz.au/~fjh >  |     -- the last words of T. S. Garp.



More information about the Gcc-patches mailing list