Bug 14907 – DMD crash when using template name as a default value of template's typed argument
Status
RESOLVED
Resolution
FIXED
Severity
critical
Priority
P1
Component
dmd
Product
D
Version
D2
Platform
All
OS
All
Creation time
2015-08-11T17:59:48Z
Last change time
2023-01-01T06:25:00Z
Keywords
ice, pull
Assigned to
No Owner
Creator
Daniel Čejchan
Comments
Comment #0 by czdanol — 2015-08-11T17:59:48Z
Hey,
this code makes the compiler crash (I know it isn't valid):
module main;
private struct Template( void var = Template ) {}
void main() {
Template!() instance;
}
dlang/dmd pull request #12339 "[dmd-cxx] Backport fixes and trivial features from upstream dmd" was merged into dmd-cxx:
- d5278052911c7b40f0a6d625d96022d456c1752b by Iain Buclaw:
[dmd-cxx] fix Issue 14907 - DMD crash when using template name as a default value of template's typed argument
https://github.com/dlang/dmd/pull/12339
Comment #4 by dlang-bot — 2022-12-28T12:46:28Z
dlang/dmd pull request #14745 "fix Issue 18646 - [REG 2.079.0] Recursive template expansion incorrectly reported" was merged into stable:
- 55eeb4bf888169e734033ec2f77ae1a6cdc843c1 by Iain Buclaw:
fix Issue 14907 without introducing TemplateDeclaration.inuse field
https://github.com/dlang/dmd/pull/14745
Comment #5 by dlang-bot — 2023-01-01T06:25:00Z
dlang/dmd pull request #14765 "merge stable" was merged into master:
- d4600cb033698e0aecdf544880ec8c94e572de99 by Iain Buclaw:
fix Issue 14907 without introducing TemplateDeclaration.inuse field
https://github.com/dlang/dmd/pull/14765