digitalmars.D.bugs - [Issue 1193] New: regression: "matches more than one template declaration" doesn't list the location of the conflicting templates
- d-bugmail puremagic.com (38/38) Apr 27 2007 http://d.puremagic.com/issues/show_bug.cgi?id=1193
- d-bugmail puremagic.com (34/34) May 19 2010 http://d.puremagic.com/issues/show_bug.cgi?id=1193
- d-bugmail puremagic.com (12/12) Jun 02 2010 http://d.puremagic.com/issues/show_bug.cgi?id=1193
http://d.puremagic.com/issues/show_bug.cgi?id=1193 Summary: regression: "matches more than one template declaration" doesn't list the location of the conflicting templates Product: D Version: 1.013 Platform: PC OS/Version: All Status: NEW Severity: regression Priority: P3 Component: DMD AssignedTo: bugzilla digitalmars.com ReportedBy: thomas-dloop kuehne.cn # template fn( T ) { # void fn() { # } # } # # template fn( T ) { # void fn( T val ) { # } # } # # void main() { # mixin fn!(int); # } DMD-1.010: nocompile/t/template_25_A.d(18): template dstress.nocompile.t.template_25_A.fn(T) conflicts with dstress.nocompile.t.template_25_A.fn(T) at nocompile/t/template_25_A.d(13) DMD-1.013: nocompile/t/template_25_A.d(24): mixin fn!(int) matches more than one template declaration, fn(T) and fn(T) test cases: http://dstress.kuehne.cn/nocompile/t/template_25_A.d http://dstress.kuehne.cn/nocompile/t/template_class_17.d http://dstress.kuehne.cn/nocompile/t/template_struct_07.d --
Apr 27 2007
http://d.puremagic.com/issues/show_bug.cgi?id=1193 Brad Roberts <braddr puremagic.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |patch CC| |braddr puremagic.com --- Comment #1 from Brad Roberts <braddr puremagic.com> 2010-05-19 00:00:25 PDT --- quick easy fix for this one (against dmd 2.x, but likely applies easily enough to 1.x): diff --git a/src/template.c b/src/template.c --- a/src/template.c +++ b/src/template.c -4313,8 +4313,10 TemplateDeclaration *TemplateInstance::findBestMatch(Scope *sc) } if (td_ambig) { - error("%s matches more than one template declaration, %s and %s", - toChars(), td_best->toChars(), td_ambig->toChars()); + error("%s matches more than one template declaration, %s(%d):%s and %s(%d):%s", + toChars(), + td_best->loc.filename, td_best->loc.linnum, td_best->toChars(), + td_ambig->loc.filename, td_ambig->loc.linnum, td_ambig->toChars()); } /* The best match is td_best Results in: bug1193.d(12): Error: mixin fn!(int) matches more than one template declaration, bug1193.d(1):fn(T) and bug1193.d(6):fn(T) -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
May 19 2010
http://d.puremagic.com/issues/show_bug.cgi?id=1193 Walter Bright <bugzilla digitalmars.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED CC| |bugzilla digitalmars.com Resolution| |FIXED --- Comment #2 from Walter Bright <bugzilla digitalmars.com> 2010-06-02 00:49:58 PDT --- http://www.dsource.org/projects/dmd/changeset/515 -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Jun 02 2010