> no idea how to fix this

I think you are only lazy :-)

The general approach would be to shrink and simplify the code -- the core 
problem seems to be the ==`() proc, so one would remove all what is not 
necessary to test this proc, and maybe to modify or simplify that proc. For 
example I would have started by replacing `func `==`*[W,H](m1, m2: Matrix[W, 
H]): bool = by proc isIdentical[W, H: static[int]](mx, my: Matrix[W, H]): bool =

Note that in your initial definition there is no space between W and H. Nim 
sometimes may love spaces.

The error message required type for m2: Matrix[==.W, ==.H] looks strange indeed.

Reply via email to