.length for staticlly typed arrays and fixup .length-type for Slices

simple addtion. 
works as expected.
The location should be the one of the expression.

When you have foo.length, you have 2 location involved: the location of the definition of length, and the location of the expression. You'll note that in the slice case, the location that is made to .init is the location of the Field symbol. This is the location of the definition. The location of the expression is well defined is both cases and you have it available already.