d: Use d_comdat_linkage on generated internal decl.

This adds weak linkage to internal TypeInfo data on top of the existing
DECL_COMDAT, which helps in the unlikely event that two of the same
TypeInfo data ends up in multiple places.

gcc/d/ChangeLog:

	* typeinfo.cc (TypeInfoVisitor::internal_reference): Call
	d_comdat_linkage on generated decl.
This commit is contained in:
Iain Buclaw 2020-03-30 11:37:30 +02:00
parent 1165109b40
commit 48742e02d7
2 changed files with 6 additions and 1 deletions

View File

@ -1,3 +1,8 @@
2020-03-31 Iain Buclaw <ibuclaw@gdcproject.org>
* typeinfo.cc (TypeInfoVisitor::internal_reference): Call
d_comdat_linkage on generated decl.
2020-03-22 Iain Buclaw <ibuclaw@gdcproject.org>
PR d/93038

View File

@ -358,7 +358,7 @@ class TypeInfoVisitor : public Visitor
DECL_EXTERNAL (decl) = 0;
TREE_PUBLIC (decl) = 1;
DECL_VISIBILITY (decl) = VISIBILITY_INTERNAL;
DECL_COMDAT (decl) = 1;
d_comdat_linkage (decl);
d_pushdecl (decl);
return decl;