Bug 14344 – [REG2.067] Wrong opBinary call in construction

Status
RESOLVED
Resolution
FIXED
Severity
regression
Priority
P1
Component
dmd
Product
D
Version
D2
Platform
All
OS
All
Creation time
2015-03-26T14:13:00Z
Last change time
2015-06-17T21:03:12Z
Keywords
pull, rejects-valid
Assigned to
nobody
Creator
k.hara.pg

Comments

Comment #0 by k.hara.pg — 2015-03-26T14:13:44Z
Issue case: struct CSSScale { CSSScale opBinary(string op)(CSSScale v) { static assert(op != "="); // line 3 assert(0); } } struct CSSScaleMix { CSSScale cssScaleA; alias cssScaleA this; } class TextHighlighter { CSSScaleMix height () {assert(0);} void update() { CSSScale height = this.height; // line 16 } } Output: test.d(3): Error: static assert ("=" != "=") is false test.d(16): instantiated from here: opBinary!"=" The regression introduced in: https://github.com/D-Programming-Language/dmd/pull/4054
Comment #1 by k.hara.pg — 2015-03-26T14:24:47Z
Comment #2 by github-bugzilla — 2015-03-27T05:09:05Z
Commits pushed to master at https://github.com/D-Programming-Language/dmd https://github.com/D-Programming-Language/dmd/commit/a39502dad3138bc911a7c092a38bc095dbd91227 fix Issue 14344 - Wrong opBinary call in construction https://github.com/D-Programming-Language/dmd/commit/1139c4298507a1aa0676e76059d491c6158a6f74 Merge pull request #4519 from 9rnsr/fix14344 [REG2.067] Issue 14344 - Wrong opBinary call in construction
Comment #3 by github-bugzilla — 2015-04-17T14:09:50Z
Commit pushed to stable at https://github.com/D-Programming-Language/dmd https://github.com/D-Programming-Language/dmd/commit/8ecc06d18422b34c051560bd298f7d8299ea3e78 Merge pull request #4519 from 9rnsr/fix14344 [REG2.067] Issue 14344 - Wrong opBinary call in construction
Comment #4 by github-bugzilla — 2015-04-26T00:04:38Z
Comment #5 by github-bugzilla — 2015-06-17T21:03:12Z