9rnsr · GitHub

@9rnsr

…bol.c
…toObjFile()

@9rnsr

…ssary symbol emission
Template constraint evaluation may instantiate exactly same symbols multiple times (eg. issue 10133 test case in test/runnable/funclit.d).
It would cause linker error "duplicate COMDAT" in Win64. To avoid the issue, dmd should elide unnecessary symbol emission.
If a template is instantiated in template constraint or static condition, it's marked as speculative instantiation.
If no other code at non-speculative context refer the instance, compiler will elide its code generation.

@9rnsr

WalterBright added a commit that referenced this pull request

Aug 22, 2014
[REG2.066a] Issue 13299 - Property not found with typesafe variadic opDispatch

@WalterBright

@9rnsr

9rnsr pushed a commit to 9rnsr/dmd that referenced this pull request

Aug 26, 2014
[REG2.066a] Issue 13299 - Property not found with typesafe variadic opDispatch

@9rnsr 9rnsr mentioned this pull request

Aug 26, 2014

Merged

@9rnsr 9rnsr mentioned this pull request

Aug 28, 2014

Merged

gulugulubing pushed a commit to gulugulubing/dmd that referenced this pull request

Mar 15, 2026

Read the original on github.com ↗