Thread overview
[Issue 14541] "duplicate COMDAT" linker error with the template forward reference in Tuple.opAssign
May 03, 2015
Kenji Hara
Jul 14, 2015
Kenji Hara
Dec 03, 2020
Walter Bright
May 03, 2015
https://issues.dlang.org/show_bug.cgi?id=14541

Kenji Hara <k.hara.pg@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |pull

--- Comment #1 from Kenji Hara <k.hara.pg@gmail.com> ---
https://github.com/D-Programming-Language/dmd/pull/4626#issuecomment-98389722

--
July 14, 2015
https://issues.dlang.org/show_bug.cgi?id=14541

--- Comment #2 from Kenji Hara <k.hara.pg@gmail.com> ---
(In reply to Kenji Hara from comment #1)
> https://github.com/D-Programming-Language/dmd/pull/4626#issuecomment-98389722

I closed pull 4626, so separate to a new PR: https://github.com/D-Programming-Language/dmd/pull/4814

--
July 19, 2015
https://issues.dlang.org/show_bug.cgi?id=14541

--- Comment #3 from github-bugzilla@puremagic.com ---
Commits pushed to master at https://github.com/D-Programming-Language/dmd

https://github.com/D-Programming-Language/dmd/commit/1112eec29eef531663de289f17800ad4a10fee50
fix Issue 14541 - "duplicate COMDAT" linker error with the template forward
reference in Tuple.opAssign

The "error reproduction instantiation" might succeed to finish semantic analysis by the forward reference resolution. When it happens, the cached error instance needs to be overridden by the succeeded instance.

https://github.com/D-Programming-Language/dmd/commit/0b0d37363727385299c76a52c8ddb5c9db47afd8 Merge pull request #4814 from 9rnsr/fix14541

Issue 14541 - "duplicate COMDAT" linker error with the template forward reference in Tuple.opAssign

--
July 19, 2015
https://issues.dlang.org/show_bug.cgi?id=14541

github-bugzilla@puremagic.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |FIXED

--
August 30, 2015
https://issues.dlang.org/show_bug.cgi?id=14541

--- Comment #4 from github-bugzilla@puremagic.com ---
Commit pushed to stable at https://github.com/D-Programming-Language/dmd

https://github.com/D-Programming-Language/dmd/commit/cd29d5f34cbacebd83ecdb9727ab1b93f7fa6af1 Merge pull request #4814 from 9rnsr/fix14541

Issue 14541 - "duplicate COMDAT" linker error with the template forward reference in Tuple.opAssign

--
September 02, 2015
https://issues.dlang.org/show_bug.cgi?id=14541

--- Comment #5 from github-bugzilla@puremagic.com ---
Commit pushed to master at https://github.com/D-Programming-Language/dmd

https://github.com/D-Programming-Language/dmd/commit/cd29d5f34cbacebd83ecdb9727ab1b93f7fa6af1 Merge pull request #4814 from 9rnsr/fix14541

--
July 22, 2017
https://issues.dlang.org/show_bug.cgi?id=14541

--- Comment #6 from github-bugzilla@puremagic.com ---
Commits pushed to dmd-cxx at https://github.com/dlang/dmd

https://github.com/dlang/dmd/commit/1112eec29eef531663de289f17800ad4a10fee50 fix Issue 14541 - "duplicate COMDAT" linker error with the template forward reference in Tuple.opAssign

https://github.com/dlang/dmd/commit/0b0d37363727385299c76a52c8ddb5c9db47afd8 Merge pull request #4814 from 9rnsr/fix14541

Issue 14541 - "duplicate COMDAT" linker error with the template forward reference in Tuple.opAssign

--
December 03, 2020
https://issues.dlang.org/show_bug.cgi?id=14541

Walter Bright <bugzilla@digitalmars.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |bugzilla@digitalmars.com

--- Comment #7 from Walter Bright <bugzilla@digitalmars.com> ---
I found the test case link14541.d completely baffling. The comment says "If instantiated contexts are different" but the whole idea is that templates in different contexts have different instantiations. This makes no sense. It should give an appropriate forward reference error. Likely the whole PR #4814 should be reverted as it makes no sense.

--