Bug 12534 – ICE on using expression tuple as type tuple

Status
RESOLVED
Resolution
FIXED
Severity
normal
Priority
P2
Component
dmd
Product
D
Version
D2
Platform
All
OS
All
Creation time
2014-04-06T19:59:00Z
Last change time
2014-04-07T15:41:13Z
Keywords
ice, pull
Assigned to
nobody
Creator
k.hara.pg

Comments

Comment #0 by k.hara.pg — 2014-04-06T19:59:28Z
Test case: alias TypeTuple(T...) = T; void main() { int x, y; alias exprs = TypeTuple!(x, y); static assert(is(exprs[0..0])); // ICE! } ---- Output: assert hdrgen.c(770) 0
Comment #1 by k.hara.pg — 2014-04-06T21:02:31Z
Comment #2 by github-bugzilla — 2014-04-07T12:50:29Z
Commits pushed to master at https://github.com/D-Programming-Language/dmd https://github.com/D-Programming-Language/dmd/commit/478b03d5d6fd7c3f88447bccb91beeaad4523d4f fix Issue 12534 - ICE on using expression tuple as type tuple TypeSlice::next should be handled as same as TypeSArray and TypeDArray - if the next part is reduced to error type, it should not be returned to the original field. https://github.com/D-Programming-Language/dmd/commit/8fd2207dfc52586035c9b855577fde815b69a33c Merge pull request #3429 from 9rnsr/fix12534 Issue 12534 - ICE on using expression tuple as type tuple