Is this a bug?
    Elfstone 
    elfstone at yeah.net
       
    Thu Mar 16 03:40:04 UTC 2023
    
    
  
```D
struct Matrix(S, size_t M, size_t N)
{
}
alias Vec3(S) = Matrix!(S, 3, 1);
void main()
{
     import std.stdio;
     writeln(is(Vec3!float == Matrix!(S, 3, 1), S)); // `alias` 
`S` is defined here
     writeln(is(Matrix!(float, 3, 1) == Matrix!(S, 3, 1), S)); // 
Error: declaration `S` is already defined
}
```
Even though the following code compiles.
```D
     writeln(is(Vec3!float == Matrix!(S, 3, 1), S));
     writeln(is(Vec3!float == Matrix!(S, 3, 1), S));
```
    
    
More information about the Digitalmars-d-learn
mailing list