digitalmars.D.bugs - [Issue 2778] New: alias this + IFTI doesn't work.
- d-bugmail puremagic.com (33/33) Apr 01 2009 http://d.puremagic.com/issues/show_bug.cgi?id=2778
- d-bugmail puremagic.com (10/10) Oct 23 2011 http://d.puremagic.com/issues/show_bug.cgi?id=2778
- d-bugmail puremagic.com (10/10) Oct 23 2011 http://d.puremagic.com/issues/show_bug.cgi?id=2778
- d-bugmail puremagic.com (9/10) Oct 24 2011 http://d.puremagic.com/issues/show_bug.cgi?id=2778
- d-bugmail puremagic.com (12/12) Nov 02 2011 http://d.puremagic.com/issues/show_bug.cgi?id=2778
- d-bugmail puremagic.com (33/33) Nov 02 2011 http://d.puremagic.com/issues/show_bug.cgi?id=2778
- d-bugmail puremagic.com (11/11) Dec 20 2011 http://d.puremagic.com/issues/show_bug.cgi?id=2778
http://d.puremagic.com/issues/show_bug.cgi?id=2778 Summary: alias this + IFTI doesn't work. Product: D Version: 2.027 Platform: PC OS/Version: Windows Status: NEW Keywords: rejects-valid Severity: normal Priority: P2 Component: DMD AssignedTo: bugzilla digitalmars.com ReportedBy: dsimcha yahoo.com DMD 2.027 can't implicitly instantiate templates properly based on implicit conversions via alias this. import std.stdio; struct ArrayWrapper(T) { T[] data; alias data this; } void doStuffTempl(T)(T[] data) {} void doStuffFunc(int[] data) {} void main() { ArrayWrapper!(int) foo; doStuffFunc(foo); // Works. doStuffTempl!(int)(foo); // Works. // Error: template test.doStuffTempl(T) does not match any function // template declaration // Error: template test.doStuffTempl(T) cannot deduce // template function from argument types !()(ArrayWrapper!(int)) doStuffTempl(foo); } --
Apr 01 2009
http://d.puremagic.com/issues/show_bug.cgi?id=2778 Kenji Hara <k.hara.pg gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |patch http://d.puremagic.com/issues/show_bug.cgi?id=2778 -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Oct 23 2011
http://d.puremagic.com/issues/show_bug.cgi?id=2778 Kenji Hara <k.hara.pg gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |andrej.mitrovich gmail.com *** Issue 6569 has been marked as a duplicate of this issue. *** -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Oct 23 2011
http://d.puremagic.com/issues/show_bug.cgi?id=2778 08:46:32 PDT ---http://d.puremagic.com/issues/show_bug.cgi?id=2778Nice reference :) Think you meant: https://github.com/D-Programming-Language/dmd/pull/472 -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Oct 24 2011
http://d.puremagic.com/issues/show_bug.cgi?id=2778 Walter Bright <bugzilla digitalmars.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED CC| |bugzilla digitalmars.com Resolution| |FIXED 00:22:11 PDT --- https://github.com/D-Programming-Language/dmd/commit/35ee32cafe1cfb606e1d511807206829f8ed5855 -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Nov 02 2011
http://d.puremagic.com/issues/show_bug.cgi?id=2778 Kenji Hara <k.hara.pg gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |REOPENED Resolution|FIXED | I found a lack of my patch. Code: ---- inout(T) [n] id(T, size_t n)(inout(T) [n] v){ return v; } void main() { static struct S { ubyte[3] val = [1,2,3]; property ref void[3] get(){ return *cast(void[3]*)&val; } alias get this; } S s; id(s); } Output: ---- test.d(18): Error: template test.id(T,uint n) does not match any function template declaration test.d(18): Error: template test.id(T,uint n) cannot deduce template function from argument types !()(S) Additional patch for repair it: https://github.com/D-Programming-Language/dmd/pull/487 -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Nov 02 2011
http://d.puremagic.com/issues/show_bug.cgi?id=2778 Kenji Hara <k.hara.pg gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|REOPENED |RESOLVED Resolution| |FIXED https://github.com/D-Programming-Language/dmd/commit/01ba9d230205c10909a021787f00f741ee511e01 -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Dec 20 2011