On Wednesday, 22 March 2023 at 11:00:40 UTC, zjh wrote:
```d
alias Vec3(S) = Matrix!(S, 3, 1);
void foo(U)(U v)
if (is(U == Matrix!(S,3,1), S)) { }
void foo2(U)(U v)
if (is(U == Vec3!S, S)) { }
```
`Foo` can compile, but `foo2` cannot compile, which is very
strange!
`C++` has no problem.