[Issue 13090] New: Type inferring fails at function parameters with parameterized alias

via Digitalmars-d-bugs digitalmars-d-bugs at puremagic.com
Thu Jul 10 10:46:39 PDT 2014


https://issues.dlang.org/show_bug.cgi?id=13090

          Issue ID: 13090
           Summary: Type inferring fails at function parameters with
                    parameterized alias
           Product: D
           Version: D2
          Hardware: x86_64
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P1
         Component: DMD
          Assignee: nobody at puremagic.com
          Reporter: NCrashed at gmail.com

```
import std.stdio;

alias vec3(E) = Vec!(E, 3);

struct Vec(E, size_t n)
{
    E[n] elements;
}

void foo(E)(vec3!E v)
//void foo(E)(Vec!(E, 3) v) that compiles
{

}

void main()
{
    foo(vec3!float([1, 2, 3]));
}
```

Compilation error:
```
source/app.d(18): Error: template app.foo cannot deduce function from argument
types !()(Vec!(float, 3LU)), candidates are:
source/app.d(10):        app.foo(E)(vec3!E v)
```

--


More information about the Digitalmars-d-bugs mailing list