glProgramParameteri entry point missing?

Both gl.spec and glext.h list three versions of this method: glProgramParameteri, glProgramParameteriARB and glProgramParameteriEXT. However, my driver (Nvidia) only exposes the last two. The first one is missing.

This issue can be reproduced on two different video cards (Quadro FX 570 and Quadro NVS 135M), using driver 195.62 on Windows 7 (both 32- and 64-bit). The driver claims 3.2 support, so I would expect the core version to be available.

Is this expected or are we dealing with a driver bug? Can anyone with an AMD video card say if this function is exposed there?

Same problem here on a 8800GTS, Win7 64b using driver 196.21


Where does this come from? glProgramParameteriARB is from ARB_vertex_program, which was never brought into core. So why would there be a core version of this function?

This is from ARB_geometry_shader4.

It is listed in both gl.spec and glext.h as a core 3.2 function.

This is from ARB_geometry_shader4.

Then this is likely a bug. The 3.2 and 3.3 core GL specifications list no such function. It is a part of ARB_geometry_shader4, but ARB_geometry_shader4 is not a core extension. Thus, its extension functions end in ARB.

This is probably a copy&paste bug in the gl.spec file. They copied the entries from ARB_geometry_shader4 without realizing that glProgramParameteri isn’t a part of the core 3.2 geometry shader code (3.2 geometry shaders, with 1.50 shader support, have the equivalent as part of the geometry shader itself).

Thanks, filed as bug #277.