https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99914

--- Comment #3 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Iain Buclaw <ibuc...@gcc.gnu.org>:

https://gcc.gnu.org/g:5b63eb17d863ac080cf3c7df08233054b09d3747

commit r11-8173-g5b63eb17d863ac080cf3c7df08233054b09d3747
Author: Iain Buclaw <ibuc...@gdcproject.org>
Date:   Tue Apr 13 16:19:03 2021 +0200

    d: Move call to set_linkage_for_decl to declare_extern_var.

    This both prevents against it being called twice for declarations that
    are defined, and fixes an issue where variables defined in the
    compilation get one kind of linkage (weak), and the same variables
    declared via declare_extern_var get another (extern).

    gcc/d/ChangeLog:

            PR d/99914
            * decl.cc (DeclVisitor::visit (StructDeclaration *)): Don't set
            DECL_INSTANTIATED on static initializer declarations.
            (DeclVisitor::visit (ClassDeclaration *)): Likewise.
            (DeclVisitor::visit (EnumDeclaration *)): Likewise.
            (d_finish_decl): Move call to set_linkage_for_decl to...
            (declare_extern_var): ...here.

Reply via email to