← Back to index
|
Original Bugzilla link
Bug 13847 – CTFE internal error: dottype
Status
RESOLVED
Resolution
FIXED
Severity
major
Priority
P1
Component
dmd
Product
D
Version
D2
Platform
All
OS
All
Creation time
2014-12-10T04:16:00Z
Last change time
2015-02-18T03:41:11Z
Keywords
CTFE, pull, rejects-valid
Assigned to
nobody
Creator
k.hara.pg
Comments
Comment #0
by k.hara.pg — 2014-12-10T04:16:52Z
Dot-Type expression is not yet properly supported in CTFE. class B { int foo() { return 1; } } class C : B { override int foo() { return 2; } } static assert({ C c = new C(); assert(c.B.foo() == 1); return 1; }());
Comment #1
by k.hara.pg — 2014-12-10T04:48:29Z
https://github.com/D-Programming-Language/dmd/pull/4208
Comment #2
by github-bugzilla — 2014-12-14T22:29:32Z
Commits pushed to master at
https://github.com/D-Programming-Language/dmd
https://github.com/D-Programming-Language/dmd/commit/57091af50ba5d531a34770bb810df26eafe58812
fix Issue 13847 - CTFE internal error: dottype Handle function values in each CTFE steps, then simplify CallExp::interpret() and we need to interpret CallExp::e1 just only once. After all, DotTypeExp will be one of the function values in CTFE, and CallExp::interpret can distinguish 'virtual call' and 'direct call' properly. Also simplify ThisExp::interpret because pthis is always interpreted to a literal expression (TOKstructliteral or TOKclassreference).
https://github.com/D-Programming-Language/dmd/commit/8597cda969db9221350f28903a85fe88fef26821
Merge pull request #4208 from 9rnsr/fix13847 Issue 13847 - CTFE internal error: dottype
Comment #3
by github-bugzilla — 2015-02-18T03:41:11Z
Commits pushed to 2.067 at
https://github.com/D-Programming-Language/dmd
https://github.com/D-Programming-Language/dmd/commit/57091af50ba5d531a34770bb810df26eafe58812
fix Issue 13847 - CTFE internal error: dottype
https://github.com/D-Programming-Language/dmd/commit/8597cda969db9221350f28903a85fe88fef26821
Merge pull request #4208 from 9rnsr/fix13847