[Issue 7418] New: Overloading doesn't work with aliases declared inside templates
d-bugmail at puremagic.com
d-bugmail at puremagic.com
Wed Feb 1 11:34:06 PST 2012
http://d.puremagic.com/issues/show_bug.cgi?id=7418
Summary: Overloading doesn't work with aliases declared inside
templates
Product: D
Version: D2
Platform: All
OS/Version: All
Status: NEW
Severity: normal
Priority: P2
Component: DMD
AssignedTo: nobody at puremagic.com
ReportedBy: siegelords_abode at yahoo.com
--- Comment #0 from siegelords_abode at yahoo.com 2012-02-01 11:34:05 PST ---
void test(uint a)
{
}
void test(char[] a)
{
}
template _test1(T = void)
{
alias test _test1;
}
alias test _test2;
void main()
{
_test2("a".dup);
_test2(1U);
_test1!()("a".dup); // Error: cannot implicitly convert expression
(_adDupT(&_D12TypeInfo_Aya6__initZ,cast(string)"a")) of type char[] to uint
_test1!()(1U);
}
Note how the alias outside the template works fine, but the one inside the
alias only picks up the lexically first match. Note that this works fine in D1.
--
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
More information about the Digitalmars-d-bugs
mailing list