Bug 19295 – ICE when taking address of member function passed as template parameter

Status
RESOLVED
Resolution
FIXED
Severity
regression
Priority
P1
Component
dmd
Product
D
Version
D2
Platform
All
OS
All
Creation time
2018-10-09T11:05:35Z
Last change time
2020-03-21T03:56:38Z
Keywords
ice
Assigned to
No Owner
Creator
Simen Kjaeraas

Comments

Comment #0 by simen.kjaras — 2018-10-09T11:05:35Z
The below code causes DMD to go tits up: struct S1(T...) { auto fun() { pragma(msg, &T[0]); } } struct S2 { void gun(); S1!gun overloaded; }
Comment #1 by dlang-bot — 2019-07-02T13:49:21Z
@Basile-z created dlang/dmd pull request #10123 "fix issue 19295 - ICE when taking address of member function passed as template parameter" fixing this issue: - fix issue 19295 - ICE when taking address of member function passed as template parameter https://github.com/dlang/dmd/pull/10123
Comment #2 by b2.temp — 2019-07-02T13:53:46Z
This was even a very old reg (2.064)
Comment #3 by dlang-bot — 2019-07-03T00:29:08Z
dlang/dmd pull request #10123 "fix issue 19295 - ICE when taking address of member function passed as template parameter" was merged into stable: - 5384aeeaf3f39c05ec4cebd0e42e0bac090153a4 by Basile Burg: fix issue 19295 - ICE when taking address of member function passed as template parameter https://github.com/dlang/dmd/pull/10123