Bug 10811 – Order dependent IFTI failure

Status
RESOLVED
Resolution
FIXED
Severity
normal
Priority
P2
Component
dmd
Product
D
Version
D2
Platform
All
OS
All
Creation time
2013-08-12T13:17:00Z
Last change time
2013-08-15T23:23:55Z
Keywords
pull, rejects-valid
Assigned to
nobody
Creator
k.hara.pg

Comments

Comment #0 by k.hara.pg — 2013-08-12T13:17:13Z
With both version = ng and ok, the code should be compiled successfully. version (ng) { void foo(R1, R2)(R1 r1, R2 r2) {} template foo(alias pred) { void foo(R1, R2)(R1 r1, R2 r2) {} } } version (ok) { template foo(alias pred) { void foo(R1, R2)(R1 r1, R2 r2) {} } void foo(R1, R2)(R1 r1, R2 r2) {} } void main() { foo(1, 2); foo!(a => a)(1, 2); }
Comment #1 by k.hara.pg — 2013-08-12T23:10:59Z
Comment #2 by github-bugzilla — 2013-08-13T02:34:14Z
Commits pushed to master at https://github.com/D-Programming-Language/phobos https://github.com/D-Programming-Language/phobos/commit/bf9676b0cf75c2e16c2f485e06eefd3fd0ee234b Remove conflict template function By fixing bug 10811, both toUTFz template functions will conflict on the call `toUTFz!(T)(str)`. Remove one to resolve ambiguity. https://github.com/D-Programming-Language/phobos/commit/82085781b0b18b4a799f0727e80aadb41b3369d5 Merge pull request #1473 from 9rnsr/fix10811 Supplemental fix for issue 10811 - Remove conflict template function
Comment #3 by github-bugzilla — 2013-08-15T23:23:44Z
Commits pushed to master at https://github.com/D-Programming-Language/dmd https://github.com/D-Programming-Language/dmd/commit/0cefbdccbc755415fb31966b17973c51fc707610 fix Issue 10811 - Order dependent IFTI failure https://github.com/D-Programming-Language/dmd/commit/a5c9b9ae4c25aea71153f162ed7026f561061e28 Merge pull request #2472 from 9rnsr/fix10811 Issue 10811 - Order dependent IFTI failure