[Issue 1390] Implicit Instantiation: delegate args from variadic template argument

d-bugmail at puremagic.com d-bugmail at puremagic.com
Wed Sep 26 01:23:18 PDT 2012


http://d.puremagic.com/issues/show_bug.cgi?id=1390


Don <clugdbug at yahoo.com.au> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |clugdbug at yahoo.com.au
            Version|1.020                       |D1 & D2
            Summary|Implicit Instantiation:     |Implicit Instantiation:
                   |delegate args from 2        |delegate args from variadic
                   |template params             |template argument


--- Comment #1 from Don <clugdbug at yahoo.com.au> 2012-09-26 01:23:56 PDT ---
Reduced test case.
------
void bug1390a(A,U)(void delegate(U,A) dg, A arg)
{}
void bug1390(A,U...)(void delegate(U,A) dg, A arg)
{}

struct FooStruct   {
      void foo(uint i,char c) {}
}

void bar1390() {
    auto temp = new FooStruct;

    bug1390a!(char,uint)(&temp.foo, 'c');
    bug1390a            (&temp.foo, 'c');

    bug1390!(char,uint)(&temp.foo, 'c');
    bug1390            (&temp.foo, 'c');
}
----
The '1390a' cases work, but on D1, the second '1390' fails. On D2 *both* of the
'1390' instantiations fail.

-- 
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