/* WARNING: This is auto-generated file. Do not modify, since changes will
 * be lost! Modify the generating script instead.
 *
 * Generated from Khronos GL API description (gl.xml) revision 9d534f9312e56c72df763207e449c6719576fd54.
 */
gl->activeShaderProgram					= &glActiveShaderProgram;
gl->activeTexture						= &glActiveTexture;
gl->attachShader						= &glAttachShader;
gl->beginQuery							= &glBeginQuery;
gl->beginTransformFeedback				= &glBeginTransformFeedback;
gl->bindAttribLocation					= &glBindAttribLocation;
gl->bindBuffer							= &glBindBuffer;
gl->bindBufferBase						= &glBindBufferBase;
gl->bindBufferRange						= &glBindBufferRange;
gl->bindFramebuffer						= &glBindFramebuffer;
gl->bindImageTexture					= &glBindImageTexture;
gl->bindProgramPipeline					= &glBindProgramPipeline;
gl->bindRenderbuffer					= &glBindRenderbuffer;
gl->bindSampler							= &glBindSampler;
gl->bindTexture							= &glBindTexture;
gl->bindTransformFeedback				= &glBindTransformFeedback;
gl->bindVertexArray						= &glBindVertexArray;
gl->bindVertexBuffer					= &glBindVertexBuffer;
gl->blendColor							= &glBlendColor;
gl->blendEquation						= &glBlendEquation;
gl->blendEquationSeparate				= &glBlendEquationSeparate;
gl->blendFunc							= &glBlendFunc;
gl->blendFuncSeparate					= &glBlendFuncSeparate;
gl->blitFramebuffer						= &glBlitFramebuffer;
gl->bufferData							= &glBufferData;
gl->bufferSubData						= &glBufferSubData;
gl->checkFramebufferStatus				= &glCheckFramebufferStatus;
gl->clear								= &glClear;
gl->clearBufferfi						= &glClearBufferfi;
gl->clearBufferfv						= &glClearBufferfv;
gl->clearBufferiv						= &glClearBufferiv;
gl->clearBufferuiv						= &glClearBufferuiv;
gl->clearColor							= &glClearColor;
gl->clearDepthf							= &glClearDepthf;
gl->clearStencil						= &glClearStencil;
gl->clientWaitSync						= &glClientWaitSync;
gl->colorMask							= &glColorMask;
gl->compileShader						= &glCompileShader;
gl->compressedTexImage2D				= &glCompressedTexImage2D;
gl->compressedTexImage3D				= &glCompressedTexImage3D;
gl->compressedTexSubImage2D				= &glCompressedTexSubImage2D;
gl->compressedTexSubImage3D				= &glCompressedTexSubImage3D;
gl->copyBufferSubData					= &glCopyBufferSubData;
gl->copyTexImage2D						= &glCopyTexImage2D;
gl->copyTexSubImage2D					= &glCopyTexSubImage2D;
gl->copyTexSubImage3D					= &glCopyTexSubImage3D;
gl->createProgram						= &glCreateProgram;
gl->createShader						= &glCreateShader;
gl->createShaderProgramv				= &glCreateShaderProgramv;
gl->cullFace							= &glCullFace;
gl->deleteBuffers						= &glDeleteBuffers;
gl->deleteFramebuffers					= &glDeleteFramebuffers;
gl->deleteProgram						= &glDeleteProgram;
gl->deleteProgramPipelines				= &glDeleteProgramPipelines;
gl->deleteQueries						= &glDeleteQueries;
gl->deleteRenderbuffers					= &glDeleteRenderbuffers;
gl->deleteSamplers						= &glDeleteSamplers;
gl->deleteShader						= &glDeleteShader;
gl->deleteSync							= &glDeleteSync;
gl->deleteTextures						= &glDeleteTextures;
gl->deleteTransformFeedbacks			= &glDeleteTransformFeedbacks;
gl->deleteVertexArrays					= &glDeleteVertexArrays;
gl->depthFunc							= &glDepthFunc;
gl->depthMask							= &glDepthMask;
gl->depthRangef							= &glDepthRangef;
gl->detachShader						= &glDetachShader;
gl->disable								= &glDisable;
gl->disableVertexAttribArray			= &glDisableVertexAttribArray;
gl->dispatchCompute						= &glDispatchCompute;
gl->dispatchComputeIndirect				= &glDispatchComputeIndirect;
gl->drawArrays							= &glDrawArrays;
gl->drawArraysIndirect					= &glDrawArraysIndirect;
gl->drawArraysInstanced					= &glDrawArraysInstanced;
gl->drawBuffers							= &glDrawBuffers;
gl->drawElements						= &glDrawElements;
gl->drawElementsIndirect				= &glDrawElementsIndirect;
gl->drawElementsInstanced				= &glDrawElementsInstanced;
gl->drawRangeElements					= &glDrawRangeElements;
gl->enable								= &glEnable;
gl->enableVertexAttribArray				= &glEnableVertexAttribArray;
gl->endQuery							= &glEndQuery;
gl->endTransformFeedback				= &glEndTransformFeedback;
gl->fenceSync							= &glFenceSync;
gl->finish								= &glFinish;
gl->flush								= &glFlush;
gl->flushMappedBufferRange				= &glFlushMappedBufferRange;
gl->framebufferParameteri				= &glFramebufferParameteri;
gl->framebufferRenderbuffer				= &glFramebufferRenderbuffer;
gl->framebufferTexture2D				= &glFramebufferTexture2D;
gl->framebufferTextureLayer				= &glFramebufferTextureLayer;
gl->frontFace							= &glFrontFace;
gl->genBuffers							= &glGenBuffers;
gl->genFramebuffers						= &glGenFramebuffers;
gl->genProgramPipelines					= &glGenProgramPipelines;
gl->genQueries							= &glGenQueries;
gl->genRenderbuffers					= &glGenRenderbuffers;
gl->genSamplers							= &glGenSamplers;
gl->genTextures							= &glGenTextures;
gl->genTransformFeedbacks				= &glGenTransformFeedbacks;
gl->genVertexArrays						= &glGenVertexArrays;
gl->generateMipmap						= &glGenerateMipmap;
gl->getActiveAttrib						= &glGetActiveAttrib;
gl->getActiveUniform					= &glGetActiveUniform;
gl->getActiveUniformBlockName			= &glGetActiveUniformBlockName;
gl->getActiveUniformBlockiv				= &glGetActiveUniformBlockiv;
gl->getActiveUniformsiv					= &glGetActiveUniformsiv;
gl->getAttachedShaders					= &glGetAttachedShaders;
gl->getAttribLocation					= &glGetAttribLocation;
gl->getBooleani_v						= &glGetBooleani_v;
gl->getBooleanv							= &glGetBooleanv;
gl->getBufferParameteri64v				= &glGetBufferParameteri64v;
gl->getBufferParameteriv				= &glGetBufferParameteriv;
gl->getBufferPointerv					= &glGetBufferPointerv;
gl->getError							= &glGetError;
gl->getFloatv							= &glGetFloatv;
gl->getFragDataLocation					= &glGetFragDataLocation;
gl->getFramebufferAttachmentParameteriv	= &glGetFramebufferAttachmentParameteriv;
gl->getFramebufferParameteriv			= &glGetFramebufferParameteriv;
gl->getInteger64i_v						= &glGetInteger64i_v;
gl->getInteger64v						= &glGetInteger64v;
gl->getIntegeri_v						= &glGetIntegeri_v;
gl->getIntegerv							= &glGetIntegerv;
gl->getInternalformativ					= &glGetInternalformativ;
gl->getMultisamplefv					= &glGetMultisamplefv;
gl->getProgramBinary					= &glGetProgramBinary;
gl->getProgramInfoLog					= &glGetProgramInfoLog;
gl->getProgramInterfaceiv				= &glGetProgramInterfaceiv;
gl->getProgramPipelineInfoLog			= &glGetProgramPipelineInfoLog;
gl->getProgramPipelineiv				= &glGetProgramPipelineiv;
gl->getProgramResourceIndex				= &glGetProgramResourceIndex;
gl->getProgramResourceLocation			= &glGetProgramResourceLocation;
gl->getProgramResourceName				= &glGetProgramResourceName;
gl->getProgramResourceiv				= &glGetProgramResourceiv;
gl->getProgramiv						= &glGetProgramiv;
gl->getQueryObjectuiv					= &glGetQueryObjectuiv;
gl->getQueryiv							= &glGetQueryiv;
gl->getRenderbufferParameteriv			= &glGetRenderbufferParameteriv;
gl->getSamplerParameterfv				= &glGetSamplerParameterfv;
gl->getSamplerParameteriv				= &glGetSamplerParameteriv;
gl->getShaderInfoLog					= &glGetShaderInfoLog;
gl->getShaderPrecisionFormat			= &glGetShaderPrecisionFormat;
gl->getShaderSource						= &glGetShaderSource;
gl->getShaderiv							= &glGetShaderiv;
gl->getString							= &glGetString;
gl->getStringi							= &glGetStringi;
gl->getSynciv							= &glGetSynciv;
gl->getTexLevelParameterfv				= &glGetTexLevelParameterfv;
gl->getTexLevelParameteriv				= &glGetTexLevelParameteriv;
gl->getTexParameterfv					= &glGetTexParameterfv;
gl->getTexParameteriv					= &glGetTexParameteriv;
gl->getTransformFeedbackVarying			= &glGetTransformFeedbackVarying;
gl->getUniformBlockIndex				= &glGetUniformBlockIndex;
gl->getUniformIndices					= &glGetUniformIndices;
gl->getUniformLocation					= &glGetUniformLocation;
gl->getUniformfv						= &glGetUniformfv;
gl->getUniformiv						= &glGetUniformiv;
gl->getUniformuiv						= &glGetUniformuiv;
gl->getVertexAttribIiv					= &glGetVertexAttribIiv;
gl->getVertexAttribIuiv					= &glGetVertexAttribIuiv;
gl->getVertexAttribPointerv				= &glGetVertexAttribPointerv;
gl->getVertexAttribfv					= &glGetVertexAttribfv;
gl->getVertexAttribiv					= &glGetVertexAttribiv;
gl->hint								= &glHint;
gl->invalidateFramebuffer				= &glInvalidateFramebuffer;
gl->invalidateSubFramebuffer			= &glInvalidateSubFramebuffer;
gl->isBuffer							= &glIsBuffer;
gl->isEnabled							= &glIsEnabled;
gl->isFramebuffer						= &glIsFramebuffer;
gl->isProgram							= &glIsProgram;
gl->isProgramPipeline					= &glIsProgramPipeline;
gl->isQuery								= &glIsQuery;
gl->isRenderbuffer						= &glIsRenderbuffer;
gl->isSampler							= &glIsSampler;
gl->isShader							= &glIsShader;
gl->isSync								= &glIsSync;
gl->isTexture							= &glIsTexture;
gl->isTransformFeedback					= &glIsTransformFeedback;
gl->isVertexArray						= &glIsVertexArray;
gl->lineWidth							= &glLineWidth;
gl->linkProgram							= &glLinkProgram;
gl->mapBufferRange						= &glMapBufferRange;
gl->memoryBarrier						= &glMemoryBarrier;
gl->memoryBarrierByRegion				= &glMemoryBarrierByRegion;
gl->pauseTransformFeedback				= &glPauseTransformFeedback;
gl->pixelStorei							= &glPixelStorei;
gl->polygonOffset						= &glPolygonOffset;
gl->programBinary						= &glProgramBinary;
gl->programParameteri					= &glProgramParameteri;
gl->programUniform1f					= &glProgramUniform1f;
gl->programUniform1fv					= &glProgramUniform1fv;
gl->programUniform1i					= &glProgramUniform1i;
gl->programUniform1iv					= &glProgramUniform1iv;
gl->programUniform1ui					= &glProgramUniform1ui;
gl->programUniform1uiv					= &glProgramUniform1uiv;
gl->programUniform2f					= &glProgramUniform2f;
gl->programUniform2fv					= &glProgramUniform2fv;
gl->programUniform2i					= &glProgramUniform2i;
gl->programUniform2iv					= &glProgramUniform2iv;
gl->programUniform2ui					= &glProgramUniform2ui;
gl->programUniform2uiv					= &glProgramUniform2uiv;
gl->programUniform3f					= &glProgramUniform3f;
gl->programUniform3fv					= &glProgramUniform3fv;
gl->programUniform3i					= &glProgramUniform3i;
gl->programUniform3iv					= &glProgramUniform3iv;
gl->programUniform3ui					= &glProgramUniform3ui;
gl->programUniform3uiv					= &glProgramUniform3uiv;
gl->programUniform4f					= &glProgramUniform4f;
gl->programUniform4fv					= &glProgramUniform4fv;
gl->programUniform4i					= &glProgramUniform4i;
gl->programUniform4iv					= &glProgramUniform4iv;
gl->programUniform4ui					= &glProgramUniform4ui;
gl->programUniform4uiv					= &glProgramUniform4uiv;
gl->programUniformMatrix2fv				= &glProgramUniformMatrix2fv;
gl->programUniformMatrix2x3fv			= &glProgramUniformMatrix2x3fv;
gl->programUniformMatrix2x4fv			= &glProgramUniformMatrix2x4fv;
gl->programUniformMatrix3fv				= &glProgramUniformMatrix3fv;
gl->programUniformMatrix3x2fv			= &glProgramUniformMatrix3x2fv;
gl->programUniformMatrix3x4fv			= &glProgramUniformMatrix3x4fv;
gl->programUniformMatrix4fv				= &glProgramUniformMatrix4fv;
gl->programUniformMatrix4x2fv			= &glProgramUniformMatrix4x2fv;
gl->programUniformMatrix4x3fv			= &glProgramUniformMatrix4x3fv;
gl->readBuffer							= &glReadBuffer;
gl->readPixels							= &glReadPixels;
gl->releaseShaderCompiler				= &glReleaseShaderCompiler;
gl->renderbufferStorage					= &glRenderbufferStorage;
gl->renderbufferStorageMultisample		= &glRenderbufferStorageMultisample;
gl->resumeTransformFeedback				= &glResumeTransformFeedback;
gl->sampleCoverage						= &glSampleCoverage;
gl->sampleMaski							= &glSampleMaski;
gl->samplerParameterf					= &glSamplerParameterf;
gl->samplerParameterfv					= &glSamplerParameterfv;
gl->samplerParameteri					= &glSamplerParameteri;
gl->samplerParameteriv					= &glSamplerParameteriv;
gl->scissor								= &glScissor;
gl->shaderBinary						= &glShaderBinary;
gl->shaderSource						= (glShaderSourceFunc)&glShaderSource;
gl->stencilFunc							= &glStencilFunc;
gl->stencilFuncSeparate					= &glStencilFuncSeparate;
gl->stencilMask							= &glStencilMask;
gl->stencilMaskSeparate					= &glStencilMaskSeparate;
gl->stencilOp							= &glStencilOp;
gl->stencilOpSeparate					= &glStencilOpSeparate;
gl->texImage2D							= &glTexImage2D;
gl->texImage3D							= &glTexImage3D;
gl->texParameterf						= &glTexParameterf;
gl->texParameterfv						= &glTexParameterfv;
gl->texParameteri						= &glTexParameteri;
gl->texParameteriv						= &glTexParameteriv;
gl->texStorage2D						= &glTexStorage2D;
gl->texStorage2DMultisample				= &glTexStorage2DMultisample;
gl->texStorage3D						= &glTexStorage3D;
gl->texSubImage2D						= &glTexSubImage2D;
gl->texSubImage3D						= &glTexSubImage3D;
gl->transformFeedbackVaryings			= &glTransformFeedbackVaryings;
gl->uniform1f							= &glUniform1f;
gl->uniform1fv							= &glUniform1fv;
gl->uniform1i							= &glUniform1i;
gl->uniform1iv							= &glUniform1iv;
gl->uniform1ui							= &glUniform1ui;
gl->uniform1uiv							= &glUniform1uiv;
gl->uniform2f							= &glUniform2f;
gl->uniform2fv							= &glUniform2fv;
gl->uniform2i							= &glUniform2i;
gl->uniform2iv							= &glUniform2iv;
gl->uniform2ui							= &glUniform2ui;
gl->uniform2uiv							= &glUniform2uiv;
gl->uniform3f							= &glUniform3f;
gl->uniform3fv							= &glUniform3fv;
gl->uniform3i							= &glUniform3i;
gl->uniform3iv							= &glUniform3iv;
gl->uniform3ui							= &glUniform3ui;
gl->uniform3uiv							= &glUniform3uiv;
gl->uniform4f							= &glUniform4f;
gl->uniform4fv							= &glUniform4fv;
gl->uniform4i							= &glUniform4i;
gl->uniform4iv							= &glUniform4iv;
gl->uniform4ui							= &glUniform4ui;
gl->uniform4uiv							= &glUniform4uiv;
gl->uniformBlockBinding					= &glUniformBlockBinding;
gl->uniformMatrix2fv					= &glUniformMatrix2fv;
gl->uniformMatrix2x3fv					= &glUniformMatrix2x3fv;
gl->uniformMatrix2x4fv					= &glUniformMatrix2x4fv;
gl->uniformMatrix3fv					= &glUniformMatrix3fv;
gl->uniformMatrix3x2fv					= &glUniformMatrix3x2fv;
gl->uniformMatrix3x4fv					= &glUniformMatrix3x4fv;
gl->uniformMatrix4fv					= &glUniformMatrix4fv;
gl->uniformMatrix4x2fv					= &glUniformMatrix4x2fv;
gl->uniformMatrix4x3fv					= &glUniformMatrix4x3fv;
gl->unmapBuffer							= &glUnmapBuffer;
gl->useProgram							= &glUseProgram;
gl->useProgramStages					= &glUseProgramStages;
gl->validateProgram						= &glValidateProgram;
gl->validateProgramPipeline				= &glValidateProgramPipeline;
gl->vertexAttrib1f						= &glVertexAttrib1f;
gl->vertexAttrib1fv						= &glVertexAttrib1fv;
gl->vertexAttrib2f						= &glVertexAttrib2f;
gl->vertexAttrib2fv						= &glVertexAttrib2fv;
gl->vertexAttrib3f						= &glVertexAttrib3f;
gl->vertexAttrib3fv						= &glVertexAttrib3fv;
gl->vertexAttrib4f						= &glVertexAttrib4f;
gl->vertexAttrib4fv						= &glVertexAttrib4fv;
gl->vertexAttribBinding					= &glVertexAttribBinding;
gl->vertexAttribDivisor					= &glVertexAttribDivisor;
gl->vertexAttribFormat					= &glVertexAttribFormat;
gl->vertexAttribI4i						= &glVertexAttribI4i;
gl->vertexAttribI4iv					= &glVertexAttribI4iv;
gl->vertexAttribI4ui					= &glVertexAttribI4ui;
gl->vertexAttribI4uiv					= &glVertexAttribI4uiv;
gl->vertexAttribIFormat					= &glVertexAttribIFormat;
gl->vertexAttribIPointer				= &glVertexAttribIPointer;
gl->vertexAttribPointer					= &glVertexAttribPointer;
gl->vertexBindingDivisor				= &glVertexBindingDivisor;
gl->viewport							= &glViewport;
gl->waitSync							= &glWaitSync;
