Bug 14986 – [REG2.068.1-b2] Assertion failed: (id->dyncast() == DYNCAST_DSYMBOL)

Status
RESOLVED
Resolution
FIXED
Severity
regression
Priority
P1
Component
dmd
Product
D
Version
D2
Platform
All
OS
All
Creation time
2015-08-31T07:05:00Z
Last change time
2015-09-02T04:10:23Z
Keywords
ice, pull
Assigned to
nobody
Creator
doob

Comments

Comment #0 by doob — 2015-08-31T07:05:38Z
When I compile Tango use DMD 2.068.1-b2 I get this error (dmd -c tango/core/Variant.d) : Assertion failed: (id->dyncast() == DYNCAST_DSYMBOL), function toExpression, file mtype.c, line 6894. It looks similar to issue 14889 but this assertion is at a different location.
Comment #1 by k.hara.pg — 2015-08-31T11:10:47Z
Please post the reduced test case in bugzilla.
Comment #2 by doob — 2015-08-31T12:01:15Z
This is what Dustmite reduced it to: fromVararg() { new [types[i].tsize]; }
Comment #3 by doob — 2015-08-31T12:05:57Z
And here's a test case with valid code: struct Foo { int tsize; } void main() { Foo[] types; new void[types[0].tsize]; }
Comment #4 by k.hara.pg — 2015-08-31T13:26:30Z
(In reply to Jacob Carlborg from comment #2) (In reply to Jacob Carlborg from comment #3) Thanks. I'll start working on this.
Comment #5 by k.hara.pg — 2015-08-31T13:52:11Z
Comment #6 by github-bugzilla — 2015-09-01T01:12:08Z
Commits pushed to stable at https://github.com/D-Programming-Language/dmd https://github.com/D-Programming-Language/dmd/commit/0f50f12dfda9064723ed1d78fe0e724687fff150 fix Issue 14986 - Assertion failed: (id->dyncast() == DYNCAST_DSYMBOL) https://github.com/D-Programming-Language/dmd/commit/fa02c617d58e9dc73afbef83f41ae041287e3ba9 Merge pull request #5004 from 9rnsr/fix14986 [REG2.068.1-b2] Issue 14986 - Assertion failed: (id->dyncast() == DYNCAST_DSYMBOL)
Comment #7 by doob — 2015-09-01T06:19:30Z
Thanks for the quick fix.
Comment #8 by github-bugzilla — 2015-09-02T04:10:23Z