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; }
Comment #1 by k.hara.pg — 2015-08-12T02:41:03Z
Comment #2 by github-bugzilla — 2018-01-18T10:39:25Z
Commits pushed to master at https://github.com/dlang/dmd https://github.com/dlang/dmd/commit/a49866792e19631fed5d352aebc83ca6aa3222b2 fix Issue 14907 - DMD crash when using template name as a default value of template's typed argument https://github.com/dlang/dmd/commit/6dd820f9c09bd757fb3e31600b1dec8ce0628a12 Merge pull request #7702 from ibuclaw/fix14907 fix Issue 14907 - DMD crash when using template name as a default value of template's typed argument merged-on-behalf-of: Mike Franklin <[email protected]>
Comment #3 by dlang-bot — 2021-04-02T05:45:19Z
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