Thomas Roell wrote:
> 
> In your message of 10 April 2000 you write:
> 
> >     Three topics follow, and hopefully resolution of the A/B/C vote.
> >
> >     First, since we're approaching completion of the debate over the
> > exact shape of glext.h, I've started generating a copy automatically
> > from the extension registry. It's at
> >
> >       http://oss.sgi.com/projects/ogl-sample/ABI/glext.h
> 
> Two things that should be changed:
> 
> 1. The defines (types/tokens) should be per extensions, and guarded
>    properly, so that they are only defined, if the extension has not
>    been defined yet in gl.h. I know that in theory there should never
>    be conflicts, but it would be just nicer to deal with.

Yes.  I had several compiler warnings because of this.


> 2. Explicite function prototypes should go away. Either you use
>    wglGetProcAddress() or glXGetProcAddressARB() to retieve the
>    extension functions. Hence there are no external declarations
>    needed. In fact it better if the compile can issue a warning about
>    an undeclared function if a direct reference is encountered.

If developers could be trusted to do the right thing, I'd say keep
the regular extern prototypes.  In the case of Mesa, my compiler flags
trigger "no previous prototype" warnings for non-static functions
that haven't had a previous extern declaration.


I found a few other problems:

3. glCullParameterfvEXT() and glCullParameterdvEXT() are missing
   'const' keywords on their second arguments.  I've noted before
   that a lot of extension specifications omit const keywords in
   the prototypes in the "New Procedures and Functions" section.

4. There are two sections surrounded by #ifndef GL_EXT_subtexture / #endif.
   The first section has the glTexSubImage3DEXT() function and the second
   has the glTexSubImage1DEXT() and glTexSubImage2DEXT() functions.
   The prototypes and function pointers for the 1D and 2D functions are
   thus skipped.

5. The tokens for GL_SGIS_pixel_texture are missing.  I've mentioned
   on the OpenGL ARB list that the values for these tokens are unknown.

-Brian

Reply via email to