https://gcc.gnu.org/bugzilla/show_bug.cgi?id=20357
--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> --- Just for reference here is the ICE that is produced: ``` <source>:10:1: error: Two symbols with same comdat_group are not linked by the same_comdat_group list. 10 | } | ^ _ZN1XIXadL_Z1fvEEEC1Ev/8 (X<f>::X() [with void (* f)() = f]) Type: function definition analyzed alias cpp_implicit_alias Visibility: semantic_interposition public weak comdat comdat_group:_ZN1XIXadL_Z1fvEEEC5Ev one_only Same comdat group as: _ZN1XIXadL_Z1fvEEEC2Ev/7 previous sharing asm name: 5 References: _ZN1XIXadL_Z1fvEEEC2Ev/7 (alias) Referring: Function flags: Called by: main/2 Calls: _ZN1XIXadL_Z1fvEEEC1Ev/5 (X<f>::X() [with void (* f)() = f]) Type: function definition analyzed alias cpp_implicit_alias Visibility: semantic_interposition public weak comdat comdat_group:_ZN1XIXadL_Z1fvEEEC5Ev one_only Same comdat group as: _ZN1XIXadL_Z1fvEEEC2Ev/4 next sharing asm name: 8 References: _ZN1XIXadL_Z1fvEEEC2Ev/4 (alias) Referring: Function flags: Called by: _Z41__static_initialization_and_destruction_0v/9 Calls: ```