← Back to index
|
Original Bugzilla link
Bug 14376 – [REG2.064] false positive "Error: one path skips field"
Status
RESOLVED
Resolution
FIXED
Severity
regression
Priority
P1
Component
dmd
Product
D
Version
D2
Platform
All
OS
All
Creation time
2015-03-29T22:41:00Z
Last change time
2015-06-17T21:04:23Z
Keywords
pull, rejects-valid
Assigned to
nobody
Creator
ag0aep6g
Comments
Comment #0
by ag0aep6g — 2015-03-29T22:41:55Z
Fails with "test.d(6): Error: one path skips field x". Should be accepted. struct ParameterValue { typeof(f()) x; this(int dummy) { if(true) this.x = f(); /* line 6 */ else assert(false); } } auto f() { return MapResult!(e => 0)(); } struct MapResult(alias pred) { @property int front() {return pred(0);} }
Comment #1
by dlang-bugzilla — 2015-03-30T18:01:52Z
This code compiles in 2.063.
Comment #2
by dlang-bugzilla — 2015-03-30T18:22:26Z
Introduced in
https://github.com/D-Programming-Language/dmd/pull/2665
Comment #3
by k.hara.pg — 2015-04-05T05:44:37Z
https://github.com/D-Programming-Language/dmd/pull/4557
The field initialization check and this/super call check are implemented by using same logic. So there's a similar issue 14409.
Comment #4
by github-bugzilla — 2015-04-06T19:37:51Z
Commits pushed to master at
https://github.com/D-Programming-Language/dmd
https://github.com/D-Programming-Language/dmd/commit/8691c0c3579107b48e044e01ac340d86f00f885a
fix Issue 14376 - false positive "Error: one path skips field"
https://github.com/D-Programming-Language/dmd/commit/e50b2c90e7cd4b2ceb4c887faecc5d8dd5d9534a
Merge pull request #4557 from 9rnsr/fix14376 [REG2.064] Issue 14376 - false positive "Error: one path skips field"
Comment #5
by github-bugzilla — 2015-04-17T14:09:51Z
Commit pushed to stable at
https://github.com/D-Programming-Language/dmd
https://github.com/D-Programming-Language/dmd/commit/7b6fbfac6b0ace5628dbee85fa6eabfd36f585df
Merge pull request #4557 from 9rnsr/fix14376 [REG2.064] Issue 14376 - false positive "Error: one path skips field" Conflicts: src/expression.c
Comment #6
by github-bugzilla — 2015-04-26T00:04:39Z
Commit pushed to master at
https://github.com/D-Programming-Language/dmd
https://github.com/D-Programming-Language/dmd/commit/7b6fbfac6b0ace5628dbee85fa6eabfd36f585df
Merge pull request #4557 from 9rnsr/fix14376
Comment #7
by github-bugzilla — 2015-06-17T21:04:23Z
Commits pushed to stable at
https://github.com/D-Programming-Language/dmd
https://github.com/D-Programming-Language/dmd/commit/8691c0c3579107b48e044e01ac340d86f00f885a
fix Issue 14376 - false positive "Error: one path skips field"
https://github.com/D-Programming-Language/dmd/commit/e50b2c90e7cd4b2ceb4c887faecc5d8dd5d9534a
Merge pull request #4557 from 9rnsr/fix14376