I'm including this for completeness, since Walter already fixed this in svn 220. Applies to D1 as well. void main() { double[] a, b, c; double d; a[] = -(b[] * (c[] + 4)) + c[] * d; } Fails with: test.d(6): Error: 'b[] * (c[] + cast(double)4)' is not of arithmetic type, it is a double[]
Fixed DMD1.051 and 2.036.