Re: Driver bug: glTexCoord() != glMultiTexCoord(GL_TEXTURE0)?
It was the same problem.
The problem is in the way I am including the GL headers. I include glut.h first, which includes gl.h with no particular flags, and then later I include gl.h and glext.h. If I switch the order, so that I define GL_GLEXT_PROTOTYPES and then include gl.h and only then include glut.h, everything works fine.
Rather nasty error behavior -- almost everything appears to work fine, including compiling shaders and running with them. But some things silently and uncomplainingly do the wrong thing.
Someday, I'll slog through the preprocessor swamp and figure out why.