Bug 16051 – ICE with nested functions and template alias parameter

Status
NEW
Severity
critical
Priority
P2
Component
dmd
Product
D
Version
D2
Platform
x86_64
OS
Linux
Creation time
2016-05-21T12:16:19Z
Last change time
2024-12-13T18:47:53Z
Keywords
ice, ice-on-valid-code
Assigned to
No Owner
Creator
Lars T. Kyllingstad
Moved to GitHub: dmd#19128 →

Comments

Comment #0 by post — 2016-05-21T12:16:19Z
Test case: void fun(alias a)() { auto dg = () { void gun() { } a(&gun); }; } void main() { void hun(R)(R) { } fun!hun(); } This results in the following ICE: dmd: toir.c:249: elem* getEthis(Loc, IRState*, Dsymbol*): Assertion `thisfd->isNested() || thisfd->vthis' failed. This is possibly a duplicate of issue #12839, as it apparently causes the same assertion to fail, but I'm not sure. The test case seems different enough that I decided to open a new bug report for it.
Comment #1 by robert.schadek — 2024-12-13T18:47:53Z
THIS ISSUE HAS BEEN MOVED TO GITHUB https://github.com/dlang/dmd/issues/19128 DO NOT COMMENT HERE ANYMORE, NOBODY WILL SEE IT, THIS ISSUE HAS BEEN MOVED TO GITHUB