http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59469
--- Comment #37 from Markus Trippelsdorf <trippels at gcc dot gnu.org> --- I think the error is that the symbol from the explicit template instantiation in Function.ii (marked with forced_by_abi) gets merged with the symbol in the same COMDAT group from BasicBlock.ii. (This symbol isn't marked with forced_by_abi, but somehow has prevailing_def_ironly_exp) Merging nodes for _ZN4llvm21SymbolTableListTraitsINS_10BasicBlockENS_8FunctionEE21transferNodesFromListERNS_12ilist_traitsIS1_EENS_14ilist_iteratorIS1_EES8_. Candidates: _ZN4llvm21SymbolTableListTraitsINS_10BasicBlockENS_8FunctionEE21transferNodesFromListERNS_12ilist_traitsIS1_EENS_14ilist_iteratorIS1_EES8_/9 (transferNodesFromList) @0x7f4d65008e18 Type: function definition analyzed Visibility: externally_visible prevailing_def_ironly_exp public weak comdat comdat_group:_ZN4llvm21SymbolTableListTraitsINS_10BasicBlockENS_8FunctionEE21transferNodesFromLi stERNS_12ilist_traitsIS1_EENS_14ilist_iteratorIS1_EES8_ one_only next sharing asm name: 22 References: Referring: Read from file: /tmp/ccx3oVJ3.o First run: 0 Function flags: Called by: _ZN4llvm10BasicBlock10moveBeforeEv/1 (1.00 per call) (can throw external) _ZN4llvm10BasicBlock10moveBeforeEv/1 (1.00 per call) (can throw external) Calls: _ZN4llvm14ilist_iteratorINS_10BasicBlockEEneERS2_/16 (11.11 per call) (can throw external) _ZN4llvm14ilist_iteratorINS_10BasicBlockEEppEv/15 (10.11 per call) (can throw external) _ZN4llvm12ilist_traitsINS_10BasicBlockEE9getSymTabEPNS_8FunctionE/14 (1.00 per call) (can throw external) _ZN4llvm21SymbolTableListTraitsINS_10BasicBlockENS_8Fu nctionEE12getListOwnerEv/13 (1.00 per call) (can throw external) _ZN4llvm21SymbolTableListTraitsINS_10BasicBlockENS_8FunctionEE12getListOwnerEv/13 (1.00 per call) (can throw external) _ZN4llvm21SymbolTableListTraitsINS_10BasicBlockENS_8FunctionEE21transferNodesFromListERNS_12ilist_traitsIS1_EENS_14ilist_iteratorIS1_EES8_/22 (transferNodesFromList) @0x7f4d651888f8 Type: function definition analyzed Visibility: forced_by_abi externally_visible preempted_ir public weak comdat_group:_ZN4llvm21SymbolTableListTraitsINS_10BasicBlockENS_8FunctionEE21transferNodesFromListERNS _12ilist_traitsIS1_EENS_14ilist_iteratorIS1_EES8_ one_only previous sharing asm name: 9 References: Referring: Read from file: /tmp/ccZVoWfZ.o First run: 0 Function flags: Called by: Calls: