KhronosGroup / OpenGL-Registry

OpenGL, OpenGL ES, and OpenGL ES-SC API and Extension Registry
679 stars 274 forks source link

Duplicate entry in gl.xml - GL_EXT_separate_shader_objects #443

Closed null77 closed 3 years ago

null77 commented 3 years ago

See this code:

        <extension name="GL_EXT_separate_shader_objects" supported="gl|glcore|gles2">
            <require api="gl" comment="The OpenGL version of this extension is completely unrelated to the OpenGL ES version">
                <enum name="GL_ACTIVE_PROGRAM_EXT"/>
                <command name="glUseShaderProgramEXT"/>
                <command name="glActiveProgramEXT"/>
                <command name="glCreateShaderProgramEXT"/>
            </require>
            <require api="gles2" comment="The OpenGL ES version of this extension is completely unrelated to the OpenGL version">
                <enum name="GL_VERTEX_SHADER_BIT_EXT"/>
                <enum name="GL_FRAGMENT_SHADER_BIT_EXT"/>
                <enum name="GL_ALL_SHADER_BITS_EXT"/>
                <enum name="GL_PROGRAM_SEPARABLE_EXT"/>
                <enum name="GL_ACTIVE_PROGRAM_EXT"/>
                <enum name="GL_PROGRAM_PIPELINE_BINDING_EXT"/>
                <command name="glActiveShaderProgramEXT"/>
                <command name="glBindProgramPipelineEXT"/>
                <command name="glCreateShaderProgramvEXT"/>
                <command name="glDeleteProgramPipelinesEXT"/>
                <command name="glGenProgramPipelinesEXT"/>
                <command name="glGetProgramPipelineInfoLogEXT"/>
                <command name="glGetProgramPipelineivEXT"/>
                <command name="glIsProgramPipelineEXT"/>
                <command name="glProgramParameteriEXT"/>
                <command name="glProgramUniform1fEXT"/>
                <command name="glProgramUniform1fvEXT"/>
                <command name="glProgramUniform1iEXT"/>
                <command name="glProgramUniform1ivEXT"/>
                <command name="glProgramUniform2fEXT"/>
                <command name="glProgramUniform2fvEXT"/>
                <command name="glProgramUniform2iEXT"/>
                <command name="glProgramUniform2ivEXT"/>
                <command name="glProgramUniform3fEXT"/>
                <command name="glProgramUniform3fvEXT"/>
                <command name="glProgramUniform3iEXT"/>
                <command name="glProgramUniform3ivEXT"/>
                <command name="glProgramUniform4fEXT"/>
                <command name="glProgramUniform4fvEXT"/>
                <command name="glProgramUniform4iEXT"/>
                <command name="glProgramUniform4ivEXT"/>
                <command name="glProgramUniformMatrix2fvEXT"/>
                <command name="glProgramUniformMatrix3fvEXT"/>
                <command name="glProgramUniformMatrix4fvEXT"/>
                <command name="glUseProgramStagesEXT"/>
                <command name="glValidateProgramPipelineEXT"/>
            </require>
            <require api="gles2" comment="Depends on OpenGL ES 3.0 or GL_NV_non_square_matrices">
                <command name="glProgramUniform1uiEXT"/>
                <command name="glProgramUniform2uiEXT"/>
                <command name="glProgramUniform3uiEXT"/>
                <command name="glProgramUniform4uiEXT"/>
                <command name="glProgramUniform1uivEXT"/>
                <command name="glProgramUniform2uivEXT"/>
                <command name="glProgramUniform3uivEXT"/>
                <command name="glProgramUniform4uivEXT"/>
                <command name="glProgramUniformMatrix4fvEXT"/>
                <command name="glProgramUniformMatrix2x3fvEXT"/>
                <command name="glProgramUniformMatrix3x2fvEXT"/>
                <command name="glProgramUniformMatrix2x4fvEXT"/>
                <command name="glProgramUniformMatrix4x2fvEXT"/>
                <command name="glProgramUniformMatrix3x4fvEXT"/>
                <command name="glProgramUniformMatrix4x3fvEXT"/>
            </require>
        </extension>

Here, glProgramUniformMatrix4fvEXT is listed twice. This EP does not depend on GLES 3.0 or the NV extension and should be removed from the second section.

Perksey commented 3 years ago

Usually we're pretty fine with redefines if they serve some illustrative purpose, but I'd agree that this one should be rectified. Could just remove the second one?