The OpenGL documentation for gluProject writes that the projection of point v is computed using the given projection and model-view matrix via v'' = P * M * v then window coordinates are derived using the current viewport, e.g. winZ = (v''(2) + 1)/2.
Isn't this missing the perspective division of v'' by v''(3) ? So then we should really have formulas like winZ = (v''(2)/v''(3) + 1)/2.
This agrees with my machine's opengl implementation and the implementation on the OpenGL wiki.
So, is the documentation wrong?