Bug 14822 – DMD crash with CTFE range code (v2.067.1)

Status
RESOLVED
Resolution
WORKSFORME
Severity
normal
Priority
P1
Component
dmd
Product
D
Version
D2
Platform
x86_64
OS
Linux
Creation time
2015-07-23T22:01:00Z
Last change time
2015-07-24T03:50:42Z
Assigned to
nobody
Creator
initrd.gz

Attachments

IDFilenameSummaryContent-TypeSize
1531sqlite3.dreduced source codeapplication/x-dsrc886

Comments

Comment #0 by initrd.gz — 2015-07-23T22:01:06Z
Created attachment 1531 reduced source code I've reduced this code with DustMite and attached it to the issue. Compile using `dmd -main -unittest sqlite3.d` Output: > dmd -main -unittest sqlite3.d MapResult(Result(0LU, 0LU)) dmd: struct.c:929: virtual void StructDeclaration::semantic(Scope*): Assertion `type->ty != Tstruct || ((TypeStruct *)type)->sym == this' failed. fish: “dmd -main -unittest sqlite3.d” terminated by signal SIGABRT (Abort)
Comment #1 by k.hara.pg — 2015-07-24T03:50:42Z
The issue does not happen with 2.068-beta1.. I guess the root issue had had a problem in error handling for the template instantiation. I think it has been fixed by: https://github.com/D-Programming-Language/dmd/pull/4464