/*
 * This file was generated automatically by ExtUtils::ParseXS version 3.51 from the
 * contents of Modern.xs. Do not edit this file, edit Modern.xs instead.
 *
 *    ANY CHANGES MADE HERE WILL BE LOST!
 *
 */

#line 1 "lib/OpenGL/Modern.xs"
#define PERL_NO_GET_CONTEXT
#include "EXTERN.h"
#include "perl.h"
#include "XSUB.h"

#include "ppport.h"

#include <GL/glew.h>
#include <glew-context.c>

#include "gl_counts.h"
#include "gl_errors.h"
#include "oglm.h"

/*
  Maybe one day we'll allow Perl callbacks for GLDEBUGPROCARB
*/

#line 29 "lib/OpenGL/Modern.c"
#ifndef PERL_UNUSED_VAR
#  define PERL_UNUSED_VAR(var) if (0) var = var
#endif

#ifndef dVAR
#  define dVAR		dNOOP
#endif


/* This stuff is not part of the API! You have been warned. */
#ifndef PERL_VERSION_DECIMAL
#  define PERL_VERSION_DECIMAL(r,v,s) (r*1000000 + v*1000 + s)
#endif
#ifndef PERL_DECIMAL_VERSION
#  define PERL_DECIMAL_VERSION \
	  PERL_VERSION_DECIMAL(PERL_REVISION,PERL_VERSION,PERL_SUBVERSION)
#endif
#ifndef PERL_VERSION_GE
#  define PERL_VERSION_GE(r,v,s) \
	  (PERL_DECIMAL_VERSION >= PERL_VERSION_DECIMAL(r,v,s))
#endif
#ifndef PERL_VERSION_LE
#  define PERL_VERSION_LE(r,v,s) \
	  (PERL_DECIMAL_VERSION <= PERL_VERSION_DECIMAL(r,v,s))
#endif

/* XS_INTERNAL is the explicit static-linkage variant of the default
 * XS macro.
 *
 * XS_EXTERNAL is the same as XS_INTERNAL except it does not include
 * "STATIC", ie. it exports XSUB symbols. You probably don't want that
 * for anything but the BOOT XSUB.
 *
 * See XSUB.h in core!
 */


/* TODO: This might be compatible further back than 5.10.0. */
#if PERL_VERSION_GE(5, 10, 0) && PERL_VERSION_LE(5, 15, 1)
#  undef XS_EXTERNAL
#  undef XS_INTERNAL
#  if defined(__CYGWIN__) && defined(USE_DYNAMIC_LOADING)
#    define XS_EXTERNAL(name) __declspec(dllexport) XSPROTO(name)
#    define XS_INTERNAL(name) STATIC XSPROTO(name)
#  endif
#  if defined(__SYMBIAN32__)
#    define XS_EXTERNAL(name) EXPORT_C XSPROTO(name)
#    define XS_INTERNAL(name) EXPORT_C STATIC XSPROTO(name)
#  endif
#  ifndef XS_EXTERNAL
#    if defined(HASATTRIBUTE_UNUSED) && !defined(__cplusplus)
#      define XS_EXTERNAL(name) void name(pTHX_ CV* cv __attribute__unused__)
#      define XS_INTERNAL(name) STATIC void name(pTHX_ CV* cv __attribute__unused__)
#    else
#      ifdef __cplusplus
#        define XS_EXTERNAL(name) extern "C" XSPROTO(name)
#        define XS_INTERNAL(name) static XSPROTO(name)
#      else
#        define XS_EXTERNAL(name) XSPROTO(name)
#        define XS_INTERNAL(name) STATIC XSPROTO(name)
#      endif
#    endif
#  endif
#endif

/* perl >= 5.10.0 && perl <= 5.15.1 */


/* The XS_EXTERNAL macro is used for functions that must not be static
 * like the boot XSUB of a module. If perl didn't have an XS_EXTERNAL
 * macro defined, the best we can do is assume XS is the same.
 * Dito for XS_INTERNAL.
 */
#ifndef XS_EXTERNAL
#  define XS_EXTERNAL(name) XS(name)
#endif
#ifndef XS_INTERNAL
#  define XS_INTERNAL(name) XS(name)
#endif

/* Now, finally, after all this mess, we want an ExtUtils::ParseXS
 * internal macro that we're free to redefine for varying linkage due
 * to the EXPORT_XSUB_SYMBOLS XS keyword. This is internal, use
 * XS_EXTERNAL(name) or XS_INTERNAL(name) in your code if you need to!
 */

#undef XS_EUPXS
#if defined(PERL_EUPXS_ALWAYS_EXPORT)
#  define XS_EUPXS(name) XS_EXTERNAL(name)
#else
   /* default to internal */
#  define XS_EUPXS(name) XS_INTERNAL(name)
#endif

#ifndef PERL_ARGS_ASSERT_CROAK_XS_USAGE
#define PERL_ARGS_ASSERT_CROAK_XS_USAGE assert(cv); assert(params)

/* prototype to pass -Wmissing-prototypes */
STATIC void
S_croak_xs_usage(const CV *const cv, const char *const params);

STATIC void
S_croak_xs_usage(const CV *const cv, const char *const params)
{
    const GV *const gv = CvGV(cv);

    PERL_ARGS_ASSERT_CROAK_XS_USAGE;

    if (gv) {
        const char *const gvname = GvNAME(gv);
        const HV *const stash = GvSTASH(gv);
        const char *const hvname = stash ? HvNAME(stash) : NULL;

        if (hvname)
	    Perl_croak_nocontext("Usage: %s::%s(%s)", hvname, gvname, params);
        else
	    Perl_croak_nocontext("Usage: %s(%s)", gvname, params);
    } else {
        /* Pants. I don't think that it should be possible to get here. */
	Perl_croak_nocontext("Usage: CODE(0x%" UVxf ")(%s)", PTR2UV(cv), params);
    }
}
#undef  PERL_ARGS_ASSERT_CROAK_XS_USAGE

#define croak_xs_usage        S_croak_xs_usage

#endif

/* NOTE: the prototype of newXSproto() is different in versions of perls,
 * so we define a portable version of newXSproto()
 */
#ifdef newXS_flags
#define newXSproto_portable(name, c_impl, file, proto) newXS_flags(name, c_impl, file, proto, 0)
#else
#define newXSproto_portable(name, c_impl, file, proto) (PL_Sv=(SV*)newXS(name, c_impl, file), sv_setpv(PL_Sv, proto), (CV*)PL_Sv)
#endif /* !defined(newXS_flags) */

#if PERL_VERSION_LE(5, 21, 5)
#  define newXS_deffile(a,b) Perl_newXS(aTHX_ a,b,file)
#else
#  define newXS_deffile(a,b) Perl_newXS_deffile(aTHX_ a,b)
#endif

#line 173 "lib/OpenGL/Modern.c"

XS_EUPXS(XS_OpenGL__Modern_glewCreateContext); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glewCreateContext)
{
    dVAR; dXSARGS;
    if (items < 0 || items > 4)
       croak_xs_usage(cv,  "major=0, minor=0, profile_mask=0, flags=0");
    {
	GLboolean	RETVAL;
	dXSTARG;
	int	major;
	int	minor;
	int	profile_mask;
	int	flags;

	if (items < 1)
	    major = 0;
	else {
	    major = (int)SvIV(ST(0))
;
	}

	if (items < 2)
	    minor = 0;
	else {
	    minor = (int)SvIV(ST(1))
;
	}

	if (items < 3)
	    profile_mask = 0;
	else {
	    profile_mask = (int)SvIV(ST(2))
;
	}

	if (items < 4)
	    flags = 0;
	else {
	    flags = (int)SvIV(ST(3))
;
	}
#line 24 "lib/OpenGL/Modern.xs"
  struct createParams params =
  {
#if defined(GLEW_OSMESA)
#elif defined(GLEW_EGL)
#elif defined(_WIN32)
    -1,  /* pixelformat */
#elif !defined(__HAIKU__) && !defined(__APPLE__) || defined(GLEW_APPLE_GLX)
    "",  /* display */
    -1,  /* visual */
#endif
    major,
    minor,
    profile_mask,
    flags
  };
    RETVAL = glewCreateContext(&params);
#line 233 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glewDestroyContext); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glewDestroyContext)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 47 "lib/OpenGL/Modern.xs"
    glewDestroyContext();
#line 250 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glewInit); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glewInit)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
	UV	RETVAL;
	dXSTARG;
#line 52 "lib/OpenGL/Modern.xs"
    glewExperimental = GL_TRUE; /* We want everything that is available on this machine */
    if (_done_glewInit>0) {
        warn("glewInit() called %dX already", _done_glewInit);
    }
    RETVAL = glewInit();
    if ( !RETVAL )
        _done_glewInit++;
#line 273 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glewGetErrorString); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glewGetErrorString)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "err");
    {
	GLenum	err = (int)SvIV(ST(0))
;
	char *	RETVAL;
	dXSTARG;
#line 66 "lib/OpenGL/Modern.xs"
    RETVAL = (void *)glewGetErrorString(err);
#line 294 "lib/OpenGL/Modern.c"
	sv_setpv(TARG, RETVAL);
	XSprePUSH;
	PUSHTARG;
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glewGetString); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glewGetString)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "what");
    {
	GLenum	what = (int)SvIV(ST(0))
;
	char *	RETVAL;
	dXSTARG;
#line 74 "lib/OpenGL/Modern.xs"
    RETVAL = (void *)glewGetString(what);
#line 316 "lib/OpenGL/Modern.c"
	sv_setpv(TARG, RETVAL);
	XSprePUSH;
	PUSHTARG;
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glewIsSupported); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glewIsSupported)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "name");
    {
	char*	name = (char *)SvPV_nolen(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 82 "lib/OpenGL/Modern.xs"
    RETVAL = glewIsSupported(name);
#line 338 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_done_glewInit); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_done_glewInit)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
	int	RETVAL;
	dXSTARG;
#line 90 "lib/OpenGL/Modern.xs"
    RETVAL = _done_glewInit;
#line 357 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glpSetAutoCheckErrors); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glpSetAutoCheckErrors)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
	int	RETVAL;
	dXSTARG;
#line 97 "lib/OpenGL/Modern.xs"
    int state;
    if (items == 1) {
        state = (int)SvIV(ST(0));
        if (state != 0 && state != 1 )
            croak( "Usage: glpSetAutoCheckErrors(1|0)\n" );
        _auto_check_errors = state;
    }
    RETVAL = _auto_check_errors;
#line 383 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glpCheckErrors); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glpCheckErrors)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 111 "lib/OpenGL/Modern.xs"
  OGLM_CROAK_IF_ERR(glpCheckErrors, )
#line 400 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glpErrorString); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glpErrorString)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "err");
    {
	int	err = (int)SvIV(ST(0))
;
	const char *	RETVAL;
	dXSTARG;
#line 117 "lib/OpenGL/Modern.xs"
  RETVAL = gl_error_string(err);
#line 419 "lib/OpenGL/Modern.c"
	sv_setpv(TARG, RETVAL);
	XSprePUSH;
	PUSHTARG;
    }
    XSRETURN(1);
}


/* INCLUDE:  Including '../../auto-xs.inc' from 'Modern.xs' */


XS_EUPXS(XS_OpenGL__Modern_glAccum); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glAccum)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "op, value");
    {
	GLenum	op = (int)SvIV(ST(0))
;
	GLfloat	value = (float)SvNV(ST(1))
;
#line 6 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glAccum, )
  glAccum(op, value);
  OGLM_CHECK_ERR(glAccum, )
#line 447 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glAcquireKeyedMutexWin32EXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glAcquireKeyedMutexWin32EXT)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "memory, key, timeout");
    {
	GLuint	memory = (unsigned int)SvUV(ST(0))
;
	GLuint64	key = (unsigned int)SvUV(ST(1))
;
	GLuint	timeout = (unsigned int)SvUV(ST(2))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 17 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glAcquireKeyedMutexWin32EXT, )
  OGLM_AVAIL_CHECK(__glewAcquireKeyedMutexWin32EXT, glAcquireKeyedMutexWin32EXT)
  RETVAL = glAcquireKeyedMutexWin32EXT(memory, key, timeout);
  OGLM_CHECK_ERR(glAcquireKeyedMutexWin32EXT, )
#line 474 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glActiveProgramEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glActiveProgramEXT)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "program");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
#line 29 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glActiveProgramEXT, )
  OGLM_AVAIL_CHECK(__glewActiveProgramEXT, glActiveProgramEXT)
  glActiveProgramEXT(program);
  OGLM_CHECK_ERR(glActiveProgramEXT, )
#line 497 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glActiveShaderProgram); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glActiveShaderProgram)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pipeline, program");
    {
	GLuint	pipeline = (unsigned int)SvUV(ST(0))
;
	GLuint	program = (unsigned int)SvUV(ST(1))
;
#line 40 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glActiveShaderProgram, )
  OGLM_AVAIL_CHECK(__glewActiveShaderProgram, glActiveShaderProgram)
  glActiveShaderProgram(pipeline, program);
  OGLM_CHECK_ERR(glActiveShaderProgram, )
#line 520 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glActiveStencilFaceEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glActiveStencilFaceEXT)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "face");
    {
	GLenum	face = (int)SvIV(ST(0))
;
#line 50 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glActiveStencilFaceEXT, )
  OGLM_AVAIL_CHECK(__glewActiveStencilFaceEXT, glActiveStencilFaceEXT)
  glActiveStencilFaceEXT(face);
  OGLM_CHECK_ERR(glActiveStencilFaceEXT, )
#line 541 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glActiveTexture); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glActiveTexture)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "texture");
    {
	GLenum	texture = (int)SvIV(ST(0))
;
#line 62 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glActiveTexture, )
  OGLM_AVAIL_CHECK(__glewActiveTexture, glActiveTexture)
  glActiveTexture(texture);
  OGLM_CHECK_ERR(glActiveTexture, )
#line 563 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glActiveVaryingNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glActiveVaryingNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "program, name");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	const GLchar *	name = (const GLchar *)SvPV_nolen(ST(1))
;
#line 73 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glActiveVaryingNV, )
  OGLM_AVAIL_CHECK(__glewActiveVaryingNV, glActiveVaryingNV)
  glActiveVaryingNV(program, name);
  OGLM_CHECK_ERR(glActiveVaryingNV, )
#line 586 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glAddSwapHintRectWIN); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glAddSwapHintRectWIN)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "x, y, width, height");
    {
	GLint	x = (int)SvIV(ST(0))
;
	GLint	y = (int)SvIV(ST(1))
;
	GLsizei	width = (int)SvIV(ST(2))
;
	GLsizei	height = (int)SvIV(ST(3))
;
#line 86 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glAddSwapHintRectWIN, )
  OGLM_AVAIL_CHECK(__glewAddSwapHintRectWIN, glAddSwapHintRectWIN)
  glAddSwapHintRectWIN(x, y, width, height);
  OGLM_CHECK_ERR(glAddSwapHintRectWIN, )
#line 613 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glAddressSpace); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glAddressSpace)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "space, mask");
    {
	GLenum	space = (int)SvIV(ST(0))
;
	GLbitfield	mask = (int)SvIV(ST(1))
;
#line 97 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glAddressSpace, )
  OGLM_AVAIL_CHECK(__glewAddressSpace, glAddressSpace)
  glAddressSpace(space, mask);
  OGLM_CHECK_ERR(glAddressSpace, )
#line 636 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glAllocMPEGPredictorsSGIX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glAllocMPEGPredictorsSGIX_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "width, height, n, predictors");
    {
	GLsizei	width = (int)SvIV(ST(0))
;
	GLsizei	height = (int)SvIV(ST(1))
;
	GLsizei	n = (int)SvIV(ST(2))
;
	GLuint*	predictors = INT2PTR(GLuint *,SvIV(ST(3)))
;
#line 110 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glAllocMPEGPredictorsSGIX, )
  OGLM_AVAIL_CHECK(__glewAllocMPEGPredictorsSGIX, glAllocMPEGPredictorsSGIX)
  glAllocMPEGPredictorsSGIX(width, height, n, predictors);
  OGLM_CHECK_ERR(glAllocMPEGPredictorsSGIX, )
#line 663 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glAlphaFragmentOp1ATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glAlphaFragmentOp1ATI)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "op, dst, dstMod, arg1, arg1Rep, arg1Mod");
    {
	GLenum	op = (int)SvIV(ST(0))
;
	GLuint	dst = (unsigned int)SvUV(ST(1))
;
	GLuint	dstMod = (unsigned int)SvUV(ST(2))
;
	GLuint	arg1 = (unsigned int)SvUV(ST(3))
;
	GLuint	arg1Rep = (unsigned int)SvUV(ST(4))
;
	GLuint	arg1Mod = (unsigned int)SvUV(ST(5))
;
#line 125 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glAlphaFragmentOp1ATI, )
  OGLM_AVAIL_CHECK(__glewAlphaFragmentOp1ATI, glAlphaFragmentOp1ATI)
  glAlphaFragmentOp1ATI(op, dst, dstMod, arg1, arg1Rep, arg1Mod);
  OGLM_CHECK_ERR(glAlphaFragmentOp1ATI, )
#line 694 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glAlphaFragmentOp2ATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glAlphaFragmentOp2ATI)
{
    dVAR; dXSARGS;
    if (items != 9)
       croak_xs_usage(cv,  "op, dst, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod");
    {
	GLenum	op = (int)SvIV(ST(0))
;
	GLuint	dst = (unsigned int)SvUV(ST(1))
;
	GLuint	dstMod = (unsigned int)SvUV(ST(2))
;
	GLuint	arg1 = (unsigned int)SvUV(ST(3))
;
	GLuint	arg1Rep = (unsigned int)SvUV(ST(4))
;
	GLuint	arg1Mod = (unsigned int)SvUV(ST(5))
;
	GLuint	arg2 = (unsigned int)SvUV(ST(6))
;
	GLuint	arg2Rep = (unsigned int)SvUV(ST(7))
;
	GLuint	arg2Mod = (unsigned int)SvUV(ST(8))
;
#line 143 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glAlphaFragmentOp2ATI, )
  OGLM_AVAIL_CHECK(__glewAlphaFragmentOp2ATI, glAlphaFragmentOp2ATI)
  glAlphaFragmentOp2ATI(op, dst, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod);
  OGLM_CHECK_ERR(glAlphaFragmentOp2ATI, )
#line 731 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glAlphaFragmentOp3ATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glAlphaFragmentOp3ATI)
{
    dVAR; dXSARGS;
    if (items != 12)
       croak_xs_usage(cv,  "op, dst, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod, arg3, arg3Rep, arg3Mod");
    {
	GLenum	op = (int)SvIV(ST(0))
;
	GLuint	dst = (unsigned int)SvUV(ST(1))
;
	GLuint	dstMod = (unsigned int)SvUV(ST(2))
;
	GLuint	arg1 = (unsigned int)SvUV(ST(3))
;
	GLuint	arg1Rep = (unsigned int)SvUV(ST(4))
;
	GLuint	arg1Mod = (unsigned int)SvUV(ST(5))
;
	GLuint	arg2 = (unsigned int)SvUV(ST(6))
;
	GLuint	arg2Rep = (unsigned int)SvUV(ST(7))
;
	GLuint	arg2Mod = (unsigned int)SvUV(ST(8))
;
	GLuint	arg3 = (unsigned int)SvUV(ST(9))
;
	GLuint	arg3Rep = (unsigned int)SvUV(ST(10))
;
	GLuint	arg3Mod = (unsigned int)SvUV(ST(11))
;
#line 164 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glAlphaFragmentOp3ATI, )
  OGLM_AVAIL_CHECK(__glewAlphaFragmentOp3ATI, glAlphaFragmentOp3ATI)
  glAlphaFragmentOp3ATI(op, dst, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod, arg3, arg3Rep, arg3Mod);
  OGLM_CHECK_ERR(glAlphaFragmentOp3ATI, )
#line 774 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glAlphaFunc); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glAlphaFunc)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "func, ref");
    {
	GLenum	func = (int)SvIV(ST(0))
;
	GLclampf	ref = (float)SvNV(ST(1))
;
#line 175 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glAlphaFunc, )
  glAlphaFunc(func, ref);
  OGLM_CHECK_ERR(glAlphaFunc, )
#line 796 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glAlphaFuncQCOM); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glAlphaFuncQCOM)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "func, ref");
    {
	GLenum	func = (int)SvIV(ST(0))
;
	GLclampf	ref = (float)SvNV(ST(1))
;
#line 185 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glAlphaFuncQCOM, )
  OGLM_AVAIL_CHECK(__glewAlphaFuncQCOM, glAlphaFuncQCOM)
  glAlphaFuncQCOM(func, ref);
  OGLM_CHECK_ERR(glAlphaFuncQCOM, )
#line 819 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glAlphaFuncx); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glAlphaFuncx)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "func, ref");
    {
	GLenum	func = (int)SvIV(ST(0))
;
	GLclampx	ref = (int)SvIV(ST(1))
;
#line 196 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glAlphaFuncx, )
  OGLM_AVAIL_CHECK(__glewAlphaFuncx, glAlphaFuncx)
  glAlphaFuncx(func, ref);
  OGLM_CHECK_ERR(glAlphaFuncx, )
#line 842 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glAlphaToCoverageDitherControlNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glAlphaToCoverageDitherControlNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "mode");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
#line 206 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glAlphaToCoverageDitherControlNV, )
  OGLM_AVAIL_CHECK(__glewAlphaToCoverageDitherControlNV, glAlphaToCoverageDitherControlNV)
  glAlphaToCoverageDitherControlNV(mode);
  OGLM_CHECK_ERR(glAlphaToCoverageDitherControlNV, )
#line 863 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glApplyFramebufferAttachmentCMAAINTEL); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glApplyFramebufferAttachmentCMAAINTEL)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 215 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glApplyFramebufferAttachmentCMAAINTEL, )
  OGLM_AVAIL_CHECK(__glewApplyFramebufferAttachmentCMAAINTEL, glApplyFramebufferAttachmentCMAAINTEL)
  glApplyFramebufferAttachmentCMAAINTEL();
  OGLM_CHECK_ERR(glApplyFramebufferAttachmentCMAAINTEL, )
#line 882 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glApplyTextureEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glApplyTextureEXT)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "mode");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
#line 225 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glApplyTextureEXT, )
  OGLM_AVAIL_CHECK(__glewApplyTextureEXT, glApplyTextureEXT)
  glApplyTextureEXT(mode);
  OGLM_CHECK_ERR(glApplyTextureEXT, )
#line 903 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glAreProgramsResidentNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glAreProgramsResidentNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "n, programs, residences");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	const GLuint*	programs = INT2PTR(const GLuint *,SvIV(ST(1)))
;
	GLboolean *	residences = INT2PTR(GLboolean *,SvIV(ST(2)))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 237 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glAreProgramsResidentNV, )
  OGLM_AVAIL_CHECK(__glewAreProgramsResidentNV, glAreProgramsResidentNV)
  RETVAL = glAreProgramsResidentNV(n, programs, residences);
  OGLM_CHECK_ERR(glAreProgramsResidentNV, )
#line 930 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glAreProgramsResidentNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glAreProgramsResidentNV_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLboolean	RETVAL;
	dXSTARG;
#line 248 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glAreProgramsResidentNV, )
  OGLM_AVAIL_CHECK(__glewAreProgramsResidentNV, glAreProgramsResidentNV)
  GLsizei n = items;
  GLuint* programs = OGLM_GET_VARARGS(programs,0,GLuint,UV,n);
  GLboolean *residences = OGLM_ALLOC(n,GLboolean,residences);
  RETVAL = glAreProgramsResidentNV((GLsizei )n, (const GLuint* )programs, (GLboolean *)residences);
  OGLM_CHECK_ERR(glAreProgramsResidentNV, free(residences);free(programs);)
  EXTEND(sp, 2);
  mPUSHs(newSViv(RETVAL));
  OGLM_PUSH_ARRAY(glAreProgramsResidentNV, newSViv, residences, n)
  free(residences);free(programs);
#line 962 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glAreTexturesResident_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glAreTexturesResident_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "n, textures, residences");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	const GLuint *	textures = INT2PTR(const GLuint *,SvIV(ST(1)))
;
	GLboolean *	residences = INT2PTR(GLboolean *,SvIV(ST(2)))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 267 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glAreTexturesResident, )
  RETVAL = glAreTexturesResident(n, textures, residences);
  OGLM_CHECK_ERR(glAreTexturesResident, )
#line 989 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glAreTexturesResident_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glAreTexturesResident_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLboolean	RETVAL;
	dXSTARG;
#line 277 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glAreTexturesResident, )
  GLsizei n = items;
  GLboolean *residences = OGLM_ALLOC(n,GLboolean,residences);
  GLuint *textures = OGLM_GET_VARARGS(textures,0,GLuint,UV,n);
  RETVAL = glAreTexturesResident((GLsizei )n, (const GLuint *)textures, (GLboolean *)residences);
  OGLM_CHECK_ERR(glAreTexturesResident, free(residences);free(textures);)
  EXTEND(sp, 2);
  mPUSHs(newSViv(RETVAL));
  OGLM_PUSH_ARRAY(glAreTexturesResident, newSViv, residences, n)
  free(residences);free(textures);
#line 1020 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glAreTexturesResidentEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glAreTexturesResidentEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "n, textures, residences");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	const GLuint*	textures = INT2PTR(const GLuint *,SvIV(ST(1)))
;
	GLboolean*	residences = INT2PTR(GLboolean *,SvIV(ST(2)))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 295 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glAreTexturesResidentEXT, )
  OGLM_AVAIL_CHECK(__glewAreTexturesResidentEXT, glAreTexturesResidentEXT)
  RETVAL = glAreTexturesResidentEXT(n, textures, residences);
  OGLM_CHECK_ERR(glAreTexturesResidentEXT, )
#line 1048 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glAreTexturesResidentEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glAreTexturesResidentEXT_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLboolean	RETVAL;
	dXSTARG;
#line 306 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glAreTexturesResidentEXT, )
  OGLM_AVAIL_CHECK(__glewAreTexturesResidentEXT, glAreTexturesResidentEXT)
  GLsizei n = items;
  GLboolean* residences = OGLM_ALLOC(n,GLboolean,residences);
  GLuint* textures = OGLM_GET_VARARGS(textures,0,GLuint,UV,n);
  RETVAL = glAreTexturesResidentEXT((GLsizei )n, (const GLuint* )textures, (GLboolean* )residences);
  OGLM_CHECK_ERR(glAreTexturesResidentEXT, free(residences);free(textures);)
  EXTEND(sp, 2);
  mPUSHs(newSViv(RETVAL));
  OGLM_PUSH_ARRAY(glAreTexturesResidentEXT, newSViv, residences, n)
  free(residences);free(textures);
#line 1080 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glAreVertexArraysResidentSGIX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glAreVertexArraysResidentSGIX_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "n, arrays, residences");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	const GLuint*	arrays = INT2PTR(const GLuint *,SvIV(ST(1)))
;
	GLboolean*	residences = INT2PTR(GLboolean *,SvIV(ST(2)))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 325 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glAreVertexArraysResidentSGIX, )
  OGLM_AVAIL_CHECK(__glewAreVertexArraysResidentSGIX, glAreVertexArraysResidentSGIX)
  RETVAL = glAreVertexArraysResidentSGIX(n, arrays, residences);
  OGLM_CHECK_ERR(glAreVertexArraysResidentSGIX, )
#line 1108 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glArrayElement); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glArrayElement)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "i");
    {
	GLint	i = (int)SvIV(ST(0))
;
#line 339 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glArrayElement, )
  glArrayElement(i);
  OGLM_CHECK_ERR(glArrayElement, )
#line 1131 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glArrayObjectATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glArrayObjectATI)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "array, size, type, stride, buffer, offset");
    {
	GLenum	array = (int)SvIV(ST(0))
;
	GLint	size = (int)SvIV(ST(1))
;
	GLenum	type = (int)SvIV(ST(2))
;
	GLsizei	stride = (int)SvIV(ST(3))
;
	GLuint	buffer = (unsigned int)SvUV(ST(4))
;
	GLuint	offset = (unsigned int)SvUV(ST(5))
;
#line 353 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glArrayObjectATI, )
  OGLM_AVAIL_CHECK(__glewArrayObjectATI, glArrayObjectATI)
  glArrayObjectATI(array, size, type, stride, buffer, offset);
  OGLM_CHECK_ERR(glArrayObjectATI, )
#line 1162 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glAsyncCopyBufferSubDataNVX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glAsyncCopyBufferSubDataNVX_c)
{
    dVAR; dXSARGS;
    if (items != 13)
       croak_xs_usage(cv,  "waitSemaphoreCount, waitSemaphoreArray, fenceValueArray, readGpu, writeGpuMask, readBuffer, writeBuffer, readOffset, writeOffset, size, signalSemaphoreCount, signalSemaphoreArray, signalValueArray");
    {
	GLsizei	waitSemaphoreCount = (int)SvIV(ST(0))
;
	const GLuint*	waitSemaphoreArray = INT2PTR(const GLuint *,SvIV(ST(1)))
;
	const GLuint64 *	fenceValueArray = INT2PTR(const GLuint64 *,SvIV(ST(2)))
;
	GLuint	readGpu = (unsigned int)SvUV(ST(3))
;
	GLbitfield	writeGpuMask = (int)SvIV(ST(4))
;
	GLuint	readBuffer = (unsigned int)SvUV(ST(5))
;
	GLuint	writeBuffer = (unsigned int)SvUV(ST(6))
;
	GLintptr	readOffset = (unsigned int)SvUV(ST(7))
;
	GLintptr	writeOffset = (unsigned int)SvUV(ST(8))
;
	GLsizeiptr	size = (unsigned int)SvUV(ST(9))
;
	GLsizei	signalSemaphoreCount = (int)SvIV(ST(10))
;
	const GLuint *	signalSemaphoreArray = INT2PTR(const GLuint *,SvIV(ST(11)))
;
	const GLuint64 *	signalValueArray = INT2PTR(const GLuint64 *,SvIV(ST(12)))
;
	GLsync	RETVAL;
	dXSTARG;
#line 375 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glAsyncCopyBufferSubDataNVX, )
  OGLM_AVAIL_CHECK(__glewAsyncCopyBufferSubDataNVX, glAsyncCopyBufferSubDataNVX)
  RETVAL = glAsyncCopyBufferSubDataNVX(waitSemaphoreCount, waitSemaphoreArray, fenceValueArray, readGpu, writeGpuMask, readBuffer, writeBuffer, readOffset, writeOffset, size, signalSemaphoreCount, signalSemaphoreArray, signalValueArray);
  OGLM_CHECK_ERR(glAsyncCopyBufferSubDataNVX, )
#line 1209 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi(PTR2IV(RETVAL));
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glAsyncCopyBufferSubDataNVX_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glAsyncCopyBufferSubDataNVX_p)
{
    dVAR; dXSARGS;
    if (items != 11)
       croak_xs_usage(cv,  "waitSemaphoreArraySV, fenceValueArraySV, readGpu, writeGpuMask, readBuffer, writeBuffer, readOffset, writeOffset, size, signalSemaphoreArraySV, signalValueArraySV");
    {
	SV *	waitSemaphoreArraySV = ST(0)
;
	SV *	fenceValueArraySV = ST(1)
;
	GLuint	readGpu = (unsigned int)SvUV(ST(2))
;
	GLbitfield	writeGpuMask = (int)SvIV(ST(3))
;
	GLuint	readBuffer = (unsigned int)SvUV(ST(4))
;
	GLuint	writeBuffer = (unsigned int)SvUV(ST(5))
;
	GLintptr	readOffset = (unsigned int)SvUV(ST(6))
;
	GLintptr	writeOffset = (unsigned int)SvUV(ST(7))
;
	GLsizeiptr	size = (unsigned int)SvUV(ST(8))
;
	SV *	signalSemaphoreArraySV = ST(9)
;
	SV *	signalValueArraySV = ST(10)
;
	GLsync	RETVAL;
	dXSTARG;
#line 397 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glAsyncCopyBufferSubDataNVX, )
  OGLM_AVAIL_CHECK(__glewAsyncCopyBufferSubDataNVX, glAsyncCopyBufferSubDataNVX)
  GLsizei signalSemaphoreCount = OGLM_LEN_ARRAY(signalSemaphoreCount, signalSemaphoreArray);
  GLsizei waitSemaphoreCount = OGLM_LEN_ARRAY(waitSemaphoreCount, waitSemaphoreArray);
  GLuint64 *fenceValueArray = OGLM_GET_ARRAY(fenceValueArray, GLuint64, UV, waitSemaphoreCount);
  GLuint *signalSemaphoreArray = OGLM_GET_ARRAY(signalSemaphoreArray, GLuint, UV, signalSemaphoreCount);
  GLuint64 *signalValueArray = OGLM_GET_ARRAY(signalValueArray, GLuint64, UV, signalSemaphoreCount);
  GLuint* waitSemaphoreArray = OGLM_GET_ARRAY(waitSemaphoreArray, GLuint, UV, waitSemaphoreCount);
  RETVAL = glAsyncCopyBufferSubDataNVX((GLsizei )waitSemaphoreCount, (const GLuint* )waitSemaphoreArray, (const GLuint64 *)fenceValueArray, (GLuint )readGpu, (GLbitfield )writeGpuMask, (GLuint )readBuffer, (GLuint )writeBuffer, (GLintptr )readOffset, (GLintptr )writeOffset, (GLsizeiptr )size, (GLsizei )signalSemaphoreCount, (const GLuint *)signalSemaphoreArray, (const GLuint64 *)signalValueArray);
  OGLM_CHECK_ERR(glAsyncCopyBufferSubDataNVX, free(fenceValueArray);free(signalSemaphoreArray);free(signalValueArray);free(waitSemaphoreArray);)
  free(fenceValueArray);free(signalSemaphoreArray);free(signalValueArray);free(waitSemaphoreArray);
#line 1261 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi(PTR2IV(RETVAL));
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glAsyncCopyImageSubDataNVX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glAsyncCopyImageSubDataNVX_c)
{
    dVAR; dXSARGS;
    if (items != 23)
       croak_xs_usage(cv,  "waitSemaphoreCount, waitSemaphoreArray, waitValueArray, srcGpu, dstGpuMask, srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, srcWidth, srcHeight, srcDepth, signalSemaphoreCount, signalSemaphoreArray, signalValueArray");
    {
	GLsizei	waitSemaphoreCount = (int)SvIV(ST(0))
;
	const GLuint*	waitSemaphoreArray = INT2PTR(const GLuint *,SvIV(ST(1)))
;
	const GLuint64 *	waitValueArray = INT2PTR(const GLuint64 *,SvIV(ST(2)))
;
	GLuint	srcGpu = (unsigned int)SvUV(ST(3))
;
	GLbitfield	dstGpuMask = (int)SvIV(ST(4))
;
	GLuint	srcName = (unsigned int)SvUV(ST(5))
;
	GLenum	srcTarget = (int)SvIV(ST(6))
;
	GLint	srcLevel = (int)SvIV(ST(7))
;
	GLint	srcX = (int)SvIV(ST(8))
;
	GLint	srcY = (int)SvIV(ST(9))
;
	GLint	srcZ = (int)SvIV(ST(10))
;
	GLuint	dstName = (unsigned int)SvUV(ST(11))
;
	GLenum	dstTarget = (int)SvIV(ST(12))
;
	GLint	dstLevel = (int)SvIV(ST(13))
;
	GLint	dstX = (int)SvIV(ST(14))
;
	GLint	dstY = (int)SvIV(ST(15))
;
	GLint	dstZ = (int)SvIV(ST(16))
;
	GLsizei	srcWidth = (int)SvIV(ST(17))
;
	GLsizei	srcHeight = (int)SvIV(ST(18))
;
	GLsizei	srcDepth = (int)SvIV(ST(19))
;
	GLsizei	signalSemaphoreCount = (int)SvIV(ST(20))
;
	const GLuint *	signalSemaphoreArray = INT2PTR(const GLuint *,SvIV(ST(21)))
;
	const GLuint64 *	signalValueArray = INT2PTR(const GLuint64 *,SvIV(ST(22)))
;
	GLuint	RETVAL;
	dXSTARG;
#line 438 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glAsyncCopyImageSubDataNVX, )
  OGLM_AVAIL_CHECK(__glewAsyncCopyImageSubDataNVX, glAsyncCopyImageSubDataNVX)
  RETVAL = glAsyncCopyImageSubDataNVX(waitSemaphoreCount, waitSemaphoreArray, waitValueArray, srcGpu, dstGpuMask, srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, srcWidth, srcHeight, srcDepth, signalSemaphoreCount, signalSemaphoreArray, signalValueArray);
  OGLM_CHECK_ERR(glAsyncCopyImageSubDataNVX, )
#line 1330 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glAsyncCopyImageSubDataNVX_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glAsyncCopyImageSubDataNVX_p)
{
    dVAR; dXSARGS;
    if (items != 21)
       croak_xs_usage(cv,  "waitSemaphoreArraySV, waitValueArraySV, srcGpu, dstGpuMask, srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, srcWidth, srcHeight, srcDepth, signalSemaphoreArraySV, signalValueArraySV");
    {
	SV *	waitSemaphoreArraySV = ST(0)
;
	SV *	waitValueArraySV = ST(1)
;
	GLuint	srcGpu = (unsigned int)SvUV(ST(2))
;
	GLbitfield	dstGpuMask = (int)SvIV(ST(3))
;
	GLuint	srcName = (unsigned int)SvUV(ST(4))
;
	GLenum	srcTarget = (int)SvIV(ST(5))
;
	GLint	srcLevel = (int)SvIV(ST(6))
;
	GLint	srcX = (int)SvIV(ST(7))
;
	GLint	srcY = (int)SvIV(ST(8))
;
	GLint	srcZ = (int)SvIV(ST(9))
;
	GLuint	dstName = (unsigned int)SvUV(ST(10))
;
	GLenum	dstTarget = (int)SvIV(ST(11))
;
	GLint	dstLevel = (int)SvIV(ST(12))
;
	GLint	dstX = (int)SvIV(ST(13))
;
	GLint	dstY = (int)SvIV(ST(14))
;
	GLint	dstZ = (int)SvIV(ST(15))
;
	GLsizei	srcWidth = (int)SvIV(ST(16))
;
	GLsizei	srcHeight = (int)SvIV(ST(17))
;
	GLsizei	srcDepth = (int)SvIV(ST(18))
;
	SV *	signalSemaphoreArraySV = ST(19)
;
	SV *	signalValueArraySV = ST(20)
;
	GLuint	RETVAL;
	dXSTARG;
#line 470 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glAsyncCopyImageSubDataNVX, )
  OGLM_AVAIL_CHECK(__glewAsyncCopyImageSubDataNVX, glAsyncCopyImageSubDataNVX)
  GLsizei signalSemaphoreCount = OGLM_LEN_ARRAY(signalSemaphoreCount, signalSemaphoreArray);
  GLsizei waitSemaphoreCount = OGLM_LEN_ARRAY(waitSemaphoreCount, waitSemaphoreArray);
  GLuint *signalSemaphoreArray = OGLM_GET_ARRAY(signalSemaphoreArray, GLuint, UV, signalSemaphoreCount);
  GLuint64 *signalValueArray = OGLM_GET_ARRAY(signalValueArray, GLuint64, UV, signalSemaphoreCount);
  GLuint* waitSemaphoreArray = OGLM_GET_ARRAY(waitSemaphoreArray, GLuint, UV, waitSemaphoreCount);
  GLuint64 *waitValueArray = OGLM_GET_ARRAY(waitValueArray, GLuint64, UV, waitSemaphoreCount);
  RETVAL = glAsyncCopyImageSubDataNVX((GLsizei )waitSemaphoreCount, (const GLuint* )waitSemaphoreArray, (const GLuint64 *)waitValueArray, (GLuint )srcGpu, (GLbitfield )dstGpuMask, (GLuint )srcName, (GLenum )srcTarget, (GLint )srcLevel, (GLint )srcX, (GLint )srcY, (GLint )srcZ, (GLuint )dstName, (GLenum )dstTarget, (GLint )dstLevel, (GLint )dstX, (GLint )dstY, (GLint )dstZ, (GLsizei )srcWidth, (GLsizei )srcHeight, (GLsizei )srcDepth, (GLsizei )signalSemaphoreCount, (const GLuint *)signalSemaphoreArray, (const GLuint64 *)signalValueArray);
  OGLM_CHECK_ERR(glAsyncCopyImageSubDataNVX, free(signalSemaphoreArray);free(signalValueArray);free(waitSemaphoreArray);free(waitValueArray);)
  free(signalSemaphoreArray);free(signalValueArray);free(waitSemaphoreArray);free(waitValueArray);
#line 1402 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glAsyncMarkerSGIX); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glAsyncMarkerSGIX)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "marker");
    {
	GLuint	marker = (unsigned int)SvUV(ST(0))
;
#line 489 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glAsyncMarkerSGIX, )
  OGLM_AVAIL_CHECK(__glewAsyncMarkerSGIX, glAsyncMarkerSGIX)
  glAsyncMarkerSGIX(marker);
  OGLM_CHECK_ERR(glAsyncMarkerSGIX, )
#line 1425 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glAttachObjectARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glAttachObjectARB)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "containerObj, obj");
    {
	GLhandleARB	containerObj = (unsigned int)SvUV(ST(0))
;
	GLhandleARB	obj = (unsigned int)SvUV(ST(1))
;
#line 500 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glAttachObjectARB, )
  OGLM_AVAIL_CHECK(__glewAttachObjectARB, glAttachObjectARB)
  glAttachObjectARB(containerObj, obj);
  OGLM_CHECK_ERR(glAttachObjectARB, )
#line 1448 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glAttachShader); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glAttachShader)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "program, shader");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLuint	shader = (unsigned int)SvUV(ST(1))
;
#line 511 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glAttachShader, )
  OGLM_AVAIL_CHECK(__glewAttachShader, glAttachShader)
  glAttachShader(program, shader);
  OGLM_CHECK_ERR(glAttachShader, )
#line 1471 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBegin); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBegin)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "mode");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
#line 521 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBegin, )
  glBegin(mode);
  OGLM_CHECK_ERR(glBegin, )
#line 1491 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBeginConditionalRender); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBeginConditionalRender)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "id, mode");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	mode = (int)SvIV(ST(1))
;
#line 533 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBeginConditionalRender, )
  OGLM_AVAIL_CHECK(__glewBeginConditionalRender, glBeginConditionalRender)
  glBeginConditionalRender(id, mode);
  OGLM_CHECK_ERR(glBeginConditionalRender, )
#line 1515 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBeginConditionalRenderNVX); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBeginConditionalRenderNVX)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "id");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
#line 543 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBeginConditionalRenderNVX, )
  OGLM_AVAIL_CHECK(__glewBeginConditionalRenderNVX, glBeginConditionalRenderNVX)
  glBeginConditionalRenderNVX(id);
  OGLM_CHECK_ERR(glBeginConditionalRenderNVX, )
#line 1536 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBeginFragmentShaderATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBeginFragmentShaderATI)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 552 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBeginFragmentShaderATI, )
  OGLM_AVAIL_CHECK(__glewBeginFragmentShaderATI, glBeginFragmentShaderATI)
  glBeginFragmentShaderATI();
  OGLM_CHECK_ERR(glBeginFragmentShaderATI, )
#line 1555 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBeginOcclusionQueryNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBeginOcclusionQueryNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "id");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
#line 562 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBeginOcclusionQueryNV, )
  OGLM_AVAIL_CHECK(__glewBeginOcclusionQueryNV, glBeginOcclusionQueryNV)
  glBeginOcclusionQueryNV(id);
  OGLM_CHECK_ERR(glBeginOcclusionQueryNV, )
#line 1576 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBeginPerfMonitorAMD); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBeginPerfMonitorAMD)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "monitor");
    {
	GLuint	monitor = (unsigned int)SvUV(ST(0))
;
#line 572 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBeginPerfMonitorAMD, )
  OGLM_AVAIL_CHECK(__glewBeginPerfMonitorAMD, glBeginPerfMonitorAMD)
  glBeginPerfMonitorAMD(monitor);
  OGLM_CHECK_ERR(glBeginPerfMonitorAMD, )
#line 1597 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBeginPerfQueryINTEL); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBeginPerfQueryINTEL)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "queryHandle");
    {
	GLuint	queryHandle = (unsigned int)SvUV(ST(0))
;
#line 582 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBeginPerfQueryINTEL, )
  OGLM_AVAIL_CHECK(__glewBeginPerfQueryINTEL, glBeginPerfQueryINTEL)
  glBeginPerfQueryINTEL(queryHandle);
  OGLM_CHECK_ERR(glBeginPerfQueryINTEL, )
#line 1618 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBeginQuery); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBeginQuery)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, id");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	id = (unsigned int)SvUV(ST(1))
;
#line 595 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBeginQuery, )
  OGLM_AVAIL_CHECK(__glewBeginQuery, glBeginQuery)
  glBeginQuery(target, id);
  OGLM_CHECK_ERR(glBeginQuery, )
#line 1642 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBeginQueryANGLE); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBeginQueryANGLE)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, id");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	id = (unsigned int)SvUV(ST(1))
;
#line 606 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBeginQueryANGLE, )
  OGLM_AVAIL_CHECK(__glewBeginQueryANGLE, glBeginQueryANGLE)
  glBeginQueryANGLE(target, id);
  OGLM_CHECK_ERR(glBeginQueryANGLE, )
#line 1665 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBeginQueryEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBeginQueryEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, id");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	id = (unsigned int)SvUV(ST(1))
;
#line 617 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBeginQueryEXT, )
  OGLM_AVAIL_CHECK(__glewBeginQueryEXT, glBeginQueryEXT)
  glBeginQueryEXT(target, id);
  OGLM_CHECK_ERR(glBeginQueryEXT, )
#line 1688 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBeginQueryIndexed); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBeginQueryIndexed)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, index, id");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLuint	id = (unsigned int)SvUV(ST(2))
;
#line 629 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBeginQueryIndexed, )
  OGLM_AVAIL_CHECK(__glewBeginQueryIndexed, glBeginQueryIndexed)
  glBeginQueryIndexed(target, index, id);
  OGLM_CHECK_ERR(glBeginQueryIndexed, )
#line 1713 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBeginSceneEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBeginSceneEXT)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 638 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBeginSceneEXT, )
  OGLM_AVAIL_CHECK(__glewBeginSceneEXT, glBeginSceneEXT)
  glBeginSceneEXT();
  OGLM_CHECK_ERR(glBeginSceneEXT, )
#line 1732 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBeginTransformFeedback); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBeginTransformFeedback)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "primitiveMode");
    {
	GLenum	primitiveMode = (int)SvIV(ST(0))
;
#line 651 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBeginTransformFeedback, )
  OGLM_AVAIL_CHECK(__glewBeginTransformFeedback, glBeginTransformFeedback)
  glBeginTransformFeedback(primitiveMode);
  OGLM_CHECK_ERR(glBeginTransformFeedback, )
#line 1754 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBeginVertexShaderEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBeginVertexShaderEXT)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 660 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBeginVertexShaderEXT, )
  OGLM_AVAIL_CHECK(__glewBeginVertexShaderEXT, glBeginVertexShaderEXT)
  glBeginVertexShaderEXT();
  OGLM_CHECK_ERR(glBeginVertexShaderEXT, )
#line 1773 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBeginVideoCaptureNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBeginVideoCaptureNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "video_capture_slot");
    {
	GLuint	video_capture_slot = (unsigned int)SvUV(ST(0))
;
#line 670 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBeginVideoCaptureNV, )
  OGLM_AVAIL_CHECK(__glewBeginVideoCaptureNV, glBeginVideoCaptureNV)
  glBeginVideoCaptureNV(video_capture_slot);
  OGLM_CHECK_ERR(glBeginVideoCaptureNV, )
#line 1794 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindArraySetEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindArraySetEXT_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "arrayset");
    {
	const void *	arrayset = INT2PTR(const void *,SvIV(ST(0)))
;
#line 680 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindArraySetEXT, )
  OGLM_AVAIL_CHECK(__glewBindArraySetEXT, glBindArraySetEXT)
  glBindArraySetEXT(arrayset);
  OGLM_CHECK_ERR(glBindArraySetEXT, )
#line 1815 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindAttribLocation); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindAttribLocation)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, index, name");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	const GLchar*	name = (const GLchar *)SvPV_nolen(ST(2))
;
#line 692 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindAttribLocation, )
  OGLM_AVAIL_CHECK(__glewBindAttribLocation, glBindAttribLocation)
  glBindAttribLocation(program, index, name);
  OGLM_CHECK_ERR(glBindAttribLocation, )
#line 1840 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindAttribLocationARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindAttribLocationARB)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "programObj, index, name");
    {
	GLhandleARB	programObj = (unsigned int)SvUV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	const GLcharARB*	name = (const GLcharARB *)SvPV_nolen(ST(2))
;
#line 704 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindAttribLocationARB, )
  OGLM_AVAIL_CHECK(__glewBindAttribLocationARB, glBindAttribLocationARB)
  glBindAttribLocationARB(programObj, index, name);
  OGLM_CHECK_ERR(glBindAttribLocationARB, )
#line 1865 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindBuffer); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindBuffer)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, buffer");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	buffer = (unsigned int)SvUV(ST(1))
;
#line 717 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindBuffer, )
  OGLM_AVAIL_CHECK(__glewBindBuffer, glBindBuffer)
  glBindBuffer(target, buffer);
  OGLM_CHECK_ERR(glBindBuffer, )
#line 1889 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindBufferBase); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindBufferBase)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "target, index, buffer");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLuint	buffer = (unsigned int)SvUV(ST(2))
;
#line 732 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindBufferBase, )
  OGLM_AVAIL_CHECK(__glewBindBufferBase, glBindBufferBase)
  glBindBufferBase(target, index, buffer);
  OGLM_CHECK_ERR(glBindBufferBase, )
#line 1915 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindBufferOffsetEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindBufferOffsetEXT)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "target, index, buffer, offset");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLuint	buffer = (unsigned int)SvUV(ST(2))
;
	GLintptr	offset = (unsigned int)SvUV(ST(3))
;
#line 747 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindBufferOffsetEXT, )
  OGLM_AVAIL_CHECK(__glewBindBufferOffsetEXT, glBindBufferOffsetEXT)
  glBindBufferOffsetEXT(target, index, buffer, offset);
  OGLM_CHECK_ERR(glBindBufferOffsetEXT, )
#line 1943 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindBufferRange); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindBufferRange)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "target, index, buffer, offset, size");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLuint	buffer = (unsigned int)SvUV(ST(2))
;
	GLintptr	offset = (unsigned int)SvUV(ST(3))
;
	GLsizeiptr	size = (unsigned int)SvUV(ST(4))
;
#line 764 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindBufferRange, )
  OGLM_AVAIL_CHECK(__glewBindBufferRange, glBindBufferRange)
  glBindBufferRange(target, index, buffer, offset, size);
  OGLM_CHECK_ERR(glBindBufferRange, )
#line 1973 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindBuffersBase_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindBuffersBase_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, first, count, buffers");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	first = (unsigned int)SvUV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLuint*	buffers = INT2PTR(const GLuint *,SvIV(ST(3)))
;
#line 777 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindBuffersBase, )
  OGLM_AVAIL_CHECK(__glewBindBuffersBase, glBindBuffersBase)
  glBindBuffersBase(target, first, count, buffers);
  OGLM_CHECK_ERR(glBindBuffersBase, )
#line 2000 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindBuffersBase_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindBuffersBase_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "target, first, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	first = (unsigned int)SvUV(ST(1))
;
#line 788 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindBuffersBase, )
  OGLM_AVAIL_CHECK(__glewBindBuffersBase, glBindBuffersBase)
  GLsizei count = items-2;
  GLuint* buffers = OGLM_GET_VARARGS(buffers,2,GLuint,UV,count);
  glBindBuffersBase((GLenum )target, (GLuint )first, (GLsizei )count, (const GLuint* )buffers);
  OGLM_CHECK_ERR(glBindBuffersBase, free(buffers);)
  free(buffers);
#line 2026 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindBuffersRange_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindBuffersRange_c)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "target, first, count, buffers, offsets, sizes");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	first = (unsigned int)SvUV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLuint*	buffers = INT2PTR(const GLuint *,SvIV(ST(3)))
;
	const GLintptr *	offsets = INT2PTR(const GLintptr *,SvIV(ST(4)))
;
	const GLsizeiptr *	sizes = INT2PTR(const GLsizeiptr *,SvIV(ST(5)))
;
#line 806 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindBuffersRange, )
  OGLM_AVAIL_CHECK(__glewBindBuffersRange, glBindBuffersRange)
  glBindBuffersRange(target, first, count, buffers, offsets, sizes);
  OGLM_CHECK_ERR(glBindBuffersRange, )
#line 2057 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindFragDataLocation); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindFragDataLocation)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "program, color, name");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLuint	color = (unsigned int)SvUV(ST(1))
;
	const GLchar*	name = (const GLchar *)SvPV_nolen(ST(2))
;
#line 820 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindFragDataLocation, )
  OGLM_AVAIL_CHECK(__glewBindFragDataLocation, glBindFragDataLocation)
  glBindFragDataLocation(program, color, name);
  OGLM_CHECK_ERR(glBindFragDataLocation, )
#line 2083 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindFragDataLocationIndexed); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindFragDataLocationIndexed)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "program, colorNumber, index, name");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLuint	colorNumber = (unsigned int)SvUV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
	const GLchar *	name = (const GLchar *)SvPV_nolen(ST(3))
;
#line 835 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindFragDataLocationIndexed, )
  OGLM_AVAIL_CHECK(__glewBindFragDataLocationIndexed, glBindFragDataLocationIndexed)
  glBindFragDataLocationIndexed(program, colorNumber, index, name);
  OGLM_CHECK_ERR(glBindFragDataLocationIndexed, )
#line 2111 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindFragmentShaderATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindFragmentShaderATI)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "id");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
#line 845 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindFragmentShaderATI, )
  OGLM_AVAIL_CHECK(__glewBindFragmentShaderATI, glBindFragmentShaderATI)
  glBindFragmentShaderATI(id);
  OGLM_CHECK_ERR(glBindFragmentShaderATI, )
#line 2132 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindFramebuffer); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindFramebuffer)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, framebuffer");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	framebuffer = (unsigned int)SvUV(ST(1))
;
#line 856 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindFramebuffer, )
  OGLM_AVAIL_CHECK(__glewBindFramebuffer, glBindFramebuffer)
  glBindFramebuffer(target, framebuffer);
  OGLM_CHECK_ERR(glBindFramebuffer, )
#line 2155 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindFramebufferEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindFramebufferEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, framebuffer");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	framebuffer = (unsigned int)SvUV(ST(1))
;
#line 867 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindFramebufferEXT, )
  OGLM_AVAIL_CHECK(__glewBindFramebufferEXT, glBindFramebufferEXT)
  glBindFramebufferEXT(target, framebuffer);
  OGLM_CHECK_ERR(glBindFramebufferEXT, )
#line 2178 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindFramebufferOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindFramebufferOES)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, framebuffer");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	framebuffer = (unsigned int)SvUV(ST(1))
;
#line 878 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindFramebufferOES, )
  OGLM_AVAIL_CHECK(__glewBindFramebufferOES, glBindFramebufferOES)
  glBindFramebufferOES(target, framebuffer);
  OGLM_CHECK_ERR(glBindFramebufferOES, )
#line 2201 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindImageTexture); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindImageTexture)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "unit, texture, level, layered, layer, access, format");
    {
	GLuint	unit = (unsigned int)SvUV(ST(0))
;
	GLuint	texture = (unsigned int)SvUV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLboolean	layered = (int)SvIV(ST(3))
;
	GLint	layer = (int)SvIV(ST(4))
;
	GLenum	access = (int)SvIV(ST(5))
;
	GLenum	format = (int)SvIV(ST(6))
;
#line 894 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindImageTexture, )
  OGLM_AVAIL_CHECK(__glewBindImageTexture, glBindImageTexture)
  glBindImageTexture(unit, texture, level, layered, layer, access, format);
  OGLM_CHECK_ERR(glBindImageTexture, )
#line 2234 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindImageTextureEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindImageTextureEXT)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "index, texture, level, layered, layer, access, format");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLuint	texture = (unsigned int)SvUV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLboolean	layered = (int)SvIV(ST(3))
;
	GLint	layer = (int)SvIV(ST(4))
;
	GLenum	access = (int)SvIV(ST(5))
;
	GLint	format = (int)SvIV(ST(6))
;
#line 910 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindImageTextureEXT, )
  OGLM_AVAIL_CHECK(__glewBindImageTextureEXT, glBindImageTextureEXT)
  glBindImageTextureEXT(index, texture, level, layered, layer, access, format);
  OGLM_CHECK_ERR(glBindImageTextureEXT, )
#line 2267 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindImageTextures_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindImageTextures_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "first, count, textures");
    {
	GLuint	first = (unsigned int)SvUV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLuint*	textures = INT2PTR(const GLuint *,SvIV(ST(2)))
;
#line 922 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindImageTextures, )
  OGLM_AVAIL_CHECK(__glewBindImageTextures, glBindImageTextures)
  glBindImageTextures(first, count, textures);
  OGLM_CHECK_ERR(glBindImageTextures, )
#line 2292 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindImageTextures_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindImageTextures_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "first, ...");
    {
	GLuint	first = (unsigned int)SvUV(ST(0))
;
#line 932 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindImageTextures, )
  OGLM_AVAIL_CHECK(__glewBindImageTextures, glBindImageTextures)
  GLsizei count = items-1;
  GLuint* textures = OGLM_GET_VARARGS(textures,1,GLuint,UV,count);
  glBindImageTextures((GLuint )first, (GLsizei )count, (const GLuint* )textures);
  OGLM_CHECK_ERR(glBindImageTextures, free(textures);)
  free(textures);
#line 2316 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindLightParameterEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindLightParameterEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "light, value");
    {
	GLenum	light = (int)SvIV(ST(0))
;
	GLenum	value = (int)SvIV(ST(1))
;
	GLuint	RETVAL;
	dXSTARG;
#line 946 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindLightParameterEXT, )
  OGLM_AVAIL_CHECK(__glewBindLightParameterEXT, glBindLightParameterEXT)
  RETVAL = glBindLightParameterEXT(light, value);
  OGLM_CHECK_ERR(glBindLightParameterEXT, )
#line 2341 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glBindMaterialParameterEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindMaterialParameterEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "face, value");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	value = (int)SvIV(ST(1))
;
	GLuint	RETVAL;
	dXSTARG;
#line 959 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindMaterialParameterEXT, )
  OGLM_AVAIL_CHECK(__glewBindMaterialParameterEXT, glBindMaterialParameterEXT)
  RETVAL = glBindMaterialParameterEXT(face, value);
  OGLM_CHECK_ERR(glBindMaterialParameterEXT, )
#line 2368 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glBindMultiTextureEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindMultiTextureEXT)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texunit, target, texture");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLuint	texture = (unsigned int)SvUV(ST(2))
;
#line 973 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindMultiTextureEXT, )
  OGLM_AVAIL_CHECK(__glewBindMultiTextureEXT, glBindMultiTextureEXT)
  glBindMultiTextureEXT(texunit, target, texture);
  OGLM_CHECK_ERR(glBindMultiTextureEXT, )
#line 2395 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindParameterEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindParameterEXT)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "value");
    {
	GLenum	value = (int)SvIV(ST(0))
;
	GLuint	RETVAL;
	dXSTARG;
#line 983 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindParameterEXT, )
  OGLM_AVAIL_CHECK(__glewBindParameterEXT, glBindParameterEXT)
  RETVAL = glBindParameterEXT(value);
  OGLM_CHECK_ERR(glBindParameterEXT, )
#line 2418 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glBindProgramARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindProgramARB)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, program");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	program = (unsigned int)SvUV(ST(1))
;
#line 998 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindProgramARB, )
  OGLM_AVAIL_CHECK(__glewBindProgramARB, glBindProgramARB)
  glBindProgramARB(target, program);
  OGLM_CHECK_ERR(glBindProgramARB, )
#line 2444 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindProgramPipeline); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindProgramPipeline)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "pipeline");
    {
	GLuint	pipeline = (unsigned int)SvUV(ST(0))
;
#line 1008 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindProgramPipeline, )
  OGLM_AVAIL_CHECK(__glewBindProgramPipeline, glBindProgramPipeline)
  glBindProgramPipeline(pipeline);
  OGLM_CHECK_ERR(glBindProgramPipeline, )
#line 2465 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindRenderbuffer); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindRenderbuffer)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, renderbuffer");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	renderbuffer = (unsigned int)SvUV(ST(1))
;
#line 1019 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindRenderbuffer, )
  OGLM_AVAIL_CHECK(__glewBindRenderbuffer, glBindRenderbuffer)
  glBindRenderbuffer(target, renderbuffer);
  OGLM_CHECK_ERR(glBindRenderbuffer, )
#line 2488 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindRenderbufferEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindRenderbufferEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, renderbuffer");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	renderbuffer = (unsigned int)SvUV(ST(1))
;
#line 1030 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindRenderbufferEXT, )
  OGLM_AVAIL_CHECK(__glewBindRenderbufferEXT, glBindRenderbufferEXT)
  glBindRenderbufferEXT(target, renderbuffer);
  OGLM_CHECK_ERR(glBindRenderbufferEXT, )
#line 2511 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindRenderbufferOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindRenderbufferOES)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, renderbuffer");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	renderbuffer = (unsigned int)SvUV(ST(1))
;
#line 1041 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindRenderbufferOES, )
  OGLM_AVAIL_CHECK(__glewBindRenderbufferOES, glBindRenderbufferOES)
  glBindRenderbufferOES(target, renderbuffer);
  OGLM_CHECK_ERR(glBindRenderbufferOES, )
#line 2534 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindSampler); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindSampler)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "unit, sampler");
    {
	GLuint	unit = (unsigned int)SvUV(ST(0))
;
	GLuint	sampler = (unsigned int)SvUV(ST(1))
;
#line 1052 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindSampler, )
  OGLM_AVAIL_CHECK(__glewBindSampler, glBindSampler)
  glBindSampler(unit, sampler);
  OGLM_CHECK_ERR(glBindSampler, )
#line 2557 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindSamplers_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindSamplers_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "first, count, samplers");
    {
	GLuint	first = (unsigned int)SvUV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLuint*	samplers = INT2PTR(const GLuint *,SvIV(ST(2)))
;
#line 1064 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindSamplers, )
  OGLM_AVAIL_CHECK(__glewBindSamplers, glBindSamplers)
  glBindSamplers(first, count, samplers);
  OGLM_CHECK_ERR(glBindSamplers, )
#line 2582 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindSamplers_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindSamplers_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "first, ...");
    {
	GLuint	first = (unsigned int)SvUV(ST(0))
;
#line 1074 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindSamplers, )
  OGLM_AVAIL_CHECK(__glewBindSamplers, glBindSamplers)
  GLsizei count = items-1;
  GLuint* samplers = OGLM_GET_VARARGS(samplers,1,GLuint,UV,count);
  glBindSamplers((GLuint )first, (GLsizei )count, (const GLuint* )samplers);
  OGLM_CHECK_ERR(glBindSamplers, free(samplers);)
  free(samplers);
#line 2606 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindShadingRateImageNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindShadingRateImageNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "texture");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
#line 1087 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindShadingRateImageNV, )
  OGLM_AVAIL_CHECK(__glewBindShadingRateImageNV, glBindShadingRateImageNV)
  glBindShadingRateImageNV(texture);
  OGLM_CHECK_ERR(glBindShadingRateImageNV, )
#line 2627 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindTexGenParameterEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindTexGenParameterEXT)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "unit, coord, value");
    {
	GLenum	unit = (int)SvIV(ST(0))
;
	GLenum	coord = (int)SvIV(ST(1))
;
	GLenum	value = (int)SvIV(ST(2))
;
	GLuint	RETVAL;
	dXSTARG;
#line 1099 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindTexGenParameterEXT, )
  OGLM_AVAIL_CHECK(__glewBindTexGenParameterEXT, glBindTexGenParameterEXT)
  RETVAL = glBindTexGenParameterEXT(unit, coord, value);
  OGLM_CHECK_ERR(glBindTexGenParameterEXT, )
#line 2654 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glBindTexture); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindTexture)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, texture");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	texture = (unsigned int)SvUV(ST(1))
;
#line 1114 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindTexture, )
  glBindTexture(target, texture);
  OGLM_CHECK_ERR(glBindTexture, )
#line 2679 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindTextureUnit); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindTextureUnit)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "unit, texture");
    {
	GLuint	unit = (unsigned int)SvUV(ST(0))
;
	GLuint	texture = (unsigned int)SvUV(ST(1))
;
#line 1124 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindTextureUnit, )
  OGLM_AVAIL_CHECK(__glewBindTextureUnit, glBindTextureUnit)
  glBindTextureUnit(unit, texture);
  OGLM_CHECK_ERR(glBindTextureUnit, )
#line 2702 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindTextureUnitParameterEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindTextureUnitParameterEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "unit, value");
    {
	GLenum	unit = (int)SvIV(ST(0))
;
	GLenum	value = (int)SvIV(ST(1))
;
	GLuint	RETVAL;
	dXSTARG;
#line 1135 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindTextureUnitParameterEXT, )
  OGLM_AVAIL_CHECK(__glewBindTextureUnitParameterEXT, glBindTextureUnitParameterEXT)
  RETVAL = glBindTextureUnitParameterEXT(unit, value);
  OGLM_CHECK_ERR(glBindTextureUnitParameterEXT, )
#line 2727 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glBindTextures_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindTextures_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "first, count, textures");
    {
	GLuint	first = (unsigned int)SvUV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLuint*	textures = INT2PTR(const GLuint *,SvIV(ST(2)))
;
#line 1149 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindTextures, )
  OGLM_AVAIL_CHECK(__glewBindTextures, glBindTextures)
  glBindTextures(first, count, textures);
  OGLM_CHECK_ERR(glBindTextures, )
#line 2754 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindTextures_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindTextures_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "first, ...");
    {
	GLuint	first = (unsigned int)SvUV(ST(0))
;
#line 1159 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindTextures, )
  OGLM_AVAIL_CHECK(__glewBindTextures, glBindTextures)
  GLsizei count = items-1;
  GLuint* textures = OGLM_GET_VARARGS(textures,1,GLuint,UV,count);
  glBindTextures((GLuint )first, (GLsizei )count, (const GLuint* )textures);
  OGLM_CHECK_ERR(glBindTextures, free(textures);)
  free(textures);
#line 2778 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindTransformFeedback); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindTransformFeedback)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, id");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	id = (unsigned int)SvUV(ST(1))
;
#line 1173 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindTransformFeedback, )
  OGLM_AVAIL_CHECK(__glewBindTransformFeedback, glBindTransformFeedback)
  glBindTransformFeedback(target, id);
  OGLM_CHECK_ERR(glBindTransformFeedback, )
#line 2801 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindTransformFeedbackNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindTransformFeedbackNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, id");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	id = (unsigned int)SvUV(ST(1))
;
#line 1184 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindTransformFeedbackNV, )
  OGLM_AVAIL_CHECK(__glewBindTransformFeedbackNV, glBindTransformFeedbackNV)
  glBindTransformFeedbackNV(target, id);
  OGLM_CHECK_ERR(glBindTransformFeedbackNV, )
#line 2824 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindVertexArray); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindVertexArray)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "array");
    {
	GLuint	array = (unsigned int)SvUV(ST(0))
;
#line 1194 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindVertexArray, )
  OGLM_AVAIL_CHECK(__glewBindVertexArray, glBindVertexArray)
  glBindVertexArray(array);
  OGLM_CHECK_ERR(glBindVertexArray, )
#line 2845 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindVertexArrayAPPLE); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindVertexArrayAPPLE)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "array");
    {
	GLuint	array = (unsigned int)SvUV(ST(0))
;
#line 1204 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindVertexArrayAPPLE, )
  OGLM_AVAIL_CHECK(__glewBindVertexArrayAPPLE, glBindVertexArrayAPPLE)
  glBindVertexArrayAPPLE(array);
  OGLM_CHECK_ERR(glBindVertexArrayAPPLE, )
#line 2866 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindVertexArrayOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindVertexArrayOES)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "array");
    {
	GLuint	array = (unsigned int)SvUV(ST(0))
;
#line 1214 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindVertexArrayOES, )
  OGLM_AVAIL_CHECK(__glewBindVertexArrayOES, glBindVertexArrayOES)
  glBindVertexArrayOES(array);
  OGLM_CHECK_ERR(glBindVertexArrayOES, )
#line 2887 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindVertexArraySGIX); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindVertexArraySGIX)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "array");
    {
	GLuint	array = (unsigned int)SvUV(ST(0))
;
#line 1224 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindVertexArraySGIX, )
  OGLM_AVAIL_CHECK(__glewBindVertexArraySGIX, glBindVertexArraySGIX)
  glBindVertexArraySGIX(array);
  OGLM_CHECK_ERR(glBindVertexArraySGIX, )
#line 2908 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindVertexBuffer); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindVertexBuffer)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "bindingindex, buffer, offset, stride");
    {
	GLuint	bindingindex = (unsigned int)SvUV(ST(0))
;
	GLuint	buffer = (unsigned int)SvUV(ST(1))
;
	GLintptr	offset = (unsigned int)SvUV(ST(2))
;
	GLsizei	stride = (int)SvIV(ST(3))
;
#line 1237 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindVertexBuffer, )
  OGLM_AVAIL_CHECK(__glewBindVertexBuffer, glBindVertexBuffer)
  glBindVertexBuffer(bindingindex, buffer, offset, stride);
  OGLM_CHECK_ERR(glBindVertexBuffer, )
#line 2935 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindVertexBuffers_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindVertexBuffers_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "first, count, buffers, offsets, strides");
    {
	GLuint	first = (unsigned int)SvUV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLuint*	buffers = INT2PTR(const GLuint *,SvIV(ST(2)))
;
	const GLintptr *	offsets = INT2PTR(const GLintptr *,SvIV(ST(3)))
;
	const GLsizei *	strides = INT2PTR(const GLsizei *,SvIV(ST(4)))
;
#line 1251 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindVertexBuffers, )
  OGLM_AVAIL_CHECK(__glewBindVertexBuffers, glBindVertexBuffers)
  glBindVertexBuffers(first, count, buffers, offsets, strides);
  OGLM_CHECK_ERR(glBindVertexBuffers, )
#line 2964 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindVertexShaderEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindVertexShaderEXT)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "id");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
#line 1261 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindVertexShaderEXT, )
  OGLM_AVAIL_CHECK(__glewBindVertexShaderEXT, glBindVertexShaderEXT)
  glBindVertexShaderEXT(id);
  OGLM_CHECK_ERR(glBindVertexShaderEXT, )
#line 2985 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindVideoCaptureStreamBufferNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindVideoCaptureStreamBufferNV)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "video_capture_slot, stream, frame_region, offset");
    {
	GLuint	video_capture_slot = (unsigned int)SvUV(ST(0))
;
	GLuint	stream = (unsigned int)SvUV(ST(1))
;
	GLenum	frame_region = (int)SvIV(ST(2))
;
	GLintptrARB	offset = (unsigned int)SvUV(ST(3))
;
#line 1274 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindVideoCaptureStreamBufferNV, )
  OGLM_AVAIL_CHECK(__glewBindVideoCaptureStreamBufferNV, glBindVideoCaptureStreamBufferNV)
  glBindVideoCaptureStreamBufferNV(video_capture_slot, stream, frame_region, offset);
  OGLM_CHECK_ERR(glBindVideoCaptureStreamBufferNV, )
#line 3012 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBindVideoCaptureStreamTextureNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBindVideoCaptureStreamTextureNV)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "video_capture_slot, stream, frame_region, target, texture");
    {
	GLuint	video_capture_slot = (unsigned int)SvUV(ST(0))
;
	GLuint	stream = (unsigned int)SvUV(ST(1))
;
	GLenum	frame_region = (int)SvIV(ST(2))
;
	GLenum	target = (int)SvIV(ST(3))
;
	GLuint	texture = (unsigned int)SvUV(ST(4))
;
#line 1288 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBindVideoCaptureStreamTextureNV, )
  OGLM_AVAIL_CHECK(__glewBindVideoCaptureStreamTextureNV, glBindVideoCaptureStreamTextureNV)
  glBindVideoCaptureStreamTextureNV(video_capture_slot, stream, frame_region, target, texture);
  OGLM_CHECK_ERR(glBindVideoCaptureStreamTextureNV, )
#line 3041 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBinormalPointerEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBinormalPointerEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "type, stride, pointer");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	GLsizei	stride = (int)SvIV(ST(1))
;
	void *	pointer = INT2PTR(void *,SvIV(ST(2)))
;
#line 1300 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBinormalPointerEXT, )
  OGLM_AVAIL_CHECK(__glewBinormalPointerEXT, glBinormalPointerEXT)
  glBinormalPointerEXT(type, stride, pointer);
  OGLM_CHECK_ERR(glBinormalPointerEXT, )
#line 3066 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBitmap); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBitmap)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "width, height, xorig, yorig, xmove, ymove, bitmap");
    {
	GLsizei	width = (int)SvIV(ST(0))
;
	GLsizei	height = (int)SvIV(ST(1))
;
	GLfloat	xorig = (float)SvNV(ST(2))
;
	GLfloat	yorig = (float)SvNV(ST(3))
;
	GLfloat	xmove = (float)SvNV(ST(4))
;
	GLfloat	ymove = (float)SvNV(ST(5))
;
	const GLubyte *        bitmap = (const GLubyte *)SvPV_nolen(ST(6))
;
#line 1316 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBitmap, )
  glBitmap(width, height, xorig, yorig, xmove, ymove, bitmap);
  OGLM_CHECK_ERR(glBitmap, )
#line 3098 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBlendBarrierKHR); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBlendBarrierKHR)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 1327 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBlendBarrierKHR, )
  OGLM_AVAIL_CHECK(__glewBlendBarrierKHR, glBlendBarrierKHR)
  glBlendBarrierKHR();
  OGLM_CHECK_ERR(glBlendBarrierKHR, )
#line 3118 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBlendColor); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBlendColor)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "red, green, blue, alpha");
    {
	GLclampf	red = (float)SvNV(ST(0))
;
	GLclampf	green = (float)SvNV(ST(1))
;
	GLclampf	blue = (float)SvNV(ST(2))
;
	GLclampf	alpha = (float)SvNV(ST(3))
;
#line 1342 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBlendColor, )
  OGLM_AVAIL_CHECK(__glewBlendColor, glBlendColor)
  glBlendColor(red, green, blue, alpha);
  OGLM_CHECK_ERR(glBlendColor, )
#line 3146 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBlendEquation); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBlendEquation)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "mode");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
#line 1354 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBlendEquation, )
  OGLM_AVAIL_CHECK(__glewBlendEquation, glBlendEquation)
  glBlendEquation(mode);
  OGLM_CHECK_ERR(glBlendEquation, )
#line 3168 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBlendEquationOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBlendEquationOES)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "mode");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
#line 1364 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBlendEquationOES, )
  OGLM_AVAIL_CHECK(__glewBlendEquationOES, glBlendEquationOES)
  glBlendEquationOES(mode);
  OGLM_CHECK_ERR(glBlendEquationOES, )
#line 3189 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBlendEquationSeparate); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBlendEquationSeparate)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "modeRGB, modeAlpha");
    {
	GLenum	modeRGB = (int)SvIV(ST(0))
;
	GLenum	modeAlpha = (int)SvIV(ST(1))
;
#line 1377 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBlendEquationSeparate, )
  OGLM_AVAIL_CHECK(__glewBlendEquationSeparate, glBlendEquationSeparate)
  glBlendEquationSeparate(modeRGB, modeAlpha);
  OGLM_CHECK_ERR(glBlendEquationSeparate, )
#line 3213 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBlendEquationSeparateOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBlendEquationSeparateOES)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "modeRGB, modeAlpha");
    {
	GLenum	modeRGB = (int)SvIV(ST(0))
;
	GLenum	modeAlpha = (int)SvIV(ST(1))
;
#line 1388 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBlendEquationSeparateOES, )
  OGLM_AVAIL_CHECK(__glewBlendEquationSeparateOES, glBlendEquationSeparateOES)
  glBlendEquationSeparateOES(modeRGB, modeAlpha);
  OGLM_CHECK_ERR(glBlendEquationSeparateOES, )
#line 3236 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBlendEquationSeparatei); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBlendEquationSeparatei)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "buf, modeRGB, modeAlpha");
    {
	GLuint	buf = (unsigned int)SvUV(ST(0))
;
	GLenum	modeRGB = (int)SvIV(ST(1))
;
	GLenum	modeAlpha = (int)SvIV(ST(2))
;
#line 1404 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBlendEquationSeparatei, )
  OGLM_AVAIL_CHECK(__glewBlendEquationSeparatei, glBlendEquationSeparatei)
  glBlendEquationSeparatei(buf, modeRGB, modeAlpha);
  OGLM_CHECK_ERR(glBlendEquationSeparatei, )
#line 3262 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBlendEquationSeparateiOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBlendEquationSeparateiOES)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "buf, modeRGB, modeAlpha");
    {
	GLuint	buf = (unsigned int)SvUV(ST(0))
;
	GLenum	modeRGB = (int)SvIV(ST(1))
;
	GLenum	modeAlpha = (int)SvIV(ST(2))
;
#line 1416 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBlendEquationSeparateiOES, )
  OGLM_AVAIL_CHECK(__glewBlendEquationSeparateiOES, glBlendEquationSeparateiOES)
  glBlendEquationSeparateiOES(buf, modeRGB, modeAlpha);
  OGLM_CHECK_ERR(glBlendEquationSeparateiOES, )
#line 3287 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBlendEquationi); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBlendEquationi)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "buf, mode");
    {
	GLuint	buf = (unsigned int)SvUV(ST(0))
;
	GLenum	mode = (int)SvIV(ST(1))
;
#line 1431 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBlendEquationi, )
  OGLM_AVAIL_CHECK(__glewBlendEquationi, glBlendEquationi)
  glBlendEquationi(buf, mode);
  OGLM_CHECK_ERR(glBlendEquationi, )
#line 3311 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBlendEquationiOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBlendEquationiOES)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "buf, mode");
    {
	GLuint	buf = (unsigned int)SvUV(ST(0))
;
	GLenum	mode = (int)SvIV(ST(1))
;
#line 1442 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBlendEquationiOES, )
  OGLM_AVAIL_CHECK(__glewBlendEquationiOES, glBlendEquationiOES)
  glBlendEquationiOES(buf, mode);
  OGLM_CHECK_ERR(glBlendEquationiOES, )
#line 3334 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBlendFunc); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBlendFunc)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "sfactor, dfactor");
    {
	GLenum	sfactor = (int)SvIV(ST(0))
;
	GLenum	dfactor = (int)SvIV(ST(1))
;
#line 1453 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBlendFunc, )
  glBlendFunc(sfactor, dfactor);
  OGLM_CHECK_ERR(glBlendFunc, )
#line 3356 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBlendFuncSeparate); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBlendFuncSeparate)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha");
    {
	GLenum	sfactorRGB = (int)SvIV(ST(0))
;
	GLenum	dfactorRGB = (int)SvIV(ST(1))
;
	GLenum	sfactorAlpha = (int)SvIV(ST(2))
;
	GLenum	dfactorAlpha = (int)SvIV(ST(3))
;
#line 1468 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBlendFuncSeparate, )
  OGLM_AVAIL_CHECK(__glewBlendFuncSeparate, glBlendFuncSeparate)
  glBlendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
  OGLM_CHECK_ERR(glBlendFuncSeparate, )
#line 3384 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBlendFuncSeparateOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBlendFuncSeparateOES)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha");
    {
	GLenum	sfactorRGB = (int)SvIV(ST(0))
;
	GLenum	dfactorRGB = (int)SvIV(ST(1))
;
	GLenum	sfactorAlpha = (int)SvIV(ST(2))
;
	GLenum	dfactorAlpha = (int)SvIV(ST(3))
;
#line 1481 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBlendFuncSeparateOES, )
  OGLM_AVAIL_CHECK(__glewBlendFuncSeparateOES, glBlendFuncSeparateOES)
  glBlendFuncSeparateOES(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha);
  OGLM_CHECK_ERR(glBlendFuncSeparateOES, )
#line 3411 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBlendFuncSeparatei); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBlendFuncSeparatei)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "buf, srcRGB, dstRGB, srcAlpha, dstAlpha");
    {
	GLuint	buf = (unsigned int)SvUV(ST(0))
;
	GLenum	srcRGB = (int)SvIV(ST(1))
;
	GLenum	dstRGB = (int)SvIV(ST(2))
;
	GLenum	srcAlpha = (int)SvIV(ST(3))
;
	GLenum	dstAlpha = (int)SvIV(ST(4))
;
#line 1499 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBlendFuncSeparatei, )
  OGLM_AVAIL_CHECK(__glewBlendFuncSeparatei, glBlendFuncSeparatei)
  glBlendFuncSeparatei(buf, srcRGB, dstRGB, srcAlpha, dstAlpha);
  OGLM_CHECK_ERR(glBlendFuncSeparatei, )
#line 3441 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBlendFuncSeparateiOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBlendFuncSeparateiOES)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "buf, srcRGB, dstRGB, srcAlpha, dstAlpha");
    {
	GLuint	buf = (unsigned int)SvUV(ST(0))
;
	GLenum	srcRGB = (int)SvIV(ST(1))
;
	GLenum	dstRGB = (int)SvIV(ST(2))
;
	GLenum	srcAlpha = (int)SvIV(ST(3))
;
	GLenum	dstAlpha = (int)SvIV(ST(4))
;
#line 1513 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBlendFuncSeparateiOES, )
  OGLM_AVAIL_CHECK(__glewBlendFuncSeparateiOES, glBlendFuncSeparateiOES)
  glBlendFuncSeparateiOES(buf, srcRGB, dstRGB, srcAlpha, dstAlpha);
  OGLM_CHECK_ERR(glBlendFuncSeparateiOES, )
#line 3470 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBlendFunci); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBlendFunci)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "buf, src, dst");
    {
	GLuint	buf = (unsigned int)SvUV(ST(0))
;
	GLenum	src = (int)SvIV(ST(1))
;
	GLenum	dst = (int)SvIV(ST(2))
;
#line 1529 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBlendFunci, )
  OGLM_AVAIL_CHECK(__glewBlendFunci, glBlendFunci)
  glBlendFunci(buf, src, dst);
  OGLM_CHECK_ERR(glBlendFunci, )
#line 3496 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBlendFunciOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBlendFunciOES)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "buf, src, dst");
    {
	GLuint	buf = (unsigned int)SvUV(ST(0))
;
	GLenum	src = (int)SvIV(ST(1))
;
	GLenum	dst = (int)SvIV(ST(2))
;
#line 1541 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBlendFunciOES, )
  OGLM_AVAIL_CHECK(__glewBlendFunciOES, glBlendFunciOES)
  glBlendFunciOES(buf, src, dst);
  OGLM_CHECK_ERR(glBlendFunciOES, )
#line 3521 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBlendParameteriNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBlendParameteriNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, value");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLint	value = (int)SvIV(ST(1))
;
#line 1552 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBlendParameteriNV, )
  OGLM_AVAIL_CHECK(__glewBlendParameteriNV, glBlendParameteriNV)
  glBlendParameteriNV(pname, value);
  OGLM_CHECK_ERR(glBlendParameteriNV, )
#line 3544 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBlitFramebuffer); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBlitFramebuffer)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 10)
       croak_xs_usage(cv,  "srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter");
    {
	GLint	srcX0 = (int)SvIV(ST(0))
;
	GLint	srcY0 = (int)SvIV(ST(1))
;
	GLint	srcX1 = (int)SvIV(ST(2))
;
	GLint	srcY1 = (int)SvIV(ST(3))
;
	GLint	dstX0 = (int)SvIV(ST(4))
;
	GLint	dstY0 = (int)SvIV(ST(5))
;
	GLint	dstX1 = (int)SvIV(ST(6))
;
	GLint	dstY1 = (int)SvIV(ST(7))
;
	GLbitfield	mask = (int)SvIV(ST(8))
;
	GLenum	filter = (int)SvIV(ST(9))
;
#line 1574 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBlitFramebuffer, )
  OGLM_AVAIL_CHECK(__glewBlitFramebuffer, glBlitFramebuffer)
  glBlitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
  OGLM_CHECK_ERR(glBlitFramebuffer, )
#line 3584 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBlitFramebufferANGLE); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBlitFramebufferANGLE)
{
    dVAR; dXSARGS;
    if (items != 10)
       croak_xs_usage(cv,  "srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter");
    {
	GLint	srcX0 = (int)SvIV(ST(0))
;
	GLint	srcY0 = (int)SvIV(ST(1))
;
	GLint	srcX1 = (int)SvIV(ST(2))
;
	GLint	srcY1 = (int)SvIV(ST(3))
;
	GLint	dstX0 = (int)SvIV(ST(4))
;
	GLint	dstY0 = (int)SvIV(ST(5))
;
	GLint	dstX1 = (int)SvIV(ST(6))
;
	GLint	dstY1 = (int)SvIV(ST(7))
;
	GLbitfield	mask = (int)SvIV(ST(8))
;
	GLenum	filter = (int)SvIV(ST(9))
;
#line 1593 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBlitFramebufferANGLE, )
  OGLM_AVAIL_CHECK(__glewBlitFramebufferANGLE, glBlitFramebufferANGLE)
  glBlitFramebufferANGLE(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
  OGLM_CHECK_ERR(glBlitFramebufferANGLE, )
#line 3623 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBlitFramebufferLayerEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBlitFramebufferLayerEXT)
{
    dVAR; dXSARGS;
    if (items != 12)
       croak_xs_usage(cv,  "srcX0, srcY0, srcX1, srcY1, srcLayer, dstX0, dstY0, dstX1, dstY1, dstLayer, mask, filter");
    {
	GLint	srcX0 = (int)SvIV(ST(0))
;
	GLint	srcY0 = (int)SvIV(ST(1))
;
	GLint	srcX1 = (int)SvIV(ST(2))
;
	GLint	srcY1 = (int)SvIV(ST(3))
;
	GLint	srcLayer = (int)SvIV(ST(4))
;
	GLint	dstX0 = (int)SvIV(ST(5))
;
	GLint	dstY0 = (int)SvIV(ST(6))
;
	GLint	dstX1 = (int)SvIV(ST(7))
;
	GLint	dstY1 = (int)SvIV(ST(8))
;
	GLint	dstLayer = (int)SvIV(ST(9))
;
	GLbitfield	mask = (int)SvIV(ST(10))
;
	GLenum	filter = (int)SvIV(ST(11))
;
#line 1614 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBlitFramebufferLayerEXT, )
  OGLM_AVAIL_CHECK(__glewBlitFramebufferLayerEXT, glBlitFramebufferLayerEXT)
  glBlitFramebufferLayerEXT(srcX0, srcY0, srcX1, srcY1, srcLayer, dstX0, dstY0, dstX1, dstY1, dstLayer, mask, filter);
  OGLM_CHECK_ERR(glBlitFramebufferLayerEXT, )
#line 3666 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBlitFramebufferLayersEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBlitFramebufferLayersEXT)
{
    dVAR; dXSARGS;
    if (items != 10)
       croak_xs_usage(cv,  "srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter");
    {
	GLint	srcX0 = (int)SvIV(ST(0))
;
	GLint	srcY0 = (int)SvIV(ST(1))
;
	GLint	srcX1 = (int)SvIV(ST(2))
;
	GLint	srcY1 = (int)SvIV(ST(3))
;
	GLint	dstX0 = (int)SvIV(ST(4))
;
	GLint	dstY0 = (int)SvIV(ST(5))
;
	GLint	dstX1 = (int)SvIV(ST(6))
;
	GLint	dstY1 = (int)SvIV(ST(7))
;
	GLbitfield	mask = (int)SvIV(ST(8))
;
	GLenum	filter = (int)SvIV(ST(9))
;
#line 1633 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBlitFramebufferLayersEXT, )
  OGLM_AVAIL_CHECK(__glewBlitFramebufferLayersEXT, glBlitFramebufferLayersEXT)
  glBlitFramebufferLayersEXT(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
  OGLM_CHECK_ERR(glBlitFramebufferLayersEXT, )
#line 3705 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBlitNamedFramebuffer); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBlitNamedFramebuffer)
{
    dVAR; dXSARGS;
    if (items != 12)
       croak_xs_usage(cv,  "readFramebuffer, drawFramebuffer, srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter");
    {
	GLuint	readFramebuffer = (unsigned int)SvUV(ST(0))
;
	GLuint	drawFramebuffer = (unsigned int)SvUV(ST(1))
;
	GLint	srcX0 = (int)SvIV(ST(2))
;
	GLint	srcY0 = (int)SvIV(ST(3))
;
	GLint	srcX1 = (int)SvIV(ST(4))
;
	GLint	srcY1 = (int)SvIV(ST(5))
;
	GLint	dstX0 = (int)SvIV(ST(6))
;
	GLint	dstY0 = (int)SvIV(ST(7))
;
	GLint	dstX1 = (int)SvIV(ST(8))
;
	GLint	dstY1 = (int)SvIV(ST(9))
;
	GLbitfield	mask = (int)SvIV(ST(10))
;
	GLenum	filter = (int)SvIV(ST(11))
;
#line 1654 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBlitNamedFramebuffer, )
  OGLM_AVAIL_CHECK(__glewBlitNamedFramebuffer, glBlitNamedFramebuffer)
  glBlitNamedFramebuffer(readFramebuffer, drawFramebuffer, srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
  OGLM_CHECK_ERR(glBlitNamedFramebuffer, )
#line 3748 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBufferAddressRangeNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBufferAddressRangeNV)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "pname, index, address, length");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLuint64EXT	address = (unsigned int)SvUV(ST(2))
;
	GLsizeiptr	length = (unsigned int)SvUV(ST(3))
;
#line 1667 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBufferAddressRangeNV, )
  OGLM_AVAIL_CHECK(__glewBufferAddressRangeNV, glBufferAddressRangeNV)
  glBufferAddressRangeNV(pname, index, address, length);
  OGLM_CHECK_ERR(glBufferAddressRangeNV, )
#line 3775 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBufferAttachMemoryNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBufferAttachMemoryNV)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, memory, offset");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	memory = (unsigned int)SvUV(ST(1))
;
	GLuint64	offset = (unsigned int)SvUV(ST(2))
;
#line 1679 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBufferAttachMemoryNV, )
  OGLM_AVAIL_CHECK(__glewBufferAttachMemoryNV, glBufferAttachMemoryNV)
  glBufferAttachMemoryNV(target, memory, offset);
  OGLM_CHECK_ERR(glBufferAttachMemoryNV, )
#line 3800 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBufferData_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBufferData_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "target, size, data, usage");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizeiptr	size = (unsigned int)SvUV(ST(1))
;
	const void*	data = INT2PTR(const void *,SvIV(ST(2)))
;
	GLenum	usage = (int)SvIV(ST(3))
;
#line 1694 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBufferData, )
  OGLM_AVAIL_CHECK(__glewBufferData, glBufferData)
  glBufferData(target, size, data, usage);
  OGLM_CHECK_ERR(glBufferData, )
#line 3828 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBufferPageCommitmentARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBufferPageCommitmentARB)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, offset, size, commit");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLintptr	offset = (unsigned int)SvUV(ST(1))
;
	GLsizeiptr	size = (unsigned int)SvUV(ST(2))
;
	GLboolean	commit = (int)SvIV(ST(3))
;
#line 1707 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBufferPageCommitmentARB, )
  OGLM_AVAIL_CHECK(__glewBufferPageCommitmentARB, glBufferPageCommitmentARB)
  glBufferPageCommitmentARB(target, offset, size, commit);
  OGLM_CHECK_ERR(glBufferPageCommitmentARB, )
#line 3855 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBufferPageCommitmentMemNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBufferPageCommitmentMemNV)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "target, offset, size, memory, memOffset, commit");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLintptr	offset = (unsigned int)SvUV(ST(1))
;
	GLsizeiptr	size = (unsigned int)SvUV(ST(2))
;
	GLuint	memory = (unsigned int)SvUV(ST(3))
;
	GLuint64	memOffset = (unsigned int)SvUV(ST(4))
;
	GLboolean	commit = (int)SvIV(ST(5))
;
#line 1722 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBufferPageCommitmentMemNV, )
  OGLM_AVAIL_CHECK(__glewBufferPageCommitmentMemNV, glBufferPageCommitmentMemNV)
  glBufferPageCommitmentMemNV(target, offset, size, memory, memOffset, commit);
  OGLM_CHECK_ERR(glBufferPageCommitmentMemNV, )
#line 3886 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBufferParameteriAPPLE); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBufferParameteriAPPLE)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, param");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint	param = (int)SvIV(ST(2))
;
#line 1734 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBufferParameteriAPPLE, )
  OGLM_AVAIL_CHECK(__glewBufferParameteriAPPLE, glBufferParameteriAPPLE)
  glBufferParameteriAPPLE(target, pname, param);
  OGLM_CHECK_ERR(glBufferParameteriAPPLE, )
#line 3911 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBufferRegionEnabled); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBufferRegionEnabled)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
	GLuint	RETVAL;
	dXSTARG;
#line 1743 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBufferRegionEnabled, )
  OGLM_AVAIL_CHECK(__glewBufferRegionEnabled, glBufferRegionEnabled)
  RETVAL = glBufferRegionEnabled();
  OGLM_CHECK_ERR(glBufferRegionEnabled, )
#line 3932 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glBufferStorage_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBufferStorage_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "target, size, data, flags");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizeiptr	size = (unsigned int)SvUV(ST(1))
;
	const void *	data = INT2PTR(const void *,SvIV(ST(2)))
;
	GLbitfield	flags = (int)SvIV(ST(3))
;
#line 1760 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBufferStorage, )
  OGLM_AVAIL_CHECK(__glewBufferStorage, glBufferStorage)
  glBufferStorage(target, size, data, flags);
  OGLM_CHECK_ERR(glBufferStorage, )
#line 3962 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBufferStorageExternalEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBufferStorageExternalEXT)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "target, offset, size, clientBuffer, flags");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLintptr	offset = (unsigned int)SvUV(ST(1))
;
	GLsizeiptr	size = (unsigned int)SvUV(ST(2))
;
	GLeglClientBufferEXT	clientBuffer = INT2PTR(GLeglClientBufferEXT,SvIV(ST(3)))
;
	GLbitfield	flags = (int)SvIV(ST(4))
;
#line 1774 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBufferStorageExternalEXT, )
  OGLM_AVAIL_CHECK(__glewBufferStorageExternalEXT, glBufferStorageExternalEXT)
  glBufferStorageExternalEXT(target, offset, size, clientBuffer, flags);
  OGLM_CHECK_ERR(glBufferStorageExternalEXT, )
#line 3991 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBufferStorageMemEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBufferStorageMemEXT)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, size, memory, offset");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizeiptr	size = (unsigned int)SvUV(ST(1))
;
	GLuint	memory = (unsigned int)SvUV(ST(2))
;
	GLuint64	offset = (unsigned int)SvUV(ST(3))
;
#line 1787 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBufferStorageMemEXT, )
  OGLM_AVAIL_CHECK(__glewBufferStorageMemEXT, glBufferStorageMemEXT)
  glBufferStorageMemEXT(target, size, memory, offset);
  OGLM_CHECK_ERR(glBufferStorageMemEXT, )
#line 4018 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glBufferSubData_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glBufferSubData_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "target, offset, size, data");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLintptr	offset = (unsigned int)SvUV(ST(1))
;
	GLsizeiptr	size = (unsigned int)SvUV(ST(2))
;
	const void*	data = INT2PTR(const void *,SvIV(ST(3)))
;
#line 1802 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glBufferSubData, )
  OGLM_AVAIL_CHECK(__glewBufferSubData, glBufferSubData)
  glBufferSubData(target, offset, size, data);
  OGLM_CHECK_ERR(glBufferSubData, )
#line 4046 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCallCommandListNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCallCommandListNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "list");
    {
	GLuint	list = (unsigned int)SvUV(ST(0))
;
#line 1812 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCallCommandListNV, )
  OGLM_AVAIL_CHECK(__glewCallCommandListNV, glCallCommandListNV)
  glCallCommandListNV(list);
  OGLM_CHECK_ERR(glCallCommandListNV, )
#line 4067 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCallList); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCallList)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "list");
    {
	GLuint	list = (unsigned int)SvUV(ST(0))
;
#line 1822 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCallList, )
  glCallList(list);
  OGLM_CHECK_ERR(glCallList, )
#line 4087 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCallLists_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCallLists_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "n, type, lists");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	const void *	lists = INT2PTR(const void *,SvIV(ST(2)))
;
#line 1833 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCallLists, )
  glCallLists(n, type, lists);
  OGLM_CHECK_ERR(glCallLists, )
#line 4111 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCheckFramebufferStatus); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCheckFramebufferStatus)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "target");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	RETVAL;
	dXSTARG;
#line 1844 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCheckFramebufferStatus, )
  OGLM_AVAIL_CHECK(__glewCheckFramebufferStatus, glCheckFramebufferStatus)
  RETVAL = glCheckFramebufferStatus(target);
  OGLM_CHECK_ERR(glCheckFramebufferStatus, )
#line 4135 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glCheckFramebufferStatusOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCheckFramebufferStatusOES)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "target");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	RETVAL;
	dXSTARG;
#line 1856 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCheckFramebufferStatusOES, )
  OGLM_AVAIL_CHECK(__glewCheckFramebufferStatusOES, glCheckFramebufferStatusOES)
  RETVAL = glCheckFramebufferStatusOES(target);
  OGLM_CHECK_ERR(glCheckFramebufferStatusOES, )
#line 4160 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glCheckNamedFramebufferStatus); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCheckNamedFramebufferStatus)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "framebuffer, target");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	RETVAL;
	dXSTARG;
#line 1869 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCheckNamedFramebufferStatus, )
  OGLM_AVAIL_CHECK(__glewCheckNamedFramebufferStatus, glCheckNamedFramebufferStatus)
  RETVAL = glCheckNamedFramebufferStatus(framebuffer, target);
  OGLM_CHECK_ERR(glCheckNamedFramebufferStatus, )
#line 4187 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glCheckNamedFramebufferStatusEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCheckNamedFramebufferStatusEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "framebuffer, target");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	RETVAL;
	dXSTARG;
#line 1882 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCheckNamedFramebufferStatusEXT, )
  OGLM_AVAIL_CHECK(__glewCheckNamedFramebufferStatusEXT, glCheckNamedFramebufferStatusEXT)
  RETVAL = glCheckNamedFramebufferStatusEXT(framebuffer, target);
  OGLM_CHECK_ERR(glCheckNamedFramebufferStatusEXT, )
#line 4214 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glClampColor); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClampColor)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, clamp");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	clamp = (int)SvIV(ST(1))
;
#line 1897 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClampColor, )
  OGLM_AVAIL_CHECK(__glewClampColor, glClampColor)
  glClampColor(target, clamp);
  OGLM_CHECK_ERR(glClampColor, )
#line 4240 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClear); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClear)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "mask");
    {
	GLbitfield	mask = (int)SvIV(ST(0))
;
#line 1907 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClear, )
  glClear(mask);
  OGLM_CHECK_ERR(glClear, )
#line 4260 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClearAccum); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClearAccum)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "red, green, blue, alpha");
    {
	GLfloat	red = (float)SvNV(ST(0))
;
	GLfloat	green = (float)SvNV(ST(1))
;
	GLfloat	blue = (float)SvNV(ST(2))
;
	GLfloat	alpha = (float)SvNV(ST(3))
;
#line 1919 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClearAccum, )
  glClearAccum(red, green, blue, alpha);
  OGLM_CHECK_ERR(glClearAccum, )
#line 4286 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClearBufferData_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClearBufferData_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "target, internalformat, format, type, data");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	internalformat = (int)SvIV(ST(1))
;
	GLenum	format = (int)SvIV(ST(2))
;
	GLenum	type = (int)SvIV(ST(3))
;
	const void *	data = INT2PTR(const void *,SvIV(ST(4)))
;
#line 1932 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClearBufferData, )
  OGLM_AVAIL_CHECK(__glewClearBufferData, glClearBufferData)
  glClearBufferData(target, internalformat, format, type, data);
  OGLM_CHECK_ERR(glClearBufferData, )
#line 4315 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClearBufferSubData_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClearBufferSubData_c)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "target, internalformat, offset, size, format, type, data");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	internalformat = (int)SvIV(ST(1))
;
	GLintptr	offset = (unsigned int)SvUV(ST(2))
;
	GLsizeiptr	size = (unsigned int)SvUV(ST(3))
;
	GLenum	format = (int)SvIV(ST(4))
;
	GLenum	type = (int)SvIV(ST(5))
;
	const void *	data = INT2PTR(const void *,SvIV(ST(6)))
;
#line 1948 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClearBufferSubData, )
  OGLM_AVAIL_CHECK(__glewClearBufferSubData, glClearBufferSubData)
  glClearBufferSubData(target, internalformat, offset, size, format, type, data);
  OGLM_CHECK_ERR(glClearBufferSubData, )
#line 4348 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClearBufferfi); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClearBufferfi)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "buffer, drawbuffer, depth, stencil");
    {
	GLenum	buffer = (int)SvIV(ST(0))
;
	GLint	drawbuffer = (int)SvIV(ST(1))
;
	GLfloat	depth = (float)SvNV(ST(2))
;
	GLint	stencil = (int)SvIV(ST(3))
;
#line 1961 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClearBufferfi, )
  OGLM_AVAIL_CHECK(__glewClearBufferfi, glClearBufferfi)
  glClearBufferfi(buffer, drawbuffer, depth, stencil);
  OGLM_CHECK_ERR(glClearBufferfi, )
#line 4375 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClearBufferfv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClearBufferfv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "buffer, drawbuffer, value");
    {
	GLenum	buffer = (int)SvIV(ST(0))
;
	GLint	drawbuffer = (int)SvIV(ST(1))
;
	const GLfloat*	value = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 1973 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClearBufferfv, )
  OGLM_AVAIL_CHECK(__glewClearBufferfv, glClearBufferfv)
  glClearBufferfv(buffer, drawbuffer, value);
  OGLM_CHECK_ERR(glClearBufferfv, )
#line 4400 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClearBufferfv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClearBufferfv_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "buffer, drawbuffer, ...");
    {
	GLenum	buffer = (int)SvIV(ST(0))
;
	GLint	drawbuffer = (int)SvIV(ST(1))
;
#line 1984 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClearBufferfv, )
  OGLM_AVAIL_CHECK(__glewClearBufferfv, glClearBufferfv)
  OGLM_SIZE_ENUM(Buffer,buffer,1)
  GLfloat* value = OGLM_GET_VARARGS(value,2,GLfloat,NV,buffer_count);
  glClearBufferfv((GLenum )buffer, (GLint )drawbuffer, (const GLfloat* )value);
  OGLM_CHECK_ERR(glClearBufferfv, free(value);)
  free(value);
#line 4426 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClearBufferiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClearBufferiv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "buffer, drawbuffer, value");
    {
	GLenum	buffer = (int)SvIV(ST(0))
;
	GLint	drawbuffer = (int)SvIV(ST(1))
;
	const GLint*	value = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 1999 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClearBufferiv, )
  OGLM_AVAIL_CHECK(__glewClearBufferiv, glClearBufferiv)
  glClearBufferiv(buffer, drawbuffer, value);
  OGLM_CHECK_ERR(glClearBufferiv, )
#line 4451 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClearBufferiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClearBufferiv_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "buffer, drawbuffer, ...");
    {
	GLenum	buffer = (int)SvIV(ST(0))
;
	GLint	drawbuffer = (int)SvIV(ST(1))
;
#line 2010 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClearBufferiv, )
  OGLM_AVAIL_CHECK(__glewClearBufferiv, glClearBufferiv)
  OGLM_SIZE_ENUM(Buffer,buffer,1)
  GLint* value = OGLM_GET_VARARGS(value,2,GLint,IV,buffer_count);
  glClearBufferiv((GLenum )buffer, (GLint )drawbuffer, (const GLint* )value);
  OGLM_CHECK_ERR(glClearBufferiv, free(value);)
  free(value);
#line 4477 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClearBufferuiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClearBufferuiv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "buffer, drawbuffer, value");
    {
	GLenum	buffer = (int)SvIV(ST(0))
;
	GLint	drawbuffer = (int)SvIV(ST(1))
;
	const GLuint*	value = INT2PTR(const GLuint *,SvIV(ST(2)))
;
#line 2025 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClearBufferuiv, )
  OGLM_AVAIL_CHECK(__glewClearBufferuiv, glClearBufferuiv)
  glClearBufferuiv(buffer, drawbuffer, value);
  OGLM_CHECK_ERR(glClearBufferuiv, )
#line 4502 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClearBufferuiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClearBufferuiv_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "buffer, drawbuffer, ...");
    {
	GLenum	buffer = (int)SvIV(ST(0))
;
	GLint	drawbuffer = (int)SvIV(ST(1))
;
#line 2036 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClearBufferuiv, )
  OGLM_AVAIL_CHECK(__glewClearBufferuiv, glClearBufferuiv)
  OGLM_SIZE_ENUM(Buffer,buffer,1)
  GLuint* value = OGLM_GET_VARARGS(value,2,GLuint,UV,buffer_count);
  glClearBufferuiv((GLenum )buffer, (GLint )drawbuffer, (const GLuint* )value);
  OGLM_CHECK_ERR(glClearBufferuiv, free(value);)
  free(value);
#line 4528 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClearColor); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClearColor)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "red, green, blue, alpha");
    {
	GLclampf	red = (float)SvNV(ST(0))
;
	GLclampf	green = (float)SvNV(ST(1))
;
	GLclampf	blue = (float)SvNV(ST(2))
;
	GLclampf	alpha = (float)SvNV(ST(3))
;
#line 2052 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClearColor, )
  glClearColor(red, green, blue, alpha);
  OGLM_CHECK_ERR(glClearColor, )
#line 4554 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClearColorIiEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClearColorIiEXT)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "red, green, blue, alpha");
    {
	GLint	red = (int)SvIV(ST(0))
;
	GLint	green = (int)SvIV(ST(1))
;
	GLint	blue = (int)SvIV(ST(2))
;
	GLint	alpha = (int)SvIV(ST(3))
;
#line 2064 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClearColorIiEXT, )
  OGLM_AVAIL_CHECK(__glewClearColorIiEXT, glClearColorIiEXT)
  glClearColorIiEXT(red, green, blue, alpha);
  OGLM_CHECK_ERR(glClearColorIiEXT, )
#line 4581 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClearColorIuiEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClearColorIuiEXT)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "red, green, blue, alpha");
    {
	GLuint	red = (unsigned int)SvUV(ST(0))
;
	GLuint	green = (unsigned int)SvUV(ST(1))
;
	GLuint	blue = (unsigned int)SvUV(ST(2))
;
	GLuint	alpha = (unsigned int)SvUV(ST(3))
;
#line 2077 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClearColorIuiEXT, )
  OGLM_AVAIL_CHECK(__glewClearColorIuiEXT, glClearColorIuiEXT)
  glClearColorIuiEXT(red, green, blue, alpha);
  OGLM_CHECK_ERR(glClearColorIuiEXT, )
#line 4608 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClearColorx); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClearColorx)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "red, green, blue, alpha");
    {
	GLclampx	red = (int)SvIV(ST(0))
;
	GLclampx	green = (int)SvIV(ST(1))
;
	GLclampx	blue = (int)SvIV(ST(2))
;
	GLclampx	alpha = (int)SvIV(ST(3))
;
#line 2090 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClearColorx, )
  OGLM_AVAIL_CHECK(__glewClearColorx, glClearColorx)
  glClearColorx(red, green, blue, alpha);
  OGLM_CHECK_ERR(glClearColorx, )
#line 4635 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClearDepth); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClearDepth)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "depth");
    {
	GLclampd	depth = (double)SvNV(ST(0))
;
#line 2100 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClearDepth, )
  glClearDepth(depth);
  OGLM_CHECK_ERR(glClearDepth, )
#line 4655 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClearDepthdNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClearDepthdNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "depth");
    {
	GLdouble	depth = (double)SvNV(ST(0))
;
#line 2109 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClearDepthdNV, )
  OGLM_AVAIL_CHECK(__glewClearDepthdNV, glClearDepthdNV)
  glClearDepthdNV(depth);
  OGLM_CHECK_ERR(glClearDepthdNV, )
#line 4676 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClearDepthf); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClearDepthf)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "d");
    {
	GLclampf	d = (float)SvNV(ST(0))
;
#line 2119 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClearDepthf, )
  OGLM_AVAIL_CHECK(__glewClearDepthf, glClearDepthf)
  glClearDepthf(d);
  OGLM_CHECK_ERR(glClearDepthf, )
#line 4697 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClearDepthfOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClearDepthfOES)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "depth");
    {
	GLclampf	depth = (float)SvNV(ST(0))
;
#line 2129 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClearDepthfOES, )
  OGLM_AVAIL_CHECK(__glewClearDepthfOES, glClearDepthfOES)
  glClearDepthfOES(depth);
  OGLM_CHECK_ERR(glClearDepthfOES, )
#line 4718 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClearDepthx); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClearDepthx)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "depth");
    {
	GLclampx	depth = (int)SvIV(ST(0))
;
#line 2139 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClearDepthx, )
  OGLM_AVAIL_CHECK(__glewClearDepthx, glClearDepthx)
  glClearDepthx(depth);
  OGLM_CHECK_ERR(glClearDepthx, )
#line 4739 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClearIndex); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClearIndex)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "c");
    {
	GLfloat	c = (float)SvNV(ST(0))
;
#line 2149 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClearIndex, )
  glClearIndex(c);
  OGLM_CHECK_ERR(glClearIndex, )
#line 4759 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClearNamedBufferData_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClearNamedBufferData_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "buffer, internalformat, format, type, data");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLenum	internalformat = (int)SvIV(ST(1))
;
	GLenum	format = (int)SvIV(ST(2))
;
	GLenum	type = (int)SvIV(ST(3))
;
	const void *	data = INT2PTR(const void *,SvIV(ST(4)))
;
#line 2162 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClearNamedBufferData, )
  OGLM_AVAIL_CHECK(__glewClearNamedBufferData, glClearNamedBufferData)
  glClearNamedBufferData(buffer, internalformat, format, type, data);
  OGLM_CHECK_ERR(glClearNamedBufferData, )
#line 4788 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClearNamedBufferDataEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClearNamedBufferDataEXT_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "buffer, internalformat, format, type, data");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLenum	internalformat = (int)SvIV(ST(1))
;
	GLenum	format = (int)SvIV(ST(2))
;
	GLenum	type = (int)SvIV(ST(3))
;
	const void *	data = INT2PTR(const void *,SvIV(ST(4)))
;
#line 2176 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClearNamedBufferDataEXT, )
  OGLM_AVAIL_CHECK(__glewClearNamedBufferDataEXT, glClearNamedBufferDataEXT)
  glClearNamedBufferDataEXT(buffer, internalformat, format, type, data);
  OGLM_CHECK_ERR(glClearNamedBufferDataEXT, )
#line 4817 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClearNamedBufferSubData_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClearNamedBufferSubData_c)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "buffer, internalformat, offset, size, format, type, data");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLenum	internalformat = (int)SvIV(ST(1))
;
	GLintptr	offset = (unsigned int)SvUV(ST(2))
;
	GLsizeiptr	size = (unsigned int)SvUV(ST(3))
;
	GLenum	format = (int)SvIV(ST(4))
;
	GLenum	type = (int)SvIV(ST(5))
;
	const void *	data = INT2PTR(const void *,SvIV(ST(6)))
;
#line 2192 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClearNamedBufferSubData, )
  OGLM_AVAIL_CHECK(__glewClearNamedBufferSubData, glClearNamedBufferSubData)
  glClearNamedBufferSubData(buffer, internalformat, offset, size, format, type, data);
  OGLM_CHECK_ERR(glClearNamedBufferSubData, )
#line 4850 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClearNamedBufferSubDataEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClearNamedBufferSubDataEXT_c)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "buffer, internalformat, offset, size, format, type, data");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLenum	internalformat = (int)SvIV(ST(1))
;
	GLintptr	offset = (unsigned int)SvUV(ST(2))
;
	GLsizeiptr	size = (unsigned int)SvUV(ST(3))
;
	GLenum	format = (int)SvIV(ST(4))
;
	GLenum	type = (int)SvIV(ST(5))
;
	const void *	data = INT2PTR(const void *,SvIV(ST(6)))
;
#line 2208 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClearNamedBufferSubDataEXT, )
  OGLM_AVAIL_CHECK(__glewClearNamedBufferSubDataEXT, glClearNamedBufferSubDataEXT)
  glClearNamedBufferSubDataEXT(buffer, internalformat, offset, size, format, type, data);
  OGLM_CHECK_ERR(glClearNamedBufferSubDataEXT, )
#line 4883 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClearNamedFramebufferfi); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClearNamedFramebufferfi)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "framebuffer, buffer, drawbuffer, depth, stencil");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	buffer = (int)SvIV(ST(1))
;
	GLint	drawbuffer = (int)SvIV(ST(2))
;
	GLfloat	depth = (float)SvNV(ST(3))
;
	GLint	stencil = (int)SvIV(ST(4))
;
#line 2222 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClearNamedFramebufferfi, )
  OGLM_AVAIL_CHECK(__glewClearNamedFramebufferfi, glClearNamedFramebufferfi)
  glClearNamedFramebufferfi(framebuffer, buffer, drawbuffer, depth, stencil);
  OGLM_CHECK_ERR(glClearNamedFramebufferfi, )
#line 4912 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClearNamedFramebufferfv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClearNamedFramebufferfv_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "framebuffer, buffer, drawbuffer, value");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	buffer = (int)SvIV(ST(1))
;
	GLint	drawbuffer = (int)SvIV(ST(2))
;
	const GLfloat*	value = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 2235 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClearNamedFramebufferfv, )
  OGLM_AVAIL_CHECK(__glewClearNamedFramebufferfv, glClearNamedFramebufferfv)
  glClearNamedFramebufferfv(framebuffer, buffer, drawbuffer, value);
  OGLM_CHECK_ERR(glClearNamedFramebufferfv, )
#line 4939 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClearNamedFramebufferfv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClearNamedFramebufferfv_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "framebuffer, buffer, drawbuffer, ...");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	buffer = (int)SvIV(ST(1))
;
	GLint	drawbuffer = (int)SvIV(ST(2))
;
#line 2247 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClearNamedFramebufferfv, )
  OGLM_AVAIL_CHECK(__glewClearNamedFramebufferfv, glClearNamedFramebufferfv)
  OGLM_SIZE_ENUM(Buffer,buffer,1)
  GLfloat* value = OGLM_GET_VARARGS(value,3,GLfloat,NV,buffer_count);
  glClearNamedFramebufferfv((GLuint )framebuffer, (GLenum )buffer, (GLint )drawbuffer, (const GLfloat* )value);
  OGLM_CHECK_ERR(glClearNamedFramebufferfv, free(value);)
  free(value);
#line 4967 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClearNamedFramebufferiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClearNamedFramebufferiv_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "framebuffer, buffer, drawbuffer, value");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	buffer = (int)SvIV(ST(1))
;
	GLint	drawbuffer = (int)SvIV(ST(2))
;
	const GLint*	value = INT2PTR(const GLint *,SvIV(ST(3)))
;
#line 2263 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClearNamedFramebufferiv, )
  OGLM_AVAIL_CHECK(__glewClearNamedFramebufferiv, glClearNamedFramebufferiv)
  glClearNamedFramebufferiv(framebuffer, buffer, drawbuffer, value);
  OGLM_CHECK_ERR(glClearNamedFramebufferiv, )
#line 4994 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClearNamedFramebufferiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClearNamedFramebufferiv_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "framebuffer, buffer, drawbuffer, ...");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	buffer = (int)SvIV(ST(1))
;
	GLint	drawbuffer = (int)SvIV(ST(2))
;
#line 2275 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClearNamedFramebufferiv, )
  OGLM_AVAIL_CHECK(__glewClearNamedFramebufferiv, glClearNamedFramebufferiv)
  OGLM_SIZE_ENUM(Buffer,buffer,1)
  GLint* value = OGLM_GET_VARARGS(value,3,GLint,IV,buffer_count);
  glClearNamedFramebufferiv((GLuint )framebuffer, (GLenum )buffer, (GLint )drawbuffer, (const GLint* )value);
  OGLM_CHECK_ERR(glClearNamedFramebufferiv, free(value);)
  free(value);
#line 5022 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClearNamedFramebufferuiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClearNamedFramebufferuiv_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "framebuffer, buffer, drawbuffer, value");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	buffer = (int)SvIV(ST(1))
;
	GLint	drawbuffer = (int)SvIV(ST(2))
;
	const GLuint*	value = INT2PTR(const GLuint *,SvIV(ST(3)))
;
#line 2291 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClearNamedFramebufferuiv, )
  OGLM_AVAIL_CHECK(__glewClearNamedFramebufferuiv, glClearNamedFramebufferuiv)
  glClearNamedFramebufferuiv(framebuffer, buffer, drawbuffer, value);
  OGLM_CHECK_ERR(glClearNamedFramebufferuiv, )
#line 5049 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClearNamedFramebufferuiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClearNamedFramebufferuiv_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "framebuffer, buffer, drawbuffer, ...");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	buffer = (int)SvIV(ST(1))
;
	GLint	drawbuffer = (int)SvIV(ST(2))
;
#line 2303 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClearNamedFramebufferuiv, )
  OGLM_AVAIL_CHECK(__glewClearNamedFramebufferuiv, glClearNamedFramebufferuiv)
  OGLM_SIZE_ENUM(Buffer,buffer,1)
  GLuint* value = OGLM_GET_VARARGS(value,3,GLuint,UV,buffer_count);
  glClearNamedFramebufferuiv((GLuint )framebuffer, (GLenum )buffer, (GLint )drawbuffer, (const GLuint* )value);
  OGLM_CHECK_ERR(glClearNamedFramebufferuiv, free(value);)
  free(value);
#line 5077 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClearPixelLocalStorageuiEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClearPixelLocalStorageuiEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "offset, n, values");
    {
	GLsizei	offset = (int)SvIV(ST(0))
;
	GLsizei	n = (int)SvIV(ST(1))
;
	const GLuint*	values = INT2PTR(const GLuint *,SvIV(ST(2)))
;
#line 2318 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClearPixelLocalStorageuiEXT, )
  OGLM_AVAIL_CHECK(__glewClearPixelLocalStorageuiEXT, glClearPixelLocalStorageuiEXT)
  glClearPixelLocalStorageuiEXT(offset, n, values);
  OGLM_CHECK_ERR(glClearPixelLocalStorageuiEXT, )
#line 5102 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClearPixelLocalStorageuiEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClearPixelLocalStorageuiEXT_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "offset, ...");
    {
	GLsizei	offset = (int)SvIV(ST(0))
;
#line 2328 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClearPixelLocalStorageuiEXT, )
  OGLM_AVAIL_CHECK(__glewClearPixelLocalStorageuiEXT, glClearPixelLocalStorageuiEXT)
  GLsizei n = items-1;
  GLuint* values = OGLM_GET_VARARGS(values,1,GLuint,UV,n);
  glClearPixelLocalStorageuiEXT((GLsizei )offset, (GLsizei )n, (const GLuint* )values);
  OGLM_CHECK_ERR(glClearPixelLocalStorageuiEXT, free(values);)
  free(values);
#line 5126 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClearStencil); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClearStencil)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "s");
    {
	GLint	s = (int)SvIV(ST(0))
;
#line 2341 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClearStencil, )
  glClearStencil(s);
  OGLM_CHECK_ERR(glClearStencil, )
#line 5146 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClearTexImage_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClearTexImage_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "texture, level, format, type, data");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLenum	format = (int)SvIV(ST(2))
;
	GLenum	type = (int)SvIV(ST(3))
;
	const void *	data = INT2PTR(const void *,SvIV(ST(4)))
;
#line 2356 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClearTexImage, )
  OGLM_AVAIL_CHECK(__glewClearTexImage, glClearTexImage)
  glClearTexImage(texture, level, format, type, data);
  OGLM_CHECK_ERR(glClearTexImage, )
#line 5176 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClearTexSubImage_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClearTexSubImage_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 11)
       croak_xs_usage(cv,  "texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, data");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLint	xoffset = (int)SvIV(ST(2))
;
	GLint	yoffset = (int)SvIV(ST(3))
;
	GLint	zoffset = (int)SvIV(ST(4))
;
	GLsizei	width = (int)SvIV(ST(5))
;
	GLsizei	height = (int)SvIV(ST(6))
;
	GLsizei	depth = (int)SvIV(ST(7))
;
	GLenum	format = (int)SvIV(ST(8))
;
	GLenum	type = (int)SvIV(ST(9))
;
	const void *	data = INT2PTR(const void *,SvIV(ST(10)))
;
#line 2378 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClearTexSubImage, )
  OGLM_AVAIL_CHECK(__glewClearTexSubImage, glClearTexSubImage)
  glClearTexSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, data);
  OGLM_CHECK_ERR(glClearTexSubImage, )
#line 5218 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClientActiveTexture); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClientActiveTexture)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "texture");
    {
	GLenum	texture = (int)SvIV(ST(0))
;
#line 2390 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClientActiveTexture, )
  OGLM_AVAIL_CHECK(__glewClientActiveTexture, glClientActiveTexture)
  glClientActiveTexture(texture);
  OGLM_CHECK_ERR(glClientActiveTexture, )
#line 5240 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClientActiveVertexStreamATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClientActiveVertexStreamATI)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "stream");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
#line 2400 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClientActiveVertexStreamATI, )
  OGLM_AVAIL_CHECK(__glewClientActiveVertexStreamATI, glClientActiveVertexStreamATI)
  glClientActiveVertexStreamATI(stream);
  OGLM_CHECK_ERR(glClientActiveVertexStreamATI, )
#line 5261 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClientAttribDefaultEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClientAttribDefaultEXT)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "mask");
    {
	GLbitfield	mask = (int)SvIV(ST(0))
;
#line 2410 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClientAttribDefaultEXT, )
  OGLM_AVAIL_CHECK(__glewClientAttribDefaultEXT, glClientAttribDefaultEXT)
  glClientAttribDefaultEXT(mask);
  OGLM_CHECK_ERR(glClientAttribDefaultEXT, )
#line 5282 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClientWaitSemaphoreui64NVX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClientWaitSemaphoreui64NVX_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "fenceObjectCount, semaphoreArray, fenceValueArray");
    {
	GLsizei	fenceObjectCount = (int)SvIV(ST(0))
;
	const GLuint*	semaphoreArray = INT2PTR(const GLuint *,SvIV(ST(1)))
;
	const GLuint64 *	fenceValueArray = INT2PTR(const GLuint64 *,SvIV(ST(2)))
;
#line 2422 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClientWaitSemaphoreui64NVX, )
  OGLM_AVAIL_CHECK(__glewClientWaitSemaphoreui64NVX, glClientWaitSemaphoreui64NVX)
  glClientWaitSemaphoreui64NVX(fenceObjectCount, semaphoreArray, fenceValueArray);
  OGLM_CHECK_ERR(glClientWaitSemaphoreui64NVX, )
#line 5307 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClientWaitSemaphoreui64NVX_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClientWaitSemaphoreui64NVX_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "semaphoreArraySV, fenceValueArraySV");
    {
	SV *	semaphoreArraySV = ST(0)
;
	SV *	fenceValueArraySV = ST(1)
;
#line 2433 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClientWaitSemaphoreui64NVX, )
  OGLM_AVAIL_CHECK(__glewClientWaitSemaphoreui64NVX, glClientWaitSemaphoreui64NVX)
  GLsizei fenceObjectCount = OGLM_LEN_ARRAY(fenceObjectCount, semaphoreArray);
  GLuint64 *fenceValueArray = OGLM_GET_ARRAY(fenceValueArray, GLuint64, UV, fenceObjectCount);
  GLuint* semaphoreArray = OGLM_GET_ARRAY(semaphoreArray, GLuint, UV, fenceObjectCount);
  glClientWaitSemaphoreui64NVX((GLsizei )fenceObjectCount, (const GLuint* )semaphoreArray, (const GLuint64 *)fenceValueArray);
  OGLM_CHECK_ERR(glClientWaitSemaphoreui64NVX, free(fenceValueArray);free(semaphoreArray);)
  free(fenceValueArray);free(semaphoreArray);
#line 5334 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClientWaitSync); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClientWaitSync)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "sync, flags, timeout");
    {
	GLsync	sync = INT2PTR(GLsync,SvIV(ST(0)))
;
	GLbitfield	flags = (int)SvIV(ST(1))
;
	GLuint64	timeout = (unsigned int)SvUV(ST(2))
;
	GLenum	RETVAL;
	dXSTARG;
#line 2451 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClientWaitSync, )
  OGLM_AVAIL_CHECK(__glewClientWaitSync, glClientWaitSync)
  RETVAL = glClientWaitSync(sync, flags, timeout);
  OGLM_CHECK_ERR(glClientWaitSync, )
#line 5362 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glClipControl); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClipControl)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "origin, depth");
    {
	GLenum	origin = (int)SvIV(ST(0))
;
	GLenum	depth = (int)SvIV(ST(1))
;
#line 2466 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClipControl, )
  OGLM_AVAIL_CHECK(__glewClipControl, glClipControl)
  glClipControl(origin, depth);
  OGLM_CHECK_ERR(glClipControl, )
#line 5388 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClipPlane_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClipPlane_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "plane, equation");
    {
	GLenum	plane = (int)SvIV(ST(0))
;
	const GLdouble *	equation = INT2PTR(const GLdouble *,SvIV(ST(1)))
;
#line 2477 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClipPlane, )
  glClipPlane(plane, equation);
  OGLM_CHECK_ERR(glClipPlane, )
#line 5410 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClipPlane_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClipPlane_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "plane, ...");
    {
	GLenum	plane = (int)SvIV(ST(0))
;
#line 2486 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClipPlane, )
  GLdouble *equation = OGLM_GET_VARARGS(equation,1,GLdouble,NV,4);
  glClipPlane((GLenum )plane, (const GLdouble *)equation);
  OGLM_CHECK_ERR(glClipPlane, free(equation);)
  free(equation);
#line 5432 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClipPlanef_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClipPlanef_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "p, eqn");
    {
	GLenum	p = (int)SvIV(ST(0))
;
	const GLfloat*	eqn = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 2498 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClipPlanef, )
  OGLM_AVAIL_CHECK(__glewClipPlanef, glClipPlanef)
  glClipPlanef(p, eqn);
  OGLM_CHECK_ERR(glClipPlanef, )
#line 5455 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClipPlanef_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClipPlanef_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "p, ...");
    {
	GLenum	p = (int)SvIV(ST(0))
;
#line 2508 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClipPlanef, )
  OGLM_AVAIL_CHECK(__glewClipPlanef, glClipPlanef)
  GLfloat* eqn = OGLM_GET_VARARGS(eqn,1,GLfloat,NV,4);
  glClipPlanef((GLenum )p, (const GLfloat* )eqn);
  OGLM_CHECK_ERR(glClipPlanef, free(eqn);)
  free(eqn);
#line 5478 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClipPlanefOES_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClipPlanefOES_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "plane, equation");
    {
	GLenum	plane = (int)SvIV(ST(0))
;
	const GLfloat*	equation = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 2521 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClipPlanefOES, )
  OGLM_AVAIL_CHECK(__glewClipPlanefOES, glClipPlanefOES)
  glClipPlanefOES(plane, equation);
  OGLM_CHECK_ERR(glClipPlanefOES, )
#line 5501 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClipPlanex_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClipPlanex_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "plane, equation");
    {
	GLenum	plane = (int)SvIV(ST(0))
;
	const GLfixed*	equation = INT2PTR(const GLfixed *,SvIV(ST(1)))
;
#line 2532 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClipPlanex, )
  OGLM_AVAIL_CHECK(__glewClipPlanex, glClipPlanex)
  glClipPlanex(plane, equation);
  OGLM_CHECK_ERR(glClipPlanex, )
#line 5524 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glClipPlanex_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glClipPlanex_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "plane, ...");
    {
	GLenum	plane = (int)SvIV(ST(0))
;
#line 2542 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glClipPlanex, )
  OGLM_AVAIL_CHECK(__glewClipPlanex, glClipPlanex)
  GLfixed* equation = OGLM_GET_VARARGS(equation,1,GLfixed,IV,4);
  glClipPlanex((GLenum )plane, (const GLfixed* )equation);
  OGLM_CHECK_ERR(glClipPlanex, free(equation);)
  free(equation);
#line 5547 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor3b); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor3b)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "red, green, blue");
    {
	GLbyte	red = (int)SvIV(ST(0))
;
	GLbyte	green = (int)SvIV(ST(1))
;
	GLbyte	blue = (int)SvIV(ST(2))
;
#line 2556 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor3b, )
  glColor3b(red, green, blue);
  OGLM_CHECK_ERR(glColor3b, )
#line 5571 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor3bv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor3bv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLbyte *	v = INT2PTR(const GLbyte *,SvIV(ST(0)))
;
#line 2565 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor3bv, )
  glColor3bv(v);
  OGLM_CHECK_ERR(glColor3bv, )
#line 5591 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor3bv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor3bv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 2573 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor3bv, )
  GLbyte *v = OGLM_GET_VARARGS(v,0,GLbyte,IV,3);
  glColor3bv((const GLbyte *)v);
  OGLM_CHECK_ERR(glColor3bv, free(v);)
  free(v);
#line 5611 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor3d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor3d)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "red, green, blue");
    {
	GLdouble	red = (double)SvNV(ST(0))
;
	GLdouble	green = (double)SvNV(ST(1))
;
	GLdouble	blue = (double)SvNV(ST(2))
;
#line 2586 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor3d, )
  glColor3d(red, green, blue);
  OGLM_CHECK_ERR(glColor3d, )
#line 5635 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor3dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor3dv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLdouble *	v = INT2PTR(const GLdouble *,SvIV(ST(0)))
;
#line 2595 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor3dv, )
  glColor3dv(v);
  OGLM_CHECK_ERR(glColor3dv, )
#line 5655 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor3dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor3dv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 2603 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor3dv, )
  GLdouble *v = OGLM_GET_VARARGS(v,0,GLdouble,NV,3);
  glColor3dv((const GLdouble *)v);
  OGLM_CHECK_ERR(glColor3dv, free(v);)
  free(v);
#line 5675 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor3f); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor3f)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "red, green, blue");
    {
	GLfloat	red = (float)SvNV(ST(0))
;
	GLfloat	green = (float)SvNV(ST(1))
;
	GLfloat	blue = (float)SvNV(ST(2))
;
#line 2616 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor3f, )
  glColor3f(red, green, blue);
  OGLM_CHECK_ERR(glColor3f, )
#line 5699 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor3fVertex3fSUN); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor3fVertex3fSUN)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "r, g, b, x, y, z");
    {
	GLfloat	r = (float)SvNV(ST(0))
;
	GLfloat	g = (float)SvNV(ST(1))
;
	GLfloat	b = (float)SvNV(ST(2))
;
	GLfloat	x = (float)SvNV(ST(3))
;
	GLfloat	y = (float)SvNV(ST(4))
;
	GLfloat	z = (float)SvNV(ST(5))
;
#line 2630 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor3fVertex3fSUN, )
  OGLM_AVAIL_CHECK(__glewColor3fVertex3fSUN, glColor3fVertex3fSUN)
  glColor3fVertex3fSUN(r, g, b, x, y, z);
  OGLM_CHECK_ERR(glColor3fVertex3fSUN, )
#line 5730 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor3fVertex3fvSUN_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor3fVertex3fvSUN_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "c, v");
    {
	const GLfloat*	c = INT2PTR(const GLfloat *,SvIV(ST(0)))
;
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 2641 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor3fVertex3fvSUN, )
  OGLM_AVAIL_CHECK(__glewColor3fVertex3fvSUN, glColor3fVertex3fvSUN)
  glColor3fVertex3fvSUN(c, v);
  OGLM_CHECK_ERR(glColor3fVertex3fvSUN, )
#line 5753 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor3fVertex3fvSUN_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor3fVertex3fvSUN_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "cSV, vSV");
    {
	SV *	cSV = ST(0)
;
	SV *	vSV = ST(1)
;
#line 2652 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor3fVertex3fvSUN, )
  OGLM_AVAIL_CHECK(__glewColor3fVertex3fvSUN, glColor3fVertex3fvSUN)
  GLfloat* c = OGLM_GET_ARRAY(c, GLfloat, NV, 3);
  GLfloat *v = OGLM_GET_ARRAY(v, GLfloat, NV, 3);
  glColor3fVertex3fvSUN((const GLfloat* )c, (const GLfloat *)v);
  OGLM_CHECK_ERR(glColor3fVertex3fvSUN, free(c);free(v);)
  free(c);free(v);
#line 5779 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor3fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor3fv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(0)))
;
#line 2665 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor3fv, )
  glColor3fv(v);
  OGLM_CHECK_ERR(glColor3fv, )
#line 5799 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor3fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor3fv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 2673 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor3fv, )
  GLfloat *v = OGLM_GET_VARARGS(v,0,GLfloat,NV,3);
  glColor3fv((const GLfloat *)v);
  OGLM_CHECK_ERR(glColor3fv, free(v);)
  free(v);
#line 5819 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor3hNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor3hNV)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "red, green, blue");
    {
	GLhalf	red = (float)SvNV(ST(0))
;
	GLhalf	green = (float)SvNV(ST(1))
;
	GLhalf	blue = (float)SvNV(ST(2))
;
#line 2686 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor3hNV, )
  OGLM_AVAIL_CHECK(__glewColor3hNV, glColor3hNV)
  glColor3hNV(red, green, blue);
  OGLM_CHECK_ERR(glColor3hNV, )
#line 5844 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor3hvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor3hvNV_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLhalf*	v = INT2PTR(const GLhalf *,SvIV(ST(0)))
;
#line 2696 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor3hvNV, )
  OGLM_AVAIL_CHECK(__glewColor3hvNV, glColor3hvNV)
  glColor3hvNV(v);
  OGLM_CHECK_ERR(glColor3hvNV, )
#line 5865 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor3hvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor3hvNV_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 2705 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor3hvNV, )
  OGLM_AVAIL_CHECK(__glewColor3hvNV, glColor3hvNV)
  GLhalf* v = OGLM_GET_VARARGS(v,0,GLhalf,NV,3);
  glColor3hvNV((const GLhalf* )v);
  OGLM_CHECK_ERR(glColor3hvNV, free(v);)
  free(v);
#line 5886 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor3i); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor3i)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "red, green, blue");
    {
	GLint	red = (int)SvIV(ST(0))
;
	GLint	green = (int)SvIV(ST(1))
;
	GLint	blue = (int)SvIV(ST(2))
;
#line 2719 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor3i, )
  glColor3i(red, green, blue);
  OGLM_CHECK_ERR(glColor3i, )
#line 5910 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor3iv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor3iv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLint *	v = INT2PTR(const GLint *,SvIV(ST(0)))
;
#line 2728 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor3iv, )
  glColor3iv(v);
  OGLM_CHECK_ERR(glColor3iv, )
#line 5930 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor3iv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor3iv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 2736 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor3iv, )
  GLint *v = OGLM_GET_VARARGS(v,0,GLint,IV,3);
  glColor3iv((const GLint *)v);
  OGLM_CHECK_ERR(glColor3iv, free(v);)
  free(v);
#line 5950 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor3s); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor3s)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "red, green, blue");
    {
	GLshort	red = (short)SvIV(ST(0))
;
	GLshort	green = (short)SvIV(ST(1))
;
	GLshort	blue = (short)SvIV(ST(2))
;
#line 2749 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor3s, )
  glColor3s(red, green, blue);
  OGLM_CHECK_ERR(glColor3s, )
#line 5974 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor3sv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor3sv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLshort *	v = INT2PTR(const GLshort *,SvIV(ST(0)))
;
#line 2758 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor3sv, )
  glColor3sv(v);
  OGLM_CHECK_ERR(glColor3sv, )
#line 5994 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor3sv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor3sv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 2766 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor3sv, )
  GLshort *v = OGLM_GET_VARARGS(v,0,GLshort,IV,3);
  glColor3sv((const GLshort *)v);
  OGLM_CHECK_ERR(glColor3sv, free(v);)
  free(v);
#line 6014 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor3ub); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor3ub)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "red, green, blue");
    {
	GLubyte	red = (unsigned int)SvUV(ST(0))
;
	GLubyte	green = (unsigned int)SvUV(ST(1))
;
	GLubyte	blue = (unsigned int)SvUV(ST(2))
;
#line 2779 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor3ub, )
  glColor3ub(red, green, blue);
  OGLM_CHECK_ERR(glColor3ub, )
#line 6038 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor3ubv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor3ubv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLubyte *        v = (const GLubyte *)SvPV_nolen(ST(0))
;
#line 2788 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor3ubv, )
  glColor3ubv(v);
  OGLM_CHECK_ERR(glColor3ubv, )
#line 6058 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor3ubv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor3ubv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 2796 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor3ubv, )
  GLubyte *v = OGLM_GET_VARARGS(v,0,GLubyte,UV,3);
  glColor3ubv((const GLubyte *)v);
  OGLM_CHECK_ERR(glColor3ubv, free(v);)
  free(v);
#line 6078 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor3ui); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor3ui)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "red, green, blue");
    {
	GLuint	red = (unsigned int)SvUV(ST(0))
;
	GLuint	green = (unsigned int)SvUV(ST(1))
;
	GLuint	blue = (unsigned int)SvUV(ST(2))
;
#line 2809 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor3ui, )
  glColor3ui(red, green, blue);
  OGLM_CHECK_ERR(glColor3ui, )
#line 6102 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor3uiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor3uiv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLuint *	v = INT2PTR(const GLuint *,SvIV(ST(0)))
;
#line 2818 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor3uiv, )
  glColor3uiv(v);
  OGLM_CHECK_ERR(glColor3uiv, )
#line 6122 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor3uiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor3uiv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 2826 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor3uiv, )
  GLuint *v = OGLM_GET_VARARGS(v,0,GLuint,UV,3);
  glColor3uiv((const GLuint *)v);
  OGLM_CHECK_ERR(glColor3uiv, free(v);)
  free(v);
#line 6142 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor3us); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor3us)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "red, green, blue");
    {
	GLushort	red = (unsigned short)SvUV(ST(0))
;
	GLushort	green = (unsigned short)SvUV(ST(1))
;
	GLushort	blue = (unsigned short)SvUV(ST(2))
;
#line 2839 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor3us, )
  glColor3us(red, green, blue);
  OGLM_CHECK_ERR(glColor3us, )
#line 6166 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor3usv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor3usv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLushort *	v = INT2PTR(const GLushort *,SvIV(ST(0)))
;
#line 2848 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor3usv, )
  glColor3usv(v);
  OGLM_CHECK_ERR(glColor3usv, )
#line 6186 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor3usv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor3usv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 2856 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor3usv, )
  GLushort *v = OGLM_GET_VARARGS(v,0,GLushort,UV,3);
  glColor3usv((const GLushort *)v);
  OGLM_CHECK_ERR(glColor3usv, free(v);)
  free(v);
#line 6206 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor4b); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor4b)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "red, green, blue, alpha");
    {
	GLbyte	red = (int)SvIV(ST(0))
;
	GLbyte	green = (int)SvIV(ST(1))
;
	GLbyte	blue = (int)SvIV(ST(2))
;
	GLbyte	alpha = (int)SvIV(ST(3))
;
#line 2870 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor4b, )
  glColor4b(red, green, blue, alpha);
  OGLM_CHECK_ERR(glColor4b, )
#line 6232 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor4bv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor4bv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLbyte *	v = INT2PTR(const GLbyte *,SvIV(ST(0)))
;
#line 2879 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor4bv, )
  glColor4bv(v);
  OGLM_CHECK_ERR(glColor4bv, )
#line 6252 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor4bv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor4bv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 2887 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor4bv, )
  GLbyte *v = OGLM_GET_VARARGS(v,0,GLbyte,IV,4);
  glColor4bv((const GLbyte *)v);
  OGLM_CHECK_ERR(glColor4bv, free(v);)
  free(v);
#line 6272 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor4d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor4d)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "red, green, blue, alpha");
    {
	GLdouble	red = (double)SvNV(ST(0))
;
	GLdouble	green = (double)SvNV(ST(1))
;
	GLdouble	blue = (double)SvNV(ST(2))
;
	GLdouble	alpha = (double)SvNV(ST(3))
;
#line 2901 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor4d, )
  glColor4d(red, green, blue, alpha);
  OGLM_CHECK_ERR(glColor4d, )
#line 6298 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor4dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor4dv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLdouble *	v = INT2PTR(const GLdouble *,SvIV(ST(0)))
;
#line 2910 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor4dv, )
  glColor4dv(v);
  OGLM_CHECK_ERR(glColor4dv, )
#line 6318 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor4dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor4dv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 2918 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor4dv, )
  GLdouble *v = OGLM_GET_VARARGS(v,0,GLdouble,NV,4);
  glColor4dv((const GLdouble *)v);
  OGLM_CHECK_ERR(glColor4dv, free(v);)
  free(v);
#line 6338 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor4f); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor4f)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "red, green, blue, alpha");
    {
	GLfloat	red = (float)SvNV(ST(0))
;
	GLfloat	green = (float)SvNV(ST(1))
;
	GLfloat	blue = (float)SvNV(ST(2))
;
	GLfloat	alpha = (float)SvNV(ST(3))
;
#line 2932 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor4f, )
  glColor4f(red, green, blue, alpha);
  OGLM_CHECK_ERR(glColor4f, )
#line 6364 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor4fNormal3fVertex3fSUN); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor4fNormal3fVertex3fSUN)
{
    dVAR; dXSARGS;
    if (items != 10)
       croak_xs_usage(cv,  "r, g, b, a, nx, ny, nz, x, y, z");
    {
	GLfloat	r = (float)SvNV(ST(0))
;
	GLfloat	g = (float)SvNV(ST(1))
;
	GLfloat	b = (float)SvNV(ST(2))
;
	GLfloat	a = (float)SvNV(ST(3))
;
	GLfloat	nx = (float)SvNV(ST(4))
;
	GLfloat	ny = (float)SvNV(ST(5))
;
	GLfloat	nz = (float)SvNV(ST(6))
;
	GLfloat	x = (float)SvNV(ST(7))
;
	GLfloat	y = (float)SvNV(ST(8))
;
	GLfloat	z = (float)SvNV(ST(9))
;
#line 2950 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor4fNormal3fVertex3fSUN, )
  OGLM_AVAIL_CHECK(__glewColor4fNormal3fVertex3fSUN, glColor4fNormal3fVertex3fSUN)
  glColor4fNormal3fVertex3fSUN(r, g, b, a, nx, ny, nz, x, y, z);
  OGLM_CHECK_ERR(glColor4fNormal3fVertex3fSUN, )
#line 6403 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor4fNormal3fVertex3fvSUN_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor4fNormal3fVertex3fvSUN_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "c, n, v");
    {
	const GLfloat*	c = INT2PTR(const GLfloat *,SvIV(ST(0)))
;
	const GLfloat *	n = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 2962 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor4fNormal3fVertex3fvSUN, )
  OGLM_AVAIL_CHECK(__glewColor4fNormal3fVertex3fvSUN, glColor4fNormal3fVertex3fvSUN)
  glColor4fNormal3fVertex3fvSUN(c, n, v);
  OGLM_CHECK_ERR(glColor4fNormal3fVertex3fvSUN, )
#line 6428 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor4fNormal3fVertex3fvSUN_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor4fNormal3fVertex3fvSUN_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "cSV, nSV, vSV");
    {
	SV *	cSV = ST(0)
;
	SV *	nSV = ST(1)
;
	SV *	vSV = ST(2)
;
#line 2974 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor4fNormal3fVertex3fvSUN, )
  OGLM_AVAIL_CHECK(__glewColor4fNormal3fVertex3fvSUN, glColor4fNormal3fVertex3fvSUN)
  GLfloat* c = OGLM_GET_ARRAY(c, GLfloat, NV, 4);
  GLfloat *n = OGLM_GET_ARRAY(n, GLfloat, NV, 3);
  GLfloat *v = OGLM_GET_ARRAY(v, GLfloat, NV, 3);
  glColor4fNormal3fVertex3fvSUN((const GLfloat* )c, (const GLfloat *)n, (const GLfloat *)v);
  OGLM_CHECK_ERR(glColor4fNormal3fVertex3fvSUN, free(c);free(n);free(v);)
  free(c);free(n);free(v);
#line 6457 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor4fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor4fv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(0)))
;
#line 2988 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor4fv, )
  glColor4fv(v);
  OGLM_CHECK_ERR(glColor4fv, )
#line 6477 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor4fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor4fv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 2996 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor4fv, )
  GLfloat *v = OGLM_GET_VARARGS(v,0,GLfloat,NV,4);
  glColor4fv((const GLfloat *)v);
  OGLM_CHECK_ERR(glColor4fv, free(v);)
  free(v);
#line 6497 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor4hNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor4hNV)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "red, green, blue, alpha");
    {
	GLhalf	red = (float)SvNV(ST(0))
;
	GLhalf	green = (float)SvNV(ST(1))
;
	GLhalf	blue = (float)SvNV(ST(2))
;
	GLhalf	alpha = (float)SvNV(ST(3))
;
#line 3010 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor4hNV, )
  OGLM_AVAIL_CHECK(__glewColor4hNV, glColor4hNV)
  glColor4hNV(red, green, blue, alpha);
  OGLM_CHECK_ERR(glColor4hNV, )
#line 6524 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor4hvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor4hvNV_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLhalf*	v = INT2PTR(const GLhalf *,SvIV(ST(0)))
;
#line 3020 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor4hvNV, )
  OGLM_AVAIL_CHECK(__glewColor4hvNV, glColor4hvNV)
  glColor4hvNV(v);
  OGLM_CHECK_ERR(glColor4hvNV, )
#line 6545 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor4hvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor4hvNV_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 3029 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor4hvNV, )
  OGLM_AVAIL_CHECK(__glewColor4hvNV, glColor4hvNV)
  GLhalf* v = OGLM_GET_VARARGS(v,0,GLhalf,NV,4);
  glColor4hvNV((const GLhalf* )v);
  OGLM_CHECK_ERR(glColor4hvNV, free(v);)
  free(v);
#line 6566 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor4i); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor4i)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "red, green, blue, alpha");
    {
	GLint	red = (int)SvIV(ST(0))
;
	GLint	green = (int)SvIV(ST(1))
;
	GLint	blue = (int)SvIV(ST(2))
;
	GLint	alpha = (int)SvIV(ST(3))
;
#line 3044 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor4i, )
  glColor4i(red, green, blue, alpha);
  OGLM_CHECK_ERR(glColor4i, )
#line 6592 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor4iv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor4iv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLint *	v = INT2PTR(const GLint *,SvIV(ST(0)))
;
#line 3053 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor4iv, )
  glColor4iv(v);
  OGLM_CHECK_ERR(glColor4iv, )
#line 6612 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor4iv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor4iv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 3061 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor4iv, )
  GLint *v = OGLM_GET_VARARGS(v,0,GLint,IV,4);
  glColor4iv((const GLint *)v);
  OGLM_CHECK_ERR(glColor4iv, free(v);)
  free(v);
#line 6632 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor4s); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor4s)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "red, green, blue, alpha");
    {
	GLshort	red = (short)SvIV(ST(0))
;
	GLshort	green = (short)SvIV(ST(1))
;
	GLshort	blue = (short)SvIV(ST(2))
;
	GLshort	alpha = (short)SvIV(ST(3))
;
#line 3075 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor4s, )
  glColor4s(red, green, blue, alpha);
  OGLM_CHECK_ERR(glColor4s, )
#line 6658 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor4sv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor4sv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLshort *	v = INT2PTR(const GLshort *,SvIV(ST(0)))
;
#line 3084 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor4sv, )
  glColor4sv(v);
  OGLM_CHECK_ERR(glColor4sv, )
#line 6678 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor4sv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor4sv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 3092 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor4sv, )
  GLshort *v = OGLM_GET_VARARGS(v,0,GLshort,IV,4);
  glColor4sv((const GLshort *)v);
  OGLM_CHECK_ERR(glColor4sv, free(v);)
  free(v);
#line 6698 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor4ub); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor4ub)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "red, green, blue, alpha");
    {
	GLubyte	red = (unsigned int)SvUV(ST(0))
;
	GLubyte	green = (unsigned int)SvUV(ST(1))
;
	GLubyte	blue = (unsigned int)SvUV(ST(2))
;
	GLubyte	alpha = (unsigned int)SvUV(ST(3))
;
#line 3106 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor4ub, )
  glColor4ub(red, green, blue, alpha);
  OGLM_CHECK_ERR(glColor4ub, )
#line 6724 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor4ubVertex2fSUN); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor4ubVertex2fSUN)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "r, g, b, a, x, y");
    {
	GLubyte	r = (unsigned int)SvUV(ST(0))
;
	GLubyte	g = (unsigned int)SvUV(ST(1))
;
	GLubyte	b = (unsigned int)SvUV(ST(2))
;
	GLubyte	a = (unsigned int)SvUV(ST(3))
;
	GLfloat	x = (float)SvNV(ST(4))
;
	GLfloat	y = (float)SvNV(ST(5))
;
#line 3120 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor4ubVertex2fSUN, )
  OGLM_AVAIL_CHECK(__glewColor4ubVertex2fSUN, glColor4ubVertex2fSUN)
  glColor4ubVertex2fSUN(r, g, b, a, x, y);
  OGLM_CHECK_ERR(glColor4ubVertex2fSUN, )
#line 6755 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor4ubVertex2fvSUN_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor4ubVertex2fvSUN_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "c, v");
    {
	const GLubyte*        c = (const GLubyte *)SvPV_nolen(ST(0))
;
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 3131 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor4ubVertex2fvSUN, )
  OGLM_AVAIL_CHECK(__glewColor4ubVertex2fvSUN, glColor4ubVertex2fvSUN)
  glColor4ubVertex2fvSUN(c, v);
  OGLM_CHECK_ERR(glColor4ubVertex2fvSUN, )
#line 6778 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor4ubVertex2fvSUN_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor4ubVertex2fvSUN_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "cSV, vSV");
    {
	SV *	cSV = ST(0)
;
	SV *	vSV = ST(1)
;
#line 3142 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor4ubVertex2fvSUN, )
  OGLM_AVAIL_CHECK(__glewColor4ubVertex2fvSUN, glColor4ubVertex2fvSUN)
  GLubyte* c = OGLM_GET_ARRAY(c, GLubyte, UV, 4);
  GLfloat *v = OGLM_GET_ARRAY(v, GLfloat, NV, 2);
  glColor4ubVertex2fvSUN((const GLubyte* )c, (const GLfloat *)v);
  OGLM_CHECK_ERR(glColor4ubVertex2fvSUN, free(c);free(v);)
  free(c);free(v);
#line 6804 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor4ubVertex3fSUN); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor4ubVertex3fSUN)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "r, g, b, a, x, y, z");
    {
	GLubyte	r = (unsigned int)SvUV(ST(0))
;
	GLubyte	g = (unsigned int)SvUV(ST(1))
;
	GLubyte	b = (unsigned int)SvUV(ST(2))
;
	GLubyte	a = (unsigned int)SvUV(ST(3))
;
	GLfloat	x = (float)SvNV(ST(4))
;
	GLfloat	y = (float)SvNV(ST(5))
;
	GLfloat	z = (float)SvNV(ST(6))
;
#line 3161 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor4ubVertex3fSUN, )
  OGLM_AVAIL_CHECK(__glewColor4ubVertex3fSUN, glColor4ubVertex3fSUN)
  glColor4ubVertex3fSUN(r, g, b, a, x, y, z);
  OGLM_CHECK_ERR(glColor4ubVertex3fSUN, )
#line 6837 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor4ubVertex3fvSUN_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor4ubVertex3fvSUN_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "c, v");
    {
	const GLubyte*        c = (const GLubyte *)SvPV_nolen(ST(0))
;
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 3172 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor4ubVertex3fvSUN, )
  OGLM_AVAIL_CHECK(__glewColor4ubVertex3fvSUN, glColor4ubVertex3fvSUN)
  glColor4ubVertex3fvSUN(c, v);
  OGLM_CHECK_ERR(glColor4ubVertex3fvSUN, )
#line 6860 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor4ubVertex3fvSUN_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor4ubVertex3fvSUN_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "cSV, vSV");
    {
	SV *	cSV = ST(0)
;
	SV *	vSV = ST(1)
;
#line 3183 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor4ubVertex3fvSUN, )
  OGLM_AVAIL_CHECK(__glewColor4ubVertex3fvSUN, glColor4ubVertex3fvSUN)
  GLubyte* c = OGLM_GET_ARRAY(c, GLubyte, UV, 4);
  GLfloat *v = OGLM_GET_ARRAY(v, GLfloat, NV, 3);
  glColor4ubVertex3fvSUN((const GLubyte* )c, (const GLfloat *)v);
  OGLM_CHECK_ERR(glColor4ubVertex3fvSUN, free(c);free(v);)
  free(c);free(v);
#line 6886 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor4ubv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor4ubv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLubyte *        v = (const GLubyte *)SvPV_nolen(ST(0))
;
#line 3196 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor4ubv, )
  glColor4ubv(v);
  OGLM_CHECK_ERR(glColor4ubv, )
#line 6906 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor4ubv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor4ubv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 3204 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor4ubv, )
  GLubyte *v = OGLM_GET_VARARGS(v,0,GLubyte,UV,4);
  glColor4ubv((const GLubyte *)v);
  OGLM_CHECK_ERR(glColor4ubv, free(v);)
  free(v);
#line 6926 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor4ui); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor4ui)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "red, green, blue, alpha");
    {
	GLuint	red = (unsigned int)SvUV(ST(0))
;
	GLuint	green = (unsigned int)SvUV(ST(1))
;
	GLuint	blue = (unsigned int)SvUV(ST(2))
;
	GLuint	alpha = (unsigned int)SvUV(ST(3))
;
#line 3218 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor4ui, )
  glColor4ui(red, green, blue, alpha);
  OGLM_CHECK_ERR(glColor4ui, )
#line 6952 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor4uiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor4uiv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLuint *	v = INT2PTR(const GLuint *,SvIV(ST(0)))
;
#line 3227 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor4uiv, )
  glColor4uiv(v);
  OGLM_CHECK_ERR(glColor4uiv, )
#line 6972 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor4uiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor4uiv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 3235 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor4uiv, )
  GLuint *v = OGLM_GET_VARARGS(v,0,GLuint,UV,4);
  glColor4uiv((const GLuint *)v);
  OGLM_CHECK_ERR(glColor4uiv, free(v);)
  free(v);
#line 6992 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor4us); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor4us)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "red, green, blue, alpha");
    {
	GLushort	red = (unsigned short)SvUV(ST(0))
;
	GLushort	green = (unsigned short)SvUV(ST(1))
;
	GLushort	blue = (unsigned short)SvUV(ST(2))
;
	GLushort	alpha = (unsigned short)SvUV(ST(3))
;
#line 3249 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor4us, )
  glColor4us(red, green, blue, alpha);
  OGLM_CHECK_ERR(glColor4us, )
#line 7018 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor4usv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor4usv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLushort *	v = INT2PTR(const GLushort *,SvIV(ST(0)))
;
#line 3258 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor4usv, )
  glColor4usv(v);
  OGLM_CHECK_ERR(glColor4usv, )
#line 7038 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor4usv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor4usv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 3266 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor4usv, )
  GLushort *v = OGLM_GET_VARARGS(v,0,GLushort,UV,4);
  glColor4usv((const GLushort *)v);
  OGLM_CHECK_ERR(glColor4usv, free(v);)
  free(v);
#line 7058 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColor4x); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColor4x)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "red, green, blue, alpha");
    {
	GLfixed	red = (int)SvIV(ST(0))
;
	GLfixed	green = (int)SvIV(ST(1))
;
	GLfixed	blue = (int)SvIV(ST(2))
;
	GLfixed	alpha = (int)SvIV(ST(3))
;
#line 3280 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColor4x, )
  OGLM_AVAIL_CHECK(__glewColor4x, glColor4x)
  glColor4x(red, green, blue, alpha);
  OGLM_CHECK_ERR(glColor4x, )
#line 7085 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColorFormatNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColorFormatNV)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "size, type, stride");
    {
	GLint	size = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLsizei	stride = (int)SvIV(ST(2))
;
#line 3292 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColorFormatNV, )
  OGLM_AVAIL_CHECK(__glewColorFormatNV, glColorFormatNV)
  glColorFormatNV(size, type, stride);
  OGLM_CHECK_ERR(glColorFormatNV, )
#line 7110 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColorFragmentOp1ATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColorFragmentOp1ATI)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod");
    {
	GLenum	op = (int)SvIV(ST(0))
;
	GLuint	dst = (unsigned int)SvUV(ST(1))
;
	GLuint	dstMask = (unsigned int)SvUV(ST(2))
;
	GLuint	dstMod = (unsigned int)SvUV(ST(3))
;
	GLuint	arg1 = (unsigned int)SvUV(ST(4))
;
	GLuint	arg1Rep = (unsigned int)SvUV(ST(5))
;
	GLuint	arg1Mod = (unsigned int)SvUV(ST(6))
;
#line 3308 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColorFragmentOp1ATI, )
  OGLM_AVAIL_CHECK(__glewColorFragmentOp1ATI, glColorFragmentOp1ATI)
  glColorFragmentOp1ATI(op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod);
  OGLM_CHECK_ERR(glColorFragmentOp1ATI, )
#line 7143 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColorFragmentOp2ATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColorFragmentOp2ATI)
{
    dVAR; dXSARGS;
    if (items != 10)
       croak_xs_usage(cv,  "op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod");
    {
	GLenum	op = (int)SvIV(ST(0))
;
	GLuint	dst = (unsigned int)SvUV(ST(1))
;
	GLuint	dstMask = (unsigned int)SvUV(ST(2))
;
	GLuint	dstMod = (unsigned int)SvUV(ST(3))
;
	GLuint	arg1 = (unsigned int)SvUV(ST(4))
;
	GLuint	arg1Rep = (unsigned int)SvUV(ST(5))
;
	GLuint	arg1Mod = (unsigned int)SvUV(ST(6))
;
	GLuint	arg2 = (unsigned int)SvUV(ST(7))
;
	GLuint	arg2Rep = (unsigned int)SvUV(ST(8))
;
	GLuint	arg2Mod = (unsigned int)SvUV(ST(9))
;
#line 3327 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColorFragmentOp2ATI, )
  OGLM_AVAIL_CHECK(__glewColorFragmentOp2ATI, glColorFragmentOp2ATI)
  glColorFragmentOp2ATI(op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod);
  OGLM_CHECK_ERR(glColorFragmentOp2ATI, )
#line 7182 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColorFragmentOp3ATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColorFragmentOp3ATI)
{
    dVAR; dXSARGS;
    if (items != 13)
       croak_xs_usage(cv,  "op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod, arg3, arg3Rep, arg3Mod");
    {
	GLenum	op = (int)SvIV(ST(0))
;
	GLuint	dst = (unsigned int)SvUV(ST(1))
;
	GLuint	dstMask = (unsigned int)SvUV(ST(2))
;
	GLuint	dstMod = (unsigned int)SvUV(ST(3))
;
	GLuint	arg1 = (unsigned int)SvUV(ST(4))
;
	GLuint	arg1Rep = (unsigned int)SvUV(ST(5))
;
	GLuint	arg1Mod = (unsigned int)SvUV(ST(6))
;
	GLuint	arg2 = (unsigned int)SvUV(ST(7))
;
	GLuint	arg2Rep = (unsigned int)SvUV(ST(8))
;
	GLuint	arg2Mod = (unsigned int)SvUV(ST(9))
;
	GLuint	arg3 = (unsigned int)SvUV(ST(10))
;
	GLuint	arg3Rep = (unsigned int)SvUV(ST(11))
;
	GLuint	arg3Mod = (unsigned int)SvUV(ST(12))
;
#line 3349 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColorFragmentOp3ATI, )
  OGLM_AVAIL_CHECK(__glewColorFragmentOp3ATI, glColorFragmentOp3ATI)
  glColorFragmentOp3ATI(op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod, arg3, arg3Rep, arg3Mod);
  OGLM_CHECK_ERR(glColorFragmentOp3ATI, )
#line 7227 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColorMask); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColorMask)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "red, green, blue, alpha");
    {
	GLboolean	red = (int)SvIV(ST(0))
;
	GLboolean	green = (int)SvIV(ST(1))
;
	GLboolean	blue = (int)SvIV(ST(2))
;
	GLboolean	alpha = (int)SvIV(ST(3))
;
#line 3362 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColorMask, )
  glColorMask(red, green, blue, alpha);
  OGLM_CHECK_ERR(glColorMask, )
#line 7253 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColorMaski); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColorMaski)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "buf, red, green, blue, alpha");
    {
	GLuint	buf = (unsigned int)SvUV(ST(0))
;
	GLboolean	red = (int)SvIV(ST(1))
;
	GLboolean	green = (int)SvIV(ST(2))
;
	GLboolean	blue = (int)SvIV(ST(3))
;
	GLboolean	alpha = (int)SvIV(ST(4))
;
#line 3378 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColorMaski, )
  OGLM_AVAIL_CHECK(__glewColorMaski, glColorMaski)
  glColorMaski(buf, red, green, blue, alpha);
  OGLM_CHECK_ERR(glColorMaski, )
#line 7283 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColorMaskiOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColorMaskiOES)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "buf, r, g, b, a");
    {
	GLuint	buf = (unsigned int)SvUV(ST(0))
;
	GLboolean	r = (int)SvIV(ST(1))
;
	GLboolean	g = (int)SvIV(ST(2))
;
	GLboolean	b = (int)SvIV(ST(3))
;
	GLboolean	a = (int)SvIV(ST(4))
;
#line 3392 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColorMaskiOES, )
  OGLM_AVAIL_CHECK(__glewColorMaskiOES, glColorMaskiOES)
  glColorMaskiOES(buf, r, g, b, a);
  OGLM_CHECK_ERR(glColorMaskiOES, )
#line 7312 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColorMaterial); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColorMaterial)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "face, mode");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	mode = (int)SvIV(ST(1))
;
#line 3403 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColorMaterial, )
  glColorMaterial(face, mode);
  OGLM_CHECK_ERR(glColorMaterial, )
#line 7334 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColorP3ui); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColorP3ui)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "type, color");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	GLuint	color = (unsigned int)SvUV(ST(1))
;
#line 3413 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColorP3ui, )
  OGLM_AVAIL_CHECK(__glewColorP3ui, glColorP3ui)
  glColorP3ui(type, color);
  OGLM_CHECK_ERR(glColorP3ui, )
#line 7357 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColorP3uiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColorP3uiv_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "type, color");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	const GLuint*	color = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 3424 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColorP3uiv, )
  OGLM_AVAIL_CHECK(__glewColorP3uiv, glColorP3uiv)
  glColorP3uiv(type, color);
  OGLM_CHECK_ERR(glColorP3uiv, )
#line 7380 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColorP3uiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColorP3uiv_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "type, ...");
    {
	GLenum	type = (int)SvIV(ST(0))
;
#line 3434 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColorP3uiv, )
  OGLM_AVAIL_CHECK(__glewColorP3uiv, glColorP3uiv)
  GLuint* color = OGLM_GET_VARARGS(color,1,GLuint,UV,1);
  glColorP3uiv((GLenum )type, (const GLuint* )color);
  OGLM_CHECK_ERR(glColorP3uiv, free(color);)
  free(color);
#line 7403 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColorP4ui); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColorP4ui)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "type, color");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	GLuint	color = (unsigned int)SvUV(ST(1))
;
#line 3447 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColorP4ui, )
  OGLM_AVAIL_CHECK(__glewColorP4ui, glColorP4ui)
  glColorP4ui(type, color);
  OGLM_CHECK_ERR(glColorP4ui, )
#line 7426 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColorP4uiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColorP4uiv_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "type, color");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	const GLuint*	color = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 3458 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColorP4uiv, )
  OGLM_AVAIL_CHECK(__glewColorP4uiv, glColorP4uiv)
  glColorP4uiv(type, color);
  OGLM_CHECK_ERR(glColorP4uiv, )
#line 7449 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColorP4uiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColorP4uiv_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "type, ...");
    {
	GLenum	type = (int)SvIV(ST(0))
;
#line 3468 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColorP4uiv, )
  OGLM_AVAIL_CHECK(__glewColorP4uiv, glColorP4uiv)
  GLuint* color = OGLM_GET_VARARGS(color,1,GLuint,UV,1);
  glColorP4uiv((GLenum )type, (const GLuint* )color);
  OGLM_CHECK_ERR(glColorP4uiv, free(color);)
  free(color);
#line 7472 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColorPointer_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColorPointer_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "size, type, stride, pointer");
    {
	GLint	size = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLsizei	stride = (int)SvIV(ST(2))
;
	const void *	pointer = INT2PTR(const void *,SvIV(ST(3)))
;
#line 3483 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColorPointer, )
  glColorPointer(size, type, stride, pointer);
  OGLM_CHECK_ERR(glColorPointer, )
#line 7498 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColorPointerEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColorPointerEXT_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "size, type, stride, count, pointer");
    {
	GLint	size = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLsizei	stride = (int)SvIV(ST(2))
;
	GLsizei	count = (int)SvIV(ST(3))
;
	const void *	pointer = INT2PTR(const void *,SvIV(ST(4)))
;
#line 3496 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColorPointerEXT, )
  OGLM_AVAIL_CHECK(__glewColorPointerEXT, glColorPointerEXT)
  glColorPointerEXT(size, type, stride, count, pointer);
  OGLM_CHECK_ERR(glColorPointerEXT, )
#line 7527 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColorPointerListIBM_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColorPointerListIBM_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "size, type, stride, pointer, ptrstride");
    {
	GLint	size = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLint	stride = (int)SvIV(ST(2))
;
	const void**	pointer = INT2PTR(const void **,SvIV(ST(3)))
;
	GLint	ptrstride = (int)SvIV(ST(4))
;
#line 3510 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColorPointerListIBM, )
  OGLM_AVAIL_CHECK(__glewColorPointerListIBM, glColorPointerListIBM)
  glColorPointerListIBM(size, type, stride, pointer, ptrstride);
  OGLM_CHECK_ERR(glColorPointerListIBM, )
#line 7556 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColorPointervINTEL_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColorPointervINTEL_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "size, type, pointer");
    {
	GLint	size = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	const void**	pointer = INT2PTR(const void **,SvIV(ST(2)))
;
#line 3522 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColorPointervINTEL, )
  OGLM_AVAIL_CHECK(__glewColorPointervINTEL, glColorPointervINTEL)
  glColorPointervINTEL(size, type, pointer);
  OGLM_CHECK_ERR(glColorPointervINTEL, )
#line 7581 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColorSubTable_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColorSubTable_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 6)
       croak_xs_usage(cv,  "target, start, count, format, type, data");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	start = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLenum	format = (int)SvIV(ST(3))
;
	GLenum	type = (int)SvIV(ST(4))
;
	const void *	data = INT2PTR(const void *,SvIV(ST(5)))
;
#line 3539 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColorSubTable, )
  OGLM_AVAIL_CHECK(__glewColorSubTable, glColorSubTable)
  glColorSubTable(target, start, count, format, type, data);
  OGLM_CHECK_ERR(glColorSubTable, )
#line 7613 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColorTable_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColorTable_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 6)
       croak_xs_usage(cv,  "target, internalformat, width, format, type, table");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	internalformat = (int)SvIV(ST(1))
;
	GLsizei	width = (int)SvIV(ST(2))
;
	GLenum	format = (int)SvIV(ST(3))
;
	GLenum	type = (int)SvIV(ST(4))
;
	const void *	table = INT2PTR(const void *,SvIV(ST(5)))
;
#line 3557 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColorTable, )
  OGLM_AVAIL_CHECK(__glewColorTable, glColorTable)
  glColorTable(target, internalformat, width, format, type, table);
  OGLM_CHECK_ERR(glColorTable, )
#line 7645 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColorTableParameterfv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColorTableParameterfv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLfloat *	params = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 3571 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColorTableParameterfv, )
  OGLM_AVAIL_CHECK(__glewColorTableParameterfv, glColorTableParameterfv)
  glColorTableParameterfv(target, pname, params);
  OGLM_CHECK_ERR(glColorTableParameterfv, )
#line 7671 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColorTableParameterfv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColorTableParameterfv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 2)
       croak_xs_usage(cv,  "target, pname, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 3584 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColorTableParameterfv, )
  OGLM_AVAIL_CHECK(__glewColorTableParameterfv, glColorTableParameterfv)
  OGLM_SIZE_ENUM(ColorTableParameterPName,pname,1)
  GLfloat *params = OGLM_GET_VARARGS(params,2,GLfloat,NV,pname_count);
  glColorTableParameterfv((GLenum )target, (GLenum )pname, (const GLfloat *)params);
  OGLM_CHECK_ERR(glColorTableParameterfv, free(params);)
  free(params);
#line 7698 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColorTableParameteriv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColorTableParameteriv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLint *	params = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 3601 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColorTableParameteriv, )
  OGLM_AVAIL_CHECK(__glewColorTableParameteriv, glColorTableParameteriv)
  glColorTableParameteriv(target, pname, params);
  OGLM_CHECK_ERR(glColorTableParameteriv, )
#line 7724 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glColorTableParameteriv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glColorTableParameteriv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 2)
       croak_xs_usage(cv,  "target, pname, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 3614 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glColorTableParameteriv, )
  OGLM_AVAIL_CHECK(__glewColorTableParameteriv, glColorTableParameteriv)
  OGLM_SIZE_ENUM(ColorTableParameterPName,pname,1)
  GLint *params = OGLM_GET_VARARGS(params,2,GLint,IV,pname_count);
  glColorTableParameteriv((GLenum )target, (GLenum )pname, (const GLint *)params);
  OGLM_CHECK_ERR(glColorTableParameteriv, free(params);)
  free(params);
#line 7751 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCombinerInputNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCombinerInputNV)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "stage, portion, variable, input, mapping, componentUsage");
    {
	GLenum	stage = (int)SvIV(ST(0))
;
	GLenum	portion = (int)SvIV(ST(1))
;
	GLenum	variable = (int)SvIV(ST(2))
;
	GLenum	input = (int)SvIV(ST(3))
;
	GLenum	mapping = (int)SvIV(ST(4))
;
	GLenum	componentUsage = (int)SvIV(ST(5))
;
#line 3632 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCombinerInputNV, )
  OGLM_AVAIL_CHECK(__glewCombinerInputNV, glCombinerInputNV)
  glCombinerInputNV(stage, portion, variable, input, mapping, componentUsage);
  OGLM_CHECK_ERR(glCombinerInputNV, )
#line 7782 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCombinerOutputNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCombinerOutputNV)
{
    dVAR; dXSARGS;
    if (items != 10)
       croak_xs_usage(cv,  "stage, portion, abOutput, cdOutput, sumOutput, scale, bias, abDotProduct, cdDotProduct, muxSum");
    {
	GLenum	stage = (int)SvIV(ST(0))
;
	GLenum	portion = (int)SvIV(ST(1))
;
	GLenum	abOutput = (int)SvIV(ST(2))
;
	GLenum	cdOutput = (int)SvIV(ST(3))
;
	GLenum	sumOutput = (int)SvIV(ST(4))
;
	GLenum	scale = (int)SvIV(ST(5))
;
	GLenum	bias = (int)SvIV(ST(6))
;
	GLboolean	abDotProduct = (int)SvIV(ST(7))
;
	GLboolean	cdDotProduct = (int)SvIV(ST(8))
;
	GLboolean	muxSum = (int)SvIV(ST(9))
;
#line 3651 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCombinerOutputNV, )
  OGLM_AVAIL_CHECK(__glewCombinerOutputNV, glCombinerOutputNV)
  glCombinerOutputNV(stage, portion, abOutput, cdOutput, sumOutput, scale, bias, abDotProduct, cdDotProduct, muxSum);
  OGLM_CHECK_ERR(glCombinerOutputNV, )
#line 7821 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCombinerParameterfNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCombinerParameterfNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, param");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLfloat	param = (float)SvNV(ST(1))
;
#line 3662 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCombinerParameterfNV, )
  OGLM_AVAIL_CHECK(__glewCombinerParameterfNV, glCombinerParameterfNV)
  glCombinerParameterfNV(pname, param);
  OGLM_CHECK_ERR(glCombinerParameterfNV, )
#line 7844 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCombinerParameterfvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCombinerParameterfvNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, params");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	const GLfloat*	params = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 3673 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCombinerParameterfvNV, )
  OGLM_AVAIL_CHECK(__glewCombinerParameterfvNV, glCombinerParameterfvNV)
  glCombinerParameterfvNV(pname, params);
  OGLM_CHECK_ERR(glCombinerParameterfvNV, )
#line 7867 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCombinerParameteriNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCombinerParameteriNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, param");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLint	param = (int)SvIV(ST(1))
;
#line 3684 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCombinerParameteriNV, )
  OGLM_AVAIL_CHECK(__glewCombinerParameteriNV, glCombinerParameteriNV)
  glCombinerParameteriNV(pname, param);
  OGLM_CHECK_ERR(glCombinerParameteriNV, )
#line 7890 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCombinerParameterivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCombinerParameterivNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, params");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	const GLint*	params = INT2PTR(const GLint *,SvIV(ST(1)))
;
#line 3695 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCombinerParameterivNV, )
  OGLM_AVAIL_CHECK(__glewCombinerParameterivNV, glCombinerParameterivNV)
  glCombinerParameterivNV(pname, params);
  OGLM_CHECK_ERR(glCombinerParameterivNV, )
#line 7913 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCombinerStageParameterfvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCombinerStageParameterfvNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "stage, pname, params");
    {
	GLenum	stage = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLfloat*	params = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 3707 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCombinerStageParameterfvNV, )
  OGLM_AVAIL_CHECK(__glewCombinerStageParameterfvNV, glCombinerStageParameterfvNV)
  glCombinerStageParameterfvNV(stage, pname, params);
  OGLM_CHECK_ERR(glCombinerStageParameterfvNV, )
#line 7938 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCommandListSegmentsNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCommandListSegmentsNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "list, segments");
    {
	GLuint	list = (unsigned int)SvUV(ST(0))
;
	GLuint	segments = (unsigned int)SvUV(ST(1))
;
#line 3718 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCommandListSegmentsNV, )
  OGLM_AVAIL_CHECK(__glewCommandListSegmentsNV, glCommandListSegmentsNV)
  glCommandListSegmentsNV(list, segments);
  OGLM_CHECK_ERR(glCommandListSegmentsNV, )
#line 7961 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCompileCommandListNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCompileCommandListNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "list");
    {
	GLuint	list = (unsigned int)SvUV(ST(0))
;
#line 3728 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCompileCommandListNV, )
  OGLM_AVAIL_CHECK(__glewCompileCommandListNV, glCompileCommandListNV)
  glCompileCommandListNV(list);
  OGLM_CHECK_ERR(glCompileCommandListNV, )
#line 7982 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCompileShader); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCompileShader)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "shader");
    {
	GLuint	shader = (unsigned int)SvUV(ST(0))
;
#line 3738 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCompileShader, )
  OGLM_AVAIL_CHECK(__glewCompileShader, glCompileShader)
  glCompileShader(shader);
  OGLM_CHECK_ERR(glCompileShader, )
#line 8003 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCompileShaderARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCompileShaderARB)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "shaderObj");
    {
	GLhandleARB	shaderObj = (unsigned int)SvUV(ST(0))
;
#line 3748 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCompileShaderARB, )
  OGLM_AVAIL_CHECK(__glewCompileShaderARB, glCompileShaderARB)
  glCompileShaderARB(shaderObj);
  OGLM_CHECK_ERR(glCompileShaderARB, )
#line 8024 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCompileShaderIncludeARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCompileShaderIncludeARB_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "shader, count, path, length");
    {
	GLuint	shader = (unsigned int)SvUV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLchar* const *	path = (const GLchar * const *)SvPV_nolen(ST(2))
;
	const GLint *	length = INT2PTR(const GLint *,SvIV(ST(3)))
;
#line 3761 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCompileShaderIncludeARB, )
  OGLM_AVAIL_CHECK(__glewCompileShaderIncludeARB, glCompileShaderIncludeARB)
  glCompileShaderIncludeARB(shader, count, path, length);
  OGLM_CHECK_ERR(glCompileShaderIncludeARB, )
#line 8051 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCompileShaderIncludeARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCompileShaderIncludeARB_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "shader, pathSV, lengthSV");
    {
	GLuint	shader = (unsigned int)SvUV(ST(0))
;
	SV *	pathSV = ST(1)
;
	SV *	lengthSV = ST(2)
;
#line 3773 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCompileShaderIncludeARB, )
  OGLM_AVAIL_CHECK(__glewCompileShaderIncludeARB, glCompileShaderIncludeARB)
  GLsizei count = OGLM_LEN_ARRAY(count, path);
  GLint *length = OGLM_GET_ARRAY(length, GLint, IV, count);
  GLchar* *path = OGLM_GET_ARRAY(path, GLchar*, PV_nolen, count);
  glCompileShaderIncludeARB((GLuint )shader, (GLsizei )count, (const GLchar* const *)path, (const GLint *)length);
  OGLM_CHECK_ERR(glCompileShaderIncludeARB, free(length);free(path);)
  free(length);free(path);
#line 8080 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCompressedMultiTexImage1DEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCompressedMultiTexImage1DEXT_c)
{
    dVAR; dXSARGS;
    if (items != 8)
       croak_xs_usage(cv,  "texunit, target, level, internalformat, width, border, imageSize, bits");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLenum	internalformat = (int)SvIV(ST(3))
;
	GLsizei	width = (int)SvIV(ST(4))
;
	GLint	border = (int)SvIV(ST(5))
;
	GLsizei	imageSize = (int)SvIV(ST(6))
;
	const void *	bits = INT2PTR(const void *,SvIV(ST(7)))
;
#line 3794 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCompressedMultiTexImage1DEXT, )
  OGLM_AVAIL_CHECK(__glewCompressedMultiTexImage1DEXT, glCompressedMultiTexImage1DEXT)
  glCompressedMultiTexImage1DEXT(texunit, target, level, internalformat, width, border, imageSize, bits);
  OGLM_CHECK_ERR(glCompressedMultiTexImage1DEXT, )
#line 8115 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCompressedMultiTexImage2DEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCompressedMultiTexImage2DEXT_c)
{
    dVAR; dXSARGS;
    if (items != 9)
       croak_xs_usage(cv,  "texunit, target, level, internalformat, width, height, border, imageSize, bits");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLenum	internalformat = (int)SvIV(ST(3))
;
	GLsizei	width = (int)SvIV(ST(4))
;
	GLsizei	height = (int)SvIV(ST(5))
;
	GLint	border = (int)SvIV(ST(6))
;
	GLsizei	imageSize = (int)SvIV(ST(7))
;
	const void *	bits = INT2PTR(const void *,SvIV(ST(8)))
;
#line 3812 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCompressedMultiTexImage2DEXT, )
  OGLM_AVAIL_CHECK(__glewCompressedMultiTexImage2DEXT, glCompressedMultiTexImage2DEXT)
  glCompressedMultiTexImage2DEXT(texunit, target, level, internalformat, width, height, border, imageSize, bits);
  OGLM_CHECK_ERR(glCompressedMultiTexImage2DEXT, )
#line 8152 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCompressedMultiTexImage3DEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCompressedMultiTexImage3DEXT_c)
{
    dVAR; dXSARGS;
    if (items != 10)
       croak_xs_usage(cv,  "texunit, target, level, internalformat, width, height, depth, border, imageSize, bits");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLenum	internalformat = (int)SvIV(ST(3))
;
	GLsizei	width = (int)SvIV(ST(4))
;
	GLsizei	height = (int)SvIV(ST(5))
;
	GLsizei	depth = (int)SvIV(ST(6))
;
	GLint	border = (int)SvIV(ST(7))
;
	GLsizei	imageSize = (int)SvIV(ST(8))
;
	const void *	bits = INT2PTR(const void *,SvIV(ST(9)))
;
#line 3831 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCompressedMultiTexImage3DEXT, )
  OGLM_AVAIL_CHECK(__glewCompressedMultiTexImage3DEXT, glCompressedMultiTexImage3DEXT)
  glCompressedMultiTexImage3DEXT(texunit, target, level, internalformat, width, height, depth, border, imageSize, bits);
  OGLM_CHECK_ERR(glCompressedMultiTexImage3DEXT, )
#line 8191 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCompressedMultiTexSubImage1DEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCompressedMultiTexSubImage1DEXT_c)
{
    dVAR; dXSARGS;
    if (items != 8)
       croak_xs_usage(cv,  "texunit, target, level, xoffset, width, format, imageSize, bits");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLint	xoffset = (int)SvIV(ST(3))
;
	GLsizei	width = (int)SvIV(ST(4))
;
	GLenum	format = (int)SvIV(ST(5))
;
	GLsizei	imageSize = (int)SvIV(ST(6))
;
	const void *	bits = INT2PTR(const void *,SvIV(ST(7)))
;
#line 3848 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCompressedMultiTexSubImage1DEXT, )
  OGLM_AVAIL_CHECK(__glewCompressedMultiTexSubImage1DEXT, glCompressedMultiTexSubImage1DEXT)
  glCompressedMultiTexSubImage1DEXT(texunit, target, level, xoffset, width, format, imageSize, bits);
  OGLM_CHECK_ERR(glCompressedMultiTexSubImage1DEXT, )
#line 8226 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCompressedMultiTexSubImage2DEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCompressedMultiTexSubImage2DEXT_c)
{
    dVAR; dXSARGS;
    if (items != 10)
       croak_xs_usage(cv,  "texunit, target, level, xoffset, yoffset, width, height, format, imageSize, bits");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLint	xoffset = (int)SvIV(ST(3))
;
	GLint	yoffset = (int)SvIV(ST(4))
;
	GLsizei	width = (int)SvIV(ST(5))
;
	GLsizei	height = (int)SvIV(ST(6))
;
	GLenum	format = (int)SvIV(ST(7))
;
	GLsizei	imageSize = (int)SvIV(ST(8))
;
	const void *	bits = INT2PTR(const void *,SvIV(ST(9)))
;
#line 3867 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCompressedMultiTexSubImage2DEXT, )
  OGLM_AVAIL_CHECK(__glewCompressedMultiTexSubImage2DEXT, glCompressedMultiTexSubImage2DEXT)
  glCompressedMultiTexSubImage2DEXT(texunit, target, level, xoffset, yoffset, width, height, format, imageSize, bits);
  OGLM_CHECK_ERR(glCompressedMultiTexSubImage2DEXT, )
#line 8265 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCompressedMultiTexSubImage3DEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCompressedMultiTexSubImage3DEXT_c)
{
    dVAR; dXSARGS;
    if (items != 12)
       croak_xs_usage(cv,  "texunit, target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, bits");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLint	xoffset = (int)SvIV(ST(3))
;
	GLint	yoffset = (int)SvIV(ST(4))
;
	GLint	zoffset = (int)SvIV(ST(5))
;
	GLsizei	width = (int)SvIV(ST(6))
;
	GLsizei	height = (int)SvIV(ST(7))
;
	GLsizei	depth = (int)SvIV(ST(8))
;
	GLenum	format = (int)SvIV(ST(9))
;
	GLsizei	imageSize = (int)SvIV(ST(10))
;
	const void *	bits = INT2PTR(const void *,SvIV(ST(11)))
;
#line 3888 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCompressedMultiTexSubImage3DEXT, )
  OGLM_AVAIL_CHECK(__glewCompressedMultiTexSubImage3DEXT, glCompressedMultiTexSubImage3DEXT)
  glCompressedMultiTexSubImage3DEXT(texunit, target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, bits);
  OGLM_CHECK_ERR(glCompressedMultiTexSubImage3DEXT, )
#line 8308 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCompressedTexImage1D_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCompressedTexImage1D_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 7)
       croak_xs_usage(cv,  "target, level, internalformat, width, border, imageSize, data");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLenum	internalformat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLint	border = (int)SvIV(ST(4))
;
	GLsizei	imageSize = (int)SvIV(ST(5))
;
	const void *	data = INT2PTR(const void *,SvIV(ST(6)))
;
#line 3906 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCompressedTexImage1D, )
  OGLM_AVAIL_CHECK(__glewCompressedTexImage1D, glCompressedTexImage1D)
  glCompressedTexImage1D(target, level, internalformat, width, border, imageSize, data);
  OGLM_CHECK_ERR(glCompressedTexImage1D, )
#line 8342 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCompressedTexImage2D_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCompressedTexImage2D_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 8)
       croak_xs_usage(cv,  "target, level, internalformat, width, height, border, imageSize, data");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLenum	internalformat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
	GLint	border = (int)SvIV(ST(5))
;
	GLsizei	imageSize = (int)SvIV(ST(6))
;
	const void *	data = INT2PTR(const void *,SvIV(ST(7)))
;
#line 3925 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCompressedTexImage2D, )
  OGLM_AVAIL_CHECK(__glewCompressedTexImage2D, glCompressedTexImage2D)
  glCompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data);
  OGLM_CHECK_ERR(glCompressedTexImage2D, )
#line 8378 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCompressedTexImage3D_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCompressedTexImage3D_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 9)
       croak_xs_usage(cv,  "target, level, internalformat, width, height, depth, border, imageSize, data");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLenum	internalformat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
	GLsizei	depth = (int)SvIV(ST(5))
;
	GLint	border = (int)SvIV(ST(6))
;
	GLsizei	imageSize = (int)SvIV(ST(7))
;
	const void *	data = INT2PTR(const void *,SvIV(ST(8)))
;
#line 3945 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCompressedTexImage3D, )
  OGLM_AVAIL_CHECK(__glewCompressedTexImage3D, glCompressedTexImage3D)
  glCompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data);
  OGLM_CHECK_ERR(glCompressedTexImage3D, )
#line 8416 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCompressedTexImage3DNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCompressedTexImage3DNV_c)
{
    dVAR; dXSARGS;
    if (items != 9)
       croak_xs_usage(cv,  "target, level, internalformat, width, height, depth, border, imageSize, data");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLenum	internalformat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
	GLsizei	depth = (int)SvIV(ST(5))
;
	GLint	border = (int)SvIV(ST(6))
;
	GLsizei	imageSize = (int)SvIV(ST(7))
;
	const void *	data = INT2PTR(const void *,SvIV(ST(8)))
;
#line 3963 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCompressedTexImage3DNV, )
  OGLM_AVAIL_CHECK(__glewCompressedTexImage3DNV, glCompressedTexImage3DNV)
  glCompressedTexImage3DNV(target, level, internalformat, width, height, depth, border, imageSize, data);
  OGLM_CHECK_ERR(glCompressedTexImage3DNV, )
#line 8453 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCompressedTexImage3DOES_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCompressedTexImage3DOES_c)
{
    dVAR; dXSARGS;
    if (items != 9)
       croak_xs_usage(cv,  "target, level, internalformat, width, height, depth, border, imageSize, data");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLenum	internalformat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
	GLsizei	depth = (int)SvIV(ST(5))
;
	GLint	border = (int)SvIV(ST(6))
;
	GLsizei	imageSize = (int)SvIV(ST(7))
;
	const void *	data = INT2PTR(const void *,SvIV(ST(8)))
;
#line 3981 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCompressedTexImage3DOES, )
  OGLM_AVAIL_CHECK(__glewCompressedTexImage3DOES, glCompressedTexImage3DOES)
  glCompressedTexImage3DOES(target, level, internalformat, width, height, depth, border, imageSize, data);
  OGLM_CHECK_ERR(glCompressedTexImage3DOES, )
#line 8490 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCompressedTexSubImage1D_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCompressedTexSubImage1D_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 7)
       croak_xs_usage(cv,  "target, level, xoffset, width, format, imageSize, data");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLint	xoffset = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLenum	format = (int)SvIV(ST(4))
;
	GLsizei	imageSize = (int)SvIV(ST(5))
;
	const void *	data = INT2PTR(const void *,SvIV(ST(6)))
;
#line 3999 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCompressedTexSubImage1D, )
  OGLM_AVAIL_CHECK(__glewCompressedTexSubImage1D, glCompressedTexSubImage1D)
  glCompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data);
  OGLM_CHECK_ERR(glCompressedTexSubImage1D, )
#line 8524 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCompressedTexSubImage2D_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCompressedTexSubImage2D_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 9)
       croak_xs_usage(cv,  "target, level, xoffset, yoffset, width, height, format, imageSize, data");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLint	xoffset = (int)SvIV(ST(2))
;
	GLint	yoffset = (int)SvIV(ST(3))
;
	GLsizei	width = (int)SvIV(ST(4))
;
	GLsizei	height = (int)SvIV(ST(5))
;
	GLenum	format = (int)SvIV(ST(6))
;
	GLsizei	imageSize = (int)SvIV(ST(7))
;
	const void *	data = INT2PTR(const void *,SvIV(ST(8)))
;
#line 4019 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCompressedTexSubImage2D, )
  OGLM_AVAIL_CHECK(__glewCompressedTexSubImage2D, glCompressedTexSubImage2D)
  glCompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data);
  OGLM_CHECK_ERR(glCompressedTexSubImage2D, )
#line 8562 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCompressedTexSubImage3D_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCompressedTexSubImage3D_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 11)
       croak_xs_usage(cv,  "target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLint	xoffset = (int)SvIV(ST(2))
;
	GLint	yoffset = (int)SvIV(ST(3))
;
	GLint	zoffset = (int)SvIV(ST(4))
;
	GLsizei	width = (int)SvIV(ST(5))
;
	GLsizei	height = (int)SvIV(ST(6))
;
	GLsizei	depth = (int)SvIV(ST(7))
;
	GLenum	format = (int)SvIV(ST(8))
;
	GLsizei	imageSize = (int)SvIV(ST(9))
;
	const void *	data = INT2PTR(const void *,SvIV(ST(10)))
;
#line 4041 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCompressedTexSubImage3D, )
  OGLM_AVAIL_CHECK(__glewCompressedTexSubImage3D, glCompressedTexSubImage3D)
  glCompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
  OGLM_CHECK_ERR(glCompressedTexSubImage3D, )
#line 8604 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCompressedTexSubImage3DNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCompressedTexSubImage3DNV_c)
{
    dVAR; dXSARGS;
    if (items != 11)
       croak_xs_usage(cv,  "target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLint	xoffset = (int)SvIV(ST(2))
;
	GLint	yoffset = (int)SvIV(ST(3))
;
	GLint	zoffset = (int)SvIV(ST(4))
;
	GLsizei	width = (int)SvIV(ST(5))
;
	GLsizei	height = (int)SvIV(ST(6))
;
	GLsizei	depth = (int)SvIV(ST(7))
;
	GLenum	format = (int)SvIV(ST(8))
;
	GLsizei	imageSize = (int)SvIV(ST(9))
;
	const void *	data = INT2PTR(const void *,SvIV(ST(10)))
;
#line 4061 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCompressedTexSubImage3DNV, )
  OGLM_AVAIL_CHECK(__glewCompressedTexSubImage3DNV, glCompressedTexSubImage3DNV)
  glCompressedTexSubImage3DNV(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
  OGLM_CHECK_ERR(glCompressedTexSubImage3DNV, )
#line 8645 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCompressedTexSubImage3DOES_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCompressedTexSubImage3DOES_c)
{
    dVAR; dXSARGS;
    if (items != 11)
       croak_xs_usage(cv,  "target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLint	xoffset = (int)SvIV(ST(2))
;
	GLint	yoffset = (int)SvIV(ST(3))
;
	GLint	zoffset = (int)SvIV(ST(4))
;
	GLsizei	width = (int)SvIV(ST(5))
;
	GLsizei	height = (int)SvIV(ST(6))
;
	GLsizei	depth = (int)SvIV(ST(7))
;
	GLenum	format = (int)SvIV(ST(8))
;
	GLsizei	imageSize = (int)SvIV(ST(9))
;
	const void *	data = INT2PTR(const void *,SvIV(ST(10)))
;
#line 4081 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCompressedTexSubImage3DOES, )
  OGLM_AVAIL_CHECK(__glewCompressedTexSubImage3DOES, glCompressedTexSubImage3DOES)
  glCompressedTexSubImage3DOES(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
  OGLM_CHECK_ERR(glCompressedTexSubImage3DOES, )
#line 8686 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCompressedTextureImage1DEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCompressedTextureImage1DEXT_c)
{
    dVAR; dXSARGS;
    if (items != 8)
       croak_xs_usage(cv,  "texture, target, level, internalformat, width, border, imageSize, bits");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLenum	internalformat = (int)SvIV(ST(3))
;
	GLsizei	width = (int)SvIV(ST(4))
;
	GLint	border = (int)SvIV(ST(5))
;
	GLsizei	imageSize = (int)SvIV(ST(6))
;
	const void *	bits = INT2PTR(const void *,SvIV(ST(7)))
;
#line 4098 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCompressedTextureImage1DEXT, )
  OGLM_AVAIL_CHECK(__glewCompressedTextureImage1DEXT, glCompressedTextureImage1DEXT)
  glCompressedTextureImage1DEXT(texture, target, level, internalformat, width, border, imageSize, bits);
  OGLM_CHECK_ERR(glCompressedTextureImage1DEXT, )
#line 8721 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCompressedTextureImage2DEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCompressedTextureImage2DEXT_c)
{
    dVAR; dXSARGS;
    if (items != 9)
       croak_xs_usage(cv,  "texture, target, level, internalformat, width, height, border, imageSize, bits");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLenum	internalformat = (int)SvIV(ST(3))
;
	GLsizei	width = (int)SvIV(ST(4))
;
	GLsizei	height = (int)SvIV(ST(5))
;
	GLint	border = (int)SvIV(ST(6))
;
	GLsizei	imageSize = (int)SvIV(ST(7))
;
	const void *	bits = INT2PTR(const void *,SvIV(ST(8)))
;
#line 4116 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCompressedTextureImage2DEXT, )
  OGLM_AVAIL_CHECK(__glewCompressedTextureImage2DEXT, glCompressedTextureImage2DEXT)
  glCompressedTextureImage2DEXT(texture, target, level, internalformat, width, height, border, imageSize, bits);
  OGLM_CHECK_ERR(glCompressedTextureImage2DEXT, )
#line 8758 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCompressedTextureImage3DEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCompressedTextureImage3DEXT_c)
{
    dVAR; dXSARGS;
    if (items != 10)
       croak_xs_usage(cv,  "texture, target, level, internalformat, width, height, depth, border, imageSize, bits");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLenum	internalformat = (int)SvIV(ST(3))
;
	GLsizei	width = (int)SvIV(ST(4))
;
	GLsizei	height = (int)SvIV(ST(5))
;
	GLsizei	depth = (int)SvIV(ST(6))
;
	GLint	border = (int)SvIV(ST(7))
;
	GLsizei	imageSize = (int)SvIV(ST(8))
;
	const void *	bits = INT2PTR(const void *,SvIV(ST(9)))
;
#line 4135 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCompressedTextureImage3DEXT, )
  OGLM_AVAIL_CHECK(__glewCompressedTextureImage3DEXT, glCompressedTextureImage3DEXT)
  glCompressedTextureImage3DEXT(texture, target, level, internalformat, width, height, depth, border, imageSize, bits);
  OGLM_CHECK_ERR(glCompressedTextureImage3DEXT, )
#line 8797 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCompressedTextureSubImage1D_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCompressedTextureSubImage1D_c)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "texture, level, xoffset, width, format, imageSize, data");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLint	xoffset = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLenum	format = (int)SvIV(ST(4))
;
	GLsizei	imageSize = (int)SvIV(ST(5))
;
	const void *	data = INT2PTR(const void *,SvIV(ST(6)))
;
#line 4151 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCompressedTextureSubImage1D, )
  OGLM_AVAIL_CHECK(__glewCompressedTextureSubImage1D, glCompressedTextureSubImage1D)
  glCompressedTextureSubImage1D(texture, level, xoffset, width, format, imageSize, data);
  OGLM_CHECK_ERR(glCompressedTextureSubImage1D, )
#line 8830 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCompressedTextureSubImage1DEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCompressedTextureSubImage1DEXT_c)
{
    dVAR; dXSARGS;
    if (items != 8)
       croak_xs_usage(cv,  "texture, target, level, xoffset, width, format, imageSize, bits");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLint	xoffset = (int)SvIV(ST(3))
;
	GLsizei	width = (int)SvIV(ST(4))
;
	GLenum	format = (int)SvIV(ST(5))
;
	GLsizei	imageSize = (int)SvIV(ST(6))
;
	const void *	bits = INT2PTR(const void *,SvIV(ST(7)))
;
#line 4168 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCompressedTextureSubImage1DEXT, )
  OGLM_AVAIL_CHECK(__glewCompressedTextureSubImage1DEXT, glCompressedTextureSubImage1DEXT)
  glCompressedTextureSubImage1DEXT(texture, target, level, xoffset, width, format, imageSize, bits);
  OGLM_CHECK_ERR(glCompressedTextureSubImage1DEXT, )
#line 8865 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCompressedTextureSubImage2D_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCompressedTextureSubImage2D_c)
{
    dVAR; dXSARGS;
    if (items != 9)
       croak_xs_usage(cv,  "texture, level, xoffset, yoffset, width, height, format, imageSize, data");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLint	xoffset = (int)SvIV(ST(2))
;
	GLint	yoffset = (int)SvIV(ST(3))
;
	GLsizei	width = (int)SvIV(ST(4))
;
	GLsizei	height = (int)SvIV(ST(5))
;
	GLenum	format = (int)SvIV(ST(6))
;
	GLsizei	imageSize = (int)SvIV(ST(7))
;
	const void *	data = INT2PTR(const void *,SvIV(ST(8)))
;
#line 4186 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCompressedTextureSubImage2D, )
  OGLM_AVAIL_CHECK(__glewCompressedTextureSubImage2D, glCompressedTextureSubImage2D)
  glCompressedTextureSubImage2D(texture, level, xoffset, yoffset, width, height, format, imageSize, data);
  OGLM_CHECK_ERR(glCompressedTextureSubImage2D, )
#line 8902 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCompressedTextureSubImage2DEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCompressedTextureSubImage2DEXT_c)
{
    dVAR; dXSARGS;
    if (items != 10)
       croak_xs_usage(cv,  "texture, target, level, xoffset, yoffset, width, height, format, imageSize, bits");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLint	xoffset = (int)SvIV(ST(3))
;
	GLint	yoffset = (int)SvIV(ST(4))
;
	GLsizei	width = (int)SvIV(ST(5))
;
	GLsizei	height = (int)SvIV(ST(6))
;
	GLenum	format = (int)SvIV(ST(7))
;
	GLsizei	imageSize = (int)SvIV(ST(8))
;
	const void *	bits = INT2PTR(const void *,SvIV(ST(9)))
;
#line 4205 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCompressedTextureSubImage2DEXT, )
  OGLM_AVAIL_CHECK(__glewCompressedTextureSubImage2DEXT, glCompressedTextureSubImage2DEXT)
  glCompressedTextureSubImage2DEXT(texture, target, level, xoffset, yoffset, width, height, format, imageSize, bits);
  OGLM_CHECK_ERR(glCompressedTextureSubImage2DEXT, )
#line 8941 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCompressedTextureSubImage3D_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCompressedTextureSubImage3D_c)
{
    dVAR; dXSARGS;
    if (items != 11)
       croak_xs_usage(cv,  "texture, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLint	xoffset = (int)SvIV(ST(2))
;
	GLint	yoffset = (int)SvIV(ST(3))
;
	GLint	zoffset = (int)SvIV(ST(4))
;
	GLsizei	width = (int)SvIV(ST(5))
;
	GLsizei	height = (int)SvIV(ST(6))
;
	GLsizei	depth = (int)SvIV(ST(7))
;
	GLenum	format = (int)SvIV(ST(8))
;
	GLsizei	imageSize = (int)SvIV(ST(9))
;
	const void *	data = INT2PTR(const void *,SvIV(ST(10)))
;
#line 4225 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCompressedTextureSubImage3D, )
  OGLM_AVAIL_CHECK(__glewCompressedTextureSubImage3D, glCompressedTextureSubImage3D)
  glCompressedTextureSubImage3D(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data);
  OGLM_CHECK_ERR(glCompressedTextureSubImage3D, )
#line 8982 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCompressedTextureSubImage3DEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCompressedTextureSubImage3DEXT_c)
{
    dVAR; dXSARGS;
    if (items != 12)
       croak_xs_usage(cv,  "texture, target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, bits");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLint	xoffset = (int)SvIV(ST(3))
;
	GLint	yoffset = (int)SvIV(ST(4))
;
	GLint	zoffset = (int)SvIV(ST(5))
;
	GLsizei	width = (int)SvIV(ST(6))
;
	GLsizei	height = (int)SvIV(ST(7))
;
	GLsizei	depth = (int)SvIV(ST(8))
;
	GLenum	format = (int)SvIV(ST(9))
;
	GLsizei	imageSize = (int)SvIV(ST(10))
;
	const void *	bits = INT2PTR(const void *,SvIV(ST(11)))
;
#line 4246 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCompressedTextureSubImage3DEXT, )
  OGLM_AVAIL_CHECK(__glewCompressedTextureSubImage3DEXT, glCompressedTextureSubImage3DEXT)
  glCompressedTextureSubImage3DEXT(texture, target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, bits);
  OGLM_CHECK_ERR(glCompressedTextureSubImage3DEXT, )
#line 9025 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glConservativeRasterParameterfNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glConservativeRasterParameterfNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, value");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLfloat	value = (float)SvNV(ST(1))
;
#line 4257 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glConservativeRasterParameterfNV, )
  OGLM_AVAIL_CHECK(__glewConservativeRasterParameterfNV, glConservativeRasterParameterfNV)
  glConservativeRasterParameterfNV(pname, value);
  OGLM_CHECK_ERR(glConservativeRasterParameterfNV, )
#line 9048 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glConservativeRasterParameteriNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glConservativeRasterParameteriNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, param");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLint	param = (int)SvIV(ST(1))
;
#line 4268 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glConservativeRasterParameteriNV, )
  OGLM_AVAIL_CHECK(__glewConservativeRasterParameteriNV, glConservativeRasterParameteriNV)
  glConservativeRasterParameteriNV(pname, param);
  OGLM_CHECK_ERR(glConservativeRasterParameteriNV, )
#line 9071 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glConvolutionFilter1D_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glConvolutionFilter1D_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 6)
       croak_xs_usage(cv,  "target, internalformat, width, format, type, image");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	internalformat = (int)SvIV(ST(1))
;
	GLsizei	width = (int)SvIV(ST(2))
;
	GLenum	format = (int)SvIV(ST(3))
;
	GLenum	type = (int)SvIV(ST(4))
;
	const void *	image = INT2PTR(const void *,SvIV(ST(5)))
;
#line 4285 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glConvolutionFilter1D, )
  OGLM_AVAIL_CHECK(__glewConvolutionFilter1D, glConvolutionFilter1D)
  glConvolutionFilter1D(target, internalformat, width, format, type, image);
  OGLM_CHECK_ERR(glConvolutionFilter1D, )
#line 9103 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glConvolutionFilter2D_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glConvolutionFilter2D_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 7)
       croak_xs_usage(cv,  "target, internalformat, width, height, format, type, image");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	internalformat = (int)SvIV(ST(1))
;
	GLsizei	width = (int)SvIV(ST(2))
;
	GLsizei	height = (int)SvIV(ST(3))
;
	GLenum	format = (int)SvIV(ST(4))
;
	GLenum	type = (int)SvIV(ST(5))
;
	const void *	image = INT2PTR(const void *,SvIV(ST(6)))
;
#line 4303 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glConvolutionFilter2D, )
  OGLM_AVAIL_CHECK(__glewConvolutionFilter2D, glConvolutionFilter2D)
  glConvolutionFilter2D(target, internalformat, width, height, format, type, image);
  OGLM_CHECK_ERR(glConvolutionFilter2D, )
#line 9137 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glConvolutionParameterf); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glConvolutionParameterf)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat	params = (float)SvNV(ST(2))
;
#line 4317 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glConvolutionParameterf, )
  OGLM_AVAIL_CHECK(__glewConvolutionParameterf, glConvolutionParameterf)
  glConvolutionParameterf(target, pname, params);
  OGLM_CHECK_ERR(glConvolutionParameterf, )
#line 9163 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glConvolutionParameterfv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glConvolutionParameterfv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLfloat *	params = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 4331 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glConvolutionParameterfv, )
  OGLM_AVAIL_CHECK(__glewConvolutionParameterfv, glConvolutionParameterfv)
  glConvolutionParameterfv(target, pname, params);
  OGLM_CHECK_ERR(glConvolutionParameterfv, )
#line 9189 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glConvolutionParameterfv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glConvolutionParameterfv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 2)
       croak_xs_usage(cv,  "target, pname, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 4344 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glConvolutionParameterfv, )
  OGLM_AVAIL_CHECK(__glewConvolutionParameterfv, glConvolutionParameterfv)
  OGLM_SIZE_ENUM(ConvolutionParameter,pname,1)
  GLfloat *params = OGLM_GET_VARARGS(params,2,GLfloat,NV,pname_count);
  glConvolutionParameterfv((GLenum )target, (GLenum )pname, (const GLfloat *)params);
  OGLM_CHECK_ERR(glConvolutionParameterfv, free(params);)
  free(params);
#line 9216 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glConvolutionParameteri); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glConvolutionParameteri)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint	params = (int)SvIV(ST(2))
;
#line 4361 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glConvolutionParameteri, )
  OGLM_AVAIL_CHECK(__glewConvolutionParameteri, glConvolutionParameteri)
  glConvolutionParameteri(target, pname, params);
  OGLM_CHECK_ERR(glConvolutionParameteri, )
#line 9242 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glConvolutionParameteriv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glConvolutionParameteriv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLint *	params = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 4375 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glConvolutionParameteriv, )
  OGLM_AVAIL_CHECK(__glewConvolutionParameteriv, glConvolutionParameteriv)
  glConvolutionParameteriv(target, pname, params);
  OGLM_CHECK_ERR(glConvolutionParameteriv, )
#line 9268 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glConvolutionParameteriv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glConvolutionParameteriv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 2)
       croak_xs_usage(cv,  "target, pname, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 4388 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glConvolutionParameteriv, )
  OGLM_AVAIL_CHECK(__glewConvolutionParameteriv, glConvolutionParameteriv)
  OGLM_SIZE_ENUM(ConvolutionParameter,pname,1)
  GLint *params = OGLM_GET_VARARGS(params,2,GLint,IV,pname_count);
  glConvolutionParameteriv((GLenum )target, (GLenum )pname, (const GLint *)params);
  OGLM_CHECK_ERR(glConvolutionParameteriv, free(params);)
  free(params);
#line 9295 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCopyBufferSubData); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCopyBufferSubData)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "readTarget, writeTarget, readOffset, writeOffset, size");
    {
	GLenum	readTarget = (int)SvIV(ST(0))
;
	GLenum	writeTarget = (int)SvIV(ST(1))
;
	GLintptr	readOffset = (unsigned int)SvUV(ST(2))
;
	GLintptr	writeOffset = (unsigned int)SvUV(ST(3))
;
	GLsizeiptr	size = (unsigned int)SvUV(ST(4))
;
#line 4407 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCopyBufferSubData, )
  OGLM_AVAIL_CHECK(__glewCopyBufferSubData, glCopyBufferSubData)
  glCopyBufferSubData(readTarget, writeTarget, readOffset, writeOffset, size);
  OGLM_CHECK_ERR(glCopyBufferSubData, )
#line 9325 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCopyColorSubTable); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCopyColorSubTable)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "target, start, x, y, width");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	start = (int)SvIV(ST(1))
;
	GLint	x = (int)SvIV(ST(2))
;
	GLint	y = (int)SvIV(ST(3))
;
	GLsizei	width = (int)SvIV(ST(4))
;
#line 4423 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCopyColorSubTable, )
  OGLM_AVAIL_CHECK(__glewCopyColorSubTable, glCopyColorSubTable)
  glCopyColorSubTable(target, start, x, y, width);
  OGLM_CHECK_ERR(glCopyColorSubTable, )
#line 9355 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCopyColorTable); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCopyColorTable)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "target, internalformat, x, y, width");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	internalformat = (int)SvIV(ST(1))
;
	GLint	x = (int)SvIV(ST(2))
;
	GLint	y = (int)SvIV(ST(3))
;
	GLsizei	width = (int)SvIV(ST(4))
;
#line 4439 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCopyColorTable, )
  OGLM_AVAIL_CHECK(__glewCopyColorTable, glCopyColorTable)
  glCopyColorTable(target, internalformat, x, y, width);
  OGLM_CHECK_ERR(glCopyColorTable, )
#line 9385 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCopyConvolutionFilter1D); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCopyConvolutionFilter1D)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "target, internalformat, x, y, width");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	internalformat = (int)SvIV(ST(1))
;
	GLint	x = (int)SvIV(ST(2))
;
	GLint	y = (int)SvIV(ST(3))
;
	GLsizei	width = (int)SvIV(ST(4))
;
#line 4455 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCopyConvolutionFilter1D, )
  OGLM_AVAIL_CHECK(__glewCopyConvolutionFilter1D, glCopyConvolutionFilter1D)
  glCopyConvolutionFilter1D(target, internalformat, x, y, width);
  OGLM_CHECK_ERR(glCopyConvolutionFilter1D, )
#line 9415 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCopyConvolutionFilter2D); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCopyConvolutionFilter2D)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 6)
       croak_xs_usage(cv,  "target, internalformat, x, y, width, height");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	internalformat = (int)SvIV(ST(1))
;
	GLint	x = (int)SvIV(ST(2))
;
	GLint	y = (int)SvIV(ST(3))
;
	GLsizei	width = (int)SvIV(ST(4))
;
	GLsizei	height = (int)SvIV(ST(5))
;
#line 4472 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCopyConvolutionFilter2D, )
  OGLM_AVAIL_CHECK(__glewCopyConvolutionFilter2D, glCopyConvolutionFilter2D)
  glCopyConvolutionFilter2D(target, internalformat, x, y, width, height);
  OGLM_CHECK_ERR(glCopyConvolutionFilter2D, )
#line 9447 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCopyImageSubData); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCopyImageSubData)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 15)
       croak_xs_usage(cv,  "srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, srcWidth, srcHeight, srcDepth");
    {
	GLuint	srcName = (unsigned int)SvUV(ST(0))
;
	GLenum	srcTarget = (int)SvIV(ST(1))
;
	GLint	srcLevel = (int)SvIV(ST(2))
;
	GLint	srcX = (int)SvIV(ST(3))
;
	GLint	srcY = (int)SvIV(ST(4))
;
	GLint	srcZ = (int)SvIV(ST(5))
;
	GLuint	dstName = (unsigned int)SvUV(ST(6))
;
	GLenum	dstTarget = (int)SvIV(ST(7))
;
	GLint	dstLevel = (int)SvIV(ST(8))
;
	GLint	dstX = (int)SvIV(ST(9))
;
	GLint	dstY = (int)SvIV(ST(10))
;
	GLint	dstZ = (int)SvIV(ST(11))
;
	GLsizei	srcWidth = (int)SvIV(ST(12))
;
	GLsizei	srcHeight = (int)SvIV(ST(13))
;
	GLsizei	srcDepth = (int)SvIV(ST(14))
;
#line 4498 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCopyImageSubData, )
  OGLM_AVAIL_CHECK(__glewCopyImageSubData, glCopyImageSubData)
  glCopyImageSubData(srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, srcWidth, srcHeight, srcDepth);
  OGLM_CHECK_ERR(glCopyImageSubData, )
#line 9497 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCopyImageSubDataNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCopyImageSubDataNV)
{
    dVAR; dXSARGS;
    if (items != 15)
       croak_xs_usage(cv,  "srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, width, height, depth");
    {
	GLuint	srcName = (unsigned int)SvUV(ST(0))
;
	GLenum	srcTarget = (int)SvIV(ST(1))
;
	GLint	srcLevel = (int)SvIV(ST(2))
;
	GLint	srcX = (int)SvIV(ST(3))
;
	GLint	srcY = (int)SvIV(ST(4))
;
	GLint	srcZ = (int)SvIV(ST(5))
;
	GLuint	dstName = (unsigned int)SvUV(ST(6))
;
	GLenum	dstTarget = (int)SvIV(ST(7))
;
	GLint	dstLevel = (int)SvIV(ST(8))
;
	GLint	dstX = (int)SvIV(ST(9))
;
	GLint	dstY = (int)SvIV(ST(10))
;
	GLint	dstZ = (int)SvIV(ST(11))
;
	GLsizei	width = (int)SvIV(ST(12))
;
	GLsizei	height = (int)SvIV(ST(13))
;
	GLsizei	depth = (int)SvIV(ST(14))
;
#line 4522 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCopyImageSubDataNV, )
  OGLM_AVAIL_CHECK(__glewCopyImageSubDataNV, glCopyImageSubDataNV)
  glCopyImageSubDataNV(srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, width, height, depth);
  OGLM_CHECK_ERR(glCopyImageSubDataNV, )
#line 9546 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCopyImageSubDataOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCopyImageSubDataOES)
{
    dVAR; dXSARGS;
    if (items != 15)
       croak_xs_usage(cv,  "srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, srcWidth, srcHeight, srcDepth");
    {
	GLuint	srcName = (unsigned int)SvUV(ST(0))
;
	GLenum	srcTarget = (int)SvIV(ST(1))
;
	GLint	srcLevel = (int)SvIV(ST(2))
;
	GLint	srcX = (int)SvIV(ST(3))
;
	GLint	srcY = (int)SvIV(ST(4))
;
	GLint	srcZ = (int)SvIV(ST(5))
;
	GLuint	dstName = (unsigned int)SvUV(ST(6))
;
	GLenum	dstTarget = (int)SvIV(ST(7))
;
	GLint	dstLevel = (int)SvIV(ST(8))
;
	GLint	dstX = (int)SvIV(ST(9))
;
	GLint	dstY = (int)SvIV(ST(10))
;
	GLint	dstZ = (int)SvIV(ST(11))
;
	GLsizei	srcWidth = (int)SvIV(ST(12))
;
	GLsizei	srcHeight = (int)SvIV(ST(13))
;
	GLsizei	srcDepth = (int)SvIV(ST(14))
;
#line 4546 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCopyImageSubDataOES, )
  OGLM_AVAIL_CHECK(__glewCopyImageSubDataOES, glCopyImageSubDataOES)
  glCopyImageSubDataOES(srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, srcWidth, srcHeight, srcDepth);
  OGLM_CHECK_ERR(glCopyImageSubDataOES, )
#line 9595 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCopyMultiTexImage1DEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCopyMultiTexImage1DEXT)
{
    dVAR; dXSARGS;
    if (items != 8)
       croak_xs_usage(cv,  "texunit, target, level, internalformat, x, y, width, border");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLenum	internalformat = (int)SvIV(ST(3))
;
	GLint	x = (int)SvIV(ST(4))
;
	GLint	y = (int)SvIV(ST(5))
;
	GLsizei	width = (int)SvIV(ST(6))
;
	GLint	border = (int)SvIV(ST(7))
;
#line 4563 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCopyMultiTexImage1DEXT, )
  OGLM_AVAIL_CHECK(__glewCopyMultiTexImage1DEXT, glCopyMultiTexImage1DEXT)
  glCopyMultiTexImage1DEXT(texunit, target, level, internalformat, x, y, width, border);
  OGLM_CHECK_ERR(glCopyMultiTexImage1DEXT, )
#line 9630 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCopyMultiTexImage2DEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCopyMultiTexImage2DEXT)
{
    dVAR; dXSARGS;
    if (items != 9)
       croak_xs_usage(cv,  "texunit, target, level, internalformat, x, y, width, height, border");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLenum	internalformat = (int)SvIV(ST(3))
;
	GLint	x = (int)SvIV(ST(4))
;
	GLint	y = (int)SvIV(ST(5))
;
	GLsizei	width = (int)SvIV(ST(6))
;
	GLsizei	height = (int)SvIV(ST(7))
;
	GLint	border = (int)SvIV(ST(8))
;
#line 4581 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCopyMultiTexImage2DEXT, )
  OGLM_AVAIL_CHECK(__glewCopyMultiTexImage2DEXT, glCopyMultiTexImage2DEXT)
  glCopyMultiTexImage2DEXT(texunit, target, level, internalformat, x, y, width, height, border);
  OGLM_CHECK_ERR(glCopyMultiTexImage2DEXT, )
#line 9667 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCopyMultiTexSubImage1DEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCopyMultiTexSubImage1DEXT)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "texunit, target, level, xoffset, x, y, width");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLint	xoffset = (int)SvIV(ST(3))
;
	GLint	x = (int)SvIV(ST(4))
;
	GLint	y = (int)SvIV(ST(5))
;
	GLsizei	width = (int)SvIV(ST(6))
;
#line 4597 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCopyMultiTexSubImage1DEXT, )
  OGLM_AVAIL_CHECK(__glewCopyMultiTexSubImage1DEXT, glCopyMultiTexSubImage1DEXT)
  glCopyMultiTexSubImage1DEXT(texunit, target, level, xoffset, x, y, width);
  OGLM_CHECK_ERR(glCopyMultiTexSubImage1DEXT, )
#line 9700 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCopyMultiTexSubImage2DEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCopyMultiTexSubImage2DEXT)
{
    dVAR; dXSARGS;
    if (items != 9)
       croak_xs_usage(cv,  "texunit, target, level, xoffset, yoffset, x, y, width, height");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLint	xoffset = (int)SvIV(ST(3))
;
	GLint	yoffset = (int)SvIV(ST(4))
;
	GLint	x = (int)SvIV(ST(5))
;
	GLint	y = (int)SvIV(ST(6))
;
	GLsizei	width = (int)SvIV(ST(7))
;
	GLsizei	height = (int)SvIV(ST(8))
;
#line 4615 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCopyMultiTexSubImage2DEXT, )
  OGLM_AVAIL_CHECK(__glewCopyMultiTexSubImage2DEXT, glCopyMultiTexSubImage2DEXT)
  glCopyMultiTexSubImage2DEXT(texunit, target, level, xoffset, yoffset, x, y, width, height);
  OGLM_CHECK_ERR(glCopyMultiTexSubImage2DEXT, )
#line 9737 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCopyMultiTexSubImage3DEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCopyMultiTexSubImage3DEXT)
{
    dVAR; dXSARGS;
    if (items != 10)
       croak_xs_usage(cv,  "texunit, target, level, xoffset, yoffset, zoffset, x, y, width, height");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLint	xoffset = (int)SvIV(ST(3))
;
	GLint	yoffset = (int)SvIV(ST(4))
;
	GLint	zoffset = (int)SvIV(ST(5))
;
	GLint	x = (int)SvIV(ST(6))
;
	GLint	y = (int)SvIV(ST(7))
;
	GLsizei	width = (int)SvIV(ST(8))
;
	GLsizei	height = (int)SvIV(ST(9))
;
#line 4634 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCopyMultiTexSubImage3DEXT, )
  OGLM_AVAIL_CHECK(__glewCopyMultiTexSubImage3DEXT, glCopyMultiTexSubImage3DEXT)
  glCopyMultiTexSubImage3DEXT(texunit, target, level, xoffset, yoffset, zoffset, x, y, width, height);
  OGLM_CHECK_ERR(glCopyMultiTexSubImage3DEXT, )
#line 9776 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCopyNamedBufferSubData); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCopyNamedBufferSubData)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "readBuffer, writeBuffer, readOffset, writeOffset, size");
    {
	GLuint	readBuffer = (unsigned int)SvUV(ST(0))
;
	GLuint	writeBuffer = (unsigned int)SvUV(ST(1))
;
	GLintptr	readOffset = (unsigned int)SvUV(ST(2))
;
	GLintptr	writeOffset = (unsigned int)SvUV(ST(3))
;
	GLsizeiptr	size = (unsigned int)SvUV(ST(4))
;
#line 4648 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCopyNamedBufferSubData, )
  OGLM_AVAIL_CHECK(__glewCopyNamedBufferSubData, glCopyNamedBufferSubData)
  glCopyNamedBufferSubData(readBuffer, writeBuffer, readOffset, writeOffset, size);
  OGLM_CHECK_ERR(glCopyNamedBufferSubData, )
#line 9805 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCopyPathNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCopyPathNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "resultPath, srcPath");
    {
	GLuint	resultPath = (unsigned int)SvUV(ST(0))
;
	GLuint	srcPath = (unsigned int)SvUV(ST(1))
;
#line 4659 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCopyPathNV, )
  OGLM_AVAIL_CHECK(__glewCopyPathNV, glCopyPathNV)
  glCopyPathNV(resultPath, srcPath);
  OGLM_CHECK_ERR(glCopyPathNV, )
#line 9828 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCopyPixels); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCopyPixels)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "x, y, width, height, type");
    {
	GLint	x = (int)SvIV(ST(0))
;
	GLint	y = (int)SvIV(ST(1))
;
	GLsizei	width = (int)SvIV(ST(2))
;
	GLsizei	height = (int)SvIV(ST(3))
;
	GLenum	type = (int)SvIV(ST(4))
;
#line 4673 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCopyPixels, )
  glCopyPixels(x, y, width, height, type);
  OGLM_CHECK_ERR(glCopyPixels, )
#line 9856 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCopyTexImage1D); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCopyTexImage1D)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 7)
       croak_xs_usage(cv,  "target, level, internalformat, x, y, width, border");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLenum	internalformat = (int)SvIV(ST(2))
;
	GLint	x = (int)SvIV(ST(3))
;
	GLint	y = (int)SvIV(ST(4))
;
	GLsizei	width = (int)SvIV(ST(5))
;
	GLint	border = (int)SvIV(ST(6))
;
#line 4690 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCopyTexImage1D, )
  glCopyTexImage1D(target, level, internalformat, x, y, width, border);
  OGLM_CHECK_ERR(glCopyTexImage1D, )
#line 9889 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCopyTexImage2D); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCopyTexImage2D)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 8)
       croak_xs_usage(cv,  "target, level, internalformat, x, y, width, height, border");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLenum	internalformat = (int)SvIV(ST(2))
;
	GLint	x = (int)SvIV(ST(3))
;
	GLint	y = (int)SvIV(ST(4))
;
	GLsizei	width = (int)SvIV(ST(5))
;
	GLsizei	height = (int)SvIV(ST(6))
;
	GLint	border = (int)SvIV(ST(7))
;
#line 4708 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCopyTexImage2D, )
  glCopyTexImage2D(target, level, internalformat, x, y, width, height, border);
  OGLM_CHECK_ERR(glCopyTexImage2D, )
#line 9924 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCopyTexSubImage1D); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCopyTexSubImage1D)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 6)
       croak_xs_usage(cv,  "target, level, xoffset, x, y, width");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLint	xoffset = (int)SvIV(ST(2))
;
	GLint	x = (int)SvIV(ST(3))
;
	GLint	y = (int)SvIV(ST(4))
;
	GLsizei	width = (int)SvIV(ST(5))
;
#line 4724 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCopyTexSubImage1D, )
  glCopyTexSubImage1D(target, level, xoffset, x, y, width);
  OGLM_CHECK_ERR(glCopyTexSubImage1D, )
#line 9955 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCopyTexSubImage2D); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCopyTexSubImage2D)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 8)
       croak_xs_usage(cv,  "target, level, xoffset, yoffset, x, y, width, height");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLint	xoffset = (int)SvIV(ST(2))
;
	GLint	yoffset = (int)SvIV(ST(3))
;
	GLint	x = (int)SvIV(ST(4))
;
	GLint	y = (int)SvIV(ST(5))
;
	GLsizei	width = (int)SvIV(ST(6))
;
	GLsizei	height = (int)SvIV(ST(7))
;
#line 4742 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCopyTexSubImage2D, )
  glCopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height);
  OGLM_CHECK_ERR(glCopyTexSubImage2D, )
#line 9990 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCopyTexSubImage3D); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCopyTexSubImage3D)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 9)
       croak_xs_usage(cv,  "target, level, xoffset, yoffset, zoffset, x, y, width, height");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLint	xoffset = (int)SvIV(ST(2))
;
	GLint	yoffset = (int)SvIV(ST(3))
;
	GLint	zoffset = (int)SvIV(ST(4))
;
	GLint	x = (int)SvIV(ST(5))
;
	GLint	y = (int)SvIV(ST(6))
;
	GLsizei	width = (int)SvIV(ST(7))
;
	GLsizei	height = (int)SvIV(ST(8))
;
#line 4761 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCopyTexSubImage3D, )
  OGLM_AVAIL_CHECK(__glewCopyTexSubImage3D, glCopyTexSubImage3D)
  glCopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height);
  OGLM_CHECK_ERR(glCopyTexSubImage3D, )
#line 10028 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCopyTexSubImage3DNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCopyTexSubImage3DNV)
{
    dVAR; dXSARGS;
    if (items != 9)
       croak_xs_usage(cv,  "target, level, xoffset, yoffset, zoffset, x, y, width, height");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLint	xoffset = (int)SvIV(ST(2))
;
	GLint	yoffset = (int)SvIV(ST(3))
;
	GLint	zoffset = (int)SvIV(ST(4))
;
	GLint	x = (int)SvIV(ST(5))
;
	GLint	y = (int)SvIV(ST(6))
;
	GLsizei	width = (int)SvIV(ST(7))
;
	GLsizei	height = (int)SvIV(ST(8))
;
#line 4779 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCopyTexSubImage3DNV, )
  OGLM_AVAIL_CHECK(__glewCopyTexSubImage3DNV, glCopyTexSubImage3DNV)
  glCopyTexSubImage3DNV(target, level, xoffset, yoffset, zoffset, x, y, width, height);
  OGLM_CHECK_ERR(glCopyTexSubImage3DNV, )
#line 10065 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCopyTexSubImage3DOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCopyTexSubImage3DOES)
{
    dVAR; dXSARGS;
    if (items != 9)
       croak_xs_usage(cv,  "target, level, xoffset, yoffset, zoffset, x, y, width, height");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLint	xoffset = (int)SvIV(ST(2))
;
	GLint	yoffset = (int)SvIV(ST(3))
;
	GLint	zoffset = (int)SvIV(ST(4))
;
	GLint	x = (int)SvIV(ST(5))
;
	GLint	y = (int)SvIV(ST(6))
;
	GLsizei	width = (int)SvIV(ST(7))
;
	GLsizei	height = (int)SvIV(ST(8))
;
#line 4797 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCopyTexSubImage3DOES, )
  OGLM_AVAIL_CHECK(__glewCopyTexSubImage3DOES, glCopyTexSubImage3DOES)
  glCopyTexSubImage3DOES(target, level, xoffset, yoffset, zoffset, x, y, width, height);
  OGLM_CHECK_ERR(glCopyTexSubImage3DOES, )
#line 10102 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCopyTextureImage1DEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCopyTextureImage1DEXT)
{
    dVAR; dXSARGS;
    if (items != 8)
       croak_xs_usage(cv,  "texture, target, level, internalformat, x, y, width, border");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLenum	internalformat = (int)SvIV(ST(3))
;
	GLint	x = (int)SvIV(ST(4))
;
	GLint	y = (int)SvIV(ST(5))
;
	GLsizei	width = (int)SvIV(ST(6))
;
	GLint	border = (int)SvIV(ST(7))
;
#line 4814 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCopyTextureImage1DEXT, )
  OGLM_AVAIL_CHECK(__glewCopyTextureImage1DEXT, glCopyTextureImage1DEXT)
  glCopyTextureImage1DEXT(texture, target, level, internalformat, x, y, width, border);
  OGLM_CHECK_ERR(glCopyTextureImage1DEXT, )
#line 10137 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCopyTextureImage2DEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCopyTextureImage2DEXT)
{
    dVAR; dXSARGS;
    if (items != 9)
       croak_xs_usage(cv,  "texture, target, level, internalformat, x, y, width, height, border");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLenum	internalformat = (int)SvIV(ST(3))
;
	GLint	x = (int)SvIV(ST(4))
;
	GLint	y = (int)SvIV(ST(5))
;
	GLsizei	width = (int)SvIV(ST(6))
;
	GLsizei	height = (int)SvIV(ST(7))
;
	GLint	border = (int)SvIV(ST(8))
;
#line 4832 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCopyTextureImage2DEXT, )
  OGLM_AVAIL_CHECK(__glewCopyTextureImage2DEXT, glCopyTextureImage2DEXT)
  glCopyTextureImage2DEXT(texture, target, level, internalformat, x, y, width, height, border);
  OGLM_CHECK_ERR(glCopyTextureImage2DEXT, )
#line 10174 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCopyTextureLevelsAPPLE); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCopyTextureLevelsAPPLE)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "destinationTexture, sourceTexture, sourceBaseLevel, sourceLevelCount");
    {
	GLuint	destinationTexture = (unsigned int)SvUV(ST(0))
;
	GLuint	sourceTexture = (unsigned int)SvUV(ST(1))
;
	GLint	sourceBaseLevel = (int)SvIV(ST(2))
;
	GLsizei	sourceLevelCount = (int)SvIV(ST(3))
;
#line 4845 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCopyTextureLevelsAPPLE, )
  OGLM_AVAIL_CHECK(__glewCopyTextureLevelsAPPLE, glCopyTextureLevelsAPPLE)
  glCopyTextureLevelsAPPLE(destinationTexture, sourceTexture, sourceBaseLevel, sourceLevelCount);
  OGLM_CHECK_ERR(glCopyTextureLevelsAPPLE, )
#line 10201 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCopyTextureSubImage1D); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCopyTextureSubImage1D)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "texture, level, xoffset, x, y, width");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLint	xoffset = (int)SvIV(ST(2))
;
	GLint	x = (int)SvIV(ST(3))
;
	GLint	y = (int)SvIV(ST(4))
;
	GLsizei	width = (int)SvIV(ST(5))
;
#line 4860 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCopyTextureSubImage1D, )
  OGLM_AVAIL_CHECK(__glewCopyTextureSubImage1D, glCopyTextureSubImage1D)
  glCopyTextureSubImage1D(texture, level, xoffset, x, y, width);
  OGLM_CHECK_ERR(glCopyTextureSubImage1D, )
#line 10232 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCopyTextureSubImage1DEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCopyTextureSubImage1DEXT)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "texture, target, level, xoffset, x, y, width");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLint	xoffset = (int)SvIV(ST(3))
;
	GLint	x = (int)SvIV(ST(4))
;
	GLint	y = (int)SvIV(ST(5))
;
	GLsizei	width = (int)SvIV(ST(6))
;
#line 4876 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCopyTextureSubImage1DEXT, )
  OGLM_AVAIL_CHECK(__glewCopyTextureSubImage1DEXT, glCopyTextureSubImage1DEXT)
  glCopyTextureSubImage1DEXT(texture, target, level, xoffset, x, y, width);
  OGLM_CHECK_ERR(glCopyTextureSubImage1DEXT, )
#line 10265 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCopyTextureSubImage2D); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCopyTextureSubImage2D)
{
    dVAR; dXSARGS;
    if (items != 8)
       croak_xs_usage(cv,  "texture, level, xoffset, yoffset, x, y, width, height");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLint	xoffset = (int)SvIV(ST(2))
;
	GLint	yoffset = (int)SvIV(ST(3))
;
	GLint	x = (int)SvIV(ST(4))
;
	GLint	y = (int)SvIV(ST(5))
;
	GLsizei	width = (int)SvIV(ST(6))
;
	GLsizei	height = (int)SvIV(ST(7))
;
#line 4893 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCopyTextureSubImage2D, )
  OGLM_AVAIL_CHECK(__glewCopyTextureSubImage2D, glCopyTextureSubImage2D)
  glCopyTextureSubImage2D(texture, level, xoffset, yoffset, x, y, width, height);
  OGLM_CHECK_ERR(glCopyTextureSubImage2D, )
#line 10300 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCopyTextureSubImage2DEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCopyTextureSubImage2DEXT)
{
    dVAR; dXSARGS;
    if (items != 9)
       croak_xs_usage(cv,  "texture, target, level, xoffset, yoffset, x, y, width, height");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLint	xoffset = (int)SvIV(ST(3))
;
	GLint	yoffset = (int)SvIV(ST(4))
;
	GLint	x = (int)SvIV(ST(5))
;
	GLint	y = (int)SvIV(ST(6))
;
	GLsizei	width = (int)SvIV(ST(7))
;
	GLsizei	height = (int)SvIV(ST(8))
;
#line 4911 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCopyTextureSubImage2DEXT, )
  OGLM_AVAIL_CHECK(__glewCopyTextureSubImage2DEXT, glCopyTextureSubImage2DEXT)
  glCopyTextureSubImage2DEXT(texture, target, level, xoffset, yoffset, x, y, width, height);
  OGLM_CHECK_ERR(glCopyTextureSubImage2DEXT, )
#line 10337 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCopyTextureSubImage3D); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCopyTextureSubImage3D)
{
    dVAR; dXSARGS;
    if (items != 9)
       croak_xs_usage(cv,  "texture, level, xoffset, yoffset, zoffset, x, y, width, height");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLint	xoffset = (int)SvIV(ST(2))
;
	GLint	yoffset = (int)SvIV(ST(3))
;
	GLint	zoffset = (int)SvIV(ST(4))
;
	GLint	x = (int)SvIV(ST(5))
;
	GLint	y = (int)SvIV(ST(6))
;
	GLsizei	width = (int)SvIV(ST(7))
;
	GLsizei	height = (int)SvIV(ST(8))
;
#line 4929 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCopyTextureSubImage3D, )
  OGLM_AVAIL_CHECK(__glewCopyTextureSubImage3D, glCopyTextureSubImage3D)
  glCopyTextureSubImage3D(texture, level, xoffset, yoffset, zoffset, x, y, width, height);
  OGLM_CHECK_ERR(glCopyTextureSubImage3D, )
#line 10374 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCopyTextureSubImage3DEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCopyTextureSubImage3DEXT)
{
    dVAR; dXSARGS;
    if (items != 10)
       croak_xs_usage(cv,  "texture, target, level, xoffset, yoffset, zoffset, x, y, width, height");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLint	xoffset = (int)SvIV(ST(3))
;
	GLint	yoffset = (int)SvIV(ST(4))
;
	GLint	zoffset = (int)SvIV(ST(5))
;
	GLint	x = (int)SvIV(ST(6))
;
	GLint	y = (int)SvIV(ST(7))
;
	GLsizei	width = (int)SvIV(ST(8))
;
	GLsizei	height = (int)SvIV(ST(9))
;
#line 4948 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCopyTextureSubImage3DEXT, )
  OGLM_AVAIL_CHECK(__glewCopyTextureSubImage3DEXT, glCopyTextureSubImage3DEXT)
  glCopyTextureSubImage3DEXT(texture, target, level, xoffset, yoffset, zoffset, x, y, width, height);
  OGLM_CHECK_ERR(glCopyTextureSubImage3DEXT, )
#line 10413 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCoverFillPathInstancedNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCoverFillPathInstancedNV_c)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "numPaths, pathNameType, paths, pathBase, coverMode, transformType, transformValues");
    {
	GLsizei	numPaths = (int)SvIV(ST(0))
;
	GLenum	pathNameType = (int)SvIV(ST(1))
;
	const void *	paths = INT2PTR(const void *,SvIV(ST(2)))
;
	GLuint	pathBase = (unsigned int)SvUV(ST(3))
;
	GLenum	coverMode = (int)SvIV(ST(4))
;
	GLenum	transformType = (int)SvIV(ST(5))
;
	const GLfloat *	transformValues = INT2PTR(const GLfloat *,SvIV(ST(6)))
;
#line 4964 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCoverFillPathInstancedNV, )
  OGLM_AVAIL_CHECK(__glewCoverFillPathInstancedNV, glCoverFillPathInstancedNV)
  glCoverFillPathInstancedNV(numPaths, pathNameType, paths, pathBase, coverMode, transformType, transformValues);
  OGLM_CHECK_ERR(glCoverFillPathInstancedNV, )
#line 10446 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCoverFillPathNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCoverFillPathNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "path, coverMode");
    {
	GLuint	path = (unsigned int)SvUV(ST(0))
;
	GLenum	coverMode = (int)SvIV(ST(1))
;
#line 4975 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCoverFillPathNV, )
  OGLM_AVAIL_CHECK(__glewCoverFillPathNV, glCoverFillPathNV)
  glCoverFillPathNV(path, coverMode);
  OGLM_CHECK_ERR(glCoverFillPathNV, )
#line 10469 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCoverStrokePathInstancedNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCoverStrokePathInstancedNV_c)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "numPaths, pathNameType, paths, pathBase, coverMode, transformType, transformValues");
    {
	GLsizei	numPaths = (int)SvIV(ST(0))
;
	GLenum	pathNameType = (int)SvIV(ST(1))
;
	const void *	paths = INT2PTR(const void *,SvIV(ST(2)))
;
	GLuint	pathBase = (unsigned int)SvUV(ST(3))
;
	GLenum	coverMode = (int)SvIV(ST(4))
;
	GLenum	transformType = (int)SvIV(ST(5))
;
	const GLfloat *	transformValues = INT2PTR(const GLfloat *,SvIV(ST(6)))
;
#line 4991 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCoverStrokePathInstancedNV, )
  OGLM_AVAIL_CHECK(__glewCoverStrokePathInstancedNV, glCoverStrokePathInstancedNV)
  glCoverStrokePathInstancedNV(numPaths, pathNameType, paths, pathBase, coverMode, transformType, transformValues);
  OGLM_CHECK_ERR(glCoverStrokePathInstancedNV, )
#line 10502 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCoverStrokePathNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCoverStrokePathNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "path, coverMode");
    {
	GLuint	path = (unsigned int)SvUV(ST(0))
;
	GLenum	coverMode = (int)SvIV(ST(1))
;
#line 5002 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCoverStrokePathNV, )
  OGLM_AVAIL_CHECK(__glewCoverStrokePathNV, glCoverStrokePathNV)
  glCoverStrokePathNV(path, coverMode);
  OGLM_CHECK_ERR(glCoverStrokePathNV, )
#line 10525 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCoverageModulationNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCoverageModulationNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "components");
    {
	GLenum	components = (int)SvIV(ST(0))
;
#line 5012 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCoverageModulationNV, )
  OGLM_AVAIL_CHECK(__glewCoverageModulationNV, glCoverageModulationNV)
  glCoverageModulationNV(components);
  OGLM_CHECK_ERR(glCoverageModulationNV, )
#line 10546 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCoverageModulationTableNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCoverageModulationTableNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, v");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	const GLfloat*	v = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 5023 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCoverageModulationTableNV, )
  OGLM_AVAIL_CHECK(__glewCoverageModulationTableNV, glCoverageModulationTableNV)
  glCoverageModulationTableNV(n, v);
  OGLM_CHECK_ERR(glCoverageModulationTableNV, )
#line 10569 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCoverageModulationTableNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCoverageModulationTableNV_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 5032 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCoverageModulationTableNV, )
  OGLM_AVAIL_CHECK(__glewCoverageModulationTableNV, glCoverageModulationTableNV)
  GLsizei n = items;
  GLfloat* v = OGLM_GET_VARARGS(v,0,GLfloat,NV,n);
  glCoverageModulationTableNV((GLsizei )n, (const GLfloat* )v);
  OGLM_CHECK_ERR(glCoverageModulationTableNV, free(v);)
  free(v);
#line 10591 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCreateBuffers_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCreateBuffers_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, buffers");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	GLuint*	buffers = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 5046 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCreateBuffers, )
  OGLM_AVAIL_CHECK(__glewCreateBuffers, glCreateBuffers)
  glCreateBuffers(n, buffers);
  OGLM_CHECK_ERR(glCreateBuffers, )
#line 10614 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCreateBuffers_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCreateBuffers_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "n");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLsizei	n = (int)SvIV(ST(0))
;
#line 5056 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCreateBuffers, )
  OGLM_AVAIL_CHECK(__glewCreateBuffers, glCreateBuffers)
  GLuint* buffers = OGLM_ALLOC(n,GLuint,buffers);
  glCreateBuffers(n, buffers);
  OGLM_CHECK_ERR(glCreateBuffers, free(buffers);)
  OGLM_OUT_FINISH(buffers,n,newSVuv)
  free(buffers);
#line 10640 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glCreateCommandListsNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCreateCommandListsNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, lists");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	GLuint*	lists = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 5070 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCreateCommandListsNV, )
  OGLM_AVAIL_CHECK(__glewCreateCommandListsNV, glCreateCommandListsNV)
  glCreateCommandListsNV(n, lists);
  OGLM_CHECK_ERR(glCreateCommandListsNV, )
#line 10664 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCreateCommandListsNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCreateCommandListsNV_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "n");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLsizei	n = (int)SvIV(ST(0))
;
#line 5080 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCreateCommandListsNV, )
  OGLM_AVAIL_CHECK(__glewCreateCommandListsNV, glCreateCommandListsNV)
  GLuint* lists = OGLM_ALLOC(n,GLuint,lists);
  glCreateCommandListsNV(n, lists);
  OGLM_CHECK_ERR(glCreateCommandListsNV, free(lists);)
  OGLM_OUT_FINISH(lists,n,newSVuv)
  free(lists);
#line 10690 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glCreateFramebuffers_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCreateFramebuffers_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, framebuffers");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	GLuint*	framebuffers = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 5094 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCreateFramebuffers, )
  OGLM_AVAIL_CHECK(__glewCreateFramebuffers, glCreateFramebuffers)
  glCreateFramebuffers(n, framebuffers);
  OGLM_CHECK_ERR(glCreateFramebuffers, )
#line 10714 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCreateFramebuffers_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCreateFramebuffers_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "n");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLsizei	n = (int)SvIV(ST(0))
;
#line 5104 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCreateFramebuffers, )
  OGLM_AVAIL_CHECK(__glewCreateFramebuffers, glCreateFramebuffers)
  GLuint* framebuffers = OGLM_ALLOC(n,GLuint,framebuffers);
  glCreateFramebuffers(n, framebuffers);
  OGLM_CHECK_ERR(glCreateFramebuffers, free(framebuffers);)
  OGLM_OUT_FINISH(framebuffers,n,newSVuv)
  free(framebuffers);
#line 10740 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glCreateMemoryObjectsEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCreateMemoryObjectsEXT_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, memoryObjects");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	GLuint*	memoryObjects = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 5118 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCreateMemoryObjectsEXT, )
  OGLM_AVAIL_CHECK(__glewCreateMemoryObjectsEXT, glCreateMemoryObjectsEXT)
  glCreateMemoryObjectsEXT(n, memoryObjects);
  OGLM_CHECK_ERR(glCreateMemoryObjectsEXT, )
#line 10764 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCreatePerfQueryINTEL_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCreatePerfQueryINTEL_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "queryId, queryHandle");
    {
	GLuint	queryId = (unsigned int)SvUV(ST(0))
;
	GLuint*	queryHandle = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 5129 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCreatePerfQueryINTEL, )
  OGLM_AVAIL_CHECK(__glewCreatePerfQueryINTEL, glCreatePerfQueryINTEL)
  glCreatePerfQueryINTEL(queryId, queryHandle);
  OGLM_CHECK_ERR(glCreatePerfQueryINTEL, )
#line 10787 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCreateProgram); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCreateProgram)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
	GLuint	RETVAL;
	dXSTARG;
#line 5140 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCreateProgram, )
  OGLM_AVAIL_CHECK(__glewCreateProgram, glCreateProgram)
  RETVAL = glCreateProgram();
  OGLM_CHECK_ERR(glCreateProgram, )
#line 10809 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glCreateProgramPipelines_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCreateProgramPipelines_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, pipelines");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	GLuint*	pipelines = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 5153 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCreateProgramPipelines, )
  OGLM_AVAIL_CHECK(__glewCreateProgramPipelines, glCreateProgramPipelines)
  glCreateProgramPipelines(n, pipelines);
  OGLM_CHECK_ERR(glCreateProgramPipelines, )
#line 10834 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCreateProgramPipelines_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCreateProgramPipelines_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "n");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLsizei	n = (int)SvIV(ST(0))
;
#line 5163 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCreateProgramPipelines, )
  OGLM_AVAIL_CHECK(__glewCreateProgramPipelines, glCreateProgramPipelines)
  GLuint* pipelines = OGLM_ALLOC(n,GLuint,pipelines);
  glCreateProgramPipelines(n, pipelines);
  OGLM_CHECK_ERR(glCreateProgramPipelines, free(pipelines);)
  OGLM_OUT_FINISH(pipelines,n,newSVuv)
  free(pipelines);
#line 10860 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glCreateProgressFenceNVX); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCreateProgressFenceNVX)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
	GLuint	RETVAL;
	dXSTARG;
#line 5175 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCreateProgressFenceNVX, )
  OGLM_AVAIL_CHECK(__glewCreateProgressFenceNVX, glCreateProgressFenceNVX)
  RETVAL = glCreateProgressFenceNVX();
  OGLM_CHECK_ERR(glCreateProgressFenceNVX, )
#line 10882 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glCreateQueries_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCreateQueries_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, n, ids");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	n = (int)SvIV(ST(1))
;
	GLuint*	ids = INT2PTR(GLuint *,SvIV(ST(2)))
;
#line 5189 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCreateQueries, )
  OGLM_AVAIL_CHECK(__glewCreateQueries, glCreateQueries)
  glCreateQueries(target, n, ids);
  OGLM_CHECK_ERR(glCreateQueries, )
#line 10909 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCreateQueries_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCreateQueries_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, n");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	n = (int)SvIV(ST(1))
;
#line 5200 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCreateQueries, )
  OGLM_AVAIL_CHECK(__glewCreateQueries, glCreateQueries)
  GLuint* ids = OGLM_ALLOC(n,GLuint,ids);
  glCreateQueries(target, n, ids);
  OGLM_CHECK_ERR(glCreateQueries, free(ids);)
  OGLM_OUT_FINISH(ids,n,newSVuv)
  free(ids);
#line 10937 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glCreateRenderbuffers_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCreateRenderbuffers_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, renderbuffers");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	GLuint*	renderbuffers = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 5214 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCreateRenderbuffers, )
  OGLM_AVAIL_CHECK(__glewCreateRenderbuffers, glCreateRenderbuffers)
  glCreateRenderbuffers(n, renderbuffers);
  OGLM_CHECK_ERR(glCreateRenderbuffers, )
#line 10961 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCreateRenderbuffers_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCreateRenderbuffers_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "n");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLsizei	n = (int)SvIV(ST(0))
;
#line 5224 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCreateRenderbuffers, )
  OGLM_AVAIL_CHECK(__glewCreateRenderbuffers, glCreateRenderbuffers)
  GLuint* renderbuffers = OGLM_ALLOC(n,GLuint,renderbuffers);
  glCreateRenderbuffers(n, renderbuffers);
  OGLM_CHECK_ERR(glCreateRenderbuffers, free(renderbuffers);)
  OGLM_OUT_FINISH(renderbuffers,n,newSVuv)
  free(renderbuffers);
#line 10987 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glCreateSamplers_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCreateSamplers_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, samplers");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	GLuint*	samplers = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 5238 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCreateSamplers, )
  OGLM_AVAIL_CHECK(__glewCreateSamplers, glCreateSamplers)
  glCreateSamplers(n, samplers);
  OGLM_CHECK_ERR(glCreateSamplers, )
#line 11011 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCreateSamplers_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCreateSamplers_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "n");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLsizei	n = (int)SvIV(ST(0))
;
#line 5248 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCreateSamplers, )
  OGLM_AVAIL_CHECK(__glewCreateSamplers, glCreateSamplers)
  GLuint* samplers = OGLM_ALLOC(n,GLuint,samplers);
  glCreateSamplers(n, samplers);
  OGLM_CHECK_ERR(glCreateSamplers, free(samplers);)
  OGLM_OUT_FINISH(samplers,n,newSVuv)
  free(samplers);
#line 11037 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glCreateSemaphoresNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCreateSemaphoresNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, semaphores");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	GLuint*	semaphores = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 5262 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCreateSemaphoresNV, )
  OGLM_AVAIL_CHECK(__glewCreateSemaphoresNV, glCreateSemaphoresNV)
  glCreateSemaphoresNV(n, semaphores);
  OGLM_CHECK_ERR(glCreateSemaphoresNV, )
#line 11061 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCreateSemaphoresNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCreateSemaphoresNV_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "n");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLsizei	n = (int)SvIV(ST(0))
;
#line 5272 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCreateSemaphoresNV, )
  OGLM_AVAIL_CHECK(__glewCreateSemaphoresNV, glCreateSemaphoresNV)
  GLuint* semaphores = OGLM_ALLOC(n,GLuint,semaphores);
  glCreateSemaphoresNV(n, semaphores);
  OGLM_CHECK_ERR(glCreateSemaphoresNV, free(semaphores);)
  OGLM_OUT_FINISH(semaphores,n,newSVuv)
  free(semaphores);
#line 11087 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glCreateShader); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCreateShader)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "type");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	GLuint	RETVAL;
	dXSTARG;
#line 5287 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCreateShader, )
  OGLM_AVAIL_CHECK(__glewCreateShader, glCreateShader)
  RETVAL = glCreateShader(type);
  OGLM_CHECK_ERR(glCreateShader, )
#line 11112 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glCreateShaderProgramEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCreateShaderProgramEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "type, string");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	const GLchar*	string = (const GLchar *)SvPV_nolen(ST(1))
;
	GLuint	RETVAL;
	dXSTARG;
#line 5300 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCreateShaderProgramEXT, )
  OGLM_AVAIL_CHECK(__glewCreateShaderProgramEXT, glCreateShaderProgramEXT)
  RETVAL = glCreateShaderProgramEXT(type, string);
  OGLM_CHECK_ERR(glCreateShaderProgramEXT, )
#line 11139 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glCreateShaderProgramv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCreateShaderProgramv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "type, count, strings");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLchar * const *	strings = (const GLchar * const *)SvPV_nolen(ST(2))
;
	GLuint	RETVAL;
	dXSTARG;
#line 5314 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCreateShaderProgramv, )
  OGLM_AVAIL_CHECK(__glewCreateShaderProgramv, glCreateShaderProgramv)
  RETVAL = glCreateShaderProgramv(type, count, strings);
  OGLM_CHECK_ERR(glCreateShaderProgramv, )
#line 11168 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glCreateShaderProgramv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCreateShaderProgramv_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "type, ...");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	GLuint	RETVAL;
	dXSTARG;
#line 5326 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCreateShaderProgramv, )
  OGLM_AVAIL_CHECK(__glewCreateShaderProgramv, glCreateShaderProgramv)
  GLsizei count = items-1;
  GLchar * * strings = OGLM_GET_VARARGS(strings,1,GLchar*,PV_nolen,count);
  RETVAL = glCreateShaderProgramv((GLenum )type, (GLsizei )count, (const GLchar * const * )strings);
  OGLM_CHECK_ERR(glCreateShaderProgramv, free(strings);)
  free(strings);
#line 11196 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glCreateStatesNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCreateStatesNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, states");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	GLuint*	states = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 5342 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCreateStatesNV, )
  OGLM_AVAIL_CHECK(__glewCreateStatesNV, glCreateStatesNV)
  glCreateStatesNV(n, states);
  OGLM_CHECK_ERR(glCreateStatesNV, )
#line 11221 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCreateStatesNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCreateStatesNV_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "n");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLsizei	n = (int)SvIV(ST(0))
;
#line 5352 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCreateStatesNV, )
  OGLM_AVAIL_CHECK(__glewCreateStatesNV, glCreateStatesNV)
  GLuint* states = OGLM_ALLOC(n,GLuint,states);
  glCreateStatesNV(n, states);
  OGLM_CHECK_ERR(glCreateStatesNV, free(states);)
  OGLM_OUT_FINISH(states,n,newSVuv)
  free(states);
#line 11247 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glCreateSyncFromCLeventARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCreateSyncFromCLeventARB)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "context, event, flags");
    {
	cl_context	context = INT2PTR(cl_context,SvIV(ST(0)))
;
	cl_event	event = INT2PTR(cl_event,SvIV(ST(1)))
;
	GLbitfield	flags = (int)SvIV(ST(2))
;
	GLsync	RETVAL;
	dXSTARG;
#line 5367 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCreateSyncFromCLeventARB, )
  OGLM_AVAIL_CHECK(__glewCreateSyncFromCLeventARB, glCreateSyncFromCLeventARB)
  RETVAL = glCreateSyncFromCLeventARB(context, event, flags);
  OGLM_CHECK_ERR(glCreateSyncFromCLeventARB, )
#line 11275 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi(PTR2IV(RETVAL));
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glCreateTextures_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCreateTextures_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, n, textures");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	n = (int)SvIV(ST(1))
;
	GLuint*	textures = INT2PTR(GLuint *,SvIV(ST(2)))
;
#line 5381 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCreateTextures, )
  OGLM_AVAIL_CHECK(__glewCreateTextures, glCreateTextures)
  glCreateTextures(target, n, textures);
  OGLM_CHECK_ERR(glCreateTextures, )
#line 11302 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCreateTextures_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCreateTextures_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, n");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	n = (int)SvIV(ST(1))
;
#line 5392 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCreateTextures, )
  OGLM_AVAIL_CHECK(__glewCreateTextures, glCreateTextures)
  GLuint* textures = OGLM_ALLOC(n,GLuint,textures);
  glCreateTextures(target, n, textures);
  OGLM_CHECK_ERR(glCreateTextures, free(textures);)
  OGLM_OUT_FINISH(textures,n,newSVuv)
  free(textures);
#line 11330 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glCreateTransformFeedbacks_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCreateTransformFeedbacks_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, ids");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	GLuint*	ids = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 5406 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCreateTransformFeedbacks, )
  OGLM_AVAIL_CHECK(__glewCreateTransformFeedbacks, glCreateTransformFeedbacks)
  glCreateTransformFeedbacks(n, ids);
  OGLM_CHECK_ERR(glCreateTransformFeedbacks, )
#line 11354 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCreateTransformFeedbacks_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCreateTransformFeedbacks_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "n");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLsizei	n = (int)SvIV(ST(0))
;
#line 5416 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCreateTransformFeedbacks, )
  OGLM_AVAIL_CHECK(__glewCreateTransformFeedbacks, glCreateTransformFeedbacks)
  GLuint* ids = OGLM_ALLOC(n,GLuint,ids);
  glCreateTransformFeedbacks(n, ids);
  OGLM_CHECK_ERR(glCreateTransformFeedbacks, free(ids);)
  OGLM_OUT_FINISH(ids,n,newSVuv)
  free(ids);
#line 11380 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glCreateVertexArrays_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCreateVertexArrays_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, arrays");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	GLuint*	arrays = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 5430 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCreateVertexArrays, )
  OGLM_AVAIL_CHECK(__glewCreateVertexArrays, glCreateVertexArrays)
  glCreateVertexArrays(n, arrays);
  OGLM_CHECK_ERR(glCreateVertexArrays, )
#line 11404 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCreateVertexArrays_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCreateVertexArrays_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "n");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLsizei	n = (int)SvIV(ST(0))
;
#line 5440 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCreateVertexArrays, )
  OGLM_AVAIL_CHECK(__glewCreateVertexArrays, glCreateVertexArrays)
  GLuint* arrays = OGLM_ALLOC(n,GLuint,arrays);
  glCreateVertexArrays(n, arrays);
  OGLM_CHECK_ERR(glCreateVertexArrays, free(arrays);)
  OGLM_OUT_FINISH(arrays,n,newSVuv)
  free(arrays);
#line 11430 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glCullFace); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCullFace)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "mode");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
#line 5453 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCullFace, )
  glCullFace(mode);
  OGLM_CHECK_ERR(glCullFace, )
#line 11451 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCullParameterdvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCullParameterdvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, params");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLdouble*	params = INT2PTR(GLdouble *,SvIV(ST(1)))
;
#line 5463 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCullParameterdvEXT, )
  OGLM_AVAIL_CHECK(__glewCullParameterdvEXT, glCullParameterdvEXT)
  glCullParameterdvEXT(pname, params);
  OGLM_CHECK_ERR(glCullParameterdvEXT, )
#line 11474 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCullParameterdvEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCullParameterdvEXT_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	pname = (int)SvIV(ST(0))
;
#line 5473 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCullParameterdvEXT, )
  OGLM_AVAIL_CHECK(__glewCullParameterdvEXT, glCullParameterdvEXT)
  GLdouble* params = OGLM_ALLOC(4,GLdouble,params);
  glCullParameterdvEXT(pname, params);
  OGLM_CHECK_ERR(glCullParameterdvEXT, free(params);)
  OGLM_OUT_FINISH(params,4,newSVnv)
  free(params);
#line 11500 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glCullParameterfvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCullParameterfvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, params");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(1)))
;
#line 5487 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCullParameterfvEXT, )
  OGLM_AVAIL_CHECK(__glewCullParameterfvEXT, glCullParameterfvEXT)
  glCullParameterfvEXT(pname, params);
  OGLM_CHECK_ERR(glCullParameterfvEXT, )
#line 11524 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCullParameterfvEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCullParameterfvEXT_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	pname = (int)SvIV(ST(0))
;
#line 5497 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCullParameterfvEXT, )
  OGLM_AVAIL_CHECK(__glewCullParameterfvEXT, glCullParameterfvEXT)
  GLfloat* params = OGLM_ALLOC(4,GLfloat,params);
  glCullParameterfvEXT(pname, params);
  OGLM_CHECK_ERR(glCullParameterfvEXT, free(params);)
  OGLM_OUT_FINISH(params,4,newSVnv)
  free(params);
#line 11550 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glCurrentPaletteMatrixARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCurrentPaletteMatrixARB)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "index");
    {
	GLint	index = (int)SvIV(ST(0))
;
#line 5510 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCurrentPaletteMatrixARB, )
  OGLM_AVAIL_CHECK(__glewCurrentPaletteMatrixARB, glCurrentPaletteMatrixARB)
  glCurrentPaletteMatrixARB(index);
  OGLM_CHECK_ERR(glCurrentPaletteMatrixARB, )
#line 11572 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glCurrentPaletteMatrixOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glCurrentPaletteMatrixOES)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "index");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 5520 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glCurrentPaletteMatrixOES, )
  OGLM_AVAIL_CHECK(__glewCurrentPaletteMatrixOES, glCurrentPaletteMatrixOES)
  glCurrentPaletteMatrixOES(index);
  OGLM_CHECK_ERR(glCurrentPaletteMatrixOES, )
#line 11593 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDataPipe); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDataPipe)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "space");
    {
	GLenum	space = (int)SvIV(ST(0))
;
	GLint	RETVAL;
	dXSTARG;
#line 5530 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDataPipe, )
  OGLM_AVAIL_CHECK(__glewDataPipe, glDataPipe)
  RETVAL = glDataPipe(space);
  OGLM_CHECK_ERR(glDataPipe, )
#line 11616 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glDebugMessageCallback_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDebugMessageCallback_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "callback, userParam");
    {
	GLDEBUGPROC	callback = INT2PTR(GLDEBUGPROC,SvIV(ST(0)))
;
	const void *	userParam = INT2PTR(const void *,SvIV(ST(1)))
;
#line 5546 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDebugMessageCallback, )
  OGLM_AVAIL_CHECK(__glewDebugMessageCallback, glDebugMessageCallback)
  glDebugMessageCallback(callback, userParam);
  OGLM_CHECK_ERR(glDebugMessageCallback, )
#line 11642 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDebugMessageCallbackAMD_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDebugMessageCallbackAMD_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "callback, userParam");
    {
	GLDEBUGPROCAMD	callback = INT2PTR(GLDEBUGPROCAMD,SvIV(ST(0)))
;
	void *	userParam = INT2PTR(void *,SvIV(ST(1)))
;
#line 5557 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDebugMessageCallbackAMD, )
  OGLM_AVAIL_CHECK(__glewDebugMessageCallbackAMD, glDebugMessageCallbackAMD)
  glDebugMessageCallbackAMD(callback, userParam);
  OGLM_CHECK_ERR(glDebugMessageCallbackAMD, )
#line 11665 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDebugMessageControl_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDebugMessageControl_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 6)
       croak_xs_usage(cv,  "source, type, severity, count, ids, enabled");
    {
	GLenum	source = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLenum	severity = (int)SvIV(ST(2))
;
	GLsizei	count = (int)SvIV(ST(3))
;
	const GLuint*	ids = INT2PTR(const GLuint *,SvIV(ST(4)))
;
	GLboolean	enabled = (int)SvIV(ST(5))
;
#line 5575 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDebugMessageControl, )
  OGLM_AVAIL_CHECK(__glewDebugMessageControl, glDebugMessageControl)
  glDebugMessageControl(source, type, severity, count, ids, enabled);
  OGLM_CHECK_ERR(glDebugMessageControl, )
#line 11697 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDebugMessageControl_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDebugMessageControl_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 4)
       croak_xs_usage(cv,  "source, type, severity, enabled, ...");
    {
	GLenum	source = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLenum	severity = (int)SvIV(ST(2))
;
	GLboolean	enabled = (int)SvIV(ST(3))
;
#line 5591 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDebugMessageControl, )
  OGLM_AVAIL_CHECK(__glewDebugMessageControl, glDebugMessageControl)
  GLsizei count = items-4;
  GLuint* ids = OGLM_GET_VARARGS(ids,4,GLuint,UV,count);
  glDebugMessageControl((GLenum )source, (GLenum )type, (GLenum )severity, (GLsizei )count, (const GLuint* )ids, (GLboolean )enabled);
  OGLM_CHECK_ERR(glDebugMessageControl, free(ids);)
  free(ids);
#line 11728 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDebugMessageEnableAMD_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDebugMessageEnableAMD_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "category, severity, count, ids, enabled");
    {
	GLenum	category = (int)SvIV(ST(0))
;
	GLenum	severity = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLuint*	ids = INT2PTR(const GLuint *,SvIV(ST(3)))
;
	GLboolean	enabled = (int)SvIV(ST(4))
;
#line 5608 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDebugMessageEnableAMD, )
  OGLM_AVAIL_CHECK(__glewDebugMessageEnableAMD, glDebugMessageEnableAMD)
  glDebugMessageEnableAMD(category, severity, count, ids, enabled);
  OGLM_CHECK_ERR(glDebugMessageEnableAMD, )
#line 11757 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDebugMessageEnableAMD_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDebugMessageEnableAMD_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "category, severity, enabled, ...");
    {
	GLenum	category = (int)SvIV(ST(0))
;
	GLenum	severity = (int)SvIV(ST(1))
;
	GLboolean	enabled = (int)SvIV(ST(2))
;
#line 5620 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDebugMessageEnableAMD, )
  OGLM_AVAIL_CHECK(__glewDebugMessageEnableAMD, glDebugMessageEnableAMD)
  GLsizei count = items-3;
  GLuint* ids = OGLM_GET_VARARGS(ids,3,GLuint,UV,count);
  glDebugMessageEnableAMD((GLenum )category, (GLenum )severity, (GLsizei )count, (const GLuint* )ids, (GLboolean )enabled);
  OGLM_CHECK_ERR(glDebugMessageEnableAMD, free(ids);)
  free(ids);
#line 11785 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDebugMessageInsert); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDebugMessageInsert)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 6)
       croak_xs_usage(cv,  "source, type, id, severity, length, buf");
    {
	GLenum	source = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLuint	id = (unsigned int)SvUV(ST(2))
;
	GLenum	severity = (int)SvIV(ST(3))
;
	GLsizei	length = (int)SvIV(ST(4))
;
	const GLchar*	buf = (const GLchar *)SvPV_nolen(ST(5))
;
#line 5641 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDebugMessageInsert, )
  OGLM_AVAIL_CHECK(__glewDebugMessageInsert, glDebugMessageInsert)
  glDebugMessageInsert(source, type, id, severity, length, buf);
  OGLM_CHECK_ERR(glDebugMessageInsert, )
#line 11817 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDebugMessageInsertAMD); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDebugMessageInsertAMD)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "category, severity, id, length, buf");
    {
	GLenum	category = (int)SvIV(ST(0))
;
	GLenum	severity = (int)SvIV(ST(1))
;
	GLuint	id = (unsigned int)SvUV(ST(2))
;
	GLsizei	length = (int)SvIV(ST(3))
;
	const GLchar*	buf = (const GLchar *)SvPV_nolen(ST(4))
;
#line 5655 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDebugMessageInsertAMD, )
  OGLM_AVAIL_CHECK(__glewDebugMessageInsertAMD, glDebugMessageInsertAMD)
  glDebugMessageInsertAMD(category, severity, id, length, buf);
  OGLM_CHECK_ERR(glDebugMessageInsertAMD, )
#line 11846 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeformSGIX); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeformSGIX)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "mask");
    {
	GLbitfield	mask = (int)SvIV(ST(0))
;
#line 5665 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeformSGIX, )
  OGLM_AVAIL_CHECK(__glewDeformSGIX, glDeformSGIX)
  glDeformSGIX(mask);
  OGLM_CHECK_ERR(glDeformSGIX, )
#line 11867 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteArraySetsEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteArraySetsEXT_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, arrayset");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	const void * *	arrayset = INT2PTR(const void **,SvIV(ST(1)))
;
#line 5676 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteArraySetsEXT, )
  OGLM_AVAIL_CHECK(__glewDeleteArraySetsEXT, glDeleteArraySetsEXT)
  glDeleteArraySetsEXT(n, arrayset);
  OGLM_CHECK_ERR(glDeleteArraySetsEXT, )
#line 11890 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteAsyncMarkersSGIX); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteAsyncMarkersSGIX)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "marker, range");
    {
	GLuint	marker = (unsigned int)SvUV(ST(0))
;
	GLsizei	range = (int)SvIV(ST(1))
;
#line 5687 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteAsyncMarkersSGIX, )
  OGLM_AVAIL_CHECK(__glewDeleteAsyncMarkersSGIX, glDeleteAsyncMarkersSGIX)
  glDeleteAsyncMarkersSGIX(marker, range);
  OGLM_CHECK_ERR(glDeleteAsyncMarkersSGIX, )
#line 11913 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteBufferRegion); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteBufferRegion)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "region");
    {
	GLenum	region = (int)SvIV(ST(0))
;
#line 5697 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteBufferRegion, )
  OGLM_AVAIL_CHECK(__glewDeleteBufferRegion, glDeleteBufferRegion)
  glDeleteBufferRegion(region);
  OGLM_CHECK_ERR(glDeleteBufferRegion, )
#line 11934 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteBuffers_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteBuffers_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "n, buffers");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	const GLuint*	buffers = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 5710 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteBuffers, )
  OGLM_AVAIL_CHECK(__glewDeleteBuffers, glDeleteBuffers)
  glDeleteBuffers(n, buffers);
  OGLM_CHECK_ERR(glDeleteBuffers, )
#line 11958 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteBuffers_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteBuffers_p)
{
    dVAR; dXSARGS;
    dXSI32;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 5721 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteBuffers, )
  OGLM_AVAIL_CHECK(__glewDeleteBuffers, glDeleteBuffers)
  GLsizei n = items;
  GLuint* buffers = OGLM_GET_VARARGS(buffers,0,GLuint,UV,n);
  glDeleteBuffers((GLsizei )n, (const GLuint* )buffers);
  OGLM_CHECK_ERR(glDeleteBuffers, free(buffers);)
  free(buffers);
#line 11981 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteCommandListsNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteCommandListsNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, lists");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	const GLuint*	lists = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 5735 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteCommandListsNV, )
  OGLM_AVAIL_CHECK(__glewDeleteCommandListsNV, glDeleteCommandListsNV)
  glDeleteCommandListsNV(n, lists);
  OGLM_CHECK_ERR(glDeleteCommandListsNV, )
#line 12004 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteCommandListsNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteCommandListsNV_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 5744 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteCommandListsNV, )
  OGLM_AVAIL_CHECK(__glewDeleteCommandListsNV, glDeleteCommandListsNV)
  GLsizei n = items;
  GLuint* lists = OGLM_GET_VARARGS(lists,0,GLuint,UV,n);
  glDeleteCommandListsNV((GLsizei )n, (const GLuint* )lists);
  OGLM_CHECK_ERR(glDeleteCommandListsNV, free(lists);)
  free(lists);
#line 12026 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteFencesAPPLE_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteFencesAPPLE_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, fences");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	const GLuint*	fences = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 5758 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteFencesAPPLE, )
  OGLM_AVAIL_CHECK(__glewDeleteFencesAPPLE, glDeleteFencesAPPLE)
  glDeleteFencesAPPLE(n, fences);
  OGLM_CHECK_ERR(glDeleteFencesAPPLE, )
#line 12049 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteFencesAPPLE_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteFencesAPPLE_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 5767 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteFencesAPPLE, )
  OGLM_AVAIL_CHECK(__glewDeleteFencesAPPLE, glDeleteFencesAPPLE)
  GLsizei n = items;
  GLuint* fences = OGLM_GET_VARARGS(fences,0,GLuint,UV,n);
  glDeleteFencesAPPLE((GLsizei )n, (const GLuint* )fences);
  OGLM_CHECK_ERR(glDeleteFencesAPPLE, free(fences);)
  free(fences);
#line 12071 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteFencesNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteFencesNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, fences");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	const GLuint*	fences = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 5781 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteFencesNV, )
  OGLM_AVAIL_CHECK(__glewDeleteFencesNV, glDeleteFencesNV)
  glDeleteFencesNV(n, fences);
  OGLM_CHECK_ERR(glDeleteFencesNV, )
#line 12094 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteFencesNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteFencesNV_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 5790 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteFencesNV, )
  OGLM_AVAIL_CHECK(__glewDeleteFencesNV, glDeleteFencesNV)
  GLsizei n = items;
  GLuint* fences = OGLM_GET_VARARGS(fences,0,GLuint,UV,n);
  glDeleteFencesNV((GLsizei )n, (const GLuint* )fences);
  OGLM_CHECK_ERR(glDeleteFencesNV, free(fences);)
  free(fences);
#line 12116 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteFragmentShaderATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteFragmentShaderATI)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "id");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
#line 5803 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteFragmentShaderATI, )
  OGLM_AVAIL_CHECK(__glewDeleteFragmentShaderATI, glDeleteFragmentShaderATI)
  glDeleteFragmentShaderATI(id);
  OGLM_CHECK_ERR(glDeleteFragmentShaderATI, )
#line 12137 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteFramebuffers_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteFramebuffers_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "n, framebuffers");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	const GLuint*	framebuffers = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 5816 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteFramebuffers, )
  OGLM_AVAIL_CHECK(__glewDeleteFramebuffers, glDeleteFramebuffers)
  glDeleteFramebuffers(n, framebuffers);
  OGLM_CHECK_ERR(glDeleteFramebuffers, )
#line 12161 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteFramebuffers_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteFramebuffers_p)
{
    dVAR; dXSARGS;
    dXSI32;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 5827 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteFramebuffers, )
  OGLM_AVAIL_CHECK(__glewDeleteFramebuffers, glDeleteFramebuffers)
  GLsizei n = items;
  GLuint* framebuffers = OGLM_GET_VARARGS(framebuffers,0,GLuint,UV,n);
  glDeleteFramebuffers((GLsizei )n, (const GLuint* )framebuffers);
  OGLM_CHECK_ERR(glDeleteFramebuffers, free(framebuffers);)
  free(framebuffers);
#line 12184 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteFramebuffersOES_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteFramebuffersOES_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, framebuffers");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	const GLuint*	framebuffers = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 5841 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteFramebuffersOES, )
  OGLM_AVAIL_CHECK(__glewDeleteFramebuffersOES, glDeleteFramebuffersOES)
  glDeleteFramebuffersOES(n, framebuffers);
  OGLM_CHECK_ERR(glDeleteFramebuffersOES, )
#line 12207 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteLists); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteLists)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "list, range");
    {
	GLuint	list = (unsigned int)SvUV(ST(0))
;
	GLsizei	range = (int)SvIV(ST(1))
;
#line 5852 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteLists, )
  glDeleteLists(list, range);
  OGLM_CHECK_ERR(glDeleteLists, )
#line 12229 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteMPEGPredictorsSGIX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteMPEGPredictorsSGIX_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, predictors");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	GLuint*	predictors = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 5862 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteMPEGPredictorsSGIX, )
  OGLM_AVAIL_CHECK(__glewDeleteMPEGPredictorsSGIX, glDeleteMPEGPredictorsSGIX)
  glDeleteMPEGPredictorsSGIX(n, predictors);
  OGLM_CHECK_ERR(glDeleteMPEGPredictorsSGIX, )
#line 12252 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteMemoryObjectsEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteMemoryObjectsEXT_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, memoryObjects");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	const GLuint*	memoryObjects = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 5873 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteMemoryObjectsEXT, )
  OGLM_AVAIL_CHECK(__glewDeleteMemoryObjectsEXT, glDeleteMemoryObjectsEXT)
  glDeleteMemoryObjectsEXT(n, memoryObjects);
  OGLM_CHECK_ERR(glDeleteMemoryObjectsEXT, )
#line 12275 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteMemoryObjectsEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteMemoryObjectsEXT_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 5882 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteMemoryObjectsEXT, )
  OGLM_AVAIL_CHECK(__glewDeleteMemoryObjectsEXT, glDeleteMemoryObjectsEXT)
  GLsizei n = items;
  GLuint* memoryObjects = OGLM_GET_VARARGS(memoryObjects,0,GLuint,UV,n);
  glDeleteMemoryObjectsEXT((GLsizei )n, (const GLuint* )memoryObjects);
  OGLM_CHECK_ERR(glDeleteMemoryObjectsEXT, free(memoryObjects);)
  free(memoryObjects);
#line 12297 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteNamedStringARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteNamedStringARB)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "namelen, name");
    {
	GLint	namelen = (int)SvIV(ST(0))
;
	const GLchar*	name = (const GLchar *)SvPV_nolen(ST(1))
;
#line 5896 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteNamedStringARB, )
  OGLM_AVAIL_CHECK(__glewDeleteNamedStringARB, glDeleteNamedStringARB)
  glDeleteNamedStringARB(namelen, name);
  OGLM_CHECK_ERR(glDeleteNamedStringARB, )
#line 12320 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteNamesAMD_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteNamesAMD_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "identifier, num, names");
    {
	GLenum	identifier = (int)SvIV(ST(0))
;
	GLuint	num = (unsigned int)SvUV(ST(1))
;
	const GLuint*	names = INT2PTR(const GLuint *,SvIV(ST(2)))
;
#line 5908 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteNamesAMD, )
  OGLM_AVAIL_CHECK(__glewDeleteNamesAMD, glDeleteNamesAMD)
  glDeleteNamesAMD(identifier, num, names);
  OGLM_CHECK_ERR(glDeleteNamesAMD, )
#line 12345 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteNamesAMD_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteNamesAMD_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "identifier, ...");
    {
	GLenum	identifier = (int)SvIV(ST(0))
;
#line 5918 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteNamesAMD, )
  OGLM_AVAIL_CHECK(__glewDeleteNamesAMD, glDeleteNamesAMD)
  GLuint num = items-1;
  GLuint* names = OGLM_GET_VARARGS(names,1,GLuint,UV,num);
  glDeleteNamesAMD((GLenum )identifier, (GLuint )num, (const GLuint* )names);
  OGLM_CHECK_ERR(glDeleteNamesAMD, free(names);)
  free(names);
#line 12369 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteObjectARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteObjectARB)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "obj");
    {
	GLhandleARB	obj = (unsigned int)SvUV(ST(0))
;
#line 5931 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteObjectARB, )
  OGLM_AVAIL_CHECK(__glewDeleteObjectARB, glDeleteObjectARB)
  glDeleteObjectARB(obj);
  OGLM_CHECK_ERR(glDeleteObjectARB, )
#line 12390 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteOcclusionQueriesNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteOcclusionQueriesNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, ids");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	const GLuint*	ids = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 5942 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteOcclusionQueriesNV, )
  OGLM_AVAIL_CHECK(__glewDeleteOcclusionQueriesNV, glDeleteOcclusionQueriesNV)
  glDeleteOcclusionQueriesNV(n, ids);
  OGLM_CHECK_ERR(glDeleteOcclusionQueriesNV, )
#line 12413 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteOcclusionQueriesNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteOcclusionQueriesNV_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 5951 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteOcclusionQueriesNV, )
  OGLM_AVAIL_CHECK(__glewDeleteOcclusionQueriesNV, glDeleteOcclusionQueriesNV)
  GLsizei n = items;
  GLuint* ids = OGLM_GET_VARARGS(ids,0,GLuint,UV,n);
  glDeleteOcclusionQueriesNV((GLsizei )n, (const GLuint* )ids);
  OGLM_CHECK_ERR(glDeleteOcclusionQueriesNV, free(ids);)
  free(ids);
#line 12435 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeletePathsNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeletePathsNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "path, range");
    {
	GLuint	path = (unsigned int)SvUV(ST(0))
;
	GLsizei	range = (int)SvIV(ST(1))
;
#line 5965 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeletePathsNV, )
  OGLM_AVAIL_CHECK(__glewDeletePathsNV, glDeletePathsNV)
  glDeletePathsNV(path, range);
  OGLM_CHECK_ERR(glDeletePathsNV, )
#line 12458 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeletePerfMonitorsAMD_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeletePerfMonitorsAMD_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, monitors");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	GLuint*	monitors = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 5976 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeletePerfMonitorsAMD, )
  OGLM_AVAIL_CHECK(__glewDeletePerfMonitorsAMD, glDeletePerfMonitorsAMD)
  glDeletePerfMonitorsAMD(n, monitors);
  OGLM_CHECK_ERR(glDeletePerfMonitorsAMD, )
#line 12481 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeletePerfMonitorsAMD_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeletePerfMonitorsAMD_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "n");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLsizei	n = (int)SvIV(ST(0))
;
#line 5986 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeletePerfMonitorsAMD, )
  OGLM_AVAIL_CHECK(__glewDeletePerfMonitorsAMD, glDeletePerfMonitorsAMD)
  GLuint* monitors = OGLM_ALLOC(n,GLuint,monitors);
  glDeletePerfMonitorsAMD(n, monitors);
  OGLM_CHECK_ERR(glDeletePerfMonitorsAMD, free(monitors);)
  OGLM_OUT_FINISH(monitors,n,newSVuv)
  free(monitors);
#line 12507 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glDeletePerfQueryINTEL); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeletePerfQueryINTEL)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "queryHandle");
    {
	GLuint	queryHandle = (unsigned int)SvUV(ST(0))
;
#line 5999 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeletePerfQueryINTEL, )
  OGLM_AVAIL_CHECK(__glewDeletePerfQueryINTEL, glDeletePerfQueryINTEL)
  glDeletePerfQueryINTEL(queryHandle);
  OGLM_CHECK_ERR(glDeletePerfQueryINTEL, )
#line 12529 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteProgram); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteProgram)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "program");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
#line 6009 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteProgram, )
  OGLM_AVAIL_CHECK(__glewDeleteProgram, glDeleteProgram)
  glDeleteProgram(program);
  OGLM_CHECK_ERR(glDeleteProgram, )
#line 12550 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteProgramPipelines_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteProgramPipelines_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, pipelines");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	const GLuint*	pipelines = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 6020 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteProgramPipelines, )
  OGLM_AVAIL_CHECK(__glewDeleteProgramPipelines, glDeleteProgramPipelines)
  glDeleteProgramPipelines(n, pipelines);
  OGLM_CHECK_ERR(glDeleteProgramPipelines, )
#line 12573 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteProgramPipelines_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteProgramPipelines_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 6029 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteProgramPipelines, )
  OGLM_AVAIL_CHECK(__glewDeleteProgramPipelines, glDeleteProgramPipelines)
  GLsizei n = items;
  GLuint* pipelines = OGLM_GET_VARARGS(pipelines,0,GLuint,UV,n);
  glDeleteProgramPipelines((GLsizei )n, (const GLuint* )pipelines);
  OGLM_CHECK_ERR(glDeleteProgramPipelines, free(pipelines);)
  free(pipelines);
#line 12595 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteProgramsARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteProgramsARB_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "n, programs");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	const GLuint*	programs = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 6045 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteProgramsARB, )
  OGLM_AVAIL_CHECK(__glewDeleteProgramsARB, glDeleteProgramsARB)
  glDeleteProgramsARB(n, programs);
  OGLM_CHECK_ERR(glDeleteProgramsARB, )
#line 12619 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteProgramsARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteProgramsARB_p)
{
    dVAR; dXSARGS;
    dXSI32;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 6056 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteProgramsARB, )
  OGLM_AVAIL_CHECK(__glewDeleteProgramsARB, glDeleteProgramsARB)
  GLsizei n = items;
  GLuint* programs = OGLM_GET_VARARGS(programs,0,GLuint,UV,n);
  glDeleteProgramsARB((GLsizei )n, (const GLuint* )programs);
  OGLM_CHECK_ERR(glDeleteProgramsARB, free(programs);)
  free(programs);
#line 12642 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteQueries_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteQueries_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "n, ids");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	const GLuint*	ids = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 6072 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteQueries, )
  OGLM_AVAIL_CHECK(__glewDeleteQueries, glDeleteQueries)
  glDeleteQueries(n, ids);
  OGLM_CHECK_ERR(glDeleteQueries, )
#line 12666 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteQueries_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteQueries_p)
{
    dVAR; dXSARGS;
    dXSI32;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 6083 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteQueries, )
  OGLM_AVAIL_CHECK(__glewDeleteQueries, glDeleteQueries)
  GLsizei n = items;
  GLuint* ids = OGLM_GET_VARARGS(ids,0,GLuint,UV,n);
  glDeleteQueries((GLsizei )n, (const GLuint* )ids);
  OGLM_CHECK_ERR(glDeleteQueries, free(ids);)
  free(ids);
#line 12689 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteQueriesANGLE_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteQueriesANGLE_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, ids");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	const GLuint*	ids = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 6097 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteQueriesANGLE, )
  OGLM_AVAIL_CHECK(__glewDeleteQueriesANGLE, glDeleteQueriesANGLE)
  glDeleteQueriesANGLE(n, ids);
  OGLM_CHECK_ERR(glDeleteQueriesANGLE, )
#line 12712 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteQueriesEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteQueriesEXT_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, ids");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	const GLuint*	ids = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 6108 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteQueriesEXT, )
  OGLM_AVAIL_CHECK(__glewDeleteQueriesEXT, glDeleteQueriesEXT)
  glDeleteQueriesEXT(n, ids);
  OGLM_CHECK_ERR(glDeleteQueriesEXT, )
#line 12735 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteQueriesEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteQueriesEXT_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 6117 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteQueriesEXT, )
  OGLM_AVAIL_CHECK(__glewDeleteQueriesEXT, glDeleteQueriesEXT)
  GLsizei n = items;
  GLuint* ids = OGLM_GET_VARARGS(ids,0,GLuint,UV,n);
  glDeleteQueriesEXT((GLsizei )n, (const GLuint* )ids);
  OGLM_CHECK_ERR(glDeleteQueriesEXT, free(ids);)
  free(ids);
#line 12757 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteRenderbuffers_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteRenderbuffers_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "n, renderbuffers");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	const GLuint*	renderbuffers = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 6133 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteRenderbuffers, )
  OGLM_AVAIL_CHECK(__glewDeleteRenderbuffers, glDeleteRenderbuffers)
  glDeleteRenderbuffers(n, renderbuffers);
  OGLM_CHECK_ERR(glDeleteRenderbuffers, )
#line 12781 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteRenderbuffers_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteRenderbuffers_p)
{
    dVAR; dXSARGS;
    dXSI32;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 6144 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteRenderbuffers, )
  OGLM_AVAIL_CHECK(__glewDeleteRenderbuffers, glDeleteRenderbuffers)
  GLsizei n = items;
  GLuint* renderbuffers = OGLM_GET_VARARGS(renderbuffers,0,GLuint,UV,n);
  glDeleteRenderbuffers((GLsizei )n, (const GLuint* )renderbuffers);
  OGLM_CHECK_ERR(glDeleteRenderbuffers, free(renderbuffers);)
  free(renderbuffers);
#line 12804 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteRenderbuffersOES_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteRenderbuffersOES_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, renderbuffers");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	const GLuint*	renderbuffers = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 6158 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteRenderbuffersOES, )
  OGLM_AVAIL_CHECK(__glewDeleteRenderbuffersOES, glDeleteRenderbuffersOES)
  glDeleteRenderbuffersOES(n, renderbuffers);
  OGLM_CHECK_ERR(glDeleteRenderbuffersOES, )
#line 12827 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteSamplers_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteSamplers_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "count, samplers");
    {
	GLsizei	count = (int)SvIV(ST(0))
;
	const GLuint *	samplers = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 6169 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteSamplers, )
  OGLM_AVAIL_CHECK(__glewDeleteSamplers, glDeleteSamplers)
  glDeleteSamplers(count, samplers);
  OGLM_CHECK_ERR(glDeleteSamplers, )
#line 12850 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteSamplers_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteSamplers_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 6178 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteSamplers, )
  OGLM_AVAIL_CHECK(__glewDeleteSamplers, glDeleteSamplers)
  GLsizei count = items;
  GLuint * samplers = OGLM_GET_VARARGS(samplers,0,GLuint,UV,count);
  glDeleteSamplers((GLsizei )count, (const GLuint * )samplers);
  OGLM_CHECK_ERR(glDeleteSamplers, free(samplers);)
  free(samplers);
#line 12872 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteSemaphoresEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteSemaphoresEXT_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, semaphores");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	const GLuint*	semaphores = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 6192 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteSemaphoresEXT, )
  OGLM_AVAIL_CHECK(__glewDeleteSemaphoresEXT, glDeleteSemaphoresEXT)
  glDeleteSemaphoresEXT(n, semaphores);
  OGLM_CHECK_ERR(glDeleteSemaphoresEXT, )
#line 12895 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteSemaphoresEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteSemaphoresEXT_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 6201 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteSemaphoresEXT, )
  OGLM_AVAIL_CHECK(__glewDeleteSemaphoresEXT, glDeleteSemaphoresEXT)
  GLsizei n = items;
  GLuint* semaphores = OGLM_GET_VARARGS(semaphores,0,GLuint,UV,n);
  glDeleteSemaphoresEXT((GLsizei )n, (const GLuint* )semaphores);
  OGLM_CHECK_ERR(glDeleteSemaphoresEXT, free(semaphores);)
  free(semaphores);
#line 12917 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteShader); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteShader)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "shader");
    {
	GLuint	shader = (unsigned int)SvUV(ST(0))
;
#line 6214 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteShader, )
  OGLM_AVAIL_CHECK(__glewDeleteShader, glDeleteShader)
  glDeleteShader(shader);
  OGLM_CHECK_ERR(glDeleteShader, )
#line 12938 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteStatesNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteStatesNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, states");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	const GLuint*	states = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 6225 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteStatesNV, )
  OGLM_AVAIL_CHECK(__glewDeleteStatesNV, glDeleteStatesNV)
  glDeleteStatesNV(n, states);
  OGLM_CHECK_ERR(glDeleteStatesNV, )
#line 12961 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteStatesNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteStatesNV_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 6234 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteStatesNV, )
  OGLM_AVAIL_CHECK(__glewDeleteStatesNV, glDeleteStatesNV)
  GLsizei n = items;
  GLuint* states = OGLM_GET_VARARGS(states,0,GLuint,UV,n);
  glDeleteStatesNV((GLsizei )n, (const GLuint* )states);
  OGLM_CHECK_ERR(glDeleteStatesNV, free(states);)
  free(states);
#line 12983 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteSync); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteSync)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "myGLsync");
    {
	GLsync	myGLsync = INT2PTR(GLsync,SvIV(ST(0)))
;
#line 6249 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteSync, )
  OGLM_AVAIL_CHECK(__glewDeleteSync, glDeleteSync)
  glDeleteSync(myGLsync);
  OGLM_CHECK_ERR(glDeleteSync, )
#line 13005 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteTextures_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteTextures_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, textures");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	const GLuint *	textures = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 6260 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteTextures, )
  glDeleteTextures(n, textures);
  OGLM_CHECK_ERR(glDeleteTextures, )
#line 13027 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteTextures_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteTextures_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 6268 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteTextures, )
  GLsizei n = items;
  GLuint *textures = OGLM_GET_VARARGS(textures,0,GLuint,UV,n);
  glDeleteTextures((GLsizei )n, (const GLuint *)textures);
  OGLM_CHECK_ERR(glDeleteTextures, free(textures);)
  free(textures);
#line 13048 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteTexturesEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteTexturesEXT_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, textures");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	const GLuint*	textures = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 6281 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteTexturesEXT, )
  OGLM_AVAIL_CHECK(__glewDeleteTexturesEXT, glDeleteTexturesEXT)
  glDeleteTexturesEXT(n, textures);
  OGLM_CHECK_ERR(glDeleteTexturesEXT, )
#line 13071 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteTexturesEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteTexturesEXT_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 6290 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteTexturesEXT, )
  OGLM_AVAIL_CHECK(__glewDeleteTexturesEXT, glDeleteTexturesEXT)
  GLsizei n = items;
  GLuint* textures = OGLM_GET_VARARGS(textures,0,GLuint,UV,n);
  glDeleteTexturesEXT((GLsizei )n, (const GLuint* )textures);
  OGLM_CHECK_ERR(glDeleteTexturesEXT, free(textures);)
  free(textures);
#line 13093 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteTransformFeedbacks_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteTransformFeedbacks_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "n, ids");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	const GLuint*	ids = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 6306 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteTransformFeedbacks, )
  OGLM_AVAIL_CHECK(__glewDeleteTransformFeedbacks, glDeleteTransformFeedbacks)
  glDeleteTransformFeedbacks(n, ids);
  OGLM_CHECK_ERR(glDeleteTransformFeedbacks, )
#line 13117 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteTransformFeedbacks_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteTransformFeedbacks_p)
{
    dVAR; dXSARGS;
    dXSI32;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 6317 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteTransformFeedbacks, )
  OGLM_AVAIL_CHECK(__glewDeleteTransformFeedbacks, glDeleteTransformFeedbacks)
  GLsizei n = items;
  GLuint* ids = OGLM_GET_VARARGS(ids,0,GLuint,UV,n);
  glDeleteTransformFeedbacks((GLsizei )n, (const GLuint* )ids);
  OGLM_CHECK_ERR(glDeleteTransformFeedbacks, free(ids);)
  free(ids);
#line 13140 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteVertexArrays_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteVertexArrays_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "n, arrays");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	const GLuint*	arrays = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 6333 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteVertexArrays, )
  OGLM_AVAIL_CHECK(__glewDeleteVertexArrays, glDeleteVertexArrays)
  glDeleteVertexArrays(n, arrays);
  OGLM_CHECK_ERR(glDeleteVertexArrays, )
#line 13164 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteVertexArrays_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteVertexArrays_p)
{
    dVAR; dXSARGS;
    dXSI32;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 6344 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteVertexArrays, )
  OGLM_AVAIL_CHECK(__glewDeleteVertexArrays, glDeleteVertexArrays)
  GLsizei n = items;
  GLuint* arrays = OGLM_GET_VARARGS(arrays,0,GLuint,UV,n);
  glDeleteVertexArrays((GLsizei )n, (const GLuint* )arrays);
  OGLM_CHECK_ERR(glDeleteVertexArrays, free(arrays);)
  free(arrays);
#line 13187 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteVertexArraysOES_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteVertexArraysOES_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, arrays");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	const GLuint*	arrays = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 6358 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteVertexArraysOES, )
  OGLM_AVAIL_CHECK(__glewDeleteVertexArraysOES, glDeleteVertexArraysOES)
  glDeleteVertexArraysOES(n, arrays);
  OGLM_CHECK_ERR(glDeleteVertexArraysOES, )
#line 13210 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteVertexArraysSGIX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteVertexArraysSGIX_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, arrays");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	const GLuint*	arrays = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 6369 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteVertexArraysSGIX, )
  OGLM_AVAIL_CHECK(__glewDeleteVertexArraysSGIX, glDeleteVertexArraysSGIX)
  glDeleteVertexArraysSGIX(n, arrays);
  OGLM_CHECK_ERR(glDeleteVertexArraysSGIX, )
#line 13233 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDeleteVertexShaderEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDeleteVertexShaderEXT)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "id");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
#line 6379 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDeleteVertexShaderEXT, )
  OGLM_AVAIL_CHECK(__glewDeleteVertexShaderEXT, glDeleteVertexShaderEXT)
  glDeleteVertexShaderEXT(id);
  OGLM_CHECK_ERR(glDeleteVertexShaderEXT, )
#line 13254 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDepthBoundsEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDepthBoundsEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "zmin, zmax");
    {
	GLclampd	zmin = (double)SvNV(ST(0))
;
	GLclampd	zmax = (double)SvNV(ST(1))
;
#line 6390 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDepthBoundsEXT, )
  OGLM_AVAIL_CHECK(__glewDepthBoundsEXT, glDepthBoundsEXT)
  glDepthBoundsEXT(zmin, zmax);
  OGLM_CHECK_ERR(glDepthBoundsEXT, )
#line 13277 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDepthBoundsdNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDepthBoundsdNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "zmin, zmax");
    {
	GLdouble	zmin = (double)SvNV(ST(0))
;
	GLdouble	zmax = (double)SvNV(ST(1))
;
#line 6401 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDepthBoundsdNV, )
  OGLM_AVAIL_CHECK(__glewDepthBoundsdNV, glDepthBoundsdNV)
  glDepthBoundsdNV(zmin, zmax);
  OGLM_CHECK_ERR(glDepthBoundsdNV, )
#line 13300 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDepthFunc); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDepthFunc)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "func");
    {
	GLenum	func = (int)SvIV(ST(0))
;
#line 6411 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDepthFunc, )
  glDepthFunc(func);
  OGLM_CHECK_ERR(glDepthFunc, )
#line 13320 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDepthMask); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDepthMask)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "flag");
    {
	GLboolean	flag = (int)SvIV(ST(0))
;
#line 6420 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDepthMask, )
  glDepthMask(flag);
  OGLM_CHECK_ERR(glDepthMask, )
#line 13340 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDepthRange); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDepthRange)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "zNear, zFar");
    {
	GLclampd	zNear = (double)SvNV(ST(0))
;
	GLclampd	zFar = (double)SvNV(ST(1))
;
#line 6430 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDepthRange, )
  glDepthRange(zNear, zFar);
  OGLM_CHECK_ERR(glDepthRange, )
#line 13362 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDepthRangeArrayfvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDepthRangeArrayfvNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "first, count, v");
    {
	GLuint	first = (unsigned int)SvUV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 6441 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDepthRangeArrayfvNV, )
  OGLM_AVAIL_CHECK(__glewDepthRangeArrayfvNV, glDepthRangeArrayfvNV)
  glDepthRangeArrayfvNV(first, count, v);
  OGLM_CHECK_ERR(glDepthRangeArrayfvNV, )
#line 13387 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDepthRangeArrayv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDepthRangeArrayv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "first, count, v");
    {
	GLuint	first = (unsigned int)SvUV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLclampd *	v = INT2PTR(const GLclampd *,SvIV(ST(2)))
;
#line 6453 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDepthRangeArrayv, )
  OGLM_AVAIL_CHECK(__glewDepthRangeArrayv, glDepthRangeArrayv)
  glDepthRangeArrayv(first, count, v);
  OGLM_CHECK_ERR(glDepthRangeArrayv, )
#line 13412 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDepthRangeArrayv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDepthRangeArrayv_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "first, ...");
    {
	GLuint	first = (unsigned int)SvUV(ST(0))
;
#line 6463 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDepthRangeArrayv, )
  OGLM_AVAIL_CHECK(__glewDepthRangeArrayv, glDepthRangeArrayv)
  GLsizei count = items-1;
  GLclampd * v = OGLM_GET_VARARGS(v,1,GLclampd,NV,count);
  glDepthRangeArrayv((GLuint )first, (GLsizei )count, (const GLclampd * )v);
  OGLM_CHECK_ERR(glDepthRangeArrayv, free(v);)
  free(v);
#line 13436 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDepthRangeIndexed); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDepthRangeIndexed)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "index, n, f");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLclampd	n = (double)SvNV(ST(1))
;
	GLclampd	f = (double)SvNV(ST(2))
;
#line 6478 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDepthRangeIndexed, )
  OGLM_AVAIL_CHECK(__glewDepthRangeIndexed, glDepthRangeIndexed)
  glDepthRangeIndexed(index, n, f);
  OGLM_CHECK_ERR(glDepthRangeIndexed, )
#line 13461 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDepthRangeIndexedfNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDepthRangeIndexedfNV)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "index, n, f");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLfloat	n = (float)SvNV(ST(1))
;
	GLfloat	f = (float)SvNV(ST(2))
;
#line 6490 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDepthRangeIndexedfNV, )
  OGLM_AVAIL_CHECK(__glewDepthRangeIndexedfNV, glDepthRangeIndexedfNV)
  glDepthRangeIndexedfNV(index, n, f);
  OGLM_CHECK_ERR(glDepthRangeIndexedfNV, )
#line 13486 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDepthRangedNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDepthRangedNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "zNear, zFar");
    {
	GLdouble	zNear = (double)SvNV(ST(0))
;
	GLdouble	zFar = (double)SvNV(ST(1))
;
#line 6501 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDepthRangedNV, )
  OGLM_AVAIL_CHECK(__glewDepthRangedNV, glDepthRangedNV)
  glDepthRangedNV(zNear, zFar);
  OGLM_CHECK_ERR(glDepthRangedNV, )
#line 13509 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDepthRangef); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDepthRangef)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, f");
    {
	GLclampf	n = (float)SvNV(ST(0))
;
	GLclampf	f = (float)SvNV(ST(1))
;
#line 6512 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDepthRangef, )
  OGLM_AVAIL_CHECK(__glewDepthRangef, glDepthRangef)
  glDepthRangef(n, f);
  OGLM_CHECK_ERR(glDepthRangef, )
#line 13532 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDepthRangefOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDepthRangefOES)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, f");
    {
	GLclampf	n = (float)SvNV(ST(0))
;
	GLclampf	f = (float)SvNV(ST(1))
;
#line 6523 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDepthRangefOES, )
  OGLM_AVAIL_CHECK(__glewDepthRangefOES, glDepthRangefOES)
  glDepthRangefOES(n, f);
  OGLM_CHECK_ERR(glDepthRangefOES, )
#line 13555 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDepthRangex); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDepthRangex)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "zNear, zFar");
    {
	GLclampx	zNear = (int)SvIV(ST(0))
;
	GLclampx	zFar = (int)SvIV(ST(1))
;
#line 6534 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDepthRangex, )
  OGLM_AVAIL_CHECK(__glewDepthRangex, glDepthRangex)
  glDepthRangex(zNear, zFar);
  OGLM_CHECK_ERR(glDepthRangex, )
#line 13578 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDetachObjectARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDetachObjectARB)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "containerObj, attachedObj");
    {
	GLhandleARB	containerObj = (unsigned int)SvUV(ST(0))
;
	GLhandleARB	attachedObj = (unsigned int)SvUV(ST(1))
;
#line 6545 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDetachObjectARB, )
  OGLM_AVAIL_CHECK(__glewDetachObjectARB, glDetachObjectARB)
  glDetachObjectARB(containerObj, attachedObj);
  OGLM_CHECK_ERR(glDetachObjectARB, )
#line 13601 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDetachShader); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDetachShader)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "program, shader");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLuint	shader = (unsigned int)SvUV(ST(1))
;
#line 6556 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDetachShader, )
  OGLM_AVAIL_CHECK(__glewDetachShader, glDetachShader)
  glDetachShader(program, shader);
  OGLM_CHECK_ERR(glDetachShader, )
#line 13624 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDetailTexFuncSGIS_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDetailTexFuncSGIS_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, n, points");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	n = (int)SvIV(ST(1))
;
	const GLfloat*	points = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 6568 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDetailTexFuncSGIS, )
  OGLM_AVAIL_CHECK(__glewDetailTexFuncSGIS, glDetailTexFuncSGIS)
  glDetailTexFuncSGIS(target, n, points);
  OGLM_CHECK_ERR(glDetailTexFuncSGIS, )
#line 13649 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDetailTexFuncSGIS_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDetailTexFuncSGIS_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "target, n, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	n = (int)SvIV(ST(1))
;
#line 6579 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDetailTexFuncSGIS, )
  OGLM_AVAIL_CHECK(__glewDetailTexFuncSGIS, glDetailTexFuncSGIS)
  GLfloat* points = OGLM_GET_VARARGS(points,2,GLfloat,NV,n*2);
  glDetailTexFuncSGIS((GLenum )target, (GLsizei )n, (const GLfloat* )points);
  OGLM_CHECK_ERR(glDetailTexFuncSGIS, free(points);)
  free(points);
#line 13674 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDisable); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDisable)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "cap");
    {
	GLenum	cap = (int)SvIV(ST(0))
;
#line 6591 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDisable, )
  glDisable(cap);
  OGLM_CHECK_ERR(glDisable, )
#line 13694 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDisableClientState); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDisableClientState)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "array");
    {
	GLenum	array = (int)SvIV(ST(0))
;
#line 6600 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDisableClientState, )
  glDisableClientState(array);
  OGLM_CHECK_ERR(glDisableClientState, )
#line 13714 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDisableClientStateIndexedEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDisableClientStateIndexedEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "array, index");
    {
	GLenum	array = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 6610 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDisableClientStateIndexedEXT, )
  OGLM_AVAIL_CHECK(__glewDisableClientStateIndexedEXT, glDisableClientStateIndexedEXT)
  glDisableClientStateIndexedEXT(array, index);
  OGLM_CHECK_ERR(glDisableClientStateIndexedEXT, )
#line 13737 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDisableClientStateiEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDisableClientStateiEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "array, index");
    {
	GLenum	array = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 6621 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDisableClientStateiEXT, )
  OGLM_AVAIL_CHECK(__glewDisableClientStateiEXT, glDisableClientStateiEXT)
  glDisableClientStateiEXT(array, index);
  OGLM_CHECK_ERR(glDisableClientStateiEXT, )
#line 13760 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDisableDriverControlQCOM); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDisableDriverControlQCOM)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "driverControl");
    {
	GLuint	driverControl = (unsigned int)SvUV(ST(0))
;
#line 6631 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDisableDriverControlQCOM, )
  OGLM_AVAIL_CHECK(__glewDisableDriverControlQCOM, glDisableDriverControlQCOM)
  glDisableDriverControlQCOM(driverControl);
  OGLM_CHECK_ERR(glDisableDriverControlQCOM, )
#line 13781 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDisableVariantClientStateEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDisableVariantClientStateEXT)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "id");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
#line 6641 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDisableVariantClientStateEXT, )
  OGLM_AVAIL_CHECK(__glewDisableVariantClientStateEXT, glDisableVariantClientStateEXT)
  glDisableVariantClientStateEXT(id);
  OGLM_CHECK_ERR(glDisableVariantClientStateEXT, )
#line 13802 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDisableVertexArrayAttrib); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDisableVertexArrayAttrib)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "vaobj, index");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 6652 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDisableVertexArrayAttrib, )
  OGLM_AVAIL_CHECK(__glewDisableVertexArrayAttrib, glDisableVertexArrayAttrib)
  glDisableVertexArrayAttrib(vaobj, index);
  OGLM_CHECK_ERR(glDisableVertexArrayAttrib, )
#line 13825 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDisableVertexArrayAttribEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDisableVertexArrayAttribEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "vaobj, index");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 6663 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDisableVertexArrayAttribEXT, )
  OGLM_AVAIL_CHECK(__glewDisableVertexArrayAttribEXT, glDisableVertexArrayAttribEXT)
  glDisableVertexArrayAttribEXT(vaobj, index);
  OGLM_CHECK_ERR(glDisableVertexArrayAttribEXT, )
#line 13848 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDisableVertexArrayEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDisableVertexArrayEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "vaobj, array");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLenum	array = (int)SvIV(ST(1))
;
#line 6674 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDisableVertexArrayEXT, )
  OGLM_AVAIL_CHECK(__glewDisableVertexArrayEXT, glDisableVertexArrayEXT)
  glDisableVertexArrayEXT(vaobj, array);
  OGLM_CHECK_ERR(glDisableVertexArrayEXT, )
#line 13871 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDisableVertexAttribAPPLE); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDisableVertexAttribAPPLE)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "index, pname");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 6685 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDisableVertexAttribAPPLE, )
  OGLM_AVAIL_CHECK(__glewDisableVertexAttribAPPLE, glDisableVertexAttribAPPLE)
  glDisableVertexAttribAPPLE(index, pname);
  OGLM_CHECK_ERR(glDisableVertexAttribAPPLE, )
#line 13894 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDisableVertexAttribArray); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDisableVertexAttribArray)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "index");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 6697 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDisableVertexAttribArray, )
  OGLM_AVAIL_CHECK(__glewDisableVertexAttribArray, glDisableVertexAttribArray)
  glDisableVertexAttribArray(index);
  OGLM_CHECK_ERR(glDisableVertexAttribArray, )
#line 13916 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDisablei); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDisablei)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, index");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 6712 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDisablei, )
  OGLM_AVAIL_CHECK(__glewDisablei, glDisablei)
  glDisablei(target, index);
  OGLM_CHECK_ERR(glDisablei, )
#line 13940 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDisableiOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDisableiOES)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, index");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 6723 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDisableiOES, )
  OGLM_AVAIL_CHECK(__glewDisableiOES, glDisableiOES)
  glDisableiOES(target, index);
  OGLM_CHECK_ERR(glDisableiOES, )
#line 13963 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDiscardFramebufferEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDiscardFramebufferEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, numAttachments, attachments");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	numAttachments = (int)SvIV(ST(1))
;
	const GLenum*	attachments = INT2PTR(const GLenum *,SvIV(ST(2)))
;
#line 6735 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDiscardFramebufferEXT, )
  OGLM_AVAIL_CHECK(__glewDiscardFramebufferEXT, glDiscardFramebufferEXT)
  glDiscardFramebufferEXT(target, numAttachments, attachments);
  OGLM_CHECK_ERR(glDiscardFramebufferEXT, )
#line 13988 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDiscardFramebufferEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDiscardFramebufferEXT_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "target, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
#line 6745 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDiscardFramebufferEXT, )
  OGLM_AVAIL_CHECK(__glewDiscardFramebufferEXT, glDiscardFramebufferEXT)
  GLsizei numAttachments = items-1;
  GLenum* attachments = OGLM_GET_VARARGS(attachments,1,GLenum,IV,numAttachments);
  glDiscardFramebufferEXT((GLenum )target, (GLsizei )numAttachments, (const GLenum* )attachments);
  OGLM_CHECK_ERR(glDiscardFramebufferEXT, free(attachments);)
  free(attachments);
#line 14012 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDispatchCompute); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDispatchCompute)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "num_groups_x, num_groups_y, num_groups_z");
    {
	GLuint	num_groups_x = (unsigned int)SvUV(ST(0))
;
	GLuint	num_groups_y = (unsigned int)SvUV(ST(1))
;
	GLuint	num_groups_z = (unsigned int)SvUV(ST(2))
;
#line 6760 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDispatchCompute, )
  OGLM_AVAIL_CHECK(__glewDispatchCompute, glDispatchCompute)
  glDispatchCompute(num_groups_x, num_groups_y, num_groups_z);
  OGLM_CHECK_ERR(glDispatchCompute, )
#line 14037 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDispatchComputeGroupSizeARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDispatchComputeGroupSizeARB)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "num_groups_x, num_groups_y, num_groups_z, group_size_x, group_size_y, group_size_z");
    {
	GLuint	num_groups_x = (unsigned int)SvUV(ST(0))
;
	GLuint	num_groups_y = (unsigned int)SvUV(ST(1))
;
	GLuint	num_groups_z = (unsigned int)SvUV(ST(2))
;
	GLuint	group_size_x = (unsigned int)SvUV(ST(3))
;
	GLuint	group_size_y = (unsigned int)SvUV(ST(4))
;
	GLuint	group_size_z = (unsigned int)SvUV(ST(5))
;
#line 6775 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDispatchComputeGroupSizeARB, )
  OGLM_AVAIL_CHECK(__glewDispatchComputeGroupSizeARB, glDispatchComputeGroupSizeARB)
  glDispatchComputeGroupSizeARB(num_groups_x, num_groups_y, num_groups_z, group_size_x, group_size_y, group_size_z);
  OGLM_CHECK_ERR(glDispatchComputeGroupSizeARB, )
#line 14068 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDispatchComputeIndirect); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDispatchComputeIndirect)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "indirect");
    {
	GLintptr	indirect = (unsigned int)SvUV(ST(0))
;
#line 6785 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDispatchComputeIndirect, )
  OGLM_AVAIL_CHECK(__glewDispatchComputeIndirect, glDispatchComputeIndirect)
  glDispatchComputeIndirect(indirect);
  OGLM_CHECK_ERR(glDispatchComputeIndirect, )
#line 14089 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawArrays); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawArrays)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "mode, first, count");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	GLint	first = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
#line 6799 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawArrays, )
  glDrawArrays(mode, first, count);
  OGLM_CHECK_ERR(glDrawArrays, )
#line 14114 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawArraysIndirect_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawArraysIndirect_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "mode, indirect");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	const void *	indirect = INT2PTR(const void *,SvIV(ST(1)))
;
#line 6809 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawArraysIndirect, )
  OGLM_AVAIL_CHECK(__glewDrawArraysIndirect, glDrawArraysIndirect)
  glDrawArraysIndirect(mode, indirect);
  OGLM_CHECK_ERR(glDrawArraysIndirect, )
#line 14137 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawArraysInstanced); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawArraysInstanced)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "mode, first, count, instancecount");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	GLint	first = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLsizei	instancecount = (int)SvIV(ST(3))
;
#line 6827 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawArraysInstanced, )
  OGLM_AVAIL_CHECK(__glewDrawArraysInstanced, glDrawArraysInstanced)
  glDrawArraysInstanced(mode, first, count, instancecount);
  OGLM_CHECK_ERR(glDrawArraysInstanced, )
#line 14165 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawArraysInstancedBaseInstance); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawArraysInstancedBaseInstance)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "mode, first, count, instancecount, baseinstance");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	GLint	first = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLsizei	instancecount = (int)SvIV(ST(3))
;
	GLuint	baseinstance = (unsigned int)SvUV(ST(4))
;
#line 6843 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawArraysInstancedBaseInstance, )
  OGLM_AVAIL_CHECK(__glewDrawArraysInstancedBaseInstance, glDrawArraysInstancedBaseInstance)
  glDrawArraysInstancedBaseInstance(mode, first, count, instancecount, baseinstance);
  OGLM_CHECK_ERR(glDrawArraysInstancedBaseInstance, )
#line 14195 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawBuffer); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawBuffer)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "buf");
    {
	GLenum	buf = (int)SvIV(ST(0))
;
#line 6853 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawBuffer, )
  glDrawBuffer(buf);
  OGLM_CHECK_ERR(glDrawBuffer, )
#line 14215 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawBufferRegion); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawBufferRegion)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "region, x, y, width, height, xDest, yDest");
    {
	GLuint	region = (unsigned int)SvUV(ST(0))
;
	GLint	x = (int)SvIV(ST(1))
;
	GLint	y = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
	GLint	xDest = (int)SvIV(ST(5))
;
	GLint	yDest = (int)SvIV(ST(6))
;
#line 6868 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawBufferRegion, )
  OGLM_AVAIL_CHECK(__glewDrawBufferRegion, glDrawBufferRegion)
  glDrawBufferRegion(region, x, y, width, height, xDest, yDest);
  OGLM_CHECK_ERR(glDrawBufferRegion, )
#line 14248 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawBuffers_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawBuffers_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "n, bufs");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	const GLenum*	bufs = INT2PTR(const GLenum *,SvIV(ST(1)))
;
#line 6883 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawBuffers, )
  OGLM_AVAIL_CHECK(__glewDrawBuffers, glDrawBuffers)
  glDrawBuffers(n, bufs);
  OGLM_CHECK_ERR(glDrawBuffers, )
#line 14272 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawBuffers_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawBuffers_p)
{
    dVAR; dXSARGS;
    dXSI32;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 6896 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawBuffers, )
  OGLM_AVAIL_CHECK(__glewDrawBuffers, glDrawBuffers)
  GLsizei n = items;
  GLenum* bufs = OGLM_GET_VARARGS(bufs,0,GLenum,IV,n);
  glDrawBuffers((GLsizei )n, (const GLenum* )bufs);
  OGLM_CHECK_ERR(glDrawBuffers, free(bufs);)
  free(bufs);
#line 14295 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawBuffersIndexedEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawBuffersIndexedEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "n, location, indices");
    {
	GLint	n = (int)SvIV(ST(0))
;
	const GLenum*	location = INT2PTR(const GLenum *,SvIV(ST(1)))
;
	const GLint *	indices = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 6911 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawBuffersIndexedEXT, )
  OGLM_AVAIL_CHECK(__glewDrawBuffersIndexedEXT, glDrawBuffersIndexedEXT)
  glDrawBuffersIndexedEXT(n, location, indices);
  OGLM_CHECK_ERR(glDrawBuffersIndexedEXT, )
#line 14320 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawBuffersIndexedEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawBuffersIndexedEXT_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "locationSV, indicesSV");
    {
	SV *	locationSV = ST(0)
;
	SV *	indicesSV = ST(1)
;
#line 6922 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawBuffersIndexedEXT, )
  OGLM_AVAIL_CHECK(__glewDrawBuffersIndexedEXT, glDrawBuffersIndexedEXT)
  GLint n = OGLM_LEN_ARRAY(n, location);
  GLint *indices = OGLM_GET_ARRAY(indices, GLint, IV, n);
  GLenum* location = OGLM_GET_ARRAY(location, GLenum, IV, n);
  glDrawBuffersIndexedEXT((GLint )n, (const GLenum* )location, (const GLint *)indices);
  OGLM_CHECK_ERR(glDrawBuffersIndexedEXT, free(indices);free(location);)
  free(indices);free(location);
#line 14347 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawBuffersNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawBuffersNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, bufs");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	const GLenum*	bufs = INT2PTR(const GLenum *,SvIV(ST(1)))
;
#line 6937 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawBuffersNV, )
  OGLM_AVAIL_CHECK(__glewDrawBuffersNV, glDrawBuffersNV)
  glDrawBuffersNV(n, bufs);
  OGLM_CHECK_ERR(glDrawBuffersNV, )
#line 14370 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawBuffersNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawBuffersNV_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 6946 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawBuffersNV, )
  OGLM_AVAIL_CHECK(__glewDrawBuffersNV, glDrawBuffersNV)
  GLsizei n = items;
  GLenum* bufs = OGLM_GET_VARARGS(bufs,0,GLenum,IV,n);
  glDrawBuffersNV((GLsizei )n, (const GLenum* )bufs);
  OGLM_CHECK_ERR(glDrawBuffersNV, free(bufs);)
  free(bufs);
#line 14392 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawCommandsAddressNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawCommandsAddressNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "primitiveMode, indirects, sizes, count");
    {
	GLenum	primitiveMode = (int)SvIV(ST(0))
;
	const GLuint64*	indirects = INT2PTR(const GLuint64 *,SvIV(ST(1)))
;
	const GLsizei*	sizes = INT2PTR(const GLsizei *,SvIV(ST(2)))
;
	GLuint	count = (unsigned int)SvUV(ST(3))
;
#line 6962 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawCommandsAddressNV, )
  OGLM_AVAIL_CHECK(__glewDrawCommandsAddressNV, glDrawCommandsAddressNV)
  glDrawCommandsAddressNV(primitiveMode, indirects, sizes, count);
  OGLM_CHECK_ERR(glDrawCommandsAddressNV, )
#line 14419 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawCommandsNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawCommandsNV_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "primitiveMode, buffer, indirects, sizes, count");
    {
	GLenum	primitiveMode = (int)SvIV(ST(0))
;
	GLuint	buffer = (unsigned int)SvUV(ST(1))
;
	const GLintptr*	indirects = INT2PTR(const GLintptr *,SvIV(ST(2)))
;
	const GLsizei*	sizes = INT2PTR(const GLsizei *,SvIV(ST(3)))
;
	GLuint	count = (unsigned int)SvUV(ST(4))
;
#line 6976 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawCommandsNV, )
  OGLM_AVAIL_CHECK(__glewDrawCommandsNV, glDrawCommandsNV)
  glDrawCommandsNV(primitiveMode, buffer, indirects, sizes, count);
  OGLM_CHECK_ERR(glDrawCommandsNV, )
#line 14448 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawCommandsStatesAddressNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawCommandsStatesAddressNV_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "indirects, sizes, states, fbos, count");
    {
	const GLuint64*	indirects = INT2PTR(const GLuint64 *,SvIV(ST(0)))
;
	const GLsizei*	sizes = INT2PTR(const GLsizei *,SvIV(ST(1)))
;
	const GLuint*	states = INT2PTR(const GLuint *,SvIV(ST(2)))
;
	const GLuint*	fbos = INT2PTR(const GLuint *,SvIV(ST(3)))
;
	GLuint	count = (unsigned int)SvUV(ST(4))
;
#line 6990 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawCommandsStatesAddressNV, )
  OGLM_AVAIL_CHECK(__glewDrawCommandsStatesAddressNV, glDrawCommandsStatesAddressNV)
  glDrawCommandsStatesAddressNV(indirects, sizes, states, fbos, count);
  OGLM_CHECK_ERR(glDrawCommandsStatesAddressNV, )
#line 14477 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawCommandsStatesNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawCommandsStatesNV_c)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "buffer, indirects, sizes, states, fbos, count");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	const GLintptr*	indirects = INT2PTR(const GLintptr *,SvIV(ST(1)))
;
	const GLsizei*	sizes = INT2PTR(const GLsizei *,SvIV(ST(2)))
;
	const GLuint*	states = INT2PTR(const GLuint *,SvIV(ST(3)))
;
	const GLuint*	fbos = INT2PTR(const GLuint *,SvIV(ST(4)))
;
	GLuint	count = (unsigned int)SvUV(ST(5))
;
#line 7005 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawCommandsStatesNV, )
  OGLM_AVAIL_CHECK(__glewDrawCommandsStatesNV, glDrawCommandsStatesNV)
  glDrawCommandsStatesNV(buffer, indirects, sizes, states, fbos, count);
  OGLM_CHECK_ERR(glDrawCommandsStatesNV, )
#line 14508 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawElementArrayAPPLE); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawElementArrayAPPLE)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "mode, first, count");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	GLint	first = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
#line 7017 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawElementArrayAPPLE, )
  OGLM_AVAIL_CHECK(__glewDrawElementArrayAPPLE, glDrawElementArrayAPPLE)
  glDrawElementArrayAPPLE(mode, first, count);
  OGLM_CHECK_ERR(glDrawElementArrayAPPLE, )
#line 14533 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawElementArrayATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawElementArrayATI)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "mode, count");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 7028 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawElementArrayATI, )
  OGLM_AVAIL_CHECK(__glewDrawElementArrayATI, glDrawElementArrayATI)
  glDrawElementArrayATI(mode, count);
  OGLM_CHECK_ERR(glDrawElementArrayATI, )
#line 14556 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawElements_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawElements_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "mode, count, type, indices");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLenum	type = (int)SvIV(ST(2))
;
	const void *	indices = INT2PTR(const void *,SvIV(ST(3)))
;
#line 7041 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawElements, )
  glDrawElements(mode, count, type, indices);
  OGLM_CHECK_ERR(glDrawElements, )
#line 14582 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawElementsBaseVertex_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawElementsBaseVertex_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "mode, count, type, indices, basevertex");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLenum	type = (int)SvIV(ST(2))
;
	const void *	indices = INT2PTR(const void *,SvIV(ST(3)))
;
	GLint	basevertex = (int)SvIV(ST(4))
;
#line 7056 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawElementsBaseVertex, )
  OGLM_AVAIL_CHECK(__glewDrawElementsBaseVertex, glDrawElementsBaseVertex)
  glDrawElementsBaseVertex(mode, count, type, indices, basevertex);
  OGLM_CHECK_ERR(glDrawElementsBaseVertex, )
#line 14612 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawElementsIndirect_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawElementsIndirect_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "mode, type, indirect");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	const void *	indirect = INT2PTR(const void *,SvIV(ST(2)))
;
#line 7068 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawElementsIndirect, )
  OGLM_AVAIL_CHECK(__glewDrawElementsIndirect, glDrawElementsIndirect)
  glDrawElementsIndirect(mode, type, indirect);
  OGLM_CHECK_ERR(glDrawElementsIndirect, )
#line 14637 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawElementsInstanced_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawElementsInstanced_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "mode, count, type, indices, instancecount");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLenum	type = (int)SvIV(ST(2))
;
	const void*	indices = INT2PTR(const void *,SvIV(ST(3)))
;
	GLsizei	instancecount = (int)SvIV(ST(4))
;
#line 7087 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawElementsInstanced, )
  OGLM_AVAIL_CHECK(__glewDrawElementsInstanced, glDrawElementsInstanced)
  glDrawElementsInstanced(mode, count, type, indices, instancecount);
  OGLM_CHECK_ERR(glDrawElementsInstanced, )
#line 14667 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawElementsInstancedBaseInstance_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawElementsInstancedBaseInstance_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 6)
       croak_xs_usage(cv,  "mode, count, type, indices, instancecount, baseinstance");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLenum	type = (int)SvIV(ST(2))
;
	const void *	indices = INT2PTR(const void *,SvIV(ST(3)))
;
	GLsizei	instancecount = (int)SvIV(ST(4))
;
	GLuint	baseinstance = (unsigned int)SvUV(ST(5))
;
#line 7104 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawElementsInstancedBaseInstance, )
  OGLM_AVAIL_CHECK(__glewDrawElementsInstancedBaseInstance, glDrawElementsInstancedBaseInstance)
  glDrawElementsInstancedBaseInstance(mode, count, type, indices, instancecount, baseinstance);
  OGLM_CHECK_ERR(glDrawElementsInstancedBaseInstance, )
#line 14699 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawElementsInstancedBaseVertex_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawElementsInstancedBaseVertex_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 6)
       croak_xs_usage(cv,  "mode, count, type, indices, instancecount, basevertex");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLenum	type = (int)SvIV(ST(2))
;
	const void *	indices = INT2PTR(const void *,SvIV(ST(3)))
;
	GLsizei	instancecount = (int)SvIV(ST(4))
;
	GLint	basevertex = (int)SvIV(ST(5))
;
#line 7121 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawElementsInstancedBaseVertex, )
  OGLM_AVAIL_CHECK(__glewDrawElementsInstancedBaseVertex, glDrawElementsInstancedBaseVertex)
  glDrawElementsInstancedBaseVertex(mode, count, type, indices, instancecount, basevertex);
  OGLM_CHECK_ERR(glDrawElementsInstancedBaseVertex, )
#line 14731 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawElementsInstancedBaseVertexBaseInstance_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawElementsInstancedBaseVertexBaseInstance_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 7)
       croak_xs_usage(cv,  "mode, count, type, indices, instancecount, basevertex, baseinstance");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLenum	type = (int)SvIV(ST(2))
;
	const void *	indices = INT2PTR(const void *,SvIV(ST(3)))
;
	GLsizei	instancecount = (int)SvIV(ST(4))
;
	GLint	basevertex = (int)SvIV(ST(5))
;
	GLuint	baseinstance = (unsigned int)SvUV(ST(6))
;
#line 7139 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawElementsInstancedBaseVertexBaseInstance, )
  OGLM_AVAIL_CHECK(__glewDrawElementsInstancedBaseVertexBaseInstance, glDrawElementsInstancedBaseVertexBaseInstance)
  glDrawElementsInstancedBaseVertexBaseInstance(mode, count, type, indices, instancecount, basevertex, baseinstance);
  OGLM_CHECK_ERR(glDrawElementsInstancedBaseVertexBaseInstance, )
#line 14765 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawMeshTasksEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawMeshTasksEXT)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "num_groups_x, num_groups_y, num_groups_z");
    {
	GLuint	num_groups_x = (unsigned int)SvUV(ST(0))
;
	GLuint	num_groups_y = (unsigned int)SvUV(ST(1))
;
	GLuint	num_groups_z = (unsigned int)SvUV(ST(2))
;
#line 7151 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawMeshTasksEXT, )
  OGLM_AVAIL_CHECK(__glewDrawMeshTasksEXT, glDrawMeshTasksEXT)
  glDrawMeshTasksEXT(num_groups_x, num_groups_y, num_groups_z);
  OGLM_CHECK_ERR(glDrawMeshTasksEXT, )
#line 14790 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawMeshTasksIndirectEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawMeshTasksIndirectEXT)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "indirect");
    {
	GLintptr	indirect = (unsigned int)SvUV(ST(0))
;
#line 7161 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawMeshTasksIndirectEXT, )
  OGLM_AVAIL_CHECK(__glewDrawMeshTasksIndirectEXT, glDrawMeshTasksIndirectEXT)
  glDrawMeshTasksIndirectEXT(indirect);
  OGLM_CHECK_ERR(glDrawMeshTasksIndirectEXT, )
#line 14811 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawMeshTasksIndirectNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawMeshTasksIndirectNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "indirect");
    {
	GLintptr	indirect = (unsigned int)SvUV(ST(0))
;
#line 7171 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawMeshTasksIndirectNV, )
  OGLM_AVAIL_CHECK(__glewDrawMeshTasksIndirectNV, glDrawMeshTasksIndirectNV)
  glDrawMeshTasksIndirectNV(indirect);
  OGLM_CHECK_ERR(glDrawMeshTasksIndirectNV, )
#line 14832 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawMeshTasksNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawMeshTasksNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "first, count");
    {
	GLuint	first = (unsigned int)SvUV(ST(0))
;
	GLuint	count = (unsigned int)SvUV(ST(1))
;
#line 7182 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawMeshTasksNV, )
  OGLM_AVAIL_CHECK(__glewDrawMeshTasksNV, glDrawMeshTasksNV)
  glDrawMeshTasksNV(first, count);
  OGLM_CHECK_ERR(glDrawMeshTasksNV, )
#line 14855 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawPixels_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawPixels_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "width, height, format, type, pixels");
    {
	GLsizei	width = (int)SvIV(ST(0))
;
	GLsizei	height = (int)SvIV(ST(1))
;
	GLenum	format = (int)SvIV(ST(2))
;
	GLenum	type = (int)SvIV(ST(3))
;
	const void *	pixels = INT2PTR(const void *,SvIV(ST(4)))
;
#line 7196 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawPixels, )
  glDrawPixels(width, height, format, type, pixels);
  OGLM_CHECK_ERR(glDrawPixels, )
#line 14883 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawRangeElementArrayAPPLE); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawRangeElementArrayAPPLE)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "mode, start, end, first, count");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	GLuint	start = (unsigned int)SvUV(ST(1))
;
	GLuint	end = (unsigned int)SvUV(ST(2))
;
	GLint	first = (int)SvIV(ST(3))
;
	GLsizei	count = (int)SvIV(ST(4))
;
#line 7209 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawRangeElementArrayAPPLE, )
  OGLM_AVAIL_CHECK(__glewDrawRangeElementArrayAPPLE, glDrawRangeElementArrayAPPLE)
  glDrawRangeElementArrayAPPLE(mode, start, end, first, count);
  OGLM_CHECK_ERR(glDrawRangeElementArrayAPPLE, )
#line 14912 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawRangeElementArrayATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawRangeElementArrayATI)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "mode, start, end, count");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	GLuint	start = (unsigned int)SvUV(ST(1))
;
	GLuint	end = (unsigned int)SvUV(ST(2))
;
	GLsizei	count = (int)SvIV(ST(3))
;
#line 7222 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawRangeElementArrayATI, )
  OGLM_AVAIL_CHECK(__glewDrawRangeElementArrayATI, glDrawRangeElementArrayATI)
  glDrawRangeElementArrayATI(mode, start, end, count);
  OGLM_CHECK_ERR(glDrawRangeElementArrayATI, )
#line 14939 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawRangeElements_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawRangeElements_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 6)
       croak_xs_usage(cv,  "mode, start, end, count, type, indices");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	GLuint	start = (unsigned int)SvUV(ST(1))
;
	GLuint	end = (unsigned int)SvUV(ST(2))
;
	GLsizei	count = (int)SvIV(ST(3))
;
	GLenum	type = (int)SvIV(ST(4))
;
	const void *	indices = INT2PTR(const void *,SvIV(ST(5)))
;
#line 7239 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawRangeElements, )
  OGLM_AVAIL_CHECK(__glewDrawRangeElements, glDrawRangeElements)
  glDrawRangeElements(mode, start, end, count, type, indices);
  OGLM_CHECK_ERR(glDrawRangeElements, )
#line 14971 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawRangeElementsBaseVertex_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawRangeElementsBaseVertex_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 7)
       croak_xs_usage(cv,  "mode, start, end, count, type, indices, basevertex");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	GLuint	start = (unsigned int)SvUV(ST(1))
;
	GLuint	end = (unsigned int)SvUV(ST(2))
;
	GLsizei	count = (int)SvIV(ST(3))
;
	GLenum	type = (int)SvIV(ST(4))
;
	const void *	indices = INT2PTR(const void *,SvIV(ST(5)))
;
	GLint	basevertex = (int)SvIV(ST(6))
;
#line 7257 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawRangeElementsBaseVertex, )
  OGLM_AVAIL_CHECK(__glewDrawRangeElementsBaseVertex, glDrawRangeElementsBaseVertex)
  glDrawRangeElementsBaseVertex(mode, start, end, count, type, indices, basevertex);
  OGLM_CHECK_ERR(glDrawRangeElementsBaseVertex, )
#line 15005 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawTextureNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawTextureNV)
{
    dVAR; dXSARGS;
    if (items != 11)
       croak_xs_usage(cv,  "texture, sampler, x0, y0, x1, y1, z, s0, t0, s1, t1");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLuint	sampler = (unsigned int)SvUV(ST(1))
;
	GLfloat	x0 = (float)SvNV(ST(2))
;
	GLfloat	y0 = (float)SvNV(ST(3))
;
	GLfloat	x1 = (float)SvNV(ST(4))
;
	GLfloat	y1 = (float)SvNV(ST(5))
;
	GLfloat	z = (float)SvNV(ST(6))
;
	GLfloat	s0 = (float)SvNV(ST(7))
;
	GLfloat	t0 = (float)SvNV(ST(8))
;
	GLfloat	s1 = (float)SvNV(ST(9))
;
	GLfloat	t1 = (float)SvNV(ST(10))
;
#line 7277 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawTextureNV, )
  OGLM_AVAIL_CHECK(__glewDrawTextureNV, glDrawTextureNV)
  glDrawTextureNV(texture, sampler, x0, y0, x1, y1, z, s0, t0, s1, t1);
  OGLM_CHECK_ERR(glDrawTextureNV, )
#line 15046 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawTransformFeedback); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawTransformFeedback)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "mode, id");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	GLuint	id = (unsigned int)SvUV(ST(1))
;
#line 7291 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawTransformFeedback, )
  OGLM_AVAIL_CHECK(__glewDrawTransformFeedback, glDrawTransformFeedback)
  glDrawTransformFeedback(mode, id);
  OGLM_CHECK_ERR(glDrawTransformFeedback, )
#line 15070 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawTransformFeedbackInstanced); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawTransformFeedbackInstanced)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "mode, id, instancecount");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	GLuint	id = (unsigned int)SvUV(ST(1))
;
	GLsizei	instancecount = (int)SvIV(ST(2))
;
#line 7305 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawTransformFeedbackInstanced, )
  OGLM_AVAIL_CHECK(__glewDrawTransformFeedbackInstanced, glDrawTransformFeedbackInstanced)
  glDrawTransformFeedbackInstanced(mode, id, instancecount);
  OGLM_CHECK_ERR(glDrawTransformFeedbackInstanced, )
#line 15096 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawTransformFeedbackStream); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawTransformFeedbackStream)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "mode, id, stream");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	GLuint	id = (unsigned int)SvUV(ST(1))
;
	GLuint	stream = (unsigned int)SvUV(ST(2))
;
#line 7317 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawTransformFeedbackStream, )
  OGLM_AVAIL_CHECK(__glewDrawTransformFeedbackStream, glDrawTransformFeedbackStream)
  glDrawTransformFeedbackStream(mode, id, stream);
  OGLM_CHECK_ERR(glDrawTransformFeedbackStream, )
#line 15121 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawTransformFeedbackStreamInstanced); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawTransformFeedbackStreamInstanced)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "mode, id, stream, instancecount");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	GLuint	id = (unsigned int)SvUV(ST(1))
;
	GLuint	stream = (unsigned int)SvUV(ST(2))
;
	GLsizei	instancecount = (int)SvIV(ST(3))
;
#line 7330 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawTransformFeedbackStreamInstanced, )
  OGLM_AVAIL_CHECK(__glewDrawTransformFeedbackStreamInstanced, glDrawTransformFeedbackStreamInstanced)
  glDrawTransformFeedbackStreamInstanced(mode, id, stream, instancecount);
  OGLM_CHECK_ERR(glDrawTransformFeedbackStreamInstanced, )
#line 15148 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glDrawVkImageNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glDrawVkImageNV)
{
    dVAR; dXSARGS;
    if (items != 11)
       croak_xs_usage(cv,  "vkImage, sampler, x0, y0, x1, y1, z, s0, t0, s1, t1");
    {
	GLuint64	vkImage = (unsigned int)SvUV(ST(0))
;
	GLuint	sampler = (unsigned int)SvUV(ST(1))
;
	GLfloat	x0 = (float)SvNV(ST(2))
;
	GLfloat	y0 = (float)SvNV(ST(3))
;
	GLfloat	x1 = (float)SvNV(ST(4))
;
	GLfloat	y1 = (float)SvNV(ST(5))
;
	GLfloat	z = (float)SvNV(ST(6))
;
	GLfloat	s0 = (float)SvNV(ST(7))
;
	GLfloat	t0 = (float)SvNV(ST(8))
;
	GLfloat	s1 = (float)SvNV(ST(9))
;
	GLfloat	t1 = (float)SvNV(ST(10))
;
#line 7350 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glDrawVkImageNV, )
  OGLM_AVAIL_CHECK(__glewDrawVkImageNV, glDrawVkImageNV)
  glDrawVkImageNV(vkImage, sampler, x0, y0, x1, y1, z, s0, t0, s1, t1);
  OGLM_CHECK_ERR(glDrawVkImageNV, )
#line 15189 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEGLImageTargetRenderbufferStorageOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEGLImageTargetRenderbufferStorageOES)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, image");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLeglImageOES	image = INT2PTR(GLeglImageOES,SvIV(ST(1)))
;
#line 7361 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEGLImageTargetRenderbufferStorageOES, )
  OGLM_AVAIL_CHECK(__glewEGLImageTargetRenderbufferStorageOES, glEGLImageTargetRenderbufferStorageOES)
  glEGLImageTargetRenderbufferStorageOES(target, image);
  OGLM_CHECK_ERR(glEGLImageTargetRenderbufferStorageOES, )
#line 15212 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEGLImageTargetTexStorageEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEGLImageTargetTexStorageEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, image, attrib_list");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLeglImageOES	image = INT2PTR(GLeglImageOES,SvIV(ST(1)))
;
	const GLint*	attrib_list = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 7373 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEGLImageTargetTexStorageEXT, )
  OGLM_AVAIL_CHECK(__glewEGLImageTargetTexStorageEXT, glEGLImageTargetTexStorageEXT)
  glEGLImageTargetTexStorageEXT(target, image, attrib_list);
  OGLM_CHECK_ERR(glEGLImageTargetTexStorageEXT, )
#line 15237 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEGLImageTargetTexture2DOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEGLImageTargetTexture2DOES)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, image");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLeglImageOES	image = INT2PTR(GLeglImageOES,SvIV(ST(1)))
;
#line 7384 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEGLImageTargetTexture2DOES, )
  OGLM_AVAIL_CHECK(__glewEGLImageTargetTexture2DOES, glEGLImageTargetTexture2DOES)
  glEGLImageTargetTexture2DOES(target, image);
  OGLM_CHECK_ERR(glEGLImageTargetTexture2DOES, )
#line 15260 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEGLImageTargetTextureStorageEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEGLImageTargetTextureStorageEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texture, image, attrib_list");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLeglImageOES	image = INT2PTR(GLeglImageOES,SvIV(ST(1)))
;
	const GLint*	attrib_list = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 7396 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEGLImageTargetTextureStorageEXT, )
  OGLM_AVAIL_CHECK(__glewEGLImageTargetTextureStorageEXT, glEGLImageTargetTextureStorageEXT)
  glEGLImageTargetTextureStorageEXT(texture, image, attrib_list);
  OGLM_CHECK_ERR(glEGLImageTargetTextureStorageEXT, )
#line 15285 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEdgeFlag); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEdgeFlag)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "flag");
    {
	GLboolean	flag = (int)SvIV(ST(0))
;
#line 7406 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEdgeFlag, )
  glEdgeFlag(flag);
  OGLM_CHECK_ERR(glEdgeFlag, )
#line 15305 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEdgeFlagFormatNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEdgeFlagFormatNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "stride");
    {
	GLsizei	stride = (int)SvIV(ST(0))
;
#line 7415 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEdgeFlagFormatNV, )
  OGLM_AVAIL_CHECK(__glewEdgeFlagFormatNV, glEdgeFlagFormatNV)
  glEdgeFlagFormatNV(stride);
  OGLM_CHECK_ERR(glEdgeFlagFormatNV, )
#line 15326 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEdgeFlagPointer_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEdgeFlagPointer_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "stride, pointer");
    {
	GLsizei	stride = (int)SvIV(ST(0))
;
	const void *	pointer = INT2PTR(const void *,SvIV(ST(1)))
;
#line 7426 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEdgeFlagPointer, )
  glEdgeFlagPointer(stride, pointer);
  OGLM_CHECK_ERR(glEdgeFlagPointer, )
#line 15348 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEdgeFlagPointerEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEdgeFlagPointerEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "stride, count, pointer");
    {
	GLsizei	stride = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLboolean*	pointer = INT2PTR(const GLboolean *,SvIV(ST(2)))
;
#line 7437 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEdgeFlagPointerEXT, )
  OGLM_AVAIL_CHECK(__glewEdgeFlagPointerEXT, glEdgeFlagPointerEXT)
  glEdgeFlagPointerEXT(stride, count, pointer);
  OGLM_CHECK_ERR(glEdgeFlagPointerEXT, )
#line 15373 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEdgeFlagPointerListIBM_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEdgeFlagPointerListIBM_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "stride, pointer, ptrstride");
    {
	GLint	stride = (int)SvIV(ST(0))
;
	const GLboolean **	pointer = INT2PTR(const GLboolean **,SvIV(ST(1)))
;
	GLint	ptrstride = (int)SvIV(ST(2))
;
#line 7449 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEdgeFlagPointerListIBM, )
  OGLM_AVAIL_CHECK(__glewEdgeFlagPointerListIBM, glEdgeFlagPointerListIBM)
  glEdgeFlagPointerListIBM(stride, pointer, ptrstride);
  OGLM_CHECK_ERR(glEdgeFlagPointerListIBM, )
#line 15398 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEdgeFlagv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEdgeFlagv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "flag");
    {
	const GLboolean *	flag = INT2PTR(const GLboolean *,SvIV(ST(0)))
;
#line 7459 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEdgeFlagv, )
  glEdgeFlagv(flag);
  OGLM_CHECK_ERR(glEdgeFlagv, )
#line 15418 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEdgeFlagv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEdgeFlagv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 7467 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEdgeFlagv, )
  GLboolean *flag = OGLM_GET_VARARGS(flag,0,GLboolean,IV,1);
  glEdgeFlagv((const GLboolean *)flag);
  OGLM_CHECK_ERR(glEdgeFlagv, free(flag);)
  free(flag);
#line 15438 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glElementPointerAPPLE_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glElementPointerAPPLE_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "type, pointer");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	const void *	pointer = INT2PTR(const void *,SvIV(ST(1)))
;
#line 7479 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glElementPointerAPPLE, )
  OGLM_AVAIL_CHECK(__glewElementPointerAPPLE, glElementPointerAPPLE)
  glElementPointerAPPLE(type, pointer);
  OGLM_CHECK_ERR(glElementPointerAPPLE, )
#line 15461 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glElementPointerATI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glElementPointerATI_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "type, pointer");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	const void *	pointer = INT2PTR(const void *,SvIV(ST(1)))
;
#line 7490 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glElementPointerATI, )
  OGLM_AVAIL_CHECK(__glewElementPointerATI, glElementPointerATI)
  glElementPointerATI(type, pointer);
  OGLM_CHECK_ERR(glElementPointerATI, )
#line 15484 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEnable); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEnable)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "cap");
    {
	GLenum	cap = (int)SvIV(ST(0))
;
#line 7500 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEnable, )
  glEnable(cap);
  OGLM_CHECK_ERR(glEnable, )
#line 15504 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEnableClientState); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEnableClientState)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "array");
    {
	GLenum	array = (int)SvIV(ST(0))
;
#line 7509 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEnableClientState, )
  glEnableClientState(array);
  OGLM_CHECK_ERR(glEnableClientState, )
#line 15524 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEnableClientStateIndexedEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEnableClientStateIndexedEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "array, index");
    {
	GLenum	array = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 7519 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEnableClientStateIndexedEXT, )
  OGLM_AVAIL_CHECK(__glewEnableClientStateIndexedEXT, glEnableClientStateIndexedEXT)
  glEnableClientStateIndexedEXT(array, index);
  OGLM_CHECK_ERR(glEnableClientStateIndexedEXT, )
#line 15547 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEnableClientStateiEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEnableClientStateiEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "array, index");
    {
	GLenum	array = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 7530 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEnableClientStateiEXT, )
  OGLM_AVAIL_CHECK(__glewEnableClientStateiEXT, glEnableClientStateiEXT)
  glEnableClientStateiEXT(array, index);
  OGLM_CHECK_ERR(glEnableClientStateiEXT, )
#line 15570 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEnableDriverControlQCOM); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEnableDriverControlQCOM)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "driverControl");
    {
	GLuint	driverControl = (unsigned int)SvUV(ST(0))
;
#line 7540 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEnableDriverControlQCOM, )
  OGLM_AVAIL_CHECK(__glewEnableDriverControlQCOM, glEnableDriverControlQCOM)
  glEnableDriverControlQCOM(driverControl);
  OGLM_CHECK_ERR(glEnableDriverControlQCOM, )
#line 15591 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEnableVariantClientStateEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEnableVariantClientStateEXT)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "id");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
#line 7550 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEnableVariantClientStateEXT, )
  OGLM_AVAIL_CHECK(__glewEnableVariantClientStateEXT, glEnableVariantClientStateEXT)
  glEnableVariantClientStateEXT(id);
  OGLM_CHECK_ERR(glEnableVariantClientStateEXT, )
#line 15612 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEnableVertexArrayAttrib); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEnableVertexArrayAttrib)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "vaobj, index");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 7561 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEnableVertexArrayAttrib, )
  OGLM_AVAIL_CHECK(__glewEnableVertexArrayAttrib, glEnableVertexArrayAttrib)
  glEnableVertexArrayAttrib(vaobj, index);
  OGLM_CHECK_ERR(glEnableVertexArrayAttrib, )
#line 15635 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEnableVertexArrayAttribEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEnableVertexArrayAttribEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "vaobj, index");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 7572 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEnableVertexArrayAttribEXT, )
  OGLM_AVAIL_CHECK(__glewEnableVertexArrayAttribEXT, glEnableVertexArrayAttribEXT)
  glEnableVertexArrayAttribEXT(vaobj, index);
  OGLM_CHECK_ERR(glEnableVertexArrayAttribEXT, )
#line 15658 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEnableVertexArrayEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEnableVertexArrayEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "vaobj, array");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLenum	array = (int)SvIV(ST(1))
;
#line 7583 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEnableVertexArrayEXT, )
  OGLM_AVAIL_CHECK(__glewEnableVertexArrayEXT, glEnableVertexArrayEXT)
  glEnableVertexArrayEXT(vaobj, array);
  OGLM_CHECK_ERR(glEnableVertexArrayEXT, )
#line 15681 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEnableVertexAttribAPPLE); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEnableVertexAttribAPPLE)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "index, pname");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 7594 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEnableVertexAttribAPPLE, )
  OGLM_AVAIL_CHECK(__glewEnableVertexAttribAPPLE, glEnableVertexAttribAPPLE)
  glEnableVertexAttribAPPLE(index, pname);
  OGLM_CHECK_ERR(glEnableVertexAttribAPPLE, )
#line 15704 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEnableVertexAttribArray); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEnableVertexAttribArray)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "index");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 7606 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEnableVertexAttribArray, )
  OGLM_AVAIL_CHECK(__glewEnableVertexAttribArray, glEnableVertexAttribArray)
  glEnableVertexAttribArray(index);
  OGLM_CHECK_ERR(glEnableVertexAttribArray, )
#line 15726 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEnablei); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEnablei)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, index");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 7621 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEnablei, )
  OGLM_AVAIL_CHECK(__glewEnablei, glEnablei)
  glEnablei(target, index);
  OGLM_CHECK_ERR(glEnablei, )
#line 15750 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEnableiOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEnableiOES)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, index");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 7632 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEnableiOES, )
  OGLM_AVAIL_CHECK(__glewEnableiOES, glEnableiOES)
  glEnableiOES(target, index);
  OGLM_CHECK_ERR(glEnableiOES, )
#line 15773 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEnd); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEnd)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 7641 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEnd, )
  glEnd();
  OGLM_CHECK_ERR(glEnd, )
#line 15791 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEndConditionalRender); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEndConditionalRender)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 7652 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEndConditionalRender, )
  OGLM_AVAIL_CHECK(__glewEndConditionalRender, glEndConditionalRender)
  glEndConditionalRender();
  OGLM_CHECK_ERR(glEndConditionalRender, )
#line 15811 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEndFragmentShaderATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEndFragmentShaderATI)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 7661 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEndFragmentShaderATI, )
  OGLM_AVAIL_CHECK(__glewEndFragmentShaderATI, glEndFragmentShaderATI)
  glEndFragmentShaderATI();
  OGLM_CHECK_ERR(glEndFragmentShaderATI, )
#line 15830 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEndList); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEndList)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 7670 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEndList, )
  glEndList();
  OGLM_CHECK_ERR(glEndList, )
#line 15848 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEndOcclusionQueryNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEndOcclusionQueryNV)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 7678 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEndOcclusionQueryNV, )
  OGLM_AVAIL_CHECK(__glewEndOcclusionQueryNV, glEndOcclusionQueryNV)
  glEndOcclusionQueryNV();
  OGLM_CHECK_ERR(glEndOcclusionQueryNV, )
#line 15867 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEndPerfMonitorAMD); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEndPerfMonitorAMD)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "monitor");
    {
	GLuint	monitor = (unsigned int)SvUV(ST(0))
;
#line 7688 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEndPerfMonitorAMD, )
  OGLM_AVAIL_CHECK(__glewEndPerfMonitorAMD, glEndPerfMonitorAMD)
  glEndPerfMonitorAMD(monitor);
  OGLM_CHECK_ERR(glEndPerfMonitorAMD, )
#line 15888 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEndPerfQueryINTEL); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEndPerfQueryINTEL)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "queryHandle");
    {
	GLuint	queryHandle = (unsigned int)SvUV(ST(0))
;
#line 7698 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEndPerfQueryINTEL, )
  OGLM_AVAIL_CHECK(__glewEndPerfQueryINTEL, glEndPerfQueryINTEL)
  glEndPerfQueryINTEL(queryHandle);
  OGLM_CHECK_ERR(glEndPerfQueryINTEL, )
#line 15909 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEndQuery); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEndQuery)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "target");
    {
	GLenum	target = (int)SvIV(ST(0))
;
#line 7710 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEndQuery, )
  OGLM_AVAIL_CHECK(__glewEndQuery, glEndQuery)
  glEndQuery(target);
  OGLM_CHECK_ERR(glEndQuery, )
#line 15931 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEndQueryANGLE); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEndQueryANGLE)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "target");
    {
	GLenum	target = (int)SvIV(ST(0))
;
#line 7720 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEndQueryANGLE, )
  OGLM_AVAIL_CHECK(__glewEndQueryANGLE, glEndQueryANGLE)
  glEndQueryANGLE(target);
  OGLM_CHECK_ERR(glEndQueryANGLE, )
#line 15952 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEndQueryEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEndQueryEXT)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "target");
    {
	GLenum	target = (int)SvIV(ST(0))
;
#line 7730 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEndQueryEXT, )
  OGLM_AVAIL_CHECK(__glewEndQueryEXT, glEndQueryEXT)
  glEndQueryEXT(target);
  OGLM_CHECK_ERR(glEndQueryEXT, )
#line 15973 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEndQueryIndexed); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEndQueryIndexed)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, index");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 7741 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEndQueryIndexed, )
  OGLM_AVAIL_CHECK(__glewEndQueryIndexed, glEndQueryIndexed)
  glEndQueryIndexed(target, index);
  OGLM_CHECK_ERR(glEndQueryIndexed, )
#line 15996 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEndSceneEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEndSceneEXT)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 7750 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEndSceneEXT, )
  OGLM_AVAIL_CHECK(__glewEndSceneEXT, glEndSceneEXT)
  glEndSceneEXT();
  OGLM_CHECK_ERR(glEndSceneEXT, )
#line 16015 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEndTilingQCOM); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEndTilingQCOM)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "preserveMask");
    {
	GLbitfield	preserveMask = (int)SvIV(ST(0))
;
#line 7760 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEndTilingQCOM, )
  OGLM_AVAIL_CHECK(__glewEndTilingQCOM, glEndTilingQCOM)
  glEndTilingQCOM(preserveMask);
  OGLM_CHECK_ERR(glEndTilingQCOM, )
#line 16036 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEndTransformFeedback); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEndTransformFeedback)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 7772 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEndTransformFeedback, )
  OGLM_AVAIL_CHECK(__glewEndTransformFeedback, glEndTransformFeedback)
  glEndTransformFeedback();
  OGLM_CHECK_ERR(glEndTransformFeedback, )
#line 16056 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEndVertexShaderEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEndVertexShaderEXT)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 7781 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEndVertexShaderEXT, )
  OGLM_AVAIL_CHECK(__glewEndVertexShaderEXT, glEndVertexShaderEXT)
  glEndVertexShaderEXT();
  OGLM_CHECK_ERR(glEndVertexShaderEXT, )
#line 16075 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEndVideoCaptureNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEndVideoCaptureNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "video_capture_slot");
    {
	GLuint	video_capture_slot = (unsigned int)SvUV(ST(0))
;
#line 7791 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEndVideoCaptureNV, )
  OGLM_AVAIL_CHECK(__glewEndVideoCaptureNV, glEndVideoCaptureNV)
  glEndVideoCaptureNV(video_capture_slot);
  OGLM_CHECK_ERR(glEndVideoCaptureNV, )
#line 16096 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEvalCoord1d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEvalCoord1d)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "u");
    {
	GLdouble	u = (double)SvNV(ST(0))
;
#line 7801 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEvalCoord1d, )
  glEvalCoord1d(u);
  OGLM_CHECK_ERR(glEvalCoord1d, )
#line 16116 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEvalCoord1dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEvalCoord1dv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "u");
    {
	const GLdouble *	u = INT2PTR(const GLdouble *,SvIV(ST(0)))
;
#line 7810 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEvalCoord1dv, )
  glEvalCoord1dv(u);
  OGLM_CHECK_ERR(glEvalCoord1dv, )
#line 16136 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEvalCoord1dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEvalCoord1dv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 7818 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEvalCoord1dv, )
  GLdouble *u = OGLM_GET_VARARGS(u,0,GLdouble,NV,1);
  glEvalCoord1dv((const GLdouble *)u);
  OGLM_CHECK_ERR(glEvalCoord1dv, free(u);)
  free(u);
#line 16156 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEvalCoord1f); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEvalCoord1f)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "u");
    {
	GLfloat	u = (float)SvNV(ST(0))
;
#line 7829 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEvalCoord1f, )
  glEvalCoord1f(u);
  OGLM_CHECK_ERR(glEvalCoord1f, )
#line 16176 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEvalCoord1fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEvalCoord1fv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "u");
    {
	const GLfloat *	u = INT2PTR(const GLfloat *,SvIV(ST(0)))
;
#line 7838 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEvalCoord1fv, )
  glEvalCoord1fv(u);
  OGLM_CHECK_ERR(glEvalCoord1fv, )
#line 16196 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEvalCoord1fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEvalCoord1fv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 7846 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEvalCoord1fv, )
  GLfloat *u = OGLM_GET_VARARGS(u,0,GLfloat,NV,1);
  glEvalCoord1fv((const GLfloat *)u);
  OGLM_CHECK_ERR(glEvalCoord1fv, free(u);)
  free(u);
#line 16216 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEvalCoord2d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEvalCoord2d)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "u, v");
    {
	GLdouble	u = (double)SvNV(ST(0))
;
	GLdouble	v = (double)SvNV(ST(1))
;
#line 7858 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEvalCoord2d, )
  glEvalCoord2d(u, v);
  OGLM_CHECK_ERR(glEvalCoord2d, )
#line 16238 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEvalCoord2dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEvalCoord2dv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "u");
    {
	const GLdouble *	u = INT2PTR(const GLdouble *,SvIV(ST(0)))
;
#line 7867 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEvalCoord2dv, )
  glEvalCoord2dv(u);
  OGLM_CHECK_ERR(glEvalCoord2dv, )
#line 16258 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEvalCoord2dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEvalCoord2dv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 7875 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEvalCoord2dv, )
  GLdouble *u = OGLM_GET_VARARGS(u,0,GLdouble,NV,2);
  glEvalCoord2dv((const GLdouble *)u);
  OGLM_CHECK_ERR(glEvalCoord2dv, free(u);)
  free(u);
#line 16278 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEvalCoord2f); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEvalCoord2f)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "u, v");
    {
	GLfloat	u = (float)SvNV(ST(0))
;
	GLfloat	v = (float)SvNV(ST(1))
;
#line 7887 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEvalCoord2f, )
  glEvalCoord2f(u, v);
  OGLM_CHECK_ERR(glEvalCoord2f, )
#line 16300 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEvalCoord2fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEvalCoord2fv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "u");
    {
	const GLfloat *	u = INT2PTR(const GLfloat *,SvIV(ST(0)))
;
#line 7896 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEvalCoord2fv, )
  glEvalCoord2fv(u);
  OGLM_CHECK_ERR(glEvalCoord2fv, )
#line 16320 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEvalCoord2fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEvalCoord2fv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 7904 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEvalCoord2fv, )
  GLfloat *u = OGLM_GET_VARARGS(u,0,GLfloat,NV,2);
  glEvalCoord2fv((const GLfloat *)u);
  OGLM_CHECK_ERR(glEvalCoord2fv, free(u);)
  free(u);
#line 16340 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEvalMapsNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEvalMapsNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, mode");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	mode = (int)SvIV(ST(1))
;
#line 7916 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEvalMapsNV, )
  OGLM_AVAIL_CHECK(__glewEvalMapsNV, glEvalMapsNV)
  glEvalMapsNV(target, mode);
  OGLM_CHECK_ERR(glEvalMapsNV, )
#line 16363 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEvalMesh1); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEvalMesh1)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "mode, i1, i2");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	GLint	i1 = (int)SvIV(ST(1))
;
	GLint	i2 = (int)SvIV(ST(2))
;
#line 7928 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEvalMesh1, )
  glEvalMesh1(mode, i1, i2);
  OGLM_CHECK_ERR(glEvalMesh1, )
#line 16387 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEvalMesh2); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEvalMesh2)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "mode, i1, i2, j1, j2");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	GLint	i1 = (int)SvIV(ST(1))
;
	GLint	i2 = (int)SvIV(ST(2))
;
	GLint	j1 = (int)SvIV(ST(3))
;
	GLint	j2 = (int)SvIV(ST(4))
;
#line 7941 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEvalMesh2, )
  glEvalMesh2(mode, i1, i2, j1, j2);
  OGLM_CHECK_ERR(glEvalMesh2, )
#line 16415 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEvalPoint1); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEvalPoint1)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "i");
    {
	GLint	i = (int)SvIV(ST(0))
;
#line 7950 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEvalPoint1, )
  glEvalPoint1(i);
  OGLM_CHECK_ERR(glEvalPoint1, )
#line 16435 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEvalPoint2); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEvalPoint2)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "i, j");
    {
	GLint	i = (int)SvIV(ST(0))
;
	GLint	j = (int)SvIV(ST(1))
;
#line 7960 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEvalPoint2, )
  glEvalPoint2(i, j);
  OGLM_CHECK_ERR(glEvalPoint2, )
#line 16457 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glEvaluateDepthValuesARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glEvaluateDepthValuesARB)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 7968 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glEvaluateDepthValuesARB, )
  OGLM_AVAIL_CHECK(__glewEvaluateDepthValuesARB, glEvaluateDepthValuesARB)
  glEvaluateDepthValuesARB();
  OGLM_CHECK_ERR(glEvaluateDepthValuesARB, )
#line 16476 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glExecuteProgramNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glExecuteProgramNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, id, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	id = (unsigned int)SvUV(ST(1))
;
	const GLfloat*	params = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 7980 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glExecuteProgramNV, )
  OGLM_AVAIL_CHECK(__glewExecuteProgramNV, glExecuteProgramNV)
  glExecuteProgramNV(target, id, params);
  OGLM_CHECK_ERR(glExecuteProgramNV, )
#line 16501 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glExecuteProgramNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glExecuteProgramNV_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "target, id, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	id = (unsigned int)SvUV(ST(1))
;
#line 7991 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glExecuteProgramNV, )
  OGLM_AVAIL_CHECK(__glewExecuteProgramNV, glExecuteProgramNV)
  GLfloat* params = OGLM_GET_VARARGS(params,2,GLfloat,NV,4);
  glExecuteProgramNV((GLenum )target, (GLuint )id, (const GLfloat* )params);
  OGLM_CHECK_ERR(glExecuteProgramNV, free(params);)
  free(params);
#line 16526 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glExtGetBufferPointervQCOM_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glExtGetBufferPointervQCOM_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	void**	params = INT2PTR(void **,SvIV(ST(1)))
;
#line 8004 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glExtGetBufferPointervQCOM, )
  OGLM_AVAIL_CHECK(__glewExtGetBufferPointervQCOM, glExtGetBufferPointervQCOM)
  glExtGetBufferPointervQCOM(target, params);
  OGLM_CHECK_ERR(glExtGetBufferPointervQCOM, )
#line 16549 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glExtGetBuffersQCOM_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glExtGetBuffersQCOM_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "buffers, maxBuffers, numBuffers");
    {
	GLuint*	buffers = INT2PTR(GLuint *,SvIV(ST(0)))
;
	GLint	maxBuffers = (int)SvIV(ST(1))
;
	GLint*	numBuffers = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 8016 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glExtGetBuffersQCOM, )
  OGLM_AVAIL_CHECK(__glewExtGetBuffersQCOM, glExtGetBuffersQCOM)
  glExtGetBuffersQCOM(buffers, maxBuffers, numBuffers);
  OGLM_CHECK_ERR(glExtGetBuffersQCOM, )
#line 16574 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glExtGetBuffersQCOM_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glExtGetBuffersQCOM_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "maxBuffers");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLint	maxBuffers = (int)SvIV(ST(0))
;
#line 8026 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glExtGetBuffersQCOM, )
  OGLM_AVAIL_CHECK(__glewExtGetBuffersQCOM, glExtGetBuffersQCOM)
  GLuint* buffers = OGLM_ALLOC(maxBuffers,GLuint,buffers);
  GLint numBuffers[1];
  glExtGetBuffersQCOM(buffers, maxBuffers, numBuffers);
  OGLM_CHECK_ERR(glExtGetBuffersQCOM, free(buffers);)
  EXTEND(sp, 2);
  OGLM_PUSH_ARRAY(glExtGetBuffersQCOM, newSVuv, buffers, maxBuffers)
  mPUSHs(newSViv(numBuffers[0]));
  free(buffers);
#line 16603 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glExtGetFramebuffersQCOM_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glExtGetFramebuffersQCOM_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "framebuffers, maxFramebuffers, numFramebuffers");
    {
	GLuint*	framebuffers = INT2PTR(GLuint *,SvIV(ST(0)))
;
	GLint	maxFramebuffers = (int)SvIV(ST(1))
;
	GLint*	numFramebuffers = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 8044 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glExtGetFramebuffersQCOM, )
  OGLM_AVAIL_CHECK(__glewExtGetFramebuffersQCOM, glExtGetFramebuffersQCOM)
  glExtGetFramebuffersQCOM(framebuffers, maxFramebuffers, numFramebuffers);
  OGLM_CHECK_ERR(glExtGetFramebuffersQCOM, )
#line 16629 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glExtGetFramebuffersQCOM_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glExtGetFramebuffersQCOM_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "maxFramebuffers");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLint	maxFramebuffers = (int)SvIV(ST(0))
;
#line 8054 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glExtGetFramebuffersQCOM, )
  OGLM_AVAIL_CHECK(__glewExtGetFramebuffersQCOM, glExtGetFramebuffersQCOM)
  GLuint* framebuffers = OGLM_ALLOC(maxFramebuffers,GLuint,framebuffers);
  GLint numFramebuffers[1];
  glExtGetFramebuffersQCOM(framebuffers, maxFramebuffers, numFramebuffers);
  OGLM_CHECK_ERR(glExtGetFramebuffersQCOM, free(framebuffers);)
  EXTEND(sp, 2);
  OGLM_PUSH_ARRAY(glExtGetFramebuffersQCOM, newSVuv, framebuffers, maxFramebuffers)
  mPUSHs(newSViv(numFramebuffers[0]));
  free(framebuffers);
#line 16658 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glExtGetProgramBinarySourceQCOM_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glExtGetProgramBinarySourceQCOM_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, shadertype, source, length");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	shadertype = (int)SvIV(ST(1))
;
	GLchar*	source = (GLchar *)SvPV_nolen(ST(2))
;
	GLint*	length = INT2PTR(GLint *,SvIV(ST(3)))
;
#line 8073 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glExtGetProgramBinarySourceQCOM, )
  OGLM_AVAIL_CHECK(__glewExtGetProgramBinarySourceQCOM, glExtGetProgramBinarySourceQCOM)
  glExtGetProgramBinarySourceQCOM(program, shadertype, source, length);
  OGLM_CHECK_ERR(glExtGetProgramBinarySourceQCOM, )
#line 16686 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glExtGetProgramsQCOM_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glExtGetProgramsQCOM_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "programs, maxPrograms, numPrograms");
    {
	GLuint*	programs = INT2PTR(GLuint *,SvIV(ST(0)))
;
	GLint	maxPrograms = (int)SvIV(ST(1))
;
	GLint*	numPrograms = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 8085 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glExtGetProgramsQCOM, )
  OGLM_AVAIL_CHECK(__glewExtGetProgramsQCOM, glExtGetProgramsQCOM)
  glExtGetProgramsQCOM(programs, maxPrograms, numPrograms);
  OGLM_CHECK_ERR(glExtGetProgramsQCOM, )
#line 16711 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glExtGetProgramsQCOM_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glExtGetProgramsQCOM_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "maxPrograms");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLint	maxPrograms = (int)SvIV(ST(0))
;
#line 8095 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glExtGetProgramsQCOM, )
  OGLM_AVAIL_CHECK(__glewExtGetProgramsQCOM, glExtGetProgramsQCOM)
  GLuint* programs = OGLM_ALLOC(maxPrograms,GLuint,programs);
  GLint numPrograms[1];
  glExtGetProgramsQCOM(programs, maxPrograms, numPrograms);
  OGLM_CHECK_ERR(glExtGetProgramsQCOM, free(programs);)
  EXTEND(sp, 2);
  OGLM_PUSH_ARRAY(glExtGetProgramsQCOM, newSVuv, programs, maxPrograms)
  mPUSHs(newSViv(numPrograms[0]));
  free(programs);
#line 16740 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glExtGetRenderbuffersQCOM_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glExtGetRenderbuffersQCOM_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "renderbuffers, maxRenderbuffers, numRenderbuffers");
    {
	GLuint*	renderbuffers = INT2PTR(GLuint *,SvIV(ST(0)))
;
	GLint	maxRenderbuffers = (int)SvIV(ST(1))
;
	GLint*	numRenderbuffers = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 8113 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glExtGetRenderbuffersQCOM, )
  OGLM_AVAIL_CHECK(__glewExtGetRenderbuffersQCOM, glExtGetRenderbuffersQCOM)
  glExtGetRenderbuffersQCOM(renderbuffers, maxRenderbuffers, numRenderbuffers);
  OGLM_CHECK_ERR(glExtGetRenderbuffersQCOM, )
#line 16766 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glExtGetRenderbuffersQCOM_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glExtGetRenderbuffersQCOM_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "maxRenderbuffers");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLint	maxRenderbuffers = (int)SvIV(ST(0))
;
#line 8123 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glExtGetRenderbuffersQCOM, )
  OGLM_AVAIL_CHECK(__glewExtGetRenderbuffersQCOM, glExtGetRenderbuffersQCOM)
  GLuint* renderbuffers = OGLM_ALLOC(maxRenderbuffers,GLuint,renderbuffers);
  GLint numRenderbuffers[1];
  glExtGetRenderbuffersQCOM(renderbuffers, maxRenderbuffers, numRenderbuffers);
  OGLM_CHECK_ERR(glExtGetRenderbuffersQCOM, free(renderbuffers);)
  EXTEND(sp, 2);
  OGLM_PUSH_ARRAY(glExtGetRenderbuffersQCOM, newSVuv, renderbuffers, maxRenderbuffers)
  mPUSHs(newSViv(numRenderbuffers[0]));
  free(renderbuffers);
#line 16795 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glExtGetShadersQCOM_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glExtGetShadersQCOM_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "shaders, maxShaders, numShaders");
    {
	GLuint*	shaders = INT2PTR(GLuint *,SvIV(ST(0)))
;
	GLint	maxShaders = (int)SvIV(ST(1))
;
	GLint*	numShaders = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 8141 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glExtGetShadersQCOM, )
  OGLM_AVAIL_CHECK(__glewExtGetShadersQCOM, glExtGetShadersQCOM)
  glExtGetShadersQCOM(shaders, maxShaders, numShaders);
  OGLM_CHECK_ERR(glExtGetShadersQCOM, )
#line 16821 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glExtGetShadersQCOM_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glExtGetShadersQCOM_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "maxShaders");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLint	maxShaders = (int)SvIV(ST(0))
;
#line 8151 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glExtGetShadersQCOM, )
  OGLM_AVAIL_CHECK(__glewExtGetShadersQCOM, glExtGetShadersQCOM)
  GLuint* shaders = OGLM_ALLOC(maxShaders,GLuint,shaders);
  GLint numShaders[1];
  glExtGetShadersQCOM(shaders, maxShaders, numShaders);
  OGLM_CHECK_ERR(glExtGetShadersQCOM, free(shaders);)
  EXTEND(sp, 2);
  OGLM_PUSH_ARRAY(glExtGetShadersQCOM, newSVuv, shaders, maxShaders)
  mPUSHs(newSViv(numShaders[0]));
  free(shaders);
#line 16850 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glExtGetTexLevelParameterivQCOM_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glExtGetTexLevelParameterivQCOM_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "texture, face, level, pname, params");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	face = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLenum	pname = (int)SvIV(ST(3))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(4)))
;
#line 8171 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glExtGetTexLevelParameterivQCOM, )
  OGLM_AVAIL_CHECK(__glewExtGetTexLevelParameterivQCOM, glExtGetTexLevelParameterivQCOM)
  glExtGetTexLevelParameterivQCOM(texture, face, level, pname, params);
  OGLM_CHECK_ERR(glExtGetTexLevelParameterivQCOM, )
#line 16880 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glExtGetTexSubImageQCOM_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glExtGetTexSubImageQCOM_c)
{
    dVAR; dXSARGS;
    if (items != 11)
       croak_xs_usage(cv,  "target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, texels");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLint	xoffset = (int)SvIV(ST(2))
;
	GLint	yoffset = (int)SvIV(ST(3))
;
	GLint	zoffset = (int)SvIV(ST(4))
;
	GLsizei	width = (int)SvIV(ST(5))
;
	GLsizei	height = (int)SvIV(ST(6))
;
	GLsizei	depth = (int)SvIV(ST(7))
;
	GLenum	format = (int)SvIV(ST(8))
;
	GLenum	type = (int)SvIV(ST(9))
;
	void *	texels = INT2PTR(void *,SvIV(ST(10)))
;
#line 8191 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glExtGetTexSubImageQCOM, )
  OGLM_AVAIL_CHECK(__glewExtGetTexSubImageQCOM, glExtGetTexSubImageQCOM)
  glExtGetTexSubImageQCOM(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, texels);
  OGLM_CHECK_ERR(glExtGetTexSubImageQCOM, )
#line 16921 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glExtGetTexturesQCOM_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glExtGetTexturesQCOM_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "textures, maxTextures, numTextures");
    {
	GLuint*	textures = INT2PTR(GLuint *,SvIV(ST(0)))
;
	GLint	maxTextures = (int)SvIV(ST(1))
;
	GLint*	numTextures = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 8203 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glExtGetTexturesQCOM, )
  OGLM_AVAIL_CHECK(__glewExtGetTexturesQCOM, glExtGetTexturesQCOM)
  glExtGetTexturesQCOM(textures, maxTextures, numTextures);
  OGLM_CHECK_ERR(glExtGetTexturesQCOM, )
#line 16946 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glExtIsProgramBinaryQCOM); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glExtIsProgramBinaryQCOM)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "program");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 8213 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glExtIsProgramBinaryQCOM, )
  OGLM_AVAIL_CHECK(__glewExtIsProgramBinaryQCOM, glExtIsProgramBinaryQCOM)
  RETVAL = glExtIsProgramBinaryQCOM(program);
  OGLM_CHECK_ERR(glExtIsProgramBinaryQCOM, )
#line 16969 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glExtTexObjectStateOverrideiQCOM); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glExtTexObjectStateOverrideiQCOM)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, param");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint	param = (int)SvIV(ST(2))
;
#line 8227 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glExtTexObjectStateOverrideiQCOM, )
  OGLM_AVAIL_CHECK(__glewExtTexObjectStateOverrideiQCOM, glExtTexObjectStateOverrideiQCOM)
  glExtTexObjectStateOverrideiQCOM(target, pname, param);
  OGLM_CHECK_ERR(glExtTexObjectStateOverrideiQCOM, )
#line 16996 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glExtractComponentEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glExtractComponentEXT)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "res, src, num");
    {
	GLuint	res = (unsigned int)SvUV(ST(0))
;
	GLuint	src = (unsigned int)SvUV(ST(1))
;
	GLuint	num = (unsigned int)SvUV(ST(2))
;
#line 8239 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glExtractComponentEXT, )
  OGLM_AVAIL_CHECK(__glewExtractComponentEXT, glExtractComponentEXT)
  glExtractComponentEXT(res, src, num);
  OGLM_CHECK_ERR(glExtractComponentEXT, )
#line 17021 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glExtrapolateTex2DQCOM); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glExtrapolateTex2DQCOM)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "src1, src2, output, scaleFactor");
    {
	GLuint	src1 = (unsigned int)SvUV(ST(0))
;
	GLuint	src2 = (unsigned int)SvUV(ST(1))
;
	GLuint	output = (unsigned int)SvUV(ST(2))
;
	GLfloat	scaleFactor = (float)SvNV(ST(3))
;
#line 8252 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glExtrapolateTex2DQCOM, )
  OGLM_AVAIL_CHECK(__glewExtrapolateTex2DQCOM, glExtrapolateTex2DQCOM)
  glExtrapolateTex2DQCOM(src1, src2, output, scaleFactor);
  OGLM_CHECK_ERR(glExtrapolateTex2DQCOM, )
#line 17048 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFeedbackBuffer_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFeedbackBuffer_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "size, type, buffer");
    {
	GLsizei	size = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLfloat *	buffer = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 8264 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFeedbackBuffer, )
  glFeedbackBuffer(size, type, buffer);
  OGLM_CHECK_ERR(glFeedbackBuffer, )
#line 17072 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFeedbackBuffer_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFeedbackBuffer_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "size, type");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLsizei	size = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
#line 8274 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFeedbackBuffer, )
  GLfloat *buffer = OGLM_ALLOC(size,GLfloat,buffer);
  glFeedbackBuffer(size, type, buffer);
  OGLM_CHECK_ERR(glFeedbackBuffer, free(buffer);)
  OGLM_OUT_FINISH(buffer,size,newSVnv)
  free(buffer);
#line 17099 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glFenceSync); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFenceSync)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "condition, flags");
    {
	GLenum	condition = (int)SvIV(ST(0))
;
	GLbitfield	flags = (int)SvIV(ST(1))
;
	GLsync	RETVAL;
	dXSTARG;
#line 8289 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFenceSync, )
  OGLM_AVAIL_CHECK(__glewFenceSync, glFenceSync)
  RETVAL = glFenceSync(condition, flags);
  OGLM_CHECK_ERR(glFenceSync, )
#line 17126 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi(PTR2IV(RETVAL));
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glFinalCombinerInputNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFinalCombinerInputNV)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "variable, input, mapping, componentUsage");
    {
	GLenum	variable = (int)SvIV(ST(0))
;
	GLenum	input = (int)SvIV(ST(1))
;
	GLenum	mapping = (int)SvIV(ST(2))
;
	GLenum	componentUsage = (int)SvIV(ST(3))
;
#line 8304 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFinalCombinerInputNV, )
  OGLM_AVAIL_CHECK(__glewFinalCombinerInputNV, glFinalCombinerInputNV)
  glFinalCombinerInputNV(variable, input, mapping, componentUsage);
  OGLM_CHECK_ERR(glFinalCombinerInputNV, )
#line 17155 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFinish); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFinish)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 8313 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFinish, )
  glFinish();
  OGLM_CHECK_ERR(glFinish, )
#line 17173 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFinishAsyncSGIX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFinishAsyncSGIX_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "markerp");
    {
	GLuint*	markerp = INT2PTR(GLuint *,SvIV(ST(0)))
;
	GLint	RETVAL;
	dXSTARG;
#line 8322 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFinishAsyncSGIX, )
  OGLM_AVAIL_CHECK(__glewFinishAsyncSGIX, glFinishAsyncSGIX)
  RETVAL = glFinishAsyncSGIX(markerp);
  OGLM_CHECK_ERR(glFinishAsyncSGIX, )
#line 17196 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glFinishAsyncSGIX_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFinishAsyncSGIX_p)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLint	RETVAL;
	dXSTARG;
#line 8333 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFinishAsyncSGIX, )
  OGLM_AVAIL_CHECK(__glewFinishAsyncSGIX, glFinishAsyncSGIX)
  GLuint markerp[1];
  RETVAL = glFinishAsyncSGIX(markerp);
  OGLM_CHECK_ERR(glFinishAsyncSGIX, )
  EXTEND(sp, 2);
  mPUSHs(newSViv(RETVAL));
  mPUSHs(newSVuv(markerp[0]));
#line 17225 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glFinishFenceAPPLE); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFinishFenceAPPLE)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "fence");
    {
	GLuint	fence = (unsigned int)SvUV(ST(0))
;
#line 8347 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFinishFenceAPPLE, )
  OGLM_AVAIL_CHECK(__glewFinishFenceAPPLE, glFinishFenceAPPLE)
  glFinishFenceAPPLE(fence);
  OGLM_CHECK_ERR(glFinishFenceAPPLE, )
#line 17247 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFinishFenceNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFinishFenceNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "fence");
    {
	GLuint	fence = (unsigned int)SvUV(ST(0))
;
#line 8357 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFinishFenceNV, )
  OGLM_AVAIL_CHECK(__glewFinishFenceNV, glFinishFenceNV)
  glFinishFenceNV(fence);
  OGLM_CHECK_ERR(glFinishFenceNV, )
#line 17268 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFinishObjectAPPLE); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFinishObjectAPPLE)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "object, name");
    {
	GLenum	object = (int)SvIV(ST(0))
;
	GLint	name = (int)SvIV(ST(1))
;
#line 8368 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFinishObjectAPPLE, )
  OGLM_AVAIL_CHECK(__glewFinishObjectAPPLE, glFinishObjectAPPLE)
  glFinishObjectAPPLE(object, name);
  OGLM_CHECK_ERR(glFinishObjectAPPLE, )
#line 17291 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFinishTextureSUNX); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFinishTextureSUNX)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 8377 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFinishTextureSUNX, )
  OGLM_AVAIL_CHECK(__glewFinishTextureSUNX, glFinishTextureSUNX)
  glFinishTextureSUNX();
  OGLM_CHECK_ERR(glFinishTextureSUNX, )
#line 17310 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFlush); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFlush)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 8386 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFlush, )
  glFlush();
  OGLM_CHECK_ERR(glFlush, )
#line 17328 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFlushMappedBufferRange); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFlushMappedBufferRange)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "target, offset, length");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLintptr	offset = (unsigned int)SvUV(ST(1))
;
	GLsizeiptr	length = (unsigned int)SvUV(ST(2))
;
#line 8400 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFlushMappedBufferRange, )
  OGLM_AVAIL_CHECK(__glewFlushMappedBufferRange, glFlushMappedBufferRange)
  glFlushMappedBufferRange(target, offset, length);
  OGLM_CHECK_ERR(glFlushMappedBufferRange, )
#line 17354 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFlushMappedNamedBufferRange); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFlushMappedNamedBufferRange)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "buffer, offset, length");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLintptr	offset = (unsigned int)SvUV(ST(1))
;
	GLsizeiptr	length = (unsigned int)SvUV(ST(2))
;
#line 8412 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFlushMappedNamedBufferRange, )
  OGLM_AVAIL_CHECK(__glewFlushMappedNamedBufferRange, glFlushMappedNamedBufferRange)
  glFlushMappedNamedBufferRange(buffer, offset, length);
  OGLM_CHECK_ERR(glFlushMappedNamedBufferRange, )
#line 17379 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFlushMappedNamedBufferRangeEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFlushMappedNamedBufferRangeEXT)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "buffer, offset, length");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLintptr	offset = (unsigned int)SvUV(ST(1))
;
	GLsizeiptr	length = (unsigned int)SvUV(ST(2))
;
#line 8424 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFlushMappedNamedBufferRangeEXT, )
  OGLM_AVAIL_CHECK(__glewFlushMappedNamedBufferRangeEXT, glFlushMappedNamedBufferRangeEXT)
  glFlushMappedNamedBufferRangeEXT(buffer, offset, length);
  OGLM_CHECK_ERR(glFlushMappedNamedBufferRangeEXT, )
#line 17404 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFlushPixelDataRangeNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFlushPixelDataRangeNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "target");
    {
	GLenum	target = (int)SvIV(ST(0))
;
#line 8434 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFlushPixelDataRangeNV, )
  OGLM_AVAIL_CHECK(__glewFlushPixelDataRangeNV, glFlushPixelDataRangeNV)
  glFlushPixelDataRangeNV(target);
  OGLM_CHECK_ERR(glFlushPixelDataRangeNV, )
#line 17425 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFlushRasterSGIX); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFlushRasterSGIX)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 8443 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFlushRasterSGIX, )
  OGLM_AVAIL_CHECK(__glewFlushRasterSGIX, glFlushRasterSGIX)
  glFlushRasterSGIX();
  OGLM_CHECK_ERR(glFlushRasterSGIX, )
#line 17444 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFlushVertexArrayRangeAPPLE_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFlushVertexArrayRangeAPPLE_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "length, pointer");
    {
	GLsizei	length = (int)SvIV(ST(0))
;
	void *	pointer = INT2PTR(void *,SvIV(ST(1)))
;
#line 8454 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFlushVertexArrayRangeAPPLE, )
  OGLM_AVAIL_CHECK(__glewFlushVertexArrayRangeAPPLE, glFlushVertexArrayRangeAPPLE)
  glFlushVertexArrayRangeAPPLE(length, pointer);
  OGLM_CHECK_ERR(glFlushVertexArrayRangeAPPLE, )
#line 17467 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFlushVertexArrayRangeNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFlushVertexArrayRangeNV)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 8463 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFlushVertexArrayRangeNV, )
  OGLM_AVAIL_CHECK(__glewFlushVertexArrayRangeNV, glFlushVertexArrayRangeNV)
  glFlushVertexArrayRangeNV();
  OGLM_CHECK_ERR(glFlushVertexArrayRangeNV, )
#line 17486 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFogCoordFormatNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFogCoordFormatNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "type, stride");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	GLsizei	stride = (int)SvIV(ST(1))
;
#line 8474 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFogCoordFormatNV, )
  OGLM_AVAIL_CHECK(__glewFogCoordFormatNV, glFogCoordFormatNV)
  glFogCoordFormatNV(type, stride);
  OGLM_CHECK_ERR(glFogCoordFormatNV, )
#line 17509 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFogCoordPointer_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFogCoordPointer_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "type, stride, pointer");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	GLsizei	stride = (int)SvIV(ST(1))
;
	const void *	pointer = INT2PTR(const void *,SvIV(ST(2)))
;
#line 8488 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFogCoordPointer, )
  OGLM_AVAIL_CHECK(__glewFogCoordPointer, glFogCoordPointer)
  glFogCoordPointer(type, stride, pointer);
  OGLM_CHECK_ERR(glFogCoordPointer, )
#line 17535 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFogCoordPointerListIBM_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFogCoordPointerListIBM_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "type, stride, pointer, ptrstride");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	GLint	stride = (int)SvIV(ST(1))
;
	const void**	pointer = INT2PTR(const void **,SvIV(ST(2)))
;
	GLint	ptrstride = (int)SvIV(ST(3))
;
#line 8501 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFogCoordPointerListIBM, )
  OGLM_AVAIL_CHECK(__glewFogCoordPointerListIBM, glFogCoordPointerListIBM)
  glFogCoordPointerListIBM(type, stride, pointer, ptrstride);
  OGLM_CHECK_ERR(glFogCoordPointerListIBM, )
#line 17562 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFogCoordd); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFogCoordd)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "coord");
    {
	GLdouble	coord = (double)SvNV(ST(0))
;
#line 8513 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFogCoordd, )
  OGLM_AVAIL_CHECK(__glewFogCoordd, glFogCoordd)
  glFogCoordd(coord);
  OGLM_CHECK_ERR(glFogCoordd, )
#line 17584 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFogCoorddv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFogCoorddv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "coord");
    {
	const GLdouble *	coord = INT2PTR(const GLdouble *,SvIV(ST(0)))
;
#line 8525 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFogCoorddv, )
  OGLM_AVAIL_CHECK(__glewFogCoorddv, glFogCoorddv)
  glFogCoorddv(coord);
  OGLM_CHECK_ERR(glFogCoorddv, )
#line 17606 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFogCoorddv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFogCoorddv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 8536 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFogCoorddv, )
  OGLM_AVAIL_CHECK(__glewFogCoorddv, glFogCoorddv)
  GLdouble *coord = OGLM_GET_VARARGS(coord,0,GLdouble,NV,1);
  glFogCoorddv((const GLdouble *)coord);
  OGLM_CHECK_ERR(glFogCoorddv, free(coord);)
  free(coord);
#line 17628 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFogCoordf); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFogCoordf)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "coord");
    {
	GLfloat	coord = (float)SvNV(ST(0))
;
#line 8550 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFogCoordf, )
  OGLM_AVAIL_CHECK(__glewFogCoordf, glFogCoordf)
  glFogCoordf(coord);
  OGLM_CHECK_ERR(glFogCoordf, )
#line 17650 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFogCoordfv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFogCoordfv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "coord");
    {
	const GLfloat *	coord = INT2PTR(const GLfloat *,SvIV(ST(0)))
;
#line 8562 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFogCoordfv, )
  OGLM_AVAIL_CHECK(__glewFogCoordfv, glFogCoordfv)
  glFogCoordfv(coord);
  OGLM_CHECK_ERR(glFogCoordfv, )
#line 17672 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFogCoordfv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFogCoordfv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 8573 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFogCoordfv, )
  OGLM_AVAIL_CHECK(__glewFogCoordfv, glFogCoordfv)
  GLfloat *coord = OGLM_GET_VARARGS(coord,0,GLfloat,NV,1);
  glFogCoordfv((const GLfloat *)coord);
  OGLM_CHECK_ERR(glFogCoordfv, free(coord);)
  free(coord);
#line 17694 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFogCoordhNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFogCoordhNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "fog");
    {
	GLhalf	fog = (float)SvNV(ST(0))
;
#line 8585 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFogCoordhNV, )
  OGLM_AVAIL_CHECK(__glewFogCoordhNV, glFogCoordhNV)
  glFogCoordhNV(fog);
  OGLM_CHECK_ERR(glFogCoordhNV, )
#line 17715 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFogCoordhvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFogCoordhvNV_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "fog");
    {
	const GLhalf*	fog = INT2PTR(const GLhalf *,SvIV(ST(0)))
;
#line 8595 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFogCoordhvNV, )
  OGLM_AVAIL_CHECK(__glewFogCoordhvNV, glFogCoordhvNV)
  glFogCoordhvNV(fog);
  OGLM_CHECK_ERR(glFogCoordhvNV, )
#line 17736 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFogCoordhvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFogCoordhvNV_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 8604 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFogCoordhvNV, )
  OGLM_AVAIL_CHECK(__glewFogCoordhvNV, glFogCoordhvNV)
  GLhalf* fog = OGLM_GET_VARARGS(fog,0,GLhalf,NV,1);
  glFogCoordhvNV((const GLhalf* )fog);
  OGLM_CHECK_ERR(glFogCoordhvNV, free(fog);)
  free(fog);
#line 17757 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFogFuncSGIS_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFogFuncSGIS_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, points");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	const GLfloat*	points = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 8617 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFogFuncSGIS, )
  OGLM_AVAIL_CHECK(__glewFogFuncSGIS, glFogFuncSGIS)
  glFogFuncSGIS(n, points);
  OGLM_CHECK_ERR(glFogFuncSGIS, )
#line 17780 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFogFuncSGIS_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFogFuncSGIS_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "n, ...");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
#line 8627 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFogFuncSGIS, )
  OGLM_AVAIL_CHECK(__glewFogFuncSGIS, glFogFuncSGIS)
  GLfloat* points = OGLM_GET_VARARGS(points,1,GLfloat,NV,n*2);
  glFogFuncSGIS((GLsizei )n, (const GLfloat* )points);
  OGLM_CHECK_ERR(glFogFuncSGIS, free(points);)
  free(points);
#line 17803 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFogLayersSGIX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFogLayersSGIX_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, points");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	const GLfloat*	points = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 8640 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFogLayersSGIX, )
  OGLM_AVAIL_CHECK(__glewFogLayersSGIX, glFogLayersSGIX)
  glFogLayersSGIX(n, points);
  OGLM_CHECK_ERR(glFogLayersSGIX, )
#line 17826 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFogf); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFogf)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, param");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLfloat	param = (float)SvNV(ST(1))
;
#line 8651 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFogf, )
  glFogf(pname, param);
  OGLM_CHECK_ERR(glFogf, )
#line 17848 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFogfv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFogfv_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, params");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	const GLfloat *	params = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 8661 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFogfv, )
  glFogfv(pname, params);
  OGLM_CHECK_ERR(glFogfv, )
#line 17870 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFogfv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFogfv_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "pname, ...");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
#line 8670 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFogfv, )
  OGLM_SIZE_ENUM(FogParameter,pname,1)
  GLfloat *params = OGLM_GET_VARARGS(params,1,GLfloat,NV,pname_count);
  glFogfv((GLenum )pname, (const GLfloat *)params);
  OGLM_CHECK_ERR(glFogfv, free(params);)
  free(params);
#line 17893 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFogi); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFogi)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, param");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLint	param = (int)SvIV(ST(1))
;
#line 8683 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFogi, )
  glFogi(pname, param);
  OGLM_CHECK_ERR(glFogi, )
#line 17915 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFogiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFogiv_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, params");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	const GLint *	params = INT2PTR(const GLint *,SvIV(ST(1)))
;
#line 8693 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFogiv, )
  glFogiv(pname, params);
  OGLM_CHECK_ERR(glFogiv, )
#line 17937 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFogiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFogiv_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "pname, ...");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
#line 8702 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFogiv, )
  OGLM_SIZE_ENUM(FogParameter,pname,1)
  GLint *params = OGLM_GET_VARARGS(params,1,GLint,IV,pname_count);
  glFogiv((GLenum )pname, (const GLint *)params);
  OGLM_CHECK_ERR(glFogiv, free(params);)
  free(params);
#line 17960 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFogx); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFogx)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, param");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLfixed	param = (int)SvIV(ST(1))
;
#line 8715 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFogx, )
  OGLM_AVAIL_CHECK(__glewFogx, glFogx)
  glFogx(pname, param);
  OGLM_CHECK_ERR(glFogx, )
#line 17983 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFogxv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFogxv_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, param");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	const GLfixed*	param = INT2PTR(const GLfixed *,SvIV(ST(1)))
;
#line 8726 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFogxv, )
  OGLM_AVAIL_CHECK(__glewFogxv, glFogxv)
  glFogxv(pname, param);
  OGLM_CHECK_ERR(glFogxv, )
#line 18006 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFogxv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFogxv_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "pname, ...");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
#line 8736 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFogxv, )
  OGLM_AVAIL_CHECK(__glewFogxv, glFogxv)
  OGLM_SIZE_ENUM(FogPName,pname,1)
  GLfixed* param = OGLM_GET_VARARGS(param,1,GLfixed,IV,pname_count);
  glFogxv((GLenum )pname, (const GLfixed* )param);
  OGLM_CHECK_ERR(glFogxv, free(param);)
  free(param);
#line 18030 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFragmentColorMaterialEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFragmentColorMaterialEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "face, mode");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	mode = (int)SvIV(ST(1))
;
#line 8750 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFragmentColorMaterialEXT, )
  OGLM_AVAIL_CHECK(__glewFragmentColorMaterialEXT, glFragmentColorMaterialEXT)
  glFragmentColorMaterialEXT(face, mode);
  OGLM_CHECK_ERR(glFragmentColorMaterialEXT, )
#line 18053 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFragmentColorMaterialSGIX); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFragmentColorMaterialSGIX)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "face, mode");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	mode = (int)SvIV(ST(1))
;
#line 8761 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFragmentColorMaterialSGIX, )
  OGLM_AVAIL_CHECK(__glewFragmentColorMaterialSGIX, glFragmentColorMaterialSGIX)
  glFragmentColorMaterialSGIX(face, mode);
  OGLM_CHECK_ERR(glFragmentColorMaterialSGIX, )
#line 18076 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFragmentCoverageColorNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFragmentCoverageColorNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "color");
    {
	GLuint	color = (unsigned int)SvUV(ST(0))
;
#line 8771 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFragmentCoverageColorNV, )
  OGLM_AVAIL_CHECK(__glewFragmentCoverageColorNV, glFragmentCoverageColorNV)
  glFragmentCoverageColorNV(color);
  OGLM_CHECK_ERR(glFragmentCoverageColorNV, )
#line 18097 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFragmentLightModelfEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFragmentLightModelfEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, param");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLfloat	param = (float)SvNV(ST(1))
;
#line 8782 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFragmentLightModelfEXT, )
  OGLM_AVAIL_CHECK(__glewFragmentLightModelfEXT, glFragmentLightModelfEXT)
  glFragmentLightModelfEXT(pname, param);
  OGLM_CHECK_ERR(glFragmentLightModelfEXT, )
#line 18120 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFragmentLightModelfSGIX); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFragmentLightModelfSGIX)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, param");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLfloat	param = (float)SvNV(ST(1))
;
#line 8793 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFragmentLightModelfSGIX, )
  OGLM_AVAIL_CHECK(__glewFragmentLightModelfSGIX, glFragmentLightModelfSGIX)
  glFragmentLightModelfSGIX(pname, param);
  OGLM_CHECK_ERR(glFragmentLightModelfSGIX, )
#line 18143 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFragmentLightModelfvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFragmentLightModelfvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, params");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(1)))
;
#line 8804 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFragmentLightModelfvEXT, )
  OGLM_AVAIL_CHECK(__glewFragmentLightModelfvEXT, glFragmentLightModelfvEXT)
  glFragmentLightModelfvEXT(pname, params);
  OGLM_CHECK_ERR(glFragmentLightModelfvEXT, )
#line 18166 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFragmentLightModelfvSGIX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFragmentLightModelfvSGIX_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, params");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(1)))
;
#line 8815 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFragmentLightModelfvSGIX, )
  OGLM_AVAIL_CHECK(__glewFragmentLightModelfvSGIX, glFragmentLightModelfvSGIX)
  glFragmentLightModelfvSGIX(pname, params);
  OGLM_CHECK_ERR(glFragmentLightModelfvSGIX, )
#line 18189 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFragmentLightModeliEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFragmentLightModeliEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, param");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLint	param = (int)SvIV(ST(1))
;
#line 8826 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFragmentLightModeliEXT, )
  OGLM_AVAIL_CHECK(__glewFragmentLightModeliEXT, glFragmentLightModeliEXT)
  glFragmentLightModeliEXT(pname, param);
  OGLM_CHECK_ERR(glFragmentLightModeliEXT, )
#line 18212 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFragmentLightModeliSGIX); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFragmentLightModeliSGIX)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, param");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLint	param = (int)SvIV(ST(1))
;
#line 8837 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFragmentLightModeliSGIX, )
  OGLM_AVAIL_CHECK(__glewFragmentLightModeliSGIX, glFragmentLightModeliSGIX)
  glFragmentLightModeliSGIX(pname, param);
  OGLM_CHECK_ERR(glFragmentLightModeliSGIX, )
#line 18235 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFragmentLightModelivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFragmentLightModelivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, params");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(1)))
;
#line 8848 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFragmentLightModelivEXT, )
  OGLM_AVAIL_CHECK(__glewFragmentLightModelivEXT, glFragmentLightModelivEXT)
  glFragmentLightModelivEXT(pname, params);
  OGLM_CHECK_ERR(glFragmentLightModelivEXT, )
#line 18258 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFragmentLightModelivSGIX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFragmentLightModelivSGIX_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, params");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(1)))
;
#line 8859 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFragmentLightModelivSGIX, )
  OGLM_AVAIL_CHECK(__glewFragmentLightModelivSGIX, glFragmentLightModelivSGIX)
  glFragmentLightModelivSGIX(pname, params);
  OGLM_CHECK_ERR(glFragmentLightModelivSGIX, )
#line 18281 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFragmentLightfEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFragmentLightfEXT)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "light, pname, param");
    {
	GLenum	light = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat	param = (float)SvNV(ST(2))
;
#line 8871 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFragmentLightfEXT, )
  OGLM_AVAIL_CHECK(__glewFragmentLightfEXT, glFragmentLightfEXT)
  glFragmentLightfEXT(light, pname, param);
  OGLM_CHECK_ERR(glFragmentLightfEXT, )
#line 18306 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFragmentLightfSGIX); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFragmentLightfSGIX)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "light, pname, param");
    {
	GLenum	light = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat	param = (float)SvNV(ST(2))
;
#line 8883 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFragmentLightfSGIX, )
  OGLM_AVAIL_CHECK(__glewFragmentLightfSGIX, glFragmentLightfSGIX)
  glFragmentLightfSGIX(light, pname, param);
  OGLM_CHECK_ERR(glFragmentLightfSGIX, )
#line 18331 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFragmentLightfvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFragmentLightfvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "light, pname, params");
    {
	GLenum	light = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 8895 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFragmentLightfvEXT, )
  OGLM_AVAIL_CHECK(__glewFragmentLightfvEXT, glFragmentLightfvEXT)
  glFragmentLightfvEXT(light, pname, params);
  OGLM_CHECK_ERR(glFragmentLightfvEXT, )
#line 18356 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFragmentLightfvSGIX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFragmentLightfvSGIX_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "light, pname, params");
    {
	GLenum	light = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 8907 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFragmentLightfvSGIX, )
  OGLM_AVAIL_CHECK(__glewFragmentLightfvSGIX, glFragmentLightfvSGIX)
  glFragmentLightfvSGIX(light, pname, params);
  OGLM_CHECK_ERR(glFragmentLightfvSGIX, )
#line 18381 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFragmentLightfvSGIX_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFragmentLightfvSGIX_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "light, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	light = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 8918 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFragmentLightfvSGIX, )
  OGLM_AVAIL_CHECK(__glewFragmentLightfvSGIX, glFragmentLightfvSGIX)
  OGLM_SIZE_ENUM(FragmentLightParameterSGIX,pname,1)
  GLfloat* params = OGLM_ALLOC(pname_count,GLfloat,params);
  glFragmentLightfvSGIX(light, pname, params);
  OGLM_CHECK_ERR(glFragmentLightfvSGIX, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSVnv)
  free(params);
#line 18410 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glFragmentLightiEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFragmentLightiEXT)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "light, pname, param");
    {
	GLenum	light = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint	param = (int)SvIV(ST(2))
;
#line 8934 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFragmentLightiEXT, )
  OGLM_AVAIL_CHECK(__glewFragmentLightiEXT, glFragmentLightiEXT)
  glFragmentLightiEXT(light, pname, param);
  OGLM_CHECK_ERR(glFragmentLightiEXT, )
#line 18436 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFragmentLightiSGIX); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFragmentLightiSGIX)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "light, pname, param");
    {
	GLenum	light = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint	param = (int)SvIV(ST(2))
;
#line 8946 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFragmentLightiSGIX, )
  OGLM_AVAIL_CHECK(__glewFragmentLightiSGIX, glFragmentLightiSGIX)
  glFragmentLightiSGIX(light, pname, param);
  OGLM_CHECK_ERR(glFragmentLightiSGIX, )
#line 18461 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFragmentLightivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFragmentLightivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "light, pname, params");
    {
	GLenum	light = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 8958 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFragmentLightivEXT, )
  OGLM_AVAIL_CHECK(__glewFragmentLightivEXT, glFragmentLightivEXT)
  glFragmentLightivEXT(light, pname, params);
  OGLM_CHECK_ERR(glFragmentLightivEXT, )
#line 18486 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFragmentLightivSGIX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFragmentLightivSGIX_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "light, pname, params");
    {
	GLenum	light = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 8970 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFragmentLightivSGIX, )
  OGLM_AVAIL_CHECK(__glewFragmentLightivSGIX, glFragmentLightivSGIX)
  glFragmentLightivSGIX(light, pname, params);
  OGLM_CHECK_ERR(glFragmentLightivSGIX, )
#line 18511 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFragmentLightivSGIX_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFragmentLightivSGIX_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "light, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	light = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 8981 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFragmentLightivSGIX, )
  OGLM_AVAIL_CHECK(__glewFragmentLightivSGIX, glFragmentLightivSGIX)
  OGLM_SIZE_ENUM(FragmentLightParameterSGIX,pname,1)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  glFragmentLightivSGIX(light, pname, params);
  OGLM_CHECK_ERR(glFragmentLightivSGIX, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 18540 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glFragmentMaterialfEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFragmentMaterialfEXT)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "face, pname, param");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLfloat	param = (float)SvNV(ST(2))
;
#line 8997 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFragmentMaterialfEXT, )
  OGLM_AVAIL_CHECK(__glewFragmentMaterialfEXT, glFragmentMaterialfEXT)
  glFragmentMaterialfEXT(face, pname, param);
  OGLM_CHECK_ERR(glFragmentMaterialfEXT, )
#line 18566 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFragmentMaterialfSGIX); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFragmentMaterialfSGIX)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "face, pname, param");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLfloat	param = (float)SvNV(ST(2))
;
#line 9009 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFragmentMaterialfSGIX, )
  OGLM_AVAIL_CHECK(__glewFragmentMaterialfSGIX, glFragmentMaterialfSGIX)
  glFragmentMaterialfSGIX(face, pname, param);
  OGLM_CHECK_ERR(glFragmentMaterialfSGIX, )
#line 18591 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFragmentMaterialfvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFragmentMaterialfvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "face, pname, params");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLfloat*	params = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 9021 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFragmentMaterialfvEXT, )
  OGLM_AVAIL_CHECK(__glewFragmentMaterialfvEXT, glFragmentMaterialfvEXT)
  glFragmentMaterialfvEXT(face, pname, params);
  OGLM_CHECK_ERR(glFragmentMaterialfvEXT, )
#line 18616 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFragmentMaterialfvSGIX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFragmentMaterialfvSGIX_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "face, pname, params");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLfloat*	params = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 9033 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFragmentMaterialfvSGIX, )
  OGLM_AVAIL_CHECK(__glewFragmentMaterialfvSGIX, glFragmentMaterialfvSGIX)
  glFragmentMaterialfvSGIX(face, pname, params);
  OGLM_CHECK_ERR(glFragmentMaterialfvSGIX, )
#line 18641 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFragmentMaterialfvSGIX_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFragmentMaterialfvSGIX_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "face, pname, ...");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 9044 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFragmentMaterialfvSGIX, )
  OGLM_AVAIL_CHECK(__glewFragmentMaterialfvSGIX, glFragmentMaterialfvSGIX)
  OGLM_SIZE_ENUM(MaterialParameter,pname,1)
  GLfloat* params = OGLM_GET_VARARGS(params,2,GLfloat,NV,pname_count);
  glFragmentMaterialfvSGIX((GLenum )face, (GLenum )pname, (const GLfloat* )params);
  OGLM_CHECK_ERR(glFragmentMaterialfvSGIX, free(params);)
  free(params);
#line 18667 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFragmentMaterialiEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFragmentMaterialiEXT)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "face, pname, param");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLint	param = (int)SvIV(ST(2))
;
#line 9059 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFragmentMaterialiEXT, )
  OGLM_AVAIL_CHECK(__glewFragmentMaterialiEXT, glFragmentMaterialiEXT)
  glFragmentMaterialiEXT(face, pname, param);
  OGLM_CHECK_ERR(glFragmentMaterialiEXT, )
#line 18692 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFragmentMaterialiSGIX); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFragmentMaterialiSGIX)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "face, pname, param");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLint	param = (int)SvIV(ST(2))
;
#line 9071 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFragmentMaterialiSGIX, )
  OGLM_AVAIL_CHECK(__glewFragmentMaterialiSGIX, glFragmentMaterialiSGIX)
  glFragmentMaterialiSGIX(face, pname, param);
  OGLM_CHECK_ERR(glFragmentMaterialiSGIX, )
#line 18717 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFragmentMaterialivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFragmentMaterialivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "face, pname, params");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLint*	params = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 9083 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFragmentMaterialivEXT, )
  OGLM_AVAIL_CHECK(__glewFragmentMaterialivEXT, glFragmentMaterialivEXT)
  glFragmentMaterialivEXT(face, pname, params);
  OGLM_CHECK_ERR(glFragmentMaterialivEXT, )
#line 18742 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFragmentMaterialivSGIX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFragmentMaterialivSGIX_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "face, pname, params");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLint*	params = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 9095 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFragmentMaterialivSGIX, )
  OGLM_AVAIL_CHECK(__glewFragmentMaterialivSGIX, glFragmentMaterialivSGIX)
  glFragmentMaterialivSGIX(face, pname, params);
  OGLM_CHECK_ERR(glFragmentMaterialivSGIX, )
#line 18767 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFragmentMaterialivSGIX_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFragmentMaterialivSGIX_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "face, pname, ...");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 9106 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFragmentMaterialivSGIX, )
  OGLM_AVAIL_CHECK(__glewFragmentMaterialivSGIX, glFragmentMaterialivSGIX)
  OGLM_SIZE_ENUM(MaterialParameter,pname,1)
  GLint* params = OGLM_GET_VARARGS(params,2,GLint,IV,pname_count);
  glFragmentMaterialivSGIX((GLenum )face, (GLenum )pname, (const GLint* )params);
  OGLM_CHECK_ERR(glFragmentMaterialivSGIX, free(params);)
  free(params);
#line 18793 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFrameTerminatorGREMEDY); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFrameTerminatorGREMEDY)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 9118 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFrameTerminatorGREMEDY, )
  OGLM_AVAIL_CHECK(__glewFrameTerminatorGREMEDY, glFrameTerminatorGREMEDY)
  glFrameTerminatorGREMEDY();
  OGLM_CHECK_ERR(glFrameTerminatorGREMEDY, )
#line 18812 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFrameZoomSGIX); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFrameZoomSGIX)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "factor");
    {
	GLint	factor = (int)SvIV(ST(0))
;
#line 9128 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFrameZoomSGIX, )
  OGLM_AVAIL_CHECK(__glewFrameZoomSGIX, glFrameZoomSGIX)
  glFrameZoomSGIX(factor);
  OGLM_CHECK_ERR(glFrameZoomSGIX, )
#line 18833 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFramebufferDrawBufferEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFramebufferDrawBufferEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "framebuffer, mode");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	mode = (int)SvIV(ST(1))
;
#line 9139 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFramebufferDrawBufferEXT, )
  OGLM_AVAIL_CHECK(__glewFramebufferDrawBufferEXT, glFramebufferDrawBufferEXT)
  glFramebufferDrawBufferEXT(framebuffer, mode);
  OGLM_CHECK_ERR(glFramebufferDrawBufferEXT, )
#line 18856 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFramebufferDrawBuffersEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFramebufferDrawBuffersEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "framebuffer, n, bufs");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLsizei	n = (int)SvIV(ST(1))
;
	const GLenum*	bufs = INT2PTR(const GLenum *,SvIV(ST(2)))
;
#line 9151 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFramebufferDrawBuffersEXT, )
  OGLM_AVAIL_CHECK(__glewFramebufferDrawBuffersEXT, glFramebufferDrawBuffersEXT)
  glFramebufferDrawBuffersEXT(framebuffer, n, bufs);
  OGLM_CHECK_ERR(glFramebufferDrawBuffersEXT, )
#line 18881 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFramebufferDrawBuffersEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFramebufferDrawBuffersEXT_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "framebuffer, ...");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
#line 9161 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFramebufferDrawBuffersEXT, )
  OGLM_AVAIL_CHECK(__glewFramebufferDrawBuffersEXT, glFramebufferDrawBuffersEXT)
  GLsizei n = items-1;
  GLenum* bufs = OGLM_GET_VARARGS(bufs,1,GLenum,IV,n);
  glFramebufferDrawBuffersEXT((GLuint )framebuffer, (GLsizei )n, (const GLenum* )bufs);
  OGLM_CHECK_ERR(glFramebufferDrawBuffersEXT, free(bufs);)
  free(bufs);
#line 18905 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFramebufferFetchBarrierEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFramebufferFetchBarrierEXT)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 9173 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFramebufferFetchBarrierEXT, )
  OGLM_AVAIL_CHECK(__glewFramebufferFetchBarrierEXT, glFramebufferFetchBarrierEXT)
  glFramebufferFetchBarrierEXT();
  OGLM_CHECK_ERR(glFramebufferFetchBarrierEXT, )
#line 18924 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFramebufferFetchBarrierQCOM); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFramebufferFetchBarrierQCOM)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 9182 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFramebufferFetchBarrierQCOM, )
  OGLM_AVAIL_CHECK(__glewFramebufferFetchBarrierQCOM, glFramebufferFetchBarrierQCOM)
  glFramebufferFetchBarrierQCOM();
  OGLM_CHECK_ERR(glFramebufferFetchBarrierQCOM, )
#line 18943 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFramebufferFoveationConfigQCOM_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFramebufferFoveationConfigQCOM_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "framebuffer, numLayers, focalPointsPerLayer, requestedFeatures, providedFeatures");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLuint	numLayers = (unsigned int)SvUV(ST(1))
;
	GLuint	focalPointsPerLayer = (unsigned int)SvUV(ST(2))
;
	GLuint	requestedFeatures = (unsigned int)SvUV(ST(3))
;
	GLuint*	providedFeatures = INT2PTR(GLuint *,SvIV(ST(4)))
;
#line 9196 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFramebufferFoveationConfigQCOM, )
  OGLM_AVAIL_CHECK(__glewFramebufferFoveationConfigQCOM, glFramebufferFoveationConfigQCOM)
  glFramebufferFoveationConfigQCOM(framebuffer, numLayers, focalPointsPerLayer, requestedFeatures, providedFeatures);
  OGLM_CHECK_ERR(glFramebufferFoveationConfigQCOM, )
#line 18972 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFramebufferFoveationConfigQCOM_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFramebufferFoveationConfigQCOM_p)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "framebuffer, numLayers, focalPointsPerLayer, requestedFeatures");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLuint	numLayers = (unsigned int)SvUV(ST(1))
;
	GLuint	focalPointsPerLayer = (unsigned int)SvUV(ST(2))
;
	GLuint	requestedFeatures = (unsigned int)SvUV(ST(3))
;
	GLuint	RETVAL;
	dXSTARG;
#line 9209 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFramebufferFoveationConfigQCOM, )
  OGLM_AVAIL_CHECK(__glewFramebufferFoveationConfigQCOM, glFramebufferFoveationConfigQCOM)
  GLuint providedFeatures[1];
  glFramebufferFoveationConfigQCOM(framebuffer, numLayers, focalPointsPerLayer, requestedFeatures, providedFeatures);
  OGLM_CHECK_ERR(glFramebufferFoveationConfigQCOM, )
  RETVAL = providedFeatures[0];
#line 19003 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glFramebufferFoveationParametersQCOM); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFramebufferFoveationParametersQCOM)
{
    dVAR; dXSARGS;
    if (items != 8)
       croak_xs_usage(cv,  "fbo, layer, focalPoint, focalX, focalY, gainX, gainY, foveaArea");
    {
	GLuint	fbo = (unsigned int)SvUV(ST(0))
;
	GLuint	layer = (unsigned int)SvUV(ST(1))
;
	GLuint	focalPoint = (unsigned int)SvUV(ST(2))
;
	GLfloat	focalX = (float)SvNV(ST(3))
;
	GLfloat	focalY = (float)SvNV(ST(4))
;
	GLfloat	gainX = (float)SvNV(ST(5))
;
	GLfloat	gainY = (float)SvNV(ST(6))
;
	GLfloat	foveaArea = (float)SvNV(ST(7))
;
#line 9230 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFramebufferFoveationParametersQCOM, )
  OGLM_AVAIL_CHECK(__glewFramebufferFoveationParametersQCOM, glFramebufferFoveationParametersQCOM)
  glFramebufferFoveationParametersQCOM(fbo, layer, focalPoint, focalX, focalY, gainX, gainY, foveaArea);
  OGLM_CHECK_ERR(glFramebufferFoveationParametersQCOM, )
#line 19040 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFramebufferParameteri); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFramebufferParameteri)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, param");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint	param = (int)SvIV(ST(2))
;
#line 9242 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFramebufferParameteri, )
  OGLM_AVAIL_CHECK(__glewFramebufferParameteri, glFramebufferParameteri)
  glFramebufferParameteri(target, pname, param);
  OGLM_CHECK_ERR(glFramebufferParameteri, )
#line 19065 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFramebufferParameteriMESA); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFramebufferParameteriMESA)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, param");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint	param = (int)SvIV(ST(2))
;
#line 9254 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFramebufferParameteriMESA, )
  OGLM_AVAIL_CHECK(__glewFramebufferParameteriMESA, glFramebufferParameteriMESA)
  glFramebufferParameteriMESA(target, pname, param);
  OGLM_CHECK_ERR(glFramebufferParameteriMESA, )
#line 19090 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFramebufferPixelLocalStorageSizeEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFramebufferPixelLocalStorageSizeEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, size");
    {
	GLuint	target = (unsigned int)SvUV(ST(0))
;
	GLsizei	size = (int)SvIV(ST(1))
;
#line 9265 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFramebufferPixelLocalStorageSizeEXT, )
  OGLM_AVAIL_CHECK(__glewFramebufferPixelLocalStorageSizeEXT, glFramebufferPixelLocalStorageSizeEXT)
  glFramebufferPixelLocalStorageSizeEXT(target, size);
  OGLM_CHECK_ERR(glFramebufferPixelLocalStorageSizeEXT, )
#line 19113 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFramebufferReadBufferEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFramebufferReadBufferEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "framebuffer, mode");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	mode = (int)SvIV(ST(1))
;
#line 9276 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFramebufferReadBufferEXT, )
  OGLM_AVAIL_CHECK(__glewFramebufferReadBufferEXT, glFramebufferReadBufferEXT)
  glFramebufferReadBufferEXT(framebuffer, mode);
  OGLM_CHECK_ERR(glFramebufferReadBufferEXT, )
#line 19136 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFramebufferRenderbuffer); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFramebufferRenderbuffer)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "target, attachment, renderbuffertarget, renderbuffer");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	attachment = (int)SvIV(ST(1))
;
	GLenum	renderbuffertarget = (int)SvIV(ST(2))
;
	GLuint	renderbuffer = (unsigned int)SvUV(ST(3))
;
#line 9291 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFramebufferRenderbuffer, )
  OGLM_AVAIL_CHECK(__glewFramebufferRenderbuffer, glFramebufferRenderbuffer)
  glFramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer);
  OGLM_CHECK_ERR(glFramebufferRenderbuffer, )
#line 19164 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFramebufferRenderbufferOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFramebufferRenderbufferOES)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, attachment, renderbuffertarget, renderbuffer");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	attachment = (int)SvIV(ST(1))
;
	GLenum	renderbuffertarget = (int)SvIV(ST(2))
;
	GLuint	renderbuffer = (unsigned int)SvUV(ST(3))
;
#line 9304 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFramebufferRenderbufferOES, )
  OGLM_AVAIL_CHECK(__glewFramebufferRenderbufferOES, glFramebufferRenderbufferOES)
  glFramebufferRenderbufferOES(target, attachment, renderbuffertarget, renderbuffer);
  OGLM_CHECK_ERR(glFramebufferRenderbufferOES, )
#line 19191 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFramebufferSampleLocationsfvARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFramebufferSampleLocationsfvARB_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, start, count, v");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	start = (unsigned int)SvUV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLfloat*	v = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 9317 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFramebufferSampleLocationsfvARB, )
  OGLM_AVAIL_CHECK(__glewFramebufferSampleLocationsfvARB, glFramebufferSampleLocationsfvARB)
  glFramebufferSampleLocationsfvARB(target, start, count, v);
  OGLM_CHECK_ERR(glFramebufferSampleLocationsfvARB, )
#line 19218 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFramebufferSampleLocationsfvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFramebufferSampleLocationsfvNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, start, count, v");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	start = (unsigned int)SvUV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLfloat*	v = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 9330 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFramebufferSampleLocationsfvNV, )
  OGLM_AVAIL_CHECK(__glewFramebufferSampleLocationsfvNV, glFramebufferSampleLocationsfvNV)
  glFramebufferSampleLocationsfvNV(target, start, count, v);
  OGLM_CHECK_ERR(glFramebufferSampleLocationsfvNV, )
#line 19245 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFramebufferSamplePositionsfvAMD_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFramebufferSamplePositionsfvAMD_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, numsamples, pixelindex, values");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	numsamples = (unsigned int)SvUV(ST(1))
;
	GLuint	pixelindex = (unsigned int)SvUV(ST(2))
;
	const GLfloat*	values = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 9343 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFramebufferSamplePositionsfvAMD, )
  OGLM_AVAIL_CHECK(__glewFramebufferSamplePositionsfvAMD, glFramebufferSamplePositionsfvAMD)
  glFramebufferSamplePositionsfvAMD(target, numsamples, pixelindex, values);
  OGLM_CHECK_ERR(glFramebufferSamplePositionsfvAMD, )
#line 19272 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFramebufferShadingRateEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFramebufferShadingRateEXT)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "target, attachment, texture, baseLayer, numLayers, texelWidth, texelHeight");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	attachment = (int)SvIV(ST(1))
;
	GLuint	texture = (unsigned int)SvUV(ST(2))
;
	GLint	baseLayer = (int)SvIV(ST(3))
;
	GLsizei	numLayers = (int)SvIV(ST(4))
;
	GLsizei	texelWidth = (int)SvIV(ST(5))
;
	GLsizei	texelHeight = (int)SvIV(ST(6))
;
#line 9359 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFramebufferShadingRateEXT, )
  OGLM_AVAIL_CHECK(__glewFramebufferShadingRateEXT, glFramebufferShadingRateEXT)
  glFramebufferShadingRateEXT(target, attachment, texture, baseLayer, numLayers, texelWidth, texelHeight);
  OGLM_CHECK_ERR(glFramebufferShadingRateEXT, )
#line 19305 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFramebufferTexture); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFramebufferTexture)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "target, attachment, texture, level");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	attachment = (int)SvIV(ST(1))
;
	GLuint	texture = (unsigned int)SvUV(ST(2))
;
	GLint	level = (int)SvIV(ST(3))
;
#line 9375 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFramebufferTexture, )
  OGLM_AVAIL_CHECK(__glewFramebufferTexture, glFramebufferTexture)
  glFramebufferTexture(target, attachment, texture, level);
  OGLM_CHECK_ERR(glFramebufferTexture, )
#line 19333 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFramebufferTexture1D); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFramebufferTexture1D)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "target, attachment, textarget, texture, level");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	attachment = (int)SvIV(ST(1))
;
	GLenum	textarget = (int)SvIV(ST(2))
;
	GLuint	texture = (unsigned int)SvUV(ST(3))
;
	GLint	level = (int)SvIV(ST(4))
;
#line 9391 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFramebufferTexture1D, )
  OGLM_AVAIL_CHECK(__glewFramebufferTexture1D, glFramebufferTexture1D)
  glFramebufferTexture1D(target, attachment, textarget, texture, level);
  OGLM_CHECK_ERR(glFramebufferTexture1D, )
#line 19363 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFramebufferTexture2D); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFramebufferTexture2D)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "target, attachment, textarget, texture, level");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	attachment = (int)SvIV(ST(1))
;
	GLenum	textarget = (int)SvIV(ST(2))
;
	GLuint	texture = (unsigned int)SvUV(ST(3))
;
	GLint	level = (int)SvIV(ST(4))
;
#line 9407 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFramebufferTexture2D, )
  OGLM_AVAIL_CHECK(__glewFramebufferTexture2D, glFramebufferTexture2D)
  glFramebufferTexture2D(target, attachment, textarget, texture, level);
  OGLM_CHECK_ERR(glFramebufferTexture2D, )
#line 19393 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFramebufferTexture2DDownsampleIMG); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFramebufferTexture2DDownsampleIMG)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "target, attachment, textarget, texture, level, xscale, yscale");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	attachment = (int)SvIV(ST(1))
;
	GLenum	textarget = (int)SvIV(ST(2))
;
	GLuint	texture = (unsigned int)SvUV(ST(3))
;
	GLint	level = (int)SvIV(ST(4))
;
	GLint	xscale = (int)SvIV(ST(5))
;
	GLint	yscale = (int)SvIV(ST(6))
;
#line 9423 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFramebufferTexture2DDownsampleIMG, )
  OGLM_AVAIL_CHECK(__glewFramebufferTexture2DDownsampleIMG, glFramebufferTexture2DDownsampleIMG)
  glFramebufferTexture2DDownsampleIMG(target, attachment, textarget, texture, level, xscale, yscale);
  OGLM_CHECK_ERR(glFramebufferTexture2DDownsampleIMG, )
#line 19426 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFramebufferTexture2DMultisampleEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFramebufferTexture2DMultisampleEXT)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "target, attachment, textarget, texture, level, samples");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	attachment = (int)SvIV(ST(1))
;
	GLenum	textarget = (int)SvIV(ST(2))
;
	GLuint	texture = (unsigned int)SvUV(ST(3))
;
	GLint	level = (int)SvIV(ST(4))
;
	GLsizei	samples = (int)SvIV(ST(5))
;
#line 9438 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFramebufferTexture2DMultisampleEXT, )
  OGLM_AVAIL_CHECK(__glewFramebufferTexture2DMultisampleEXT, glFramebufferTexture2DMultisampleEXT)
  glFramebufferTexture2DMultisampleEXT(target, attachment, textarget, texture, level, samples);
  OGLM_CHECK_ERR(glFramebufferTexture2DMultisampleEXT, )
#line 19457 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFramebufferTexture2DMultisampleIMG); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFramebufferTexture2DMultisampleIMG)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "target, attachment, textarget, texture, level, samples");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	attachment = (int)SvIV(ST(1))
;
	GLenum	textarget = (int)SvIV(ST(2))
;
	GLuint	texture = (unsigned int)SvUV(ST(3))
;
	GLint	level = (int)SvIV(ST(4))
;
	GLsizei	samples = (int)SvIV(ST(5))
;
#line 9453 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFramebufferTexture2DMultisampleIMG, )
  OGLM_AVAIL_CHECK(__glewFramebufferTexture2DMultisampleIMG, glFramebufferTexture2DMultisampleIMG)
  glFramebufferTexture2DMultisampleIMG(target, attachment, textarget, texture, level, samples);
  OGLM_CHECK_ERR(glFramebufferTexture2DMultisampleIMG, )
#line 19488 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFramebufferTexture2DOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFramebufferTexture2DOES)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "target, attachment, textarget, texture, level");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	attachment = (int)SvIV(ST(1))
;
	GLenum	textarget = (int)SvIV(ST(2))
;
	GLuint	texture = (unsigned int)SvUV(ST(3))
;
	GLint	level = (int)SvIV(ST(4))
;
#line 9467 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFramebufferTexture2DOES, )
  OGLM_AVAIL_CHECK(__glewFramebufferTexture2DOES, glFramebufferTexture2DOES)
  glFramebufferTexture2DOES(target, attachment, textarget, texture, level);
  OGLM_CHECK_ERR(glFramebufferTexture2DOES, )
#line 19517 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFramebufferTexture3D); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFramebufferTexture3D)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 6)
       croak_xs_usage(cv,  "target, attachment, textarget, texture, level, zoffset");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	attachment = (int)SvIV(ST(1))
;
	GLenum	textarget = (int)SvIV(ST(2))
;
	GLuint	texture = (unsigned int)SvUV(ST(3))
;
	GLint	level = (int)SvIV(ST(4))
;
	GLint	zoffset = (int)SvIV(ST(5))
;
#line 9484 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFramebufferTexture3D, )
  OGLM_AVAIL_CHECK(__glewFramebufferTexture3D, glFramebufferTexture3D)
  glFramebufferTexture3D(target, attachment, textarget, texture, level, zoffset);
  OGLM_CHECK_ERR(glFramebufferTexture3D, )
#line 19549 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFramebufferTexture3DOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFramebufferTexture3DOES)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "target, attachment, textarget, texture, level, zoffset");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	attachment = (int)SvIV(ST(1))
;
	GLenum	textarget = (int)SvIV(ST(2))
;
	GLuint	texture = (unsigned int)SvUV(ST(3))
;
	GLint	level = (int)SvIV(ST(4))
;
	GLint	zoffset = (int)SvIV(ST(5))
;
#line 9499 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFramebufferTexture3DOES, )
  OGLM_AVAIL_CHECK(__glewFramebufferTexture3DOES, glFramebufferTexture3DOES)
  glFramebufferTexture3DOES(target, attachment, textarget, texture, level, zoffset);
  OGLM_CHECK_ERR(glFramebufferTexture3DOES, )
#line 19580 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFramebufferTextureFaceARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFramebufferTextureFaceARB)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "target, attachment, texture, level, face");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	attachment = (int)SvIV(ST(1))
;
	GLuint	texture = (unsigned int)SvUV(ST(2))
;
	GLint	level = (int)SvIV(ST(3))
;
	GLenum	face = (int)SvIV(ST(4))
;
#line 9515 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFramebufferTextureFaceARB, )
  OGLM_AVAIL_CHECK(__glewFramebufferTextureFaceARB, glFramebufferTextureFaceARB)
  glFramebufferTextureFaceARB(target, attachment, texture, level, face);
  OGLM_CHECK_ERR(glFramebufferTextureFaceARB, )
#line 19610 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFramebufferTextureLayer); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFramebufferTextureLayer)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "target, attachment, texture, level, layer");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	attachment = (int)SvIV(ST(1))
;
	GLuint	texture = (unsigned int)SvUV(ST(2))
;
	GLint	level = (int)SvIV(ST(3))
;
	GLint	layer = (int)SvIV(ST(4))
;
#line 9532 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFramebufferTextureLayer, )
  OGLM_AVAIL_CHECK(__glewFramebufferTextureLayer, glFramebufferTextureLayer)
  glFramebufferTextureLayer(target, attachment, texture, level, layer);
  OGLM_CHECK_ERR(glFramebufferTextureLayer, )
#line 19640 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFramebufferTextureLayerDownsampleIMG); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFramebufferTextureLayerDownsampleIMG)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "target, attachment, texture, level, layer, xscale, yscale");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	attachment = (int)SvIV(ST(1))
;
	GLuint	texture = (unsigned int)SvUV(ST(2))
;
	GLint	level = (int)SvIV(ST(3))
;
	GLint	layer = (int)SvIV(ST(4))
;
	GLint	xscale = (int)SvIV(ST(5))
;
	GLint	yscale = (int)SvIV(ST(6))
;
#line 9548 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFramebufferTextureLayerDownsampleIMG, )
  OGLM_AVAIL_CHECK(__glewFramebufferTextureLayerDownsampleIMG, glFramebufferTextureLayerDownsampleIMG)
  glFramebufferTextureLayerDownsampleIMG(target, attachment, texture, level, layer, xscale, yscale);
  OGLM_CHECK_ERR(glFramebufferTextureLayerDownsampleIMG, )
#line 19673 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFramebufferTextureLayerNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFramebufferTextureLayerNV)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "target, attachment, texture, level, layer");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	attachment = (int)SvIV(ST(1))
;
	GLuint	texture = (unsigned int)SvUV(ST(2))
;
	GLint	level = (int)SvIV(ST(3))
;
	GLint	layer = (int)SvIV(ST(4))
;
#line 9562 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFramebufferTextureLayerNV, )
  OGLM_AVAIL_CHECK(__glewFramebufferTextureLayerNV, glFramebufferTextureLayerNV)
  glFramebufferTextureLayerNV(target, attachment, texture, level, layer);
  OGLM_CHECK_ERR(glFramebufferTextureLayerNV, )
#line 19702 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFramebufferTextureMultisampleMultiviewOVR); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFramebufferTextureMultisampleMultiviewOVR)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "target, attachment, texture, level, samples, baseViewIndex, numViews");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	attachment = (int)SvIV(ST(1))
;
	GLuint	texture = (unsigned int)SvUV(ST(2))
;
	GLint	level = (int)SvIV(ST(3))
;
	GLsizei	samples = (int)SvIV(ST(4))
;
	GLint	baseViewIndex = (int)SvIV(ST(5))
;
	GLsizei	numViews = (int)SvIV(ST(6))
;
#line 9578 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFramebufferTextureMultisampleMultiviewOVR, )
  OGLM_AVAIL_CHECK(__glewFramebufferTextureMultisampleMultiviewOVR, glFramebufferTextureMultisampleMultiviewOVR)
  glFramebufferTextureMultisampleMultiviewOVR(target, attachment, texture, level, samples, baseViewIndex, numViews);
  OGLM_CHECK_ERR(glFramebufferTextureMultisampleMultiviewOVR, )
#line 19735 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFramebufferTextureMultiviewOVR); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFramebufferTextureMultiviewOVR)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "target, attachment, texture, level, baseViewIndex, numViews");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	attachment = (int)SvIV(ST(1))
;
	GLuint	texture = (unsigned int)SvUV(ST(2))
;
	GLint	level = (int)SvIV(ST(3))
;
	GLint	baseViewIndex = (int)SvIV(ST(4))
;
	GLsizei	numViews = (int)SvIV(ST(5))
;
#line 9593 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFramebufferTextureMultiviewOVR, )
  OGLM_AVAIL_CHECK(__glewFramebufferTextureMultiviewOVR, glFramebufferTextureMultiviewOVR)
  glFramebufferTextureMultiviewOVR(target, attachment, texture, level, baseViewIndex, numViews);
  OGLM_CHECK_ERR(glFramebufferTextureMultiviewOVR, )
#line 19766 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFreeObjectBufferATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFreeObjectBufferATI)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "buffer");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
#line 9603 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFreeObjectBufferATI, )
  OGLM_AVAIL_CHECK(__glewFreeObjectBufferATI, glFreeObjectBufferATI)
  glFreeObjectBufferATI(buffer);
  OGLM_CHECK_ERR(glFreeObjectBufferATI, )
#line 19787 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFrontFace); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFrontFace)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "mode");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
#line 9613 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFrontFace, )
  glFrontFace(mode);
  OGLM_CHECK_ERR(glFrontFace, )
#line 19807 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFrustum); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFrustum)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "left, right, bottom, top, zNear, zFar");
    {
	GLdouble	left = (double)SvNV(ST(0))
;
	GLdouble	right = (double)SvNV(ST(1))
;
	GLdouble	bottom = (double)SvNV(ST(2))
;
	GLdouble	top = (double)SvNV(ST(3))
;
	GLdouble	zNear = (double)SvNV(ST(4))
;
	GLdouble	zFar = (double)SvNV(ST(5))
;
#line 9627 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFrustum, )
  glFrustum(left, right, bottom, top, zNear, zFar);
  OGLM_CHECK_ERR(glFrustum, )
#line 19837 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFrustumf); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFrustumf)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "left, right, bottom, top, zNear, zFar");
    {
	GLfloat	left = (float)SvNV(ST(0))
;
	GLfloat	right = (float)SvNV(ST(1))
;
	GLfloat	bottom = (float)SvNV(ST(2))
;
	GLfloat	top = (float)SvNV(ST(3))
;
	GLfloat	zNear = (float)SvNV(ST(4))
;
	GLfloat	zFar = (float)SvNV(ST(5))
;
#line 9641 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFrustumf, )
  OGLM_AVAIL_CHECK(__glewFrustumf, glFrustumf)
  glFrustumf(left, right, bottom, top, zNear, zFar);
  OGLM_CHECK_ERR(glFrustumf, )
#line 19868 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFrustumfOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFrustumfOES)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "l, r, b, t, n, f");
    {
	GLfloat	l = (float)SvNV(ST(0))
;
	GLfloat	r = (float)SvNV(ST(1))
;
	GLfloat	b = (float)SvNV(ST(2))
;
	GLfloat	t = (float)SvNV(ST(3))
;
	GLfloat	n = (float)SvNV(ST(4))
;
	GLfloat	f = (float)SvNV(ST(5))
;
#line 9656 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFrustumfOES, )
  OGLM_AVAIL_CHECK(__glewFrustumfOES, glFrustumfOES)
  glFrustumfOES(l, r, b, t, n, f);
  OGLM_CHECK_ERR(glFrustumfOES, )
#line 19899 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glFrustumx); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glFrustumx)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "left, right, bottom, top, zNear, zFar");
    {
	GLfixed	left = (int)SvIV(ST(0))
;
	GLfixed	right = (int)SvIV(ST(1))
;
	GLfixed	bottom = (int)SvIV(ST(2))
;
	GLfixed	top = (int)SvIV(ST(3))
;
	GLfixed	zNear = (int)SvIV(ST(4))
;
	GLfixed	zFar = (int)SvIV(ST(5))
;
#line 9671 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glFrustumx, )
  OGLM_AVAIL_CHECK(__glewFrustumx, glFrustumx)
  glFrustumx(left, right, bottom, top, zNear, zFar);
  OGLM_CHECK_ERR(glFrustumx, )
#line 19930 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGenAsyncMarkersSGIX); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenAsyncMarkersSGIX)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "range");
    {
	GLsizei	range = (int)SvIV(ST(0))
;
	GLuint	RETVAL;
	dXSTARG;
#line 9681 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenAsyncMarkersSGIX, )
  OGLM_AVAIL_CHECK(__glewGenAsyncMarkersSGIX, glGenAsyncMarkersSGIX)
  RETVAL = glGenAsyncMarkersSGIX(range);
  OGLM_CHECK_ERR(glGenAsyncMarkersSGIX, )
#line 19953 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGenBuffers_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenBuffers_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "n, buffers");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	GLuint*	buffers = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 9696 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenBuffers, )
  OGLM_AVAIL_CHECK(__glewGenBuffers, glGenBuffers)
  glGenBuffers(n, buffers);
  OGLM_CHECK_ERR(glGenBuffers, )
#line 19979 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGenBuffers_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenBuffers_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "n");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLsizei	n = (int)SvIV(ST(0))
;
#line 9708 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenBuffers, )
  OGLM_AVAIL_CHECK(__glewGenBuffers, glGenBuffers)
  GLuint* buffers = OGLM_ALLOC(n,GLuint,buffers);
  glGenBuffers(n, buffers);
  OGLM_CHECK_ERR(glGenBuffers, free(buffers);)
  OGLM_OUT_FINISH(buffers,n,newSVuv)
  free(buffers);
#line 20006 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGenFencesAPPLE_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenFencesAPPLE_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, fences");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	GLuint*	fences = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 9722 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenFencesAPPLE, )
  OGLM_AVAIL_CHECK(__glewGenFencesAPPLE, glGenFencesAPPLE)
  glGenFencesAPPLE(n, fences);
  OGLM_CHECK_ERR(glGenFencesAPPLE, )
#line 20030 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGenFencesAPPLE_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenFencesAPPLE_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "n");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLsizei	n = (int)SvIV(ST(0))
;
#line 9732 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenFencesAPPLE, )
  OGLM_AVAIL_CHECK(__glewGenFencesAPPLE, glGenFencesAPPLE)
  GLuint* fences = OGLM_ALLOC(n,GLuint,fences);
  glGenFencesAPPLE(n, fences);
  OGLM_CHECK_ERR(glGenFencesAPPLE, free(fences);)
  OGLM_OUT_FINISH(fences,n,newSVuv)
  free(fences);
#line 20056 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGenFencesNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenFencesNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, fences");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	GLuint*	fences = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 9746 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenFencesNV, )
  OGLM_AVAIL_CHECK(__glewGenFencesNV, glGenFencesNV)
  glGenFencesNV(n, fences);
  OGLM_CHECK_ERR(glGenFencesNV, )
#line 20080 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGenFencesNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenFencesNV_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "n");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLsizei	n = (int)SvIV(ST(0))
;
#line 9756 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenFencesNV, )
  OGLM_AVAIL_CHECK(__glewGenFencesNV, glGenFencesNV)
  GLuint* fences = OGLM_ALLOC(n,GLuint,fences);
  glGenFencesNV(n, fences);
  OGLM_CHECK_ERR(glGenFencesNV, free(fences);)
  OGLM_OUT_FINISH(fences,n,newSVuv)
  free(fences);
#line 20106 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGenFragmentShadersATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenFragmentShadersATI)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "range");
    {
	GLuint	range = (unsigned int)SvUV(ST(0))
;
	GLuint	RETVAL;
	dXSTARG;
#line 9769 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenFragmentShadersATI, )
  OGLM_AVAIL_CHECK(__glewGenFragmentShadersATI, glGenFragmentShadersATI)
  RETVAL = glGenFragmentShadersATI(range);
  OGLM_CHECK_ERR(glGenFragmentShadersATI, )
#line 20130 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGenFramebuffers_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenFramebuffers_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "n, framebuffers");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	GLuint*	framebuffers = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 9784 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenFramebuffers, )
  OGLM_AVAIL_CHECK(__glewGenFramebuffers, glGenFramebuffers)
  glGenFramebuffers(n, framebuffers);
  OGLM_CHECK_ERR(glGenFramebuffers, )
#line 20156 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGenFramebuffers_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenFramebuffers_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "n");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLsizei	n = (int)SvIV(ST(0))
;
#line 9796 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenFramebuffers, )
  OGLM_AVAIL_CHECK(__glewGenFramebuffers, glGenFramebuffers)
  GLuint* framebuffers = OGLM_ALLOC(n,GLuint,framebuffers);
  glGenFramebuffers(n, framebuffers);
  OGLM_CHECK_ERR(glGenFramebuffers, free(framebuffers);)
  OGLM_OUT_FINISH(framebuffers,n,newSVuv)
  free(framebuffers);
#line 20183 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGenFramebuffersOES_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenFramebuffersOES_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, framebuffers");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	GLuint*	framebuffers = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 9810 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenFramebuffersOES, )
  OGLM_AVAIL_CHECK(__glewGenFramebuffersOES, glGenFramebuffersOES)
  glGenFramebuffersOES(n, framebuffers);
  OGLM_CHECK_ERR(glGenFramebuffersOES, )
#line 20207 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGenLists); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenLists)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "range");
    {
	GLsizei	range = (int)SvIV(ST(0))
;
	GLuint	RETVAL;
	dXSTARG;
#line 9820 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenLists, )
  RETVAL = glGenLists(range);
  OGLM_CHECK_ERR(glGenLists, )
#line 20229 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGenMPEGPredictorsSGIX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenMPEGPredictorsSGIX_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, predictors");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	GLuint*	predictors = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 9832 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenMPEGPredictorsSGIX, )
  OGLM_AVAIL_CHECK(__glewGenMPEGPredictorsSGIX, glGenMPEGPredictorsSGIX)
  glGenMPEGPredictorsSGIX(n, predictors);
  OGLM_CHECK_ERR(glGenMPEGPredictorsSGIX, )
#line 20254 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGenNamesAMD_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenNamesAMD_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "identifier, num, names");
    {
	GLenum	identifier = (int)SvIV(ST(0))
;
	GLuint	num = (unsigned int)SvUV(ST(1))
;
	GLuint*	names = INT2PTR(GLuint *,SvIV(ST(2)))
;
#line 9844 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenNamesAMD, )
  OGLM_AVAIL_CHECK(__glewGenNamesAMD, glGenNamesAMD)
  glGenNamesAMD(identifier, num, names);
  OGLM_CHECK_ERR(glGenNamesAMD, )
#line 20279 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGenNamesAMD_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenNamesAMD_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "identifier, num");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	identifier = (int)SvIV(ST(0))
;
	GLuint	num = (unsigned int)SvUV(ST(1))
;
#line 9855 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenNamesAMD, )
  OGLM_AVAIL_CHECK(__glewGenNamesAMD, glGenNamesAMD)
  GLuint* names = OGLM_ALLOC(num,GLuint,names);
  glGenNamesAMD(identifier, num, names);
  OGLM_CHECK_ERR(glGenNamesAMD, free(names);)
  OGLM_OUT_FINISH(names,num,newSVuv)
  free(names);
#line 20307 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGenOcclusionQueriesNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenOcclusionQueriesNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, ids");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	GLuint*	ids = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 9869 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenOcclusionQueriesNV, )
  OGLM_AVAIL_CHECK(__glewGenOcclusionQueriesNV, glGenOcclusionQueriesNV)
  glGenOcclusionQueriesNV(n, ids);
  OGLM_CHECK_ERR(glGenOcclusionQueriesNV, )
#line 20331 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGenOcclusionQueriesNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenOcclusionQueriesNV_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "n");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLsizei	n = (int)SvIV(ST(0))
;
#line 9879 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenOcclusionQueriesNV, )
  OGLM_AVAIL_CHECK(__glewGenOcclusionQueriesNV, glGenOcclusionQueriesNV)
  GLuint* ids = OGLM_ALLOC(n,GLuint,ids);
  glGenOcclusionQueriesNV(n, ids);
  OGLM_CHECK_ERR(glGenOcclusionQueriesNV, free(ids);)
  OGLM_OUT_FINISH(ids,n,newSVuv)
  free(ids);
#line 20357 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGenPathsNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenPathsNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "range");
    {
	GLsizei	range = (int)SvIV(ST(0))
;
	GLuint	RETVAL;
	dXSTARG;
#line 9892 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenPathsNV, )
  OGLM_AVAIL_CHECK(__glewGenPathsNV, glGenPathsNV)
  RETVAL = glGenPathsNV(range);
  OGLM_CHECK_ERR(glGenPathsNV, )
#line 20381 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGenPerfMonitorsAMD_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenPerfMonitorsAMD_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, monitors");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	GLuint*	monitors = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 9905 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenPerfMonitorsAMD, )
  OGLM_AVAIL_CHECK(__glewGenPerfMonitorsAMD, glGenPerfMonitorsAMD)
  glGenPerfMonitorsAMD(n, monitors);
  OGLM_CHECK_ERR(glGenPerfMonitorsAMD, )
#line 20406 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGenPerfMonitorsAMD_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenPerfMonitorsAMD_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "n");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLsizei	n = (int)SvIV(ST(0))
;
#line 9915 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenPerfMonitorsAMD, )
  OGLM_AVAIL_CHECK(__glewGenPerfMonitorsAMD, glGenPerfMonitorsAMD)
  GLuint* monitors = OGLM_ALLOC(n,GLuint,monitors);
  glGenPerfMonitorsAMD(n, monitors);
  OGLM_CHECK_ERR(glGenPerfMonitorsAMD, free(monitors);)
  OGLM_OUT_FINISH(monitors,n,newSVuv)
  free(monitors);
#line 20432 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGenProgramPipelines_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenProgramPipelines_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, pipelines");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	GLuint*	pipelines = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 9929 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenProgramPipelines, )
  OGLM_AVAIL_CHECK(__glewGenProgramPipelines, glGenProgramPipelines)
  glGenProgramPipelines(n, pipelines);
  OGLM_CHECK_ERR(glGenProgramPipelines, )
#line 20456 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGenProgramPipelines_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenProgramPipelines_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "n");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLsizei	n = (int)SvIV(ST(0))
;
#line 9939 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenProgramPipelines, )
  OGLM_AVAIL_CHECK(__glewGenProgramPipelines, glGenProgramPipelines)
  GLuint* pipelines = OGLM_ALLOC(n,GLuint,pipelines);
  glGenProgramPipelines(n, pipelines);
  OGLM_CHECK_ERR(glGenProgramPipelines, free(pipelines);)
  OGLM_OUT_FINISH(pipelines,n,newSVuv)
  free(pipelines);
#line 20482 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGenProgramsARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenProgramsARB_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "n, programs");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	GLuint*	programs = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 9955 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenProgramsARB, )
  OGLM_AVAIL_CHECK(__glewGenProgramsARB, glGenProgramsARB)
  glGenProgramsARB(n, programs);
  OGLM_CHECK_ERR(glGenProgramsARB, )
#line 20507 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGenProgramsARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenProgramsARB_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "n");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLsizei	n = (int)SvIV(ST(0))
;
#line 9967 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenProgramsARB, )
  OGLM_AVAIL_CHECK(__glewGenProgramsARB, glGenProgramsARB)
  GLuint* programs = OGLM_ALLOC(n,GLuint,programs);
  glGenProgramsARB(n, programs);
  OGLM_CHECK_ERR(glGenProgramsARB, free(programs);)
  OGLM_OUT_FINISH(programs,n,newSVuv)
  free(programs);
#line 20534 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGenQueries_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenQueries_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "n, ids");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	GLuint*	ids = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 9983 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenQueries, )
  OGLM_AVAIL_CHECK(__glewGenQueries, glGenQueries)
  glGenQueries(n, ids);
  OGLM_CHECK_ERR(glGenQueries, )
#line 20559 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGenQueries_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenQueries_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "n");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLsizei	n = (int)SvIV(ST(0))
;
#line 9995 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenQueries, )
  OGLM_AVAIL_CHECK(__glewGenQueries, glGenQueries)
  GLuint* ids = OGLM_ALLOC(n,GLuint,ids);
  glGenQueries(n, ids);
  OGLM_CHECK_ERR(glGenQueries, free(ids);)
  OGLM_OUT_FINISH(ids,n,newSVuv)
  free(ids);
#line 20586 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGenQueriesANGLE_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenQueriesANGLE_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, ids");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	GLuint*	ids = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 10009 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenQueriesANGLE, )
  OGLM_AVAIL_CHECK(__glewGenQueriesANGLE, glGenQueriesANGLE)
  glGenQueriesANGLE(n, ids);
  OGLM_CHECK_ERR(glGenQueriesANGLE, )
#line 20610 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGenQueriesEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenQueriesEXT_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, ids");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	GLuint*	ids = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 10020 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenQueriesEXT, )
  OGLM_AVAIL_CHECK(__glewGenQueriesEXT, glGenQueriesEXT)
  glGenQueriesEXT(n, ids);
  OGLM_CHECK_ERR(glGenQueriesEXT, )
#line 20633 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGenQueriesEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenQueriesEXT_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "n");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLsizei	n = (int)SvIV(ST(0))
;
#line 10030 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenQueriesEXT, )
  OGLM_AVAIL_CHECK(__glewGenQueriesEXT, glGenQueriesEXT)
  GLuint* ids = OGLM_ALLOC(n,GLuint,ids);
  glGenQueriesEXT(n, ids);
  OGLM_CHECK_ERR(glGenQueriesEXT, free(ids);)
  OGLM_OUT_FINISH(ids,n,newSVuv)
  free(ids);
#line 20659 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGenRenderbuffers_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenRenderbuffers_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "n, renderbuffers");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	GLuint*	renderbuffers = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 10046 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenRenderbuffers, )
  OGLM_AVAIL_CHECK(__glewGenRenderbuffers, glGenRenderbuffers)
  glGenRenderbuffers(n, renderbuffers);
  OGLM_CHECK_ERR(glGenRenderbuffers, )
#line 20684 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGenRenderbuffers_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenRenderbuffers_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "n");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLsizei	n = (int)SvIV(ST(0))
;
#line 10058 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenRenderbuffers, )
  OGLM_AVAIL_CHECK(__glewGenRenderbuffers, glGenRenderbuffers)
  GLuint* renderbuffers = OGLM_ALLOC(n,GLuint,renderbuffers);
  glGenRenderbuffers(n, renderbuffers);
  OGLM_CHECK_ERR(glGenRenderbuffers, free(renderbuffers);)
  OGLM_OUT_FINISH(renderbuffers,n,newSVuv)
  free(renderbuffers);
#line 20711 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGenRenderbuffersOES_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenRenderbuffersOES_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, renderbuffers");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	GLuint*	renderbuffers = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 10072 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenRenderbuffersOES, )
  OGLM_AVAIL_CHECK(__glewGenRenderbuffersOES, glGenRenderbuffersOES)
  glGenRenderbuffersOES(n, renderbuffers);
  OGLM_CHECK_ERR(glGenRenderbuffersOES, )
#line 20735 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGenSamplers_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenSamplers_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "count, samplers");
    {
	GLsizei	count = (int)SvIV(ST(0))
;
	GLuint*	samplers = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 10083 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenSamplers, )
  OGLM_AVAIL_CHECK(__glewGenSamplers, glGenSamplers)
  glGenSamplers(count, samplers);
  OGLM_CHECK_ERR(glGenSamplers, )
#line 20758 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGenSamplers_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenSamplers_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "count");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLsizei	count = (int)SvIV(ST(0))
;
#line 10093 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenSamplers, )
  OGLM_AVAIL_CHECK(__glewGenSamplers, glGenSamplers)
  GLuint* samplers = OGLM_ALLOC(count,GLuint,samplers);
  glGenSamplers(count, samplers);
  OGLM_CHECK_ERR(glGenSamplers, free(samplers);)
  OGLM_OUT_FINISH(samplers,count,newSVuv)
  free(samplers);
#line 20784 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGenSemaphoresEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenSemaphoresEXT_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, semaphores");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	GLuint*	semaphores = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 10107 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenSemaphoresEXT, )
  OGLM_AVAIL_CHECK(__glewGenSemaphoresEXT, glGenSemaphoresEXT)
  glGenSemaphoresEXT(n, semaphores);
  OGLM_CHECK_ERR(glGenSemaphoresEXT, )
#line 20808 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGenSemaphoresEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenSemaphoresEXT_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "n");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLsizei	n = (int)SvIV(ST(0))
;
#line 10117 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenSemaphoresEXT, )
  OGLM_AVAIL_CHECK(__glewGenSemaphoresEXT, glGenSemaphoresEXT)
  GLuint* semaphores = OGLM_ALLOC(n,GLuint,semaphores);
  glGenSemaphoresEXT(n, semaphores);
  OGLM_CHECK_ERR(glGenSemaphoresEXT, free(semaphores);)
  OGLM_OUT_FINISH(semaphores,n,newSVuv)
  free(semaphores);
#line 20834 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGenSymbolsEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenSymbolsEXT)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "datatype, storagetype, range, components");
    {
	GLenum	datatype = (int)SvIV(ST(0))
;
	GLenum	storagetype = (int)SvIV(ST(1))
;
	GLenum	range = (int)SvIV(ST(2))
;
	GLuint	components = (unsigned int)SvUV(ST(3))
;
	GLuint	RETVAL;
	dXSTARG;
#line 10133 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenSymbolsEXT, )
  OGLM_AVAIL_CHECK(__glewGenSymbolsEXT, glGenSymbolsEXT)
  RETVAL = glGenSymbolsEXT(datatype, storagetype, range, components);
  OGLM_CHECK_ERR(glGenSymbolsEXT, )
#line 20864 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGenTextures_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenTextures_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, textures");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	GLuint *	textures = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 10146 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenTextures, )
  glGenTextures(n, textures);
  OGLM_CHECK_ERR(glGenTextures, )
#line 20888 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGenTextures_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenTextures_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "n");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLsizei	n = (int)SvIV(ST(0))
;
#line 10155 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenTextures, )
  GLuint *textures = OGLM_ALLOC(n,GLuint,textures);
  glGenTextures(n, textures);
  OGLM_CHECK_ERR(glGenTextures, free(textures);)
  OGLM_OUT_FINISH(textures,n,newSVuv)
  free(textures);
#line 20913 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGenTexturesEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenTexturesEXT_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, textures");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	GLuint*	textures = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 10168 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenTexturesEXT, )
  OGLM_AVAIL_CHECK(__glewGenTexturesEXT, glGenTexturesEXT)
  glGenTexturesEXT(n, textures);
  OGLM_CHECK_ERR(glGenTexturesEXT, )
#line 20937 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGenTexturesEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenTexturesEXT_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "n");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLsizei	n = (int)SvIV(ST(0))
;
#line 10178 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenTexturesEXT, )
  OGLM_AVAIL_CHECK(__glewGenTexturesEXT, glGenTexturesEXT)
  GLuint* textures = OGLM_ALLOC(n,GLuint,textures);
  glGenTexturesEXT(n, textures);
  OGLM_CHECK_ERR(glGenTexturesEXT, free(textures);)
  OGLM_OUT_FINISH(textures,n,newSVuv)
  free(textures);
#line 20963 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGenTransformFeedbacks_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenTransformFeedbacks_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "n, ids");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	GLuint*	ids = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 10194 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenTransformFeedbacks, )
  OGLM_AVAIL_CHECK(__glewGenTransformFeedbacks, glGenTransformFeedbacks)
  glGenTransformFeedbacks(n, ids);
  OGLM_CHECK_ERR(glGenTransformFeedbacks, )
#line 20988 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGenTransformFeedbacks_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenTransformFeedbacks_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "n");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLsizei	n = (int)SvIV(ST(0))
;
#line 10206 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenTransformFeedbacks, )
  OGLM_AVAIL_CHECK(__glewGenTransformFeedbacks, glGenTransformFeedbacks)
  GLuint* ids = OGLM_ALLOC(n,GLuint,ids);
  glGenTransformFeedbacks(n, ids);
  OGLM_CHECK_ERR(glGenTransformFeedbacks, free(ids);)
  OGLM_OUT_FINISH(ids,n,newSVuv)
  free(ids);
#line 21015 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGenVertexArrays_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenVertexArrays_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "n, arrays");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	GLuint*	arrays = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 10222 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenVertexArrays, )
  OGLM_AVAIL_CHECK(__glewGenVertexArrays, glGenVertexArrays)
  glGenVertexArrays(n, arrays);
  OGLM_CHECK_ERR(glGenVertexArrays, )
#line 21040 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGenVertexArrays_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenVertexArrays_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "n");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLsizei	n = (int)SvIV(ST(0))
;
#line 10234 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenVertexArrays, )
  OGLM_AVAIL_CHECK(__glewGenVertexArrays, glGenVertexArrays)
  GLuint* arrays = OGLM_ALLOC(n,GLuint,arrays);
  glGenVertexArrays(n, arrays);
  OGLM_CHECK_ERR(glGenVertexArrays, free(arrays);)
  OGLM_OUT_FINISH(arrays,n,newSVuv)
  free(arrays);
#line 21067 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGenVertexArraysOES_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenVertexArraysOES_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, arrays");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	GLuint*	arrays = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 10248 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenVertexArraysOES, )
  OGLM_AVAIL_CHECK(__glewGenVertexArraysOES, glGenVertexArraysOES)
  glGenVertexArraysOES(n, arrays);
  OGLM_CHECK_ERR(glGenVertexArraysOES, )
#line 21091 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGenVertexArraysSGIX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenVertexArraysSGIX_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, arrays");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	GLuint*	arrays = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 10259 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenVertexArraysSGIX, )
  OGLM_AVAIL_CHECK(__glewGenVertexArraysSGIX, glGenVertexArraysSGIX)
  glGenVertexArraysSGIX(n, arrays);
  OGLM_CHECK_ERR(glGenVertexArraysSGIX, )
#line 21114 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGenVertexShadersEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenVertexShadersEXT)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "range");
    {
	GLuint	range = (unsigned int)SvUV(ST(0))
;
	GLuint	RETVAL;
	dXSTARG;
#line 10269 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenVertexShadersEXT, )
  OGLM_AVAIL_CHECK(__glewGenVertexShadersEXT, glGenVertexShadersEXT)
  RETVAL = glGenVertexShadersEXT(range);
  OGLM_CHECK_ERR(glGenVertexShadersEXT, )
#line 21137 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGenerateMipmap); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenerateMipmap)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "target");
    {
	GLenum	target = (int)SvIV(ST(0))
;
#line 10283 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenerateMipmap, )
  OGLM_AVAIL_CHECK(__glewGenerateMipmap, glGenerateMipmap)
  glGenerateMipmap(target);
  OGLM_CHECK_ERR(glGenerateMipmap, )
#line 21161 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGenerateMipmapOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenerateMipmapOES)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "target");
    {
	GLenum	target = (int)SvIV(ST(0))
;
#line 10293 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenerateMipmapOES, )
  OGLM_AVAIL_CHECK(__glewGenerateMipmapOES, glGenerateMipmapOES)
  glGenerateMipmapOES(target);
  OGLM_CHECK_ERR(glGenerateMipmapOES, )
#line 21182 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGenerateMultiTexMipmapEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenerateMultiTexMipmapEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "texunit, target");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
#line 10304 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenerateMultiTexMipmapEXT, )
  OGLM_AVAIL_CHECK(__glewGenerateMultiTexMipmapEXT, glGenerateMultiTexMipmapEXT)
  glGenerateMultiTexMipmapEXT(texunit, target);
  OGLM_CHECK_ERR(glGenerateMultiTexMipmapEXT, )
#line 21205 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGenerateTextureMipmap); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenerateTextureMipmap)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "texture");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
#line 10314 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenerateTextureMipmap, )
  OGLM_AVAIL_CHECK(__glewGenerateTextureMipmap, glGenerateTextureMipmap)
  glGenerateTextureMipmap(texture);
  OGLM_CHECK_ERR(glGenerateTextureMipmap, )
#line 21226 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGenerateTextureMipmapEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGenerateTextureMipmapEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "texture, target");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
#line 10325 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGenerateTextureMipmapEXT, )
  OGLM_AVAIL_CHECK(__glewGenerateTextureMipmapEXT, glGenerateTextureMipmapEXT)
  glGenerateTextureMipmapEXT(texture, target);
  OGLM_CHECK_ERR(glGenerateTextureMipmapEXT, )
#line 21249 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetActiveAtomicCounterBufferiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetActiveAtomicCounterBufferiv_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, bufferIndex, pname, params");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLuint	bufferIndex = (unsigned int)SvUV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(3)))
;
#line 10338 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetActiveAtomicCounterBufferiv, )
  OGLM_AVAIL_CHECK(__glewGetActiveAtomicCounterBufferiv, glGetActiveAtomicCounterBufferiv)
  glGetActiveAtomicCounterBufferiv(program, bufferIndex, pname, params);
  OGLM_CHECK_ERR(glGetActiveAtomicCounterBufferiv, )
#line 21276 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetActiveAtomicCounterBufferiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetActiveAtomicCounterBufferiv_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, bufferIndex, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLuint	bufferIndex = (unsigned int)SvUV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
#line 10350 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetActiveAtomicCounterBufferiv, )
  OGLM_AVAIL_CHECK(__glewGetActiveAtomicCounterBufferiv, glGetActiveAtomicCounterBufferiv)
  OGLM_SIZE_ENUM(AtomicCounterBufferPName,pname,1)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  glGetActiveAtomicCounterBufferiv(program, bufferIndex, pname, params);
  OGLM_CHECK_ERR(glGetActiveAtomicCounterBufferiv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 21307 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetActiveAttrib_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetActiveAttrib_c)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "program, index, bufSize, length, size, type, name");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
	GLsizei*	length = INT2PTR(GLsizei *,SvIV(ST(3)))
;
	GLint*	size = INT2PTR(GLint *,SvIV(ST(4)))
;
	GLenum*	type = INT2PTR(GLenum *,SvIV(ST(5)))
;
	GLchar*	name = (GLchar *)SvPV_nolen(ST(6))
;
#line 10370 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetActiveAttrib, )
  OGLM_AVAIL_CHECK(__glewGetActiveAttrib, glGetActiveAttrib)
  glGetActiveAttrib(program, index, bufSize, length, size, type, name);
  OGLM_CHECK_ERR(glGetActiveAttrib, )
#line 21341 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetActiveAttrib_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetActiveAttrib_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "program, index");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 10381 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetActiveAttrib, )
  OGLM_AVAIL_CHECK(__glewGetActiveAttrib, glGetActiveAttrib)
  OGLM_AVAIL_CHECK(__glewGetProgramiv, glGetProgramiv)
  GLsizei bufSize;
  glGetProgramiv(program,GL_ACTIVE_ATTRIBUTE_MAX_LENGTH,&bufSize);
  GLsizei length[1];
  GLchar name[bufSize];
  GLint size[1];
  GLenum type[1];
  glGetActiveAttrib(program, index, bufSize, length, size, type, name);
  OGLM_CHECK_ERR(glGetActiveAttrib, )
  EXTEND(sp, 3);
  mPUSHs(newSViv(size[0]));
  mPUSHs(newSViv(type[0]));
  mPUSHs(newSVpv(name,0));
#line 21377 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetActiveAttribARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetActiveAttribARB_c)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "program, index, bufSize, length, size, type, name");
    {
	GLhandleARB	program = (unsigned int)SvUV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
	GLsizei*	length = INT2PTR(GLsizei *,SvIV(ST(3)))
;
	GLint *	size = INT2PTR(GLint *,SvIV(ST(4)))
;
	GLenum *	type = INT2PTR(GLenum *,SvIV(ST(5)))
;
	GLcharARB *	name = (GLcharARB *)SvPV_nolen(ST(6))
;
#line 10408 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetActiveAttribARB, )
  OGLM_AVAIL_CHECK(__glewGetActiveAttribARB, glGetActiveAttribARB)
  glGetActiveAttribARB(program, index, bufSize, length, size, type, name);
  OGLM_CHECK_ERR(glGetActiveAttribARB, )
#line 21411 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetActiveAttribARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetActiveAttribARB_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "program, index");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLhandleARB	program = (unsigned int)SvUV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 10419 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetActiveAttribARB, )
  OGLM_AVAIL_CHECK(__glewGetActiveAttribARB, glGetActiveAttribARB)
  OGLM_AVAIL_CHECK(__glewGetProgramiv, glGetProgramiv)
  GLsizei bufSize;
  glGetProgramiv(program,GL_ACTIVE_ATTRIBUTE_MAX_LENGTH,&bufSize);
  GLsizei length[1];
  GLcharARB name[bufSize];
  GLint size[1];
  GLenum type[1];
  glGetActiveAttribARB(program, index, bufSize, length, size, type, name);
  OGLM_CHECK_ERR(glGetActiveAttribARB, )
  EXTEND(sp, 3);
  mPUSHs(newSViv(size[0]));
  mPUSHs(newSViv(type[0]));
  mPUSHs(newSVpv(name,0));
#line 21447 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetActiveSubroutineName_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetActiveSubroutineName_c)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "program, shadertype, index, bufSize, length, name");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	shadertype = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
	GLsizei	bufSize = (int)SvIV(ST(3))
;
	GLsizei*	length = INT2PTR(GLsizei *,SvIV(ST(4)))
;
	GLchar *	name = (GLchar *)SvPV_nolen(ST(5))
;
#line 10445 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetActiveSubroutineName, )
  OGLM_AVAIL_CHECK(__glewGetActiveSubroutineName, glGetActiveSubroutineName)
  glGetActiveSubroutineName(program, shadertype, index, bufSize, length, name);
  OGLM_CHECK_ERR(glGetActiveSubroutineName, )
#line 21479 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetActiveSubroutineName_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetActiveSubroutineName_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, shadertype, index");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	shadertype = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
	GLchar *	RETVAL;
	dXSTARG;
#line 10457 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetActiveSubroutineName, )
  OGLM_AVAIL_CHECK(__glewGetActiveSubroutineName, glGetActiveSubroutineName)
  OGLM_AVAIL_CHECK(__glewGetProgramStageiv, glGetProgramStageiv)
  GLsizei bufSize;
  glGetProgramStageiv(program,shadertype,GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH,&bufSize);
  GLsizei length[1];
  GLchar name[bufSize];
  glGetActiveSubroutineName(program, shadertype, index, bufSize, length, name);
  OGLM_CHECK_ERR(glGetActiveSubroutineName, )
  RETVAL = name;
#line 21512 "lib/OpenGL/Modern.c"
	sv_setpv(TARG, RETVAL);
	XSprePUSH;
	PUSHTARG;
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetActiveSubroutineUniformName_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetActiveSubroutineUniformName_c)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "program, shadertype, index, bufSize, length, name");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	shadertype = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
	GLsizei	bufSize = (int)SvIV(ST(3))
;
	GLsizei*	length = INT2PTR(GLsizei *,SvIV(ST(4)))
;
	GLchar *	name = (GLchar *)SvPV_nolen(ST(5))
;
#line 10480 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetActiveSubroutineUniformName, )
  OGLM_AVAIL_CHECK(__glewGetActiveSubroutineUniformName, glGetActiveSubroutineUniformName)
  glGetActiveSubroutineUniformName(program, shadertype, index, bufSize, length, name);
  OGLM_CHECK_ERR(glGetActiveSubroutineUniformName, )
#line 21546 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetActiveSubroutineUniformName_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetActiveSubroutineUniformName_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, shadertype, index");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	shadertype = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
	GLchar *	RETVAL;
	dXSTARG;
#line 10492 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetActiveSubroutineUniformName, )
  OGLM_AVAIL_CHECK(__glewGetActiveSubroutineUniformName, glGetActiveSubroutineUniformName)
  OGLM_AVAIL_CHECK(__glewGetActiveSubroutineUniformiv, glGetActiveSubroutineUniformiv)
  GLsizei bufSize;
  glGetActiveSubroutineUniformiv(program,shadertype,index,GL_UNIFORM_NAME_LENGTH,&bufSize);
  GLsizei* length = NULL;
  GLchar name[bufSize];
  glGetActiveSubroutineUniformName(program, shadertype, index, bufSize, length, name);
  OGLM_CHECK_ERR(glGetActiveSubroutineUniformName, )
  RETVAL = name;
#line 21579 "lib/OpenGL/Modern.c"
	sv_setpv(TARG, RETVAL);
	XSprePUSH;
	PUSHTARG;
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetActiveSubroutineUniformiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetActiveSubroutineUniformiv_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "program, shadertype, index, pname, values");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	shadertype = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
	GLenum	pname = (int)SvIV(ST(3))
;
	GLint*	values = INT2PTR(GLint *,SvIV(ST(4)))
;
#line 10514 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetActiveSubroutineUniformiv, )
  OGLM_AVAIL_CHECK(__glewGetActiveSubroutineUniformiv, glGetActiveSubroutineUniformiv)
  glGetActiveSubroutineUniformiv(program, shadertype, index, pname, values);
  OGLM_CHECK_ERR(glGetActiveSubroutineUniformiv, )
#line 21611 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetActiveSubroutineUniformiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetActiveSubroutineUniformiv_p)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, shadertype, index, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	shadertype = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
	GLenum	pname = (int)SvIV(ST(3))
;
#line 10527 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetActiveSubroutineUniformiv, )
  OGLM_AVAIL_CHECK(__glewGetActiveSubroutineUniformiv, glGetActiveSubroutineUniformiv)
  OGLM_SIZE_ENUM(SubroutineParameterName,pname,1)
  GLint* values = OGLM_ALLOC(pname_count,GLint,values);
  glGetActiveSubroutineUniformiv(program, shadertype, index, pname, values);
  OGLM_CHECK_ERR(glGetActiveSubroutineUniformiv, free(values);)
  OGLM_OUT_FINISH(values,pname_count,newSViv)
  free(values);
#line 21644 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetActiveUniform_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetActiveUniform_c)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "program, index, bufSize, length, size, type, name");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
	GLsizei*	length = INT2PTR(GLsizei *,SvIV(ST(3)))
;
	GLint*	size = INT2PTR(GLint *,SvIV(ST(4)))
;
	GLenum*	type = INT2PTR(GLenum *,SvIV(ST(5)))
;
	GLchar*	name = (GLchar *)SvPV_nolen(ST(6))
;
#line 10547 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetActiveUniform, )
  OGLM_AVAIL_CHECK(__glewGetActiveUniform, glGetActiveUniform)
  glGetActiveUniform(program, index, bufSize, length, size, type, name);
  OGLM_CHECK_ERR(glGetActiveUniform, )
#line 21678 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetActiveUniform_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetActiveUniform_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "program, index");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 10558 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetActiveUniform, )
  OGLM_AVAIL_CHECK(__glewGetActiveUniform, glGetActiveUniform)
  OGLM_AVAIL_CHECK(__glewGetProgramiv, glGetProgramiv)
  GLsizei bufSize;
  glGetProgramiv(program,GL_ACTIVE_UNIFORM_MAX_LENGTH,&bufSize);
  GLsizei* length = NULL;
  GLchar name[bufSize];
  GLint size[1];
  GLenum type[1];
  glGetActiveUniform(program, index, bufSize, length, size, type, name);
  OGLM_CHECK_ERR(glGetActiveUniform, )
  EXTEND(sp, 3);
  mPUSHs(newSViv(size[0]));
  mPUSHs(newSViv(type[0]));
  mPUSHs(newSVpv(name,0));
#line 21714 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetActiveUniformARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetActiveUniformARB_c)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "program, index, bufSize, length, size, type, name");
    {
	GLhandleARB	program = (unsigned int)SvUV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
	GLsizei*	length = INT2PTR(GLsizei *,SvIV(ST(3)))
;
	GLint *	size = INT2PTR(GLint *,SvIV(ST(4)))
;
	GLenum *	type = INT2PTR(GLenum *,SvIV(ST(5)))
;
	GLcharARB *	name = (GLcharARB *)SvPV_nolen(ST(6))
;
#line 10585 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetActiveUniformARB, )
  OGLM_AVAIL_CHECK(__glewGetActiveUniformARB, glGetActiveUniformARB)
  glGetActiveUniformARB(program, index, bufSize, length, size, type, name);
  OGLM_CHECK_ERR(glGetActiveUniformARB, )
#line 21748 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetActiveUniformARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetActiveUniformARB_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "program, index");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLhandleARB	program = (unsigned int)SvUV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 10596 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetActiveUniformARB, )
  OGLM_AVAIL_CHECK(__glewGetActiveUniformARB, glGetActiveUniformARB)
  OGLM_AVAIL_CHECK(__glewGetProgramiv, glGetProgramiv)
  GLsizei bufSize;
  glGetProgramiv(program,GL_ACTIVE_UNIFORM_MAX_LENGTH,&bufSize);
  GLsizei* length = NULL;
  GLcharARB name[bufSize];
  GLint size[1];
  GLenum type[1];
  glGetActiveUniformARB(program, index, bufSize, length, size, type, name);
  OGLM_CHECK_ERR(glGetActiveUniformARB, )
  EXTEND(sp, 3);
  mPUSHs(newSViv(size[0]));
  mPUSHs(newSViv(type[0]));
  mPUSHs(newSVpv(name,0));
#line 21784 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetActiveUniformBlockName_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetActiveUniformBlockName_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "program, uniformBlockIndex, bufSize, length, uniformBlockName");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLuint	uniformBlockIndex = (unsigned int)SvUV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
	GLsizei*	length = INT2PTR(GLsizei *,SvIV(ST(3)))
;
	GLchar*	uniformBlockName = (GLchar *)SvPV_nolen(ST(4))
;
#line 10621 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetActiveUniformBlockName, )
  OGLM_AVAIL_CHECK(__glewGetActiveUniformBlockName, glGetActiveUniformBlockName)
  glGetActiveUniformBlockName(program, uniformBlockIndex, bufSize, length, uniformBlockName);
  OGLM_CHECK_ERR(glGetActiveUniformBlockName, )
#line 21814 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetActiveUniformBlockName_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetActiveUniformBlockName_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "program, uniformBlockIndex");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLuint	uniformBlockIndex = (unsigned int)SvUV(ST(1))
;
	GLchar *	RETVAL;
	dXSTARG;
#line 10632 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetActiveUniformBlockName, )
  OGLM_AVAIL_CHECK(__glewGetActiveUniformBlockName, glGetActiveUniformBlockName)
  OGLM_AVAIL_CHECK(__glewGetActiveUniformBlockiv, glGetActiveUniformBlockiv)
  GLsizei bufSize;
  glGetActiveUniformBlockiv(program,uniformBlockIndex,GL_UNIFORM_BLOCK_NAME_LENGTH,&bufSize);
  GLsizei* length = NULL;
  GLchar uniformBlockName[bufSize];
  glGetActiveUniformBlockName(program, uniformBlockIndex, bufSize, length, uniformBlockName);
  OGLM_CHECK_ERR(glGetActiveUniformBlockName, )
  RETVAL = uniformBlockName;
#line 21845 "lib/OpenGL/Modern.c"
	sv_setpv(TARG, RETVAL);
	XSprePUSH;
	PUSHTARG;
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetActiveUniformBlockiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetActiveUniformBlockiv_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, uniformBlockIndex, pname, params");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLuint	uniformBlockIndex = (unsigned int)SvUV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(3)))
;
#line 10653 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetActiveUniformBlockiv, )
  OGLM_AVAIL_CHECK(__glewGetActiveUniformBlockiv, glGetActiveUniformBlockiv)
  glGetActiveUniformBlockiv(program, uniformBlockIndex, pname, params);
  OGLM_CHECK_ERR(glGetActiveUniformBlockiv, )
#line 21875 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetActiveUniformName_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetActiveUniformName_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "program, uniformIndex, bufSize, length, uniformName");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLuint	uniformIndex = (unsigned int)SvUV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
	GLsizei*	length = INT2PTR(GLsizei *,SvIV(ST(3)))
;
	GLchar*	uniformName = (GLchar *)SvPV_nolen(ST(4))
;
#line 10667 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetActiveUniformName, )
  OGLM_AVAIL_CHECK(__glewGetActiveUniformName, glGetActiveUniformName)
  glGetActiveUniformName(program, uniformIndex, bufSize, length, uniformName);
  OGLM_CHECK_ERR(glGetActiveUniformName, )
#line 21904 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetActiveUniformName_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetActiveUniformName_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "program, uniformIndex");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLuint	uniformIndex = (unsigned int)SvUV(ST(1))
;
	GLchar *	RETVAL;
	dXSTARG;
#line 10678 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetActiveUniformName, )
  OGLM_AVAIL_CHECK(__glewGetActiveUniformName, glGetActiveUniformName)
  OGLM_AVAIL_CHECK(__glewGetProgramiv, glGetProgramiv)
  GLsizei bufSize;
  glGetProgramiv(program,GL_ACTIVE_UNIFORM_MAX_LENGTH,&bufSize);
  GLsizei* length = NULL;
  GLchar uniformName[bufSize];
  glGetActiveUniformName(program, uniformIndex, bufSize, length, uniformName);
  OGLM_CHECK_ERR(glGetActiveUniformName, )
  RETVAL = uniformName;
#line 21935 "lib/OpenGL/Modern.c"
	sv_setpv(TARG, RETVAL);
	XSprePUSH;
	PUSHTARG;
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetActiveUniformsiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetActiveUniformsiv_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "program, uniformCount, uniformIndices, pname, params");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLsizei	uniformCount = (int)SvIV(ST(1))
;
	const GLuint*	uniformIndices = INT2PTR(const GLuint *,SvIV(ST(2)))
;
	GLenum	pname = (int)SvIV(ST(3))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(4)))
;
#line 10700 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetActiveUniformsiv, )
  OGLM_AVAIL_CHECK(__glewGetActiveUniformsiv, glGetActiveUniformsiv)
  glGetActiveUniformsiv(program, uniformCount, uniformIndices, pname, params);
  OGLM_CHECK_ERR(glGetActiveUniformsiv, )
#line 21967 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetActiveUniformsiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetActiveUniformsiv_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "program, pname, ...");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 10711 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetActiveUniformsiv, )
  OGLM_AVAIL_CHECK(__glewGetActiveUniformsiv, glGetActiveUniformsiv)
  GLsizei uniformCount = items-2;
  OGLM_SIZE_ENUM(UniformPName,pname,uniformCount)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  GLuint* uniformIndices = OGLM_GET_VARARGS(uniformIndices,2,GLuint,UV,uniformCount);
  glGetActiveUniformsiv((GLuint )program, (GLsizei )uniformCount, (const GLuint* )uniformIndices, (GLenum )pname, (GLint* )params);
  OGLM_CHECK_ERR(glGetActiveUniformsiv, free(params);free(uniformIndices);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);free(uniformIndices);
#line 21998 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetActiveVaryingNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetActiveVaryingNV_c)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "program, index, bufSize, length, size, type, name");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
	GLsizei *	length = INT2PTR(GLsizei *,SvIV(ST(3)))
;
	GLsizei *	size = INT2PTR(GLsizei *,SvIV(ST(4)))
;
	GLenum *	type = INT2PTR(GLenum *,SvIV(ST(5)))
;
	GLchar *	name = (GLchar *)SvPV_nolen(ST(6))
;
#line 10733 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetActiveVaryingNV, )
  OGLM_AVAIL_CHECK(__glewGetActiveVaryingNV, glGetActiveVaryingNV)
  glGetActiveVaryingNV(program, index, bufSize, length, size, type, name);
  OGLM_CHECK_ERR(glGetActiveVaryingNV, )
#line 22032 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetActiveVaryingNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetActiveVaryingNV_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, index, bufSize");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
#line 10745 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetActiveVaryingNV, )
  OGLM_AVAIL_CHECK(__glewGetActiveVaryingNV, glGetActiveVaryingNV)
  GLsizei length[1];
  GLchar name[bufSize];
  GLsizei size[1];
  GLenum type[1];
  glGetActiveVaryingNV(program, index, bufSize, length, size, type, name);
  OGLM_CHECK_ERR(glGetActiveVaryingNV, )
  EXTEND(sp, 4);
  mPUSHs(newSViv(length[0]));
  mPUSHs(newSViv(size[0]));
  mPUSHs(newSViv(type[0]));
  mPUSHs(newSVpv(name,0));
#line 22068 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetArrayObjectfvATI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetArrayObjectfvATI_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "array, pname, params");
    {
	GLenum	array = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 10766 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetArrayObjectfvATI, )
  OGLM_AVAIL_CHECK(__glewGetArrayObjectfvATI, glGetArrayObjectfvATI)
  glGetArrayObjectfvATI(array, pname, params);
  OGLM_CHECK_ERR(glGetArrayObjectfvATI, )
#line 22094 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetArrayObjectfvATI_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetArrayObjectfvATI_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "array, pname");
    {
	GLenum	array = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat	RETVAL;
	dXSTARG;
#line 10777 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetArrayObjectfvATI, )
  OGLM_AVAIL_CHECK(__glewGetArrayObjectfvATI, glGetArrayObjectfvATI)
  GLfloat params[1];
  glGetArrayObjectfvATI(array, pname, params);
  OGLM_CHECK_ERR(glGetArrayObjectfvATI, )
  RETVAL = params[0];
#line 22121 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHn((double)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetArrayObjectivATI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetArrayObjectivATI_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "array, pname, params");
    {
	GLenum	array = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 10793 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetArrayObjectivATI, )
  OGLM_AVAIL_CHECK(__glewGetArrayObjectivATI, glGetArrayObjectivATI)
  glGetArrayObjectivATI(array, pname, params);
  OGLM_CHECK_ERR(glGetArrayObjectivATI, )
#line 22148 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetArrayObjectivATI_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetArrayObjectivATI_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "array, pname");
    {
	GLenum	array = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint	RETVAL;
	dXSTARG;
#line 10804 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetArrayObjectivATI, )
  OGLM_AVAIL_CHECK(__glewGetArrayObjectivATI, glGetArrayObjectivATI)
  GLint params[1];
  glGetArrayObjectivATI(array, pname, params);
  OGLM_CHECK_ERR(glGetArrayObjectivATI, )
  RETVAL = params[0];
#line 22175 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetAttachedObjectsARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetAttachedObjectsARB_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "containerObj, maxCount, count, obj");
    {
	GLhandleARB	containerObj = (unsigned int)SvUV(ST(0))
;
	GLsizei	maxCount = (int)SvIV(ST(1))
;
	GLsizei*	count = INT2PTR(GLsizei *,SvIV(ST(2)))
;
	GLhandleARB *	obj = INT2PTR(GLhandleARB *,SvIV(ST(3)))
;
#line 10821 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetAttachedObjectsARB, )
  OGLM_AVAIL_CHECK(__glewGetAttachedObjectsARB, glGetAttachedObjectsARB)
  glGetAttachedObjectsARB(containerObj, maxCount, count, obj);
  OGLM_CHECK_ERR(glGetAttachedObjectsARB, )
#line 22204 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetAttachedShaders_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetAttachedShaders_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, maxCount, count, shaders");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLsizei	maxCount = (int)SvIV(ST(1))
;
	GLsizei*	count = INT2PTR(GLsizei *,SvIV(ST(2)))
;
	GLuint*	shaders = INT2PTR(GLuint *,SvIV(ST(3)))
;
#line 10834 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetAttachedShaders, )
  OGLM_AVAIL_CHECK(__glewGetAttachedShaders, glGetAttachedShaders)
  glGetAttachedShaders(program, maxCount, count, shaders);
  OGLM_CHECK_ERR(glGetAttachedShaders, )
#line 22231 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetAttachedShaders_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetAttachedShaders_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "program");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
#line 10844 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetAttachedShaders, )
  OGLM_AVAIL_CHECK(__glewGetAttachedShaders, glGetAttachedShaders)
  OGLM_AVAIL_CHECK(__glewGetProgramiv, glGetProgramiv)
  GLsizei maxCount;
  glGetProgramiv(program,GL_ATTACHED_SHADERS,&maxCount);
  GLuint* shaders = OGLM_ALLOC(maxCount,GLuint,shaders);
  GLsizei count[1];
  glGetAttachedShaders(program, maxCount, count, shaders);
  OGLM_CHECK_ERR(glGetAttachedShaders, free(shaders);)
  OGLM_OUT_FINISH(shaders,maxCount,newSVuv)
  free(shaders);
#line 22261 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetAttribLocation); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetAttribLocation)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "program, name");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	const GLchar*	name = (const GLchar *)SvPV_nolen(ST(1))
;
	GLint	RETVAL;
	dXSTARG;
#line 10862 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetAttribLocation, )
  OGLM_AVAIL_CHECK(__glewGetAttribLocation, glGetAttribLocation)
  RETVAL = glGetAttribLocation(program, name);
  OGLM_CHECK_ERR(glGetAttribLocation, )
#line 22287 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetAttribLocationARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetAttribLocationARB)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "programObj, name");
    {
	GLhandleARB	programObj = (unsigned int)SvUV(ST(0))
;
	const GLcharARB*	name = (const GLcharARB *)SvPV_nolen(ST(1))
;
	GLint	RETVAL;
	dXSTARG;
#line 10875 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetAttribLocationARB, )
  OGLM_AVAIL_CHECK(__glewGetAttribLocationARB, glGetAttribLocationARB)
  RETVAL = glGetAttribLocationARB(programObj, name);
  OGLM_CHECK_ERR(glGetAttribLocationARB, )
#line 22314 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetBooleani_v_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetBooleani_v_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "target, index, data");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLboolean*	data = INT2PTR(GLboolean *,SvIV(ST(2)))
;
#line 10891 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetBooleani_v, )
  OGLM_AVAIL_CHECK(__glewGetBooleani_v, glGetBooleani_v)
  glGetBooleani_v(target, index, data);
  OGLM_CHECK_ERR(glGetBooleani_v, )
#line 22342 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetBooleani_v_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetBooleani_v_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, index");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 10904 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetBooleani_v, )
  OGLM_AVAIL_CHECK(__glewGetBooleani_v, glGetBooleani_v)
  OGLM_SIZE_ENUM(BufferTargetARB,target,1)
  GLboolean* data = OGLM_ALLOC(target_count,GLboolean,data);
  glGetBooleani_v(target, index, data);
  OGLM_CHECK_ERR(glGetBooleani_v, free(data);)
  OGLM_OUT_FINISH(data,target_count,newSViv)
  free(data);
#line 22372 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetBooleanv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetBooleanv_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, data");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLboolean *	data = INT2PTR(GLboolean *,SvIV(ST(1)))
;
#line 10919 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetBooleanv, )
  glGetBooleanv(pname, data);
  OGLM_CHECK_ERR(glGetBooleanv, )
#line 22395 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetBooleanv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetBooleanv_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	pname = (int)SvIV(ST(0))
;
#line 10928 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetBooleanv, )
  OGLM_SIZE_ENUM(GetPName,pname,1)
  GLboolean *data = OGLM_ALLOC(pname_count,GLboolean,data);
  glGetBooleanv(pname, data);
  OGLM_CHECK_ERR(glGetBooleanv, free(data);)
  OGLM_OUT_FINISH(data,pname_count,newSViv)
  free(data);
#line 22421 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetBufferParameteri64v_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetBufferParameteri64v_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint64 *	params = INT2PTR(GLint64 *,SvIV(ST(2)))
;
#line 10943 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetBufferParameteri64v, )
  OGLM_AVAIL_CHECK(__glewGetBufferParameteri64v, glGetBufferParameteri64v)
  glGetBufferParameteri64v(target, pname, params);
  OGLM_CHECK_ERR(glGetBufferParameteri64v, )
#line 22447 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetBufferParameteri64v_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetBufferParameteri64v_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 10954 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetBufferParameteri64v, )
  OGLM_AVAIL_CHECK(__glewGetBufferParameteri64v, glGetBufferParameteri64v)
  OGLM_SIZE_ENUM(BufferPNameARB,pname,1)
  GLint64 * params = OGLM_ALLOC(pname_count,GLint64,params);
  glGetBufferParameteri64v(target, pname, params);
  OGLM_CHECK_ERR(glGetBufferParameteri64v, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 22476 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetBufferParameteriv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetBufferParameteriv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 10972 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetBufferParameteriv, )
  OGLM_AVAIL_CHECK(__glewGetBufferParameteriv, glGetBufferParameteriv)
  glGetBufferParameteriv(target, pname, params);
  OGLM_CHECK_ERR(glGetBufferParameteriv, )
#line 22503 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetBufferParameteriv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetBufferParameteriv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 10985 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetBufferParameteriv, )
  OGLM_AVAIL_CHECK(__glewGetBufferParameteriv, glGetBufferParameteriv)
  OGLM_SIZE_ENUM(BufferPNameARB,pname,1)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  glGetBufferParameteriv(target, pname, params);
  OGLM_CHECK_ERR(glGetBufferParameteriv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 22533 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetBufferParameterui64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetBufferParameterui64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLuint64EXT*	params = INT2PTR(GLuint64EXT *,SvIV(ST(2)))
;
#line 11001 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetBufferParameterui64vNV, )
  OGLM_AVAIL_CHECK(__glewGetBufferParameterui64vNV, glGetBufferParameterui64vNV)
  glGetBufferParameterui64vNV(target, pname, params);
  OGLM_CHECK_ERR(glGetBufferParameterui64vNV, )
#line 22559 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetBufferPointerv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetBufferPointerv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	void**	params = INT2PTR(void **,SvIV(ST(2)))
;
#line 11015 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetBufferPointerv, )
  OGLM_AVAIL_CHECK(__glewGetBufferPointerv, glGetBufferPointerv)
  glGetBufferPointerv(target, pname, params);
  OGLM_CHECK_ERR(glGetBufferPointerv, )
#line 22585 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetBufferPointervOES_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetBufferPointervOES_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	void**	params = INT2PTR(void **,SvIV(ST(2)))
;
#line 11027 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetBufferPointervOES, )
  OGLM_AVAIL_CHECK(__glewGetBufferPointervOES, glGetBufferPointervOES)
  glGetBufferPointervOES(target, pname, params);
  OGLM_CHECK_ERR(glGetBufferPointervOES, )
#line 22610 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetBufferSubData_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetBufferSubData_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "target, offset, size, data");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLintptr	offset = (unsigned int)SvUV(ST(1))
;
	GLsizeiptr	size = (unsigned int)SvUV(ST(2))
;
	void*	data = INT2PTR(void *,SvIV(ST(3)))
;
#line 11042 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetBufferSubData, )
  OGLM_AVAIL_CHECK(__glewGetBufferSubData, glGetBufferSubData)
  glGetBufferSubData(target, offset, size, data);
  OGLM_CHECK_ERR(glGetBufferSubData, )
#line 22638 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetClipPlane_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetClipPlane_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "plane, equation");
    {
	GLenum	plane = (int)SvIV(ST(0))
;
	GLdouble *	equation = INT2PTR(GLdouble *,SvIV(ST(1)))
;
#line 11053 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetClipPlane, )
  glGetClipPlane(plane, equation);
  OGLM_CHECK_ERR(glGetClipPlane, )
#line 22660 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetClipPlane_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetClipPlane_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "plane");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	plane = (int)SvIV(ST(0))
;
#line 11062 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetClipPlane, )
  GLdouble *equation = OGLM_ALLOC(4,GLdouble,equation);
  glGetClipPlane(plane, equation);
  OGLM_CHECK_ERR(glGetClipPlane, free(equation);)
  OGLM_OUT_FINISH(equation,4,newSVnv)
  free(equation);
#line 22685 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetClipPlanef_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetClipPlanef_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "plane, equation");
    {
	GLenum	plane = (int)SvIV(ST(0))
;
	GLfloat *	equation = INT2PTR(GLfloat *,SvIV(ST(1)))
;
#line 11075 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetClipPlanef, )
  OGLM_AVAIL_CHECK(__glewGetClipPlanef, glGetClipPlanef)
  glGetClipPlanef(plane, equation);
  OGLM_CHECK_ERR(glGetClipPlanef, )
#line 22709 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetClipPlanef_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetClipPlanef_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "plane");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	plane = (int)SvIV(ST(0))
;
#line 11085 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetClipPlanef, )
  OGLM_AVAIL_CHECK(__glewGetClipPlanef, glGetClipPlanef)
  GLfloat * equation = OGLM_ALLOC(4,GLfloat,equation);
  glGetClipPlanef(plane, equation);
  OGLM_CHECK_ERR(glGetClipPlanef, free(equation);)
  OGLM_OUT_FINISH(equation,4,newSVnv)
  free(equation);
#line 22735 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetClipPlanefOES_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetClipPlanefOES_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "plane, equation");
    {
	GLenum	plane = (int)SvIV(ST(0))
;
	GLfloat*	equation = INT2PTR(GLfloat *,SvIV(ST(1)))
;
#line 11099 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetClipPlanefOES, )
  OGLM_AVAIL_CHECK(__glewGetClipPlanefOES, glGetClipPlanefOES)
  glGetClipPlanefOES(plane, equation);
  OGLM_CHECK_ERR(glGetClipPlanefOES, )
#line 22759 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetClipPlanex_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetClipPlanex_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "plane, equation");
    {
	GLenum	plane = (int)SvIV(ST(0))
;
	GLfixed *	equation = INT2PTR(GLfixed *,SvIV(ST(1)))
;
#line 11110 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetClipPlanex, )
  OGLM_AVAIL_CHECK(__glewGetClipPlanex, glGetClipPlanex)
  glGetClipPlanex(plane, equation);
  OGLM_CHECK_ERR(glGetClipPlanex, )
#line 22782 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetClipPlanex_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetClipPlanex_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "plane");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	plane = (int)SvIV(ST(0))
;
#line 11120 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetClipPlanex, )
  OGLM_AVAIL_CHECK(__glewGetClipPlanex, glGetClipPlanex)
  GLfixed * equation = OGLM_ALLOC(4,GLfixed,equation);
  glGetClipPlanex(plane, equation);
  OGLM_CHECK_ERR(glGetClipPlanex, free(equation);)
  OGLM_OUT_FINISH(equation,4,newSViv)
  free(equation);
#line 22808 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetColorTable_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetColorTable_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "target, format, type, table");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	format = (int)SvIV(ST(1))
;
	GLenum	type = (int)SvIV(ST(2))
;
	void *	table = INT2PTR(void *,SvIV(ST(3)))
;
#line 11138 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetColorTable, )
  OGLM_AVAIL_CHECK(__glewGetColorTable, glGetColorTable)
  glGetColorTable(target, format, type, table);
  OGLM_CHECK_ERR(glGetColorTable, )
#line 22837 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetColorTableParameterfv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetColorTableParameterfv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat *	params = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 11152 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetColorTableParameterfv, )
  OGLM_AVAIL_CHECK(__glewGetColorTableParameterfv, glGetColorTableParameterfv)
  glGetColorTableParameterfv(target, pname, params);
  OGLM_CHECK_ERR(glGetColorTableParameterfv, )
#line 22863 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetColorTableParameterfv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetColorTableParameterfv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 11165 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetColorTableParameterfv, )
  OGLM_AVAIL_CHECK(__glewGetColorTableParameterfv, glGetColorTableParameterfv)
  OGLM_SIZE_ENUM(ColorTableParameterPName,pname,1)
  GLfloat *params = OGLM_ALLOC(pname_count,GLfloat,params);
  glGetColorTableParameterfv(target, pname, params);
  OGLM_CHECK_ERR(glGetColorTableParameterfv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSVnv)
  free(params);
#line 22893 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetColorTableParameterfvSGI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetColorTableParameterfvSGI_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 11181 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetColorTableParameterfvSGI, )
  OGLM_AVAIL_CHECK(__glewGetColorTableParameterfvSGI, glGetColorTableParameterfvSGI)
  glGetColorTableParameterfvSGI(target, pname, params);
  OGLM_CHECK_ERR(glGetColorTableParameterfvSGI, )
#line 22919 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetColorTableParameterfvSGI_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetColorTableParameterfvSGI_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 11192 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetColorTableParameterfvSGI, )
  OGLM_AVAIL_CHECK(__glewGetColorTableParameterfvSGI, glGetColorTableParameterfvSGI)
  OGLM_SIZE_ENUM(ColorTableParameterPName,pname,1)
  GLfloat* params = OGLM_ALLOC(pname_count,GLfloat,params);
  glGetColorTableParameterfvSGI(target, pname, params);
  OGLM_CHECK_ERR(glGetColorTableParameterfvSGI, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSVnv)
  free(params);
#line 22948 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetColorTableParameteriv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetColorTableParameteriv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint *	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 11210 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetColorTableParameteriv, )
  OGLM_AVAIL_CHECK(__glewGetColorTableParameteriv, glGetColorTableParameteriv)
  glGetColorTableParameteriv(target, pname, params);
  OGLM_CHECK_ERR(glGetColorTableParameteriv, )
#line 22975 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetColorTableParameteriv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetColorTableParameteriv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 11223 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetColorTableParameteriv, )
  OGLM_AVAIL_CHECK(__glewGetColorTableParameteriv, glGetColorTableParameteriv)
  OGLM_SIZE_ENUM(ColorTableParameterPName,pname,1)
  GLint *params = OGLM_ALLOC(pname_count,GLint,params);
  glGetColorTableParameteriv(target, pname, params);
  OGLM_CHECK_ERR(glGetColorTableParameteriv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 23005 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetColorTableParameterivSGI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetColorTableParameterivSGI_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 11239 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetColorTableParameterivSGI, )
  OGLM_AVAIL_CHECK(__glewGetColorTableParameterivSGI, glGetColorTableParameterivSGI)
  glGetColorTableParameterivSGI(target, pname, params);
  OGLM_CHECK_ERR(glGetColorTableParameterivSGI, )
#line 23031 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetColorTableParameterivSGI_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetColorTableParameterivSGI_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 11250 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetColorTableParameterivSGI, )
  OGLM_AVAIL_CHECK(__glewGetColorTableParameterivSGI, glGetColorTableParameterivSGI)
  OGLM_SIZE_ENUM(ColorTableParameterPName,pname,1)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  glGetColorTableParameterivSGI(target, pname, params);
  OGLM_CHECK_ERR(glGetColorTableParameterivSGI, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 23060 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetColorTableSGI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetColorTableSGI_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, format, type, table");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	format = (int)SvIV(ST(1))
;
	GLenum	type = (int)SvIV(ST(2))
;
	void *	table = INT2PTR(void *,SvIV(ST(3)))
;
#line 11267 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetColorTableSGI, )
  OGLM_AVAIL_CHECK(__glewGetColorTableSGI, glGetColorTableSGI)
  glGetColorTableSGI(target, format, type, table);
  OGLM_CHECK_ERR(glGetColorTableSGI, )
#line 23088 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetCombinerInputParameterfvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetCombinerInputParameterfvNV_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "stage, portion, variable, pname, params");
    {
	GLenum	stage = (int)SvIV(ST(0))
;
	GLenum	portion = (int)SvIV(ST(1))
;
	GLenum	variable = (int)SvIV(ST(2))
;
	GLenum	pname = (int)SvIV(ST(3))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(4)))
;
#line 11281 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetCombinerInputParameterfvNV, )
  OGLM_AVAIL_CHECK(__glewGetCombinerInputParameterfvNV, glGetCombinerInputParameterfvNV)
  glGetCombinerInputParameterfvNV(stage, portion, variable, pname, params);
  OGLM_CHECK_ERR(glGetCombinerInputParameterfvNV, )
#line 23117 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetCombinerInputParameterivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetCombinerInputParameterivNV_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "stage, portion, variable, pname, params");
    {
	GLenum	stage = (int)SvIV(ST(0))
;
	GLenum	portion = (int)SvIV(ST(1))
;
	GLenum	variable = (int)SvIV(ST(2))
;
	GLenum	pname = (int)SvIV(ST(3))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(4)))
;
#line 11295 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetCombinerInputParameterivNV, )
  OGLM_AVAIL_CHECK(__glewGetCombinerInputParameterivNV, glGetCombinerInputParameterivNV)
  glGetCombinerInputParameterivNV(stage, portion, variable, pname, params);
  OGLM_CHECK_ERR(glGetCombinerInputParameterivNV, )
#line 23146 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetCombinerOutputParameterfvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetCombinerOutputParameterfvNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "stage, portion, pname, params");
    {
	GLenum	stage = (int)SvIV(ST(0))
;
	GLenum	portion = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(3)))
;
#line 11308 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetCombinerOutputParameterfvNV, )
  OGLM_AVAIL_CHECK(__glewGetCombinerOutputParameterfvNV, glGetCombinerOutputParameterfvNV)
  glGetCombinerOutputParameterfvNV(stage, portion, pname, params);
  OGLM_CHECK_ERR(glGetCombinerOutputParameterfvNV, )
#line 23173 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetCombinerOutputParameterivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetCombinerOutputParameterivNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "stage, portion, pname, params");
    {
	GLenum	stage = (int)SvIV(ST(0))
;
	GLenum	portion = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(3)))
;
#line 11321 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetCombinerOutputParameterivNV, )
  OGLM_AVAIL_CHECK(__glewGetCombinerOutputParameterivNV, glGetCombinerOutputParameterivNV)
  glGetCombinerOutputParameterivNV(stage, portion, pname, params);
  OGLM_CHECK_ERR(glGetCombinerOutputParameterivNV, )
#line 23200 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetCombinerStageParameterfvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetCombinerStageParameterfvNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "stage, pname, params");
    {
	GLenum	stage = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 11333 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetCombinerStageParameterfvNV, )
  OGLM_AVAIL_CHECK(__glewGetCombinerStageParameterfvNV, glGetCombinerStageParameterfvNV)
  glGetCombinerStageParameterfvNV(stage, pname, params);
  OGLM_CHECK_ERR(glGetCombinerStageParameterfvNV, )
#line 23225 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetCommandHeaderNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetCommandHeaderNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "tokenID, size");
    {
	GLenum	tokenID = (int)SvIV(ST(0))
;
	GLuint	size = (unsigned int)SvUV(ST(1))
;
	GLuint	RETVAL;
	dXSTARG;
#line 11344 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetCommandHeaderNV, )
  OGLM_AVAIL_CHECK(__glewGetCommandHeaderNV, glGetCommandHeaderNV)
  RETVAL = glGetCommandHeaderNV(tokenID, size);
  OGLM_CHECK_ERR(glGetCommandHeaderNV, )
#line 23250 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetCompressedMultiTexImageEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetCompressedMultiTexImageEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texunit, target, lod, img");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	lod = (int)SvIV(ST(2))
;
	void *	img = INT2PTR(void *,SvIV(ST(3)))
;
#line 11359 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetCompressedMultiTexImageEXT, )
  OGLM_AVAIL_CHECK(__glewGetCompressedMultiTexImageEXT, glGetCompressedMultiTexImageEXT)
  glGetCompressedMultiTexImageEXT(texunit, target, lod, img);
  OGLM_CHECK_ERR(glGetCompressedMultiTexImageEXT, )
#line 23279 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetCompressedTexImage_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetCompressedTexImage_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "target, level, img");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	void *	img = INT2PTR(void *,SvIV(ST(2)))
;
#line 11373 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetCompressedTexImage, )
  OGLM_AVAIL_CHECK(__glewGetCompressedTexImage, glGetCompressedTexImage)
  glGetCompressedTexImage(target, level, img);
  OGLM_CHECK_ERR(glGetCompressedTexImage, )
#line 23305 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetCompressedTextureImage_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetCompressedTextureImage_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texture, level, bufSize, pixels");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
	void *	pixels = INT2PTR(void *,SvIV(ST(3)))
;
#line 11386 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetCompressedTextureImage, )
  OGLM_AVAIL_CHECK(__glewGetCompressedTextureImage, glGetCompressedTextureImage)
  glGetCompressedTextureImage(texture, level, bufSize, pixels);
  OGLM_CHECK_ERR(glGetCompressedTextureImage, )
#line 23332 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetCompressedTextureImageEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetCompressedTextureImageEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texture, target, lod, img");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	lod = (int)SvIV(ST(2))
;
	void *	img = INT2PTR(void *,SvIV(ST(3)))
;
#line 11399 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetCompressedTextureImageEXT, )
  OGLM_AVAIL_CHECK(__glewGetCompressedTextureImageEXT, glGetCompressedTextureImageEXT)
  glGetCompressedTextureImageEXT(texture, target, lod, img);
  OGLM_CHECK_ERR(glGetCompressedTextureImageEXT, )
#line 23359 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetCompressedTextureSubImage_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetCompressedTextureSubImage_c)
{
    dVAR; dXSARGS;
    if (items != 10)
       croak_xs_usage(cv,  "texture, level, xoffset, yoffset, zoffset, width, height, depth, bufSize, pixels");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLint	xoffset = (int)SvIV(ST(2))
;
	GLint	yoffset = (int)SvIV(ST(3))
;
	GLint	zoffset = (int)SvIV(ST(4))
;
	GLsizei	width = (int)SvIV(ST(5))
;
	GLsizei	height = (int)SvIV(ST(6))
;
	GLsizei	depth = (int)SvIV(ST(7))
;
	GLsizei	bufSize = (int)SvIV(ST(8))
;
	void *	pixels = INT2PTR(void *,SvIV(ST(9)))
;
#line 11418 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetCompressedTextureSubImage, )
  OGLM_AVAIL_CHECK(__glewGetCompressedTextureSubImage, glGetCompressedTextureSubImage)
  glGetCompressedTextureSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth, bufSize, pixels);
  OGLM_CHECK_ERR(glGetCompressedTextureSubImage, )
#line 23398 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetConvolutionFilter_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetConvolutionFilter_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, format, type, image");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	format = (int)SvIV(ST(1))
;
	GLenum	type = (int)SvIV(ST(2))
;
	void *	image = INT2PTR(void *,SvIV(ST(3)))
;
#line 11431 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetConvolutionFilter, )
  OGLM_AVAIL_CHECK(__glewGetConvolutionFilter, glGetConvolutionFilter)
  glGetConvolutionFilter(target, format, type, image);
  OGLM_CHECK_ERR(glGetConvolutionFilter, )
#line 23425 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetConvolutionFilterEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetConvolutionFilterEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, format, type, image");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	format = (int)SvIV(ST(1))
;
	GLenum	type = (int)SvIV(ST(2))
;
	void *	image = INT2PTR(void *,SvIV(ST(3)))
;
#line 11444 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetConvolutionFilterEXT, )
  OGLM_AVAIL_CHECK(__glewGetConvolutionFilterEXT, glGetConvolutionFilterEXT)
  glGetConvolutionFilterEXT(target, format, type, image);
  OGLM_CHECK_ERR(glGetConvolutionFilterEXT, )
#line 23452 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetConvolutionParameterfv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetConvolutionParameterfv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat *	params = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 11456 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetConvolutionParameterfv, )
  OGLM_AVAIL_CHECK(__glewGetConvolutionParameterfv, glGetConvolutionParameterfv)
  glGetConvolutionParameterfv(target, pname, params);
  OGLM_CHECK_ERR(glGetConvolutionParameterfv, )
#line 23477 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetConvolutionParameterfv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetConvolutionParameterfv_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 11467 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetConvolutionParameterfv, )
  OGLM_AVAIL_CHECK(__glewGetConvolutionParameterfv, glGetConvolutionParameterfv)
  OGLM_SIZE_ENUM(ConvolutionParameter,pname,1)
  GLfloat *params = OGLM_ALLOC(pname_count,GLfloat,params);
  glGetConvolutionParameterfv(target, pname, params);
  OGLM_CHECK_ERR(glGetConvolutionParameterfv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSVnv)
  free(params);
#line 23506 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetConvolutionParameterfvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetConvolutionParameterfvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 11483 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetConvolutionParameterfvEXT, )
  OGLM_AVAIL_CHECK(__glewGetConvolutionParameterfvEXT, glGetConvolutionParameterfvEXT)
  glGetConvolutionParameterfvEXT(target, pname, params);
  OGLM_CHECK_ERR(glGetConvolutionParameterfvEXT, )
#line 23532 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetConvolutionParameterfvEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetConvolutionParameterfvEXT_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 11494 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetConvolutionParameterfvEXT, )
  OGLM_AVAIL_CHECK(__glewGetConvolutionParameterfvEXT, glGetConvolutionParameterfvEXT)
  OGLM_SIZE_ENUM(ConvolutionParameter,pname,1)
  GLfloat* params = OGLM_ALLOC(pname_count,GLfloat,params);
  glGetConvolutionParameterfvEXT(target, pname, params);
  OGLM_CHECK_ERR(glGetConvolutionParameterfvEXT, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSVnv)
  free(params);
#line 23561 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetConvolutionParameteriv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetConvolutionParameteriv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint *	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 11510 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetConvolutionParameteriv, )
  OGLM_AVAIL_CHECK(__glewGetConvolutionParameteriv, glGetConvolutionParameteriv)
  glGetConvolutionParameteriv(target, pname, params);
  OGLM_CHECK_ERR(glGetConvolutionParameteriv, )
#line 23587 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetConvolutionParameteriv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetConvolutionParameteriv_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 11521 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetConvolutionParameteriv, )
  OGLM_AVAIL_CHECK(__glewGetConvolutionParameteriv, glGetConvolutionParameteriv)
  OGLM_SIZE_ENUM(ConvolutionParameter,pname,1)
  GLint *params = OGLM_ALLOC(pname_count,GLint,params);
  glGetConvolutionParameteriv(target, pname, params);
  OGLM_CHECK_ERR(glGetConvolutionParameteriv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 23616 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetConvolutionParameterivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetConvolutionParameterivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 11537 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetConvolutionParameterivEXT, )
  OGLM_AVAIL_CHECK(__glewGetConvolutionParameterivEXT, glGetConvolutionParameterivEXT)
  glGetConvolutionParameterivEXT(target, pname, params);
  OGLM_CHECK_ERR(glGetConvolutionParameterivEXT, )
#line 23642 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetConvolutionParameterivEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetConvolutionParameterivEXT_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 11548 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetConvolutionParameterivEXT, )
  OGLM_AVAIL_CHECK(__glewGetConvolutionParameterivEXT, glGetConvolutionParameterivEXT)
  OGLM_SIZE_ENUM(ConvolutionParameter,pname,1)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  glGetConvolutionParameterivEXT(target, pname, params);
  OGLM_CHECK_ERR(glGetConvolutionParameterivEXT, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 23671 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetCoverageModulationTableNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetCoverageModulationTableNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "bufsize, v");
    {
	GLsizei	bufsize = (int)SvIV(ST(0))
;
	GLfloat*	v = INT2PTR(GLfloat *,SvIV(ST(1)))
;
#line 11563 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetCoverageModulationTableNV, )
  OGLM_AVAIL_CHECK(__glewGetCoverageModulationTableNV, glGetCoverageModulationTableNV)
  glGetCoverageModulationTableNV(bufsize, v);
  OGLM_CHECK_ERR(glGetCoverageModulationTableNV, )
#line 23695 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetDebugMessageLog_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetDebugMessageLog_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 8)
       croak_xs_usage(cv,  "count, bufSize, sources, types, ids, severities, lengths, messageLog");
    {
	GLuint	count = (unsigned int)SvUV(ST(0))
;
	GLsizei	bufSize = (int)SvIV(ST(1))
;
	GLenum*	sources = INT2PTR(GLenum *,SvIV(ST(2)))
;
	GLenum*	types = INT2PTR(GLenum *,SvIV(ST(3)))
;
	GLuint*	ids = INT2PTR(GLuint *,SvIV(ST(4)))
;
	GLenum*	severities = INT2PTR(GLenum *,SvIV(ST(5)))
;
	GLsizei*	lengths = INT2PTR(GLsizei *,SvIV(ST(6)))
;
	GLchar*	messageLog = (GLchar *)SvPV_nolen(ST(7))
;
	GLuint	RETVAL;
	dXSTARG;
#line 11583 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetDebugMessageLog, )
  OGLM_AVAIL_CHECK(__glewGetDebugMessageLog, glGetDebugMessageLog)
  RETVAL = glGetDebugMessageLog(count, bufSize, sources, types, ids, severities, lengths, messageLog);
  OGLM_CHECK_ERR(glGetDebugMessageLog, )
#line 23733 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetDebugMessageLog_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetDebugMessageLog_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "count, bufSize");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	count = (unsigned int)SvUV(ST(0))
;
	GLsizei	bufSize = (int)SvIV(ST(1))
;
	GLuint	RETVAL;
	dXSTARG;
#line 11599 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetDebugMessageLog, )
  OGLM_AVAIL_CHECK(__glewGetDebugMessageLog, glGetDebugMessageLog)
  GLuint* ids = OGLM_ALLOC(count,GLuint,ids);
  GLsizei* lengths = OGLM_ALLOC(count,GLsizei,lengths);
  GLenum* severities = OGLM_ALLOC(count,GLenum,severities);
  GLenum* sources = OGLM_ALLOC(count,GLenum,sources);
  GLenum* types = OGLM_ALLOC(count,GLenum,types);
  GLchar messageLog[bufSize];
  RETVAL = glGetDebugMessageLog(count, bufSize, sources, types, ids, severities, lengths, messageLog);
  OGLM_CHECK_ERR(glGetDebugMessageLog, free(sources);free(types);free(ids);free(severities);free(lengths);)
  EXTEND(sp, 7);
  mPUSHs(newSVuv(RETVAL));
  OGLM_PUSH_ARRAY(glGetDebugMessageLog, newSViv, sources, count)
  OGLM_PUSH_ARRAY(glGetDebugMessageLog, newSViv, types, count)
  OGLM_PUSH_ARRAY(glGetDebugMessageLog, newSVuv, ids, count)
  OGLM_PUSH_ARRAY(glGetDebugMessageLog, newSViv, severities, count)
  OGLM_PUSH_ARRAY(glGetDebugMessageLog, newSViv, lengths, count)
  mPUSHs(newSVpv(messageLog,0));
  free(sources);free(types);free(ids);free(severities);free(lengths);
#line 23778 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetDebugMessageLogAMD_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetDebugMessageLogAMD_c)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "count, bufSize, categories, severities, ids, lengths, message");
    {
	GLuint	count = (unsigned int)SvUV(ST(0))
;
	GLsizei	bufSize = (int)SvIV(ST(1))
;
	GLenum*	categories = INT2PTR(GLenum *,SvIV(ST(2)))
;
	GLenum*	severities = INT2PTR(GLenum *,SvIV(ST(3)))
;
	GLuint*	ids = INT2PTR(GLuint *,SvIV(ST(4)))
;
	GLsizei*	lengths = INT2PTR(GLsizei *,SvIV(ST(5)))
;
	GLchar*	message = (GLchar *)SvPV_nolen(ST(6))
;
	GLuint	RETVAL;
	dXSTARG;
#line 11630 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetDebugMessageLogAMD, )
  OGLM_AVAIL_CHECK(__glewGetDebugMessageLogAMD, glGetDebugMessageLogAMD)
  RETVAL = glGetDebugMessageLogAMD(count, bufSize, categories, severities, ids, lengths, message);
  OGLM_CHECK_ERR(glGetDebugMessageLogAMD, )
#line 23814 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetDebugMessageLogAMD_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetDebugMessageLogAMD_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "count, bufSize");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	count = (unsigned int)SvUV(ST(0))
;
	GLsizei	bufSize = (int)SvIV(ST(1))
;
	GLuint	RETVAL;
	dXSTARG;
#line 11643 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetDebugMessageLogAMD, )
  OGLM_AVAIL_CHECK(__glewGetDebugMessageLogAMD, glGetDebugMessageLogAMD)
  GLenum* categories = OGLM_ALLOC(count,GLenum,categories);
  GLuint* ids = OGLM_ALLOC(count,GLuint,ids);
  GLsizei* lengths = OGLM_ALLOC(count,GLsizei,lengths);
  GLenum* severities = OGLM_ALLOC(count,GLenum,severities);
  GLchar message[bufSize];
  RETVAL = glGetDebugMessageLogAMD(count, bufSize, categories, severities, ids, lengths, message);
  OGLM_CHECK_ERR(glGetDebugMessageLogAMD, free(categories);free(severities);free(ids);free(lengths);)
  EXTEND(sp, 6);
  mPUSHs(newSVuv(RETVAL));
  OGLM_PUSH_ARRAY(glGetDebugMessageLogAMD, newSViv, categories, count)
  OGLM_PUSH_ARRAY(glGetDebugMessageLogAMD, newSViv, severities, count)
  OGLM_PUSH_ARRAY(glGetDebugMessageLogAMD, newSVuv, ids, count)
  OGLM_PUSH_ARRAY(glGetDebugMessageLogAMD, newSViv, lengths, count)
  mPUSHs(newSVpv(message,0));
  free(categories);free(severities);free(ids);free(lengths);
#line 23856 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetDetailTexFuncSGIS_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetDetailTexFuncSGIS_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, points");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLfloat*	points = INT2PTR(GLfloat *,SvIV(ST(1)))
;
#line 11667 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetDetailTexFuncSGIS, )
  OGLM_AVAIL_CHECK(__glewGetDetailTexFuncSGIS, glGetDetailTexFuncSGIS)
  glGetDetailTexFuncSGIS(target, points);
  OGLM_CHECK_ERR(glGetDetailTexFuncSGIS, )
#line 23880 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetDetailTexFuncSGIS_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetDetailTexFuncSGIS_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "target");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
#line 11677 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetDetailTexFuncSGIS, )
  OGLM_AVAIL_CHECK(__glewGetDetailTexFuncSGIS, glGetDetailTexFuncSGIS)
  OGLM_SIZE_ENUM(TextureTarget,target,1)
  GLfloat* points = OGLM_ALLOC(target_count,GLfloat,points);
  glGetDetailTexFuncSGIS(target, points);
  OGLM_CHECK_ERR(glGetDetailTexFuncSGIS, free(points);)
  OGLM_OUT_FINISH(points,target_count,newSVnv)
  free(points);
#line 23907 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetDoublei_v_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetDoublei_v_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "target, index, data");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLdouble*	data = INT2PTR(GLdouble *,SvIV(ST(2)))
;
#line 11696 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetDoublei_v, )
  OGLM_AVAIL_CHECK(__glewGetDoublei_v, glGetDoublei_v)
  glGetDoublei_v(target, index, data);
  OGLM_CHECK_ERR(glGetDoublei_v, )
#line 23934 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetDoublei_v_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetDoublei_v_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, index");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 11710 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetDoublei_v, )
  OGLM_AVAIL_CHECK(__glewGetDoublei_v, glGetDoublei_v)
  OGLM_SIZE_ENUM(GetPName,target,1)
  GLdouble* data = OGLM_ALLOC(target_count,GLdouble,data);
  glGetDoublei_v(target, index, data);
  OGLM_CHECK_ERR(glGetDoublei_v, free(data);)
  OGLM_OUT_FINISH(data,target_count,newSVnv)
  free(data);
#line 23964 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetDoublev_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetDoublev_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, data");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLdouble *	data = INT2PTR(GLdouble *,SvIV(ST(1)))
;
#line 11725 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetDoublev, )
  glGetDoublev(pname, data);
  OGLM_CHECK_ERR(glGetDoublev, )
#line 23987 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetDoublev_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetDoublev_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	pname = (int)SvIV(ST(0))
;
#line 11734 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetDoublev, )
  OGLM_SIZE_ENUM(GetPName,pname,1)
  GLdouble *data = OGLM_ALLOC(pname_count,GLdouble,data);
  glGetDoublev(pname, data);
  OGLM_CHECK_ERR(glGetDoublev, free(data);)
  OGLM_OUT_FINISH(data,pname_count,newSVnv)
  free(data);
#line 24013 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetDriverControlStringQCOM_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetDriverControlStringQCOM_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "driverControl, bufSize, length, driverControlString");
    {
	GLuint	driverControl = (unsigned int)SvUV(ST(0))
;
	GLsizei	bufSize = (int)SvIV(ST(1))
;
	GLsizei*	length = INT2PTR(GLsizei *,SvIV(ST(2)))
;
	GLchar *	driverControlString = (GLchar *)SvPV_nolen(ST(3))
;
#line 11750 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetDriverControlStringQCOM, )
  OGLM_AVAIL_CHECK(__glewGetDriverControlStringQCOM, glGetDriverControlStringQCOM)
  glGetDriverControlStringQCOM(driverControl, bufSize, length, driverControlString);
  OGLM_CHECK_ERR(glGetDriverControlStringQCOM, )
#line 24041 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetDriverControlsQCOM_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetDriverControlsQCOM_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "num, size, driverControls");
    {
	GLint*	num = INT2PTR(GLint *,SvIV(ST(0)))
;
	GLsizei	size = (int)SvIV(ST(1))
;
	GLuint *	driverControls = INT2PTR(GLuint *,SvIV(ST(2)))
;
#line 11762 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetDriverControlsQCOM, )
  OGLM_AVAIL_CHECK(__glewGetDriverControlsQCOM, glGetDriverControlsQCOM)
  glGetDriverControlsQCOM(num, size, driverControls);
  OGLM_CHECK_ERR(glGetDriverControlsQCOM, )
#line 24066 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetError); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetError)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
	GLenum	RETVAL;
	dXSTARG;
#line 11771 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  RETVAL = glGetError();
#line 24084 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetExtensionREGAL); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetExtensionREGAL)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "ext");
    {
	const GLchar*	ext = (const GLchar *)SvPV_nolen(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 11780 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetExtensionREGAL, )
  OGLM_AVAIL_CHECK(__glewGetExtensionREGAL, glGetExtensionREGAL)
  RETVAL = glGetExtensionREGAL(ext);
  OGLM_CHECK_ERR(glGetExtensionREGAL, )
#line 24109 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetFenceivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetFenceivNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "fence, pname, params");
    {
	GLuint	fence = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 11794 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetFenceivNV, )
  OGLM_AVAIL_CHECK(__glewGetFenceivNV, glGetFenceivNV)
  glGetFenceivNV(fence, pname, params);
  OGLM_CHECK_ERR(glGetFenceivNV, )
#line 24136 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetFinalCombinerInputParameterfvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetFinalCombinerInputParameterfvNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "variable, pname, params");
    {
	GLenum	variable = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 11806 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetFinalCombinerInputParameterfvNV, )
  OGLM_AVAIL_CHECK(__glewGetFinalCombinerInputParameterfvNV, glGetFinalCombinerInputParameterfvNV)
  glGetFinalCombinerInputParameterfvNV(variable, pname, params);
  OGLM_CHECK_ERR(glGetFinalCombinerInputParameterfvNV, )
#line 24161 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetFinalCombinerInputParameterivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetFinalCombinerInputParameterivNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "variable, pname, params");
    {
	GLenum	variable = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 11818 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetFinalCombinerInputParameterivNV, )
  OGLM_AVAIL_CHECK(__glewGetFinalCombinerInputParameterivNV, glGetFinalCombinerInputParameterivNV)
  glGetFinalCombinerInputParameterivNV(variable, pname, params);
  OGLM_CHECK_ERR(glGetFinalCombinerInputParameterivNV, )
#line 24186 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetFirstPerfQueryIdINTEL_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetFirstPerfQueryIdINTEL_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "queryId");
    {
	GLuint*	queryId = INT2PTR(GLuint *,SvIV(ST(0)))
;
#line 11828 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetFirstPerfQueryIdINTEL, )
  OGLM_AVAIL_CHECK(__glewGetFirstPerfQueryIdINTEL, glGetFirstPerfQueryIdINTEL)
  glGetFirstPerfQueryIdINTEL(queryId);
  OGLM_CHECK_ERR(glGetFirstPerfQueryIdINTEL, )
#line 24207 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetFixedv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetFixedv_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, params");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLfixed*	params = INT2PTR(GLfixed *,SvIV(ST(1)))
;
#line 11839 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetFixedv, )
  OGLM_AVAIL_CHECK(__glewGetFixedv, glGetFixedv)
  glGetFixedv(pname, params);
  OGLM_CHECK_ERR(glGetFixedv, )
#line 24230 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetFloati_v_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetFloati_v_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "target, index, data");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLfloat*	data = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 11855 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetFloati_v, )
  OGLM_AVAIL_CHECK(__glewGetFloati_v, glGetFloati_v)
  glGetFloati_v(target, index, data);
  OGLM_CHECK_ERR(glGetFloati_v, )
#line 24256 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetFloati_v_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetFloati_v_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, index");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 11870 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetFloati_v, )
  OGLM_AVAIL_CHECK(__glewGetFloati_v, glGetFloati_v)
  OGLM_SIZE_ENUM(GetPName,target,1)
  GLfloat* data = OGLM_ALLOC(target_count,GLfloat,data);
  glGetFloati_v(target, index, data);
  OGLM_CHECK_ERR(glGetFloati_v, free(data);)
  OGLM_OUT_FINISH(data,target_count,newSVnv)
  free(data);
#line 24286 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetFloatv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetFloatv_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, data");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLfloat *	data = INT2PTR(GLfloat *,SvIV(ST(1)))
;
#line 11885 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetFloatv, )
  glGetFloatv(pname, data);
  OGLM_CHECK_ERR(glGetFloatv, )
#line 24309 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetFloatv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetFloatv_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	pname = (int)SvIV(ST(0))
;
#line 11894 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetFloatv, )
  OGLM_SIZE_ENUM(GetPName,pname,1)
  GLfloat *data = OGLM_ALLOC(pname_count,GLfloat,data);
  glGetFloatv(pname, data);
  OGLM_CHECK_ERR(glGetFloatv, free(data);)
  OGLM_OUT_FINISH(data,pname_count,newSVnv)
  free(data);
#line 24335 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetFogFuncSGIS_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetFogFuncSGIS_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "points");
    {
	GLfloat*	points = INT2PTR(GLfloat *,SvIV(ST(0)))
;
#line 11907 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetFogFuncSGIS, )
  OGLM_AVAIL_CHECK(__glewGetFogFuncSGIS, glGetFogFuncSGIS)
  glGetFogFuncSGIS(points);
  OGLM_CHECK_ERR(glGetFogFuncSGIS, )
#line 24357 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetFogLayersSGIX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetFogLayersSGIX_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "points");
    {
	GLfloat*	points = INT2PTR(GLfloat *,SvIV(ST(0)))
;
#line 11917 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetFogLayersSGIX, )
  OGLM_AVAIL_CHECK(__glewGetFogLayersSGIX, glGetFogLayersSGIX)
  glGetFogLayersSGIX(points);
  OGLM_CHECK_ERR(glGetFogLayersSGIX, )
#line 24378 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetFragDataIndex); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetFragDataIndex)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "program, name");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	const GLchar *	name = (const GLchar *)SvPV_nolen(ST(1))
;
	GLint	RETVAL;
	dXSTARG;
#line 11930 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetFragDataIndex, )
  OGLM_AVAIL_CHECK(__glewGetFragDataIndex, glGetFragDataIndex)
  RETVAL = glGetFragDataIndex(program, name);
  OGLM_CHECK_ERR(glGetFragDataIndex, )
#line 24404 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetFragDataLocation); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetFragDataLocation)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "program, name");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	const GLchar*	name = (const GLchar *)SvPV_nolen(ST(1))
;
	GLint	RETVAL;
	dXSTARG;
#line 11945 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetFragDataLocation, )
  OGLM_AVAIL_CHECK(__glewGetFragDataLocation, glGetFragDataLocation)
  RETVAL = glGetFragDataLocation(program, name);
  OGLM_CHECK_ERR(glGetFragDataLocation, )
#line 24432 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetFragmentLightfvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetFragmentLightfvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "light, pname, params");
    {
	GLenum	light = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 11959 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetFragmentLightfvEXT, )
  OGLM_AVAIL_CHECK(__glewGetFragmentLightfvEXT, glGetFragmentLightfvEXT)
  glGetFragmentLightfvEXT(light, pname, params);
  OGLM_CHECK_ERR(glGetFragmentLightfvEXT, )
#line 24459 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetFragmentLightfvSGIX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetFragmentLightfvSGIX_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "light, pname, params");
    {
	GLenum	light = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 11971 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetFragmentLightfvSGIX, )
  OGLM_AVAIL_CHECK(__glewGetFragmentLightfvSGIX, glGetFragmentLightfvSGIX)
  glGetFragmentLightfvSGIX(light, pname, params);
  OGLM_CHECK_ERR(glGetFragmentLightfvSGIX, )
#line 24484 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetFragmentLightfvSGIX_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetFragmentLightfvSGIX_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "light, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	light = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 11982 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetFragmentLightfvSGIX, )
  OGLM_AVAIL_CHECK(__glewGetFragmentLightfvSGIX, glGetFragmentLightfvSGIX)
  OGLM_SIZE_ENUM(FragmentLightParameterSGIX,pname,1)
  GLfloat* params = OGLM_ALLOC(pname_count,GLfloat,params);
  glGetFragmentLightfvSGIX(light, pname, params);
  OGLM_CHECK_ERR(glGetFragmentLightfvSGIX, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSVnv)
  free(params);
#line 24513 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetFragmentLightivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetFragmentLightivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "light, pname, params");
    {
	GLenum	light = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 11998 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetFragmentLightivEXT, )
  OGLM_AVAIL_CHECK(__glewGetFragmentLightivEXT, glGetFragmentLightivEXT)
  glGetFragmentLightivEXT(light, pname, params);
  OGLM_CHECK_ERR(glGetFragmentLightivEXT, )
#line 24539 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetFragmentLightivSGIX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetFragmentLightivSGIX_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "light, pname, params");
    {
	GLenum	light = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 12010 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetFragmentLightivSGIX, )
  OGLM_AVAIL_CHECK(__glewGetFragmentLightivSGIX, glGetFragmentLightivSGIX)
  glGetFragmentLightivSGIX(light, pname, params);
  OGLM_CHECK_ERR(glGetFragmentLightivSGIX, )
#line 24564 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetFragmentLightivSGIX_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetFragmentLightivSGIX_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "light, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	light = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 12021 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetFragmentLightivSGIX, )
  OGLM_AVAIL_CHECK(__glewGetFragmentLightivSGIX, glGetFragmentLightivSGIX)
  OGLM_SIZE_ENUM(FragmentLightParameterSGIX,pname,1)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  glGetFragmentLightivSGIX(light, pname, params);
  OGLM_CHECK_ERR(glGetFragmentLightivSGIX, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 24593 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetFragmentMaterialfvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetFragmentMaterialfvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "face, pname, params");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLfloat*	params = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 12037 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetFragmentMaterialfvEXT, )
  OGLM_AVAIL_CHECK(__glewGetFragmentMaterialfvEXT, glGetFragmentMaterialfvEXT)
  glGetFragmentMaterialfvEXT(face, pname, params);
  OGLM_CHECK_ERR(glGetFragmentMaterialfvEXT, )
#line 24619 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetFragmentMaterialfvSGIX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetFragmentMaterialfvSGIX_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "face, pname, params");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 12049 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetFragmentMaterialfvSGIX, )
  OGLM_AVAIL_CHECK(__glewGetFragmentMaterialfvSGIX, glGetFragmentMaterialfvSGIX)
  glGetFragmentMaterialfvSGIX(face, pname, params);
  OGLM_CHECK_ERR(glGetFragmentMaterialfvSGIX, )
#line 24644 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetFragmentMaterialfvSGIX_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetFragmentMaterialfvSGIX_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "face, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 12060 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetFragmentMaterialfvSGIX, )
  OGLM_AVAIL_CHECK(__glewGetFragmentMaterialfvSGIX, glGetFragmentMaterialfvSGIX)
  OGLM_SIZE_ENUM(MaterialParameter,pname,1)
  GLfloat* params = OGLM_ALLOC(pname_count,GLfloat,params);
  glGetFragmentMaterialfvSGIX(face, pname, params);
  OGLM_CHECK_ERR(glGetFragmentMaterialfvSGIX, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSVnv)
  free(params);
#line 24673 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetFragmentMaterialivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetFragmentMaterialivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "face, pname, params");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLint*	params = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 12076 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetFragmentMaterialivEXT, )
  OGLM_AVAIL_CHECK(__glewGetFragmentMaterialivEXT, glGetFragmentMaterialivEXT)
  glGetFragmentMaterialivEXT(face, pname, params);
  OGLM_CHECK_ERR(glGetFragmentMaterialivEXT, )
#line 24699 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetFragmentMaterialivSGIX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetFragmentMaterialivSGIX_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "face, pname, params");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 12088 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetFragmentMaterialivSGIX, )
  OGLM_AVAIL_CHECK(__glewGetFragmentMaterialivSGIX, glGetFragmentMaterialivSGIX)
  glGetFragmentMaterialivSGIX(face, pname, params);
  OGLM_CHECK_ERR(glGetFragmentMaterialivSGIX, )
#line 24724 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetFragmentMaterialivSGIX_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetFragmentMaterialivSGIX_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "face, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 12099 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetFragmentMaterialivSGIX, )
  OGLM_AVAIL_CHECK(__glewGetFragmentMaterialivSGIX, glGetFragmentMaterialivSGIX)
  OGLM_SIZE_ENUM(MaterialParameter,pname,1)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  glGetFragmentMaterialivSGIX(face, pname, params);
  OGLM_CHECK_ERR(glGetFragmentMaterialivSGIX, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 24753 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetFragmentShadingRatesEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetFragmentShadingRatesEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "samples, maxCount, count, shadingRates");
    {
	GLsizei	samples = (int)SvIV(ST(0))
;
	GLsizei	maxCount = (int)SvIV(ST(1))
;
	GLsizei*	count = INT2PTR(GLsizei *,SvIV(ST(2)))
;
	GLenum *	shadingRates = INT2PTR(GLenum *,SvIV(ST(3)))
;
#line 12116 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetFragmentShadingRatesEXT, )
  OGLM_AVAIL_CHECK(__glewGetFragmentShadingRatesEXT, glGetFragmentShadingRatesEXT)
  glGetFragmentShadingRatesEXT(samples, maxCount, count, shadingRates);
  OGLM_CHECK_ERR(glGetFragmentShadingRatesEXT, )
#line 24781 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetFragmentShadingRatesEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetFragmentShadingRatesEXT_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "samples, maxCount");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLsizei	samples = (int)SvIV(ST(0))
;
	GLsizei	maxCount = (int)SvIV(ST(1))
;
#line 12127 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetFragmentShadingRatesEXT, )
  OGLM_AVAIL_CHECK(__glewGetFragmentShadingRatesEXT, glGetFragmentShadingRatesEXT)
  GLenum *shadingRates = OGLM_ALLOC(maxCount,GLenum,shadingRates);
  GLsizei count[1];
  glGetFragmentShadingRatesEXT(samples, maxCount, count, shadingRates);
  OGLM_CHECK_ERR(glGetFragmentShadingRatesEXT, free(shadingRates);)
  EXTEND(sp, 2);
  mPUSHs(newSViv(count[0]));
  OGLM_PUSH_ARRAY(glGetFragmentShadingRatesEXT, newSViv, shadingRates, maxCount)
  free(shadingRates);
#line 24812 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetFramebufferAttachmentParameteriv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetFramebufferAttachmentParameteriv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "target, attachment, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	attachment = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(3)))
;
#line 12148 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetFramebufferAttachmentParameteriv, )
  OGLM_AVAIL_CHECK(__glewGetFramebufferAttachmentParameteriv, glGetFramebufferAttachmentParameteriv)
  glGetFramebufferAttachmentParameteriv(target, attachment, pname, params);
  OGLM_CHECK_ERR(glGetFramebufferAttachmentParameteriv, )
#line 24841 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetFramebufferAttachmentParameteriv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetFramebufferAttachmentParameteriv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "target, attachment, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	attachment = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
#line 12162 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetFramebufferAttachmentParameteriv, )
  OGLM_AVAIL_CHECK(__glewGetFramebufferAttachmentParameteriv, glGetFramebufferAttachmentParameteriv)
  OGLM_SIZE_ENUM(FramebufferAttachmentParameterName,pname,1)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  glGetFramebufferAttachmentParameteriv(target, attachment, pname, params);
  OGLM_CHECK_ERR(glGetFramebufferAttachmentParameteriv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 24873 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetFramebufferAttachmentParameterivOES_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetFramebufferAttachmentParameterivOES_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, attachment, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	attachment = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(3)))
;
#line 12179 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetFramebufferAttachmentParameterivOES, )
  OGLM_AVAIL_CHECK(__glewGetFramebufferAttachmentParameterivOES, glGetFramebufferAttachmentParameterivOES)
  glGetFramebufferAttachmentParameterivOES(target, attachment, pname, params);
  OGLM_CHECK_ERR(glGetFramebufferAttachmentParameterivOES, )
#line 24901 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetFramebufferParameterfvAMD_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetFramebufferParameterfvAMD_c)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "target, pname, numsamples, pixelindex, size, values");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLuint	numsamples = (unsigned int)SvUV(ST(2))
;
	GLuint	pixelindex = (unsigned int)SvUV(ST(3))
;
	GLsizei	size = (int)SvIV(ST(4))
;
	GLfloat*	values = INT2PTR(GLfloat *,SvIV(ST(5)))
;
#line 12194 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetFramebufferParameterfvAMD, )
  OGLM_AVAIL_CHECK(__glewGetFramebufferParameterfvAMD, glGetFramebufferParameterfvAMD)
  glGetFramebufferParameterfvAMD(target, pname, numsamples, pixelindex, size, values);
  OGLM_CHECK_ERR(glGetFramebufferParameterfvAMD, )
#line 24932 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetFramebufferParameteriv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetFramebufferParameteriv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 12206 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetFramebufferParameteriv, )
  OGLM_AVAIL_CHECK(__glewGetFramebufferParameteriv, glGetFramebufferParameteriv)
  glGetFramebufferParameteriv(target, pname, params);
  OGLM_CHECK_ERR(glGetFramebufferParameteriv, )
#line 24957 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetFramebufferParameteriv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetFramebufferParameteriv_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 12217 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetFramebufferParameteriv, )
  OGLM_AVAIL_CHECK(__glewGetFramebufferParameteriv, glGetFramebufferParameteriv)
  OGLM_SIZE_ENUM(FramebufferAttachmentParameterName,pname,1)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  glGetFramebufferParameteriv(target, pname, params);
  OGLM_CHECK_ERR(glGetFramebufferParameteriv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 24986 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetFramebufferParameterivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetFramebufferParameterivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "framebuffer, pname, params");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 12233 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetFramebufferParameterivEXT, )
  OGLM_AVAIL_CHECK(__glewGetFramebufferParameterivEXT, glGetFramebufferParameterivEXT)
  glGetFramebufferParameterivEXT(framebuffer, pname, params);
  OGLM_CHECK_ERR(glGetFramebufferParameterivEXT, )
#line 25012 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetFramebufferParameterivEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetFramebufferParameterivEXT_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "framebuffer, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 12244 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetFramebufferParameterivEXT, )
  OGLM_AVAIL_CHECK(__glewGetFramebufferParameterivEXT, glGetFramebufferParameterivEXT)
  OGLM_SIZE_ENUM(GetFramebufferParameter,pname,1)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  glGetFramebufferParameterivEXT(framebuffer, pname, params);
  OGLM_CHECK_ERR(glGetFramebufferParameterivEXT, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 25041 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetFramebufferParameterivMESA_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetFramebufferParameterivMESA_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 12260 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetFramebufferParameterivMESA, )
  OGLM_AVAIL_CHECK(__glewGetFramebufferParameterivMESA, glGetFramebufferParameterivMESA)
  glGetFramebufferParameterivMESA(target, pname, params);
  OGLM_CHECK_ERR(glGetFramebufferParameterivMESA, )
#line 25067 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetFramebufferParameterivMESA_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetFramebufferParameterivMESA_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 12271 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetFramebufferParameterivMESA, )
  OGLM_AVAIL_CHECK(__glewGetFramebufferParameterivMESA, glGetFramebufferParameterivMESA)
  OGLM_SIZE_ENUM(FramebufferAttachmentParameterName,pname,1)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  glGetFramebufferParameterivMESA(target, pname, params);
  OGLM_CHECK_ERR(glGetFramebufferParameterivMESA, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 25096 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetFramebufferPixelLocalStorageSizeEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetFramebufferPixelLocalStorageSizeEXT)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "target");
    {
	GLuint	target = (unsigned int)SvUV(ST(0))
;
	GLsizei	RETVAL;
	dXSTARG;
#line 12285 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetFramebufferPixelLocalStorageSizeEXT, )
  OGLM_AVAIL_CHECK(__glewGetFramebufferPixelLocalStorageSizeEXT, glGetFramebufferPixelLocalStorageSizeEXT)
  RETVAL = glGetFramebufferPixelLocalStorageSizeEXT(target);
  OGLM_CHECK_ERR(glGetFramebufferPixelLocalStorageSizeEXT, )
#line 25120 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetGraphicsResetStatus); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetGraphicsResetStatus)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
	GLenum	RETVAL;
	dXSTARG;
#line 12299 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetGraphicsResetStatus, )
  OGLM_AVAIL_CHECK(__glewGetGraphicsResetStatus, glGetGraphicsResetStatus)
  RETVAL = glGetGraphicsResetStatus();
  OGLM_CHECK_ERR(glGetGraphicsResetStatus, )
#line 25144 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetGraphicsResetStatusARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetGraphicsResetStatusARB)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
	GLenum	RETVAL;
	dXSTARG;
#line 12310 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetGraphicsResetStatusARB, )
  OGLM_AVAIL_CHECK(__glewGetGraphicsResetStatusARB, glGetGraphicsResetStatusARB)
  RETVAL = glGetGraphicsResetStatusARB();
  OGLM_CHECK_ERR(glGetGraphicsResetStatusARB, )
#line 25167 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetHandleARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetHandleARB)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "pname");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLhandleARB	RETVAL;
	dXSTARG;
#line 12322 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetHandleARB, )
  OGLM_AVAIL_CHECK(__glewGetHandleARB, glGetHandleARB)
  RETVAL = glGetHandleARB(pname);
  OGLM_CHECK_ERR(glGetHandleARB, )
#line 25192 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetHistogram_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetHistogram_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "target, reset, format, type, values");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLboolean	reset = (int)SvIV(ST(1))
;
	GLenum	format = (int)SvIV(ST(2))
;
	GLenum	type = (int)SvIV(ST(3))
;
	void *	values = INT2PTR(void *,SvIV(ST(4)))
;
#line 12338 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetHistogram, )
  OGLM_AVAIL_CHECK(__glewGetHistogram, glGetHistogram)
  glGetHistogram(target, reset, format, type, values);
  OGLM_CHECK_ERR(glGetHistogram, )
#line 25223 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetHistogramEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetHistogramEXT_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "target, reset, format, type, values");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLboolean	reset = (int)SvIV(ST(1))
;
	GLenum	format = (int)SvIV(ST(2))
;
	GLenum	type = (int)SvIV(ST(3))
;
	void *	values = INT2PTR(void *,SvIV(ST(4)))
;
#line 12352 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetHistogramEXT, )
  OGLM_AVAIL_CHECK(__glewGetHistogramEXT, glGetHistogramEXT)
  glGetHistogramEXT(target, reset, format, type, values);
  OGLM_CHECK_ERR(glGetHistogramEXT, )
#line 25252 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetHistogramParameterfv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetHistogramParameterfv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat *	params = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 12364 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetHistogramParameterfv, )
  OGLM_AVAIL_CHECK(__glewGetHistogramParameterfv, glGetHistogramParameterfv)
  glGetHistogramParameterfv(target, pname, params);
  OGLM_CHECK_ERR(glGetHistogramParameterfv, )
#line 25277 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetHistogramParameterfv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetHistogramParameterfv_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 12375 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetHistogramParameterfv, )
  OGLM_AVAIL_CHECK(__glewGetHistogramParameterfv, glGetHistogramParameterfv)
  OGLM_SIZE_ENUM(GetHistogramParameterPNameEXT,pname,1)
  GLfloat *params = OGLM_ALLOC(pname_count,GLfloat,params);
  glGetHistogramParameterfv(target, pname, params);
  OGLM_CHECK_ERR(glGetHistogramParameterfv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSVnv)
  free(params);
#line 25306 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetHistogramParameterfvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetHistogramParameterfvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 12391 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetHistogramParameterfvEXT, )
  OGLM_AVAIL_CHECK(__glewGetHistogramParameterfvEXT, glGetHistogramParameterfvEXT)
  glGetHistogramParameterfvEXT(target, pname, params);
  OGLM_CHECK_ERR(glGetHistogramParameterfvEXT, )
#line 25332 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetHistogramParameterfvEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetHistogramParameterfvEXT_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 12402 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetHistogramParameterfvEXT, )
  OGLM_AVAIL_CHECK(__glewGetHistogramParameterfvEXT, glGetHistogramParameterfvEXT)
  OGLM_SIZE_ENUM(GetHistogramParameterPNameEXT,pname,1)
  GLfloat* params = OGLM_ALLOC(pname_count,GLfloat,params);
  glGetHistogramParameterfvEXT(target, pname, params);
  OGLM_CHECK_ERR(glGetHistogramParameterfvEXT, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSVnv)
  free(params);
#line 25361 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetHistogramParameteriv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetHistogramParameteriv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint *	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 12418 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetHistogramParameteriv, )
  OGLM_AVAIL_CHECK(__glewGetHistogramParameteriv, glGetHistogramParameteriv)
  glGetHistogramParameteriv(target, pname, params);
  OGLM_CHECK_ERR(glGetHistogramParameteriv, )
#line 25387 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetHistogramParameteriv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetHistogramParameteriv_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 12429 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetHistogramParameteriv, )
  OGLM_AVAIL_CHECK(__glewGetHistogramParameteriv, glGetHistogramParameteriv)
  OGLM_SIZE_ENUM(GetHistogramParameterPNameEXT,pname,1)
  GLint *params = OGLM_ALLOC(pname_count,GLint,params);
  glGetHistogramParameteriv(target, pname, params);
  OGLM_CHECK_ERR(glGetHistogramParameteriv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 25416 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetHistogramParameterivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetHistogramParameterivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 12445 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetHistogramParameterivEXT, )
  OGLM_AVAIL_CHECK(__glewGetHistogramParameterivEXT, glGetHistogramParameterivEXT)
  glGetHistogramParameterivEXT(target, pname, params);
  OGLM_CHECK_ERR(glGetHistogramParameterivEXT, )
#line 25442 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetHistogramParameterivEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetHistogramParameterivEXT_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 12456 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetHistogramParameterivEXT, )
  OGLM_AVAIL_CHECK(__glewGetHistogramParameterivEXT, glGetHistogramParameterivEXT)
  OGLM_SIZE_ENUM(GetHistogramParameterPNameEXT,pname,1)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  glGetHistogramParameterivEXT(target, pname, params);
  OGLM_CHECK_ERR(glGetHistogramParameterivEXT, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 25471 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetImageHandleARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetImageHandleARB)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "texture, level, layered, layer, format");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLboolean	layered = (int)SvIV(ST(2))
;
	GLint	layer = (int)SvIV(ST(3))
;
	GLenum	format = (int)SvIV(ST(4))
;
	GLuint64	RETVAL;
	dXSTARG;
#line 12474 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetImageHandleARB, )
  OGLM_AVAIL_CHECK(__glewGetImageHandleARB, glGetImageHandleARB)
  RETVAL = glGetImageHandleARB(texture, level, layered, layer, format);
  OGLM_CHECK_ERR(glGetImageHandleARB, )
#line 25503 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetImageHandleNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetImageHandleNV)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "texture, level, layered, layer, format");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLboolean	layered = (int)SvIV(ST(2))
;
	GLint	layer = (int)SvIV(ST(3))
;
	GLenum	format = (int)SvIV(ST(4))
;
	GLuint64	RETVAL;
	dXSTARG;
#line 12490 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetImageHandleNV, )
  OGLM_AVAIL_CHECK(__glewGetImageHandleNV, glGetImageHandleNV)
  RETVAL = glGetImageHandleNV(texture, level, layered, layer, format);
  OGLM_CHECK_ERR(glGetImageHandleNV, )
#line 25536 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetImageTransformParameterfvHP_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetImageTransformParameterfvHP_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLfloat*	params = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 12504 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetImageTransformParameterfvHP, )
  OGLM_AVAIL_CHECK(__glewGetImageTransformParameterfvHP, glGetImageTransformParameterfvHP)
  glGetImageTransformParameterfvHP(target, pname, params);
  OGLM_CHECK_ERR(glGetImageTransformParameterfvHP, )
#line 25563 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetImageTransformParameterivHP_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetImageTransformParameterivHP_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLint*	params = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 12516 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetImageTransformParameterivHP, )
  OGLM_AVAIL_CHECK(__glewGetImageTransformParameterivHP, glGetImageTransformParameterivHP)
  glGetImageTransformParameterivHP(target, pname, params);
  OGLM_CHECK_ERR(glGetImageTransformParameterivHP, )
#line 25588 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetInfoLogARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetInfoLogARB_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "obj, maxLength, length, infoLog");
    {
	GLhandleARB	obj = (unsigned int)SvUV(ST(0))
;
	GLsizei	maxLength = (int)SvIV(ST(1))
;
	GLsizei*	length = INT2PTR(GLsizei *,SvIV(ST(2)))
;
	GLcharARB *	infoLog = (GLcharARB *)SvPV_nolen(ST(3))
;
#line 12529 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetInfoLogARB, )
  OGLM_AVAIL_CHECK(__glewGetInfoLogARB, glGetInfoLogARB)
  glGetInfoLogARB(obj, maxLength, length, infoLog);
  OGLM_CHECK_ERR(glGetInfoLogARB, )
#line 25615 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetInfoLogARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetInfoLogARB_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "obj, maxLength");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLhandleARB	obj = (unsigned int)SvUV(ST(0))
;
	GLsizei	maxLength = (int)SvIV(ST(1))
;
#line 12540 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetInfoLogARB, )
  OGLM_AVAIL_CHECK(__glewGetInfoLogARB, glGetInfoLogARB)
  GLcharARB infoLog[maxLength];
  GLsizei length[1];
  glGetInfoLogARB(obj, maxLength, length, infoLog);
  OGLM_CHECK_ERR(glGetInfoLogARB, )
  EXTEND(sp, 2);
  mPUSHs(newSViv(length[0]));
  mPUSHs(newSVpv(infoLog,0));
#line 25645 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetInteger64i_v_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetInteger64i_v_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, index, data");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLint64 *	data = INT2PTR(GLint64 *,SvIV(ST(2)))
;
#line 12557 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetInteger64i_v, )
  OGLM_AVAIL_CHECK(__glewGetInteger64i_v, glGetInteger64i_v)
  glGetInteger64i_v(target, index, data);
  OGLM_CHECK_ERR(glGetInteger64i_v, )
#line 25671 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetInteger64i_v_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetInteger64i_v_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, index");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 12568 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetInteger64i_v, )
  OGLM_AVAIL_CHECK(__glewGetInteger64i_v, glGetInteger64i_v)
  OGLM_SIZE_ENUM(GetPName,target,1)
  GLint64 * data = OGLM_ALLOC(target_count,GLint64,data);
  glGetInteger64i_v(target, index, data);
  OGLM_CHECK_ERR(glGetInteger64i_v, free(data);)
  OGLM_OUT_FINISH(data,target_count,newSViv)
  free(data);
#line 25700 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetInteger64v_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetInteger64v_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "pname, data");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLint64*	data = INT2PTR(GLint64 *,SvIV(ST(1)))
;
#line 12586 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetInteger64v, )
  OGLM_AVAIL_CHECK(__glewGetInteger64v, glGetInteger64v)
  glGetInteger64v(pname, data);
  OGLM_CHECK_ERR(glGetInteger64v, )
#line 25725 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetInteger64v_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetInteger64v_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	pname = (int)SvIV(ST(0))
;
#line 12599 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetInteger64v, )
  OGLM_AVAIL_CHECK(__glewGetInteger64v, glGetInteger64v)
  OGLM_SIZE_ENUM(GetPName,pname,1)
  GLint64* data = OGLM_ALLOC(pname_count,GLint64,data);
  glGetInteger64v(pname, data);
  OGLM_CHECK_ERR(glGetInteger64v, free(data);)
  OGLM_OUT_FINISH(data,pname_count,newSViv)
  free(data);
#line 25753 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetIntegeri_v_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetIntegeri_v_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "target, index, data");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLint*	data = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 12617 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetIntegeri_v, )
  OGLM_AVAIL_CHECK(__glewGetIntegeri_v, glGetIntegeri_v)
  glGetIntegeri_v(target, index, data);
  OGLM_CHECK_ERR(glGetIntegeri_v, )
#line 25780 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetIntegeri_v_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetIntegeri_v_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, index");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 12630 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetIntegeri_v, )
  OGLM_AVAIL_CHECK(__glewGetIntegeri_v, glGetIntegeri_v)
  OGLM_SIZE_ENUM(GetPName,target,1)
  GLint* data = OGLM_ALLOC(target_count,GLint,data);
  glGetIntegeri_v(target, index, data);
  OGLM_CHECK_ERR(glGetIntegeri_v, free(data);)
  OGLM_OUT_FINISH(data,target_count,newSViv)
  free(data);
#line 25810 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetIntegeri_vEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetIntegeri_vEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, index, data");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLint*	data = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 12646 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetIntegeri_vEXT, )
  OGLM_AVAIL_CHECK(__glewGetIntegeri_vEXT, glGetIntegeri_vEXT)
  glGetIntegeri_vEXT(target, index, data);
  OGLM_CHECK_ERR(glGetIntegeri_vEXT, )
#line 25836 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetIntegerui64i_vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetIntegerui64i_vNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "value, index, result");
    {
	GLenum	value = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLuint64EXT *	result = INT2PTR(GLuint64EXT *,SvIV(ST(2)))
;
#line 12658 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetIntegerui64i_vNV, )
  OGLM_AVAIL_CHECK(__glewGetIntegerui64i_vNV, glGetIntegerui64i_vNV)
  glGetIntegerui64i_vNV(value, index, result);
  OGLM_CHECK_ERR(glGetIntegerui64i_vNV, )
#line 25861 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetIntegerui64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetIntegerui64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "value, result");
    {
	GLenum	value = (int)SvIV(ST(0))
;
	GLuint64EXT*	result = INT2PTR(GLuint64EXT *,SvIV(ST(1)))
;
#line 12669 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetIntegerui64vNV, )
  OGLM_AVAIL_CHECK(__glewGetIntegerui64vNV, glGetIntegerui64vNV)
  glGetIntegerui64vNV(value, result);
  OGLM_CHECK_ERR(glGetIntegerui64vNV, )
#line 25884 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetIntegerv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetIntegerv_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, data");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLint *	data = INT2PTR(GLint *,SvIV(ST(1)))
;
#line 12680 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetIntegerv, )
  glGetIntegerv(pname, data);
  OGLM_CHECK_ERR(glGetIntegerv, )
#line 25906 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetIntegerv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetIntegerv_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	pname = (int)SvIV(ST(0))
;
#line 12689 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetIntegerv, )
  OGLM_SIZE_ENUM(GetPName,pname,1)
  GLint *data = OGLM_ALLOC(pname_count,GLint,data);
  glGetIntegerv(pname, data);
  OGLM_CHECK_ERR(glGetIntegerv, free(data);)
  OGLM_OUT_FINISH(data,pname_count,newSViv)
  free(data);
#line 25932 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetInternalformatSampleivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetInternalformatSampleivNV_c)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "target, internalformat, samples, pname, count, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	internalformat = (int)SvIV(ST(1))
;
	GLsizei	samples = (int)SvIV(ST(2))
;
	GLenum	pname = (int)SvIV(ST(3))
;
	GLsizei	count = (int)SvIV(ST(4))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(5)))
;
#line 12707 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetInternalformatSampleivNV, )
  OGLM_AVAIL_CHECK(__glewGetInternalformatSampleivNV, glGetInternalformatSampleivNV)
  glGetInternalformatSampleivNV(target, internalformat, samples, pname, count, params);
  OGLM_CHECK_ERR(glGetInternalformatSampleivNV, )
#line 25964 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetInternalformatSampleivNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetInternalformatSampleivNV_p)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "target, internalformat, samples, pname, count");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	internalformat = (int)SvIV(ST(1))
;
	GLsizei	samples = (int)SvIV(ST(2))
;
	GLenum	pname = (int)SvIV(ST(3))
;
	GLsizei	count = (int)SvIV(ST(4))
;
#line 12721 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetInternalformatSampleivNV, )
  OGLM_AVAIL_CHECK(__glewGetInternalformatSampleivNV, glGetInternalformatSampleivNV)
  GLint* params = OGLM_ALLOC(count,GLint,params);
  glGetInternalformatSampleivNV(target, internalformat, samples, pname, count, params);
  OGLM_CHECK_ERR(glGetInternalformatSampleivNV, free(params);)
  OGLM_OUT_FINISH(params,count,newSViv)
  free(params);
#line 25998 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetInternalformati64v_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetInternalformati64v_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "target, internalformat, pname, count, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	internalformat = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLsizei	count = (int)SvIV(ST(3))
;
	GLint64*	params = INT2PTR(GLint64 *,SvIV(ST(4)))
;
#line 12738 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetInternalformati64v, )
  OGLM_AVAIL_CHECK(__glewGetInternalformati64v, glGetInternalformati64v)
  glGetInternalformati64v(target, internalformat, pname, count, params);
  OGLM_CHECK_ERR(glGetInternalformati64v, )
#line 26028 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetInternalformati64v_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetInternalformati64v_p)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, internalformat, pname, count");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	internalformat = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLsizei	count = (int)SvIV(ST(3))
;
#line 12751 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetInternalformati64v, )
  OGLM_AVAIL_CHECK(__glewGetInternalformati64v, glGetInternalformati64v)
  GLint64* params = OGLM_ALLOC(count,GLint64,params);
  glGetInternalformati64v(target, internalformat, pname, count, params);
  OGLM_CHECK_ERR(glGetInternalformati64v, free(params);)
  OGLM_OUT_FINISH(params,count,newSViv)
  free(params);
#line 26060 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetInternalformativ_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetInternalformativ_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "target, internalformat, pname, count, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	internalformat = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLsizei	count = (int)SvIV(ST(3))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(4)))
;
#line 12768 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetInternalformativ, )
  OGLM_AVAIL_CHECK(__glewGetInternalformativ, glGetInternalformativ)
  glGetInternalformativ(target, internalformat, pname, count, params);
  OGLM_CHECK_ERR(glGetInternalformativ, )
#line 26090 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetInternalformativ_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetInternalformativ_p)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, internalformat, pname, count");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	internalformat = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLsizei	count = (int)SvIV(ST(3))
;
#line 12781 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetInternalformativ, )
  OGLM_AVAIL_CHECK(__glewGetInternalformativ, glGetInternalformativ)
  GLint* params = OGLM_ALLOC(count,GLint,params);
  glGetInternalformativ(target, internalformat, pname, count, params);
  OGLM_CHECK_ERR(glGetInternalformativ, free(params);)
  OGLM_OUT_FINISH(params,count,newSViv)
  free(params);
#line 26122 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetInvariantBooleanvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetInvariantBooleanvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "id, value, data");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	value = (int)SvIV(ST(1))
;
	GLboolean *	data = INT2PTR(GLboolean *,SvIV(ST(2)))
;
#line 12796 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetInvariantBooleanvEXT, )
  OGLM_AVAIL_CHECK(__glewGetInvariantBooleanvEXT, glGetInvariantBooleanvEXT)
  glGetInvariantBooleanvEXT(id, value, data);
  OGLM_CHECK_ERR(glGetInvariantBooleanvEXT, )
#line 26148 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetInvariantFloatvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetInvariantFloatvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "id, value, data");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	value = (int)SvIV(ST(1))
;
	GLfloat *	data = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 12808 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetInvariantFloatvEXT, )
  OGLM_AVAIL_CHECK(__glewGetInvariantFloatvEXT, glGetInvariantFloatvEXT)
  glGetInvariantFloatvEXT(id, value, data);
  OGLM_CHECK_ERR(glGetInvariantFloatvEXT, )
#line 26173 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetInvariantIntegervEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetInvariantIntegervEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "id, value, data");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	value = (int)SvIV(ST(1))
;
	GLint *	data = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 12820 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetInvariantIntegervEXT, )
  OGLM_AVAIL_CHECK(__glewGetInvariantIntegervEXT, glGetInvariantIntegervEXT)
  glGetInvariantIntegervEXT(id, value, data);
  OGLM_CHECK_ERR(glGetInvariantIntegervEXT, )
#line 26198 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetLightfv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetLightfv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "light, pname, params");
    {
	GLenum	light = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat *	params = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 12832 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetLightfv, )
  glGetLightfv(light, pname, params);
  OGLM_CHECK_ERR(glGetLightfv, )
#line 26222 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetLightfv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetLightfv_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "light, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	light = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 12842 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetLightfv, )
  OGLM_SIZE_ENUM(LightParameter,pname,1)
  GLfloat *params = OGLM_ALLOC(pname_count,GLfloat,params);
  glGetLightfv(light, pname, params);
  OGLM_CHECK_ERR(glGetLightfv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSVnv)
  free(params);
#line 26250 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetLightiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetLightiv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "light, pname, params");
    {
	GLenum	light = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint *	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 12857 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetLightiv, )
  glGetLightiv(light, pname, params);
  OGLM_CHECK_ERR(glGetLightiv, )
#line 26275 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetLightiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetLightiv_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "light, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	light = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 12867 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetLightiv, )
  OGLM_SIZE_ENUM(LightParameter,pname,1)
  GLint *params = OGLM_ALLOC(pname_count,GLint,params);
  glGetLightiv(light, pname, params);
  OGLM_CHECK_ERR(glGetLightiv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 26303 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetLightxv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetLightxv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "light, pname, params");
    {
	GLenum	light = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfixed*	params = INT2PTR(GLfixed *,SvIV(ST(2)))
;
#line 12882 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetLightxv, )
  OGLM_AVAIL_CHECK(__glewGetLightxv, glGetLightxv)
  glGetLightxv(light, pname, params);
  OGLM_CHECK_ERR(glGetLightxv, )
#line 26329 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetLightxv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetLightxv_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "light, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	light = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 12893 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetLightxv, )
  OGLM_AVAIL_CHECK(__glewGetLightxv, glGetLightxv)
  OGLM_SIZE_ENUM(LightParameter,pname,1)
  GLfixed* params = OGLM_ALLOC(pname_count,GLfixed,params);
  glGetLightxv(light, pname, params);
  OGLM_CHECK_ERR(glGetLightxv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 26358 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetLocalConstantBooleanvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetLocalConstantBooleanvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "id, value, data");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	value = (int)SvIV(ST(1))
;
	GLboolean *	data = INT2PTR(GLboolean *,SvIV(ST(2)))
;
#line 12909 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetLocalConstantBooleanvEXT, )
  OGLM_AVAIL_CHECK(__glewGetLocalConstantBooleanvEXT, glGetLocalConstantBooleanvEXT)
  glGetLocalConstantBooleanvEXT(id, value, data);
  OGLM_CHECK_ERR(glGetLocalConstantBooleanvEXT, )
#line 26384 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetLocalConstantFloatvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetLocalConstantFloatvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "id, value, data");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	value = (int)SvIV(ST(1))
;
	GLfloat *	data = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 12921 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetLocalConstantFloatvEXT, )
  OGLM_AVAIL_CHECK(__glewGetLocalConstantFloatvEXT, glGetLocalConstantFloatvEXT)
  glGetLocalConstantFloatvEXT(id, value, data);
  OGLM_CHECK_ERR(glGetLocalConstantFloatvEXT, )
#line 26409 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetLocalConstantIntegervEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetLocalConstantIntegervEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "id, value, data");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	value = (int)SvIV(ST(1))
;
	GLint *	data = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 12933 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetLocalConstantIntegervEXT, )
  OGLM_AVAIL_CHECK(__glewGetLocalConstantIntegervEXT, glGetLocalConstantIntegervEXT)
  glGetLocalConstantIntegervEXT(id, value, data);
  OGLM_CHECK_ERR(glGetLocalConstantIntegervEXT, )
#line 26434 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetMPEGParameterfvSGIX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMPEGParameterfvSGIX_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 12945 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMPEGParameterfvSGIX, )
  OGLM_AVAIL_CHECK(__glewGetMPEGParameterfvSGIX, glGetMPEGParameterfvSGIX)
  glGetMPEGParameterfvSGIX(target, pname, params);
  OGLM_CHECK_ERR(glGetMPEGParameterfvSGIX, )
#line 26459 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetMPEGParameterivSGIX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMPEGParameterivSGIX_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 12957 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMPEGParameterivSGIX, )
  OGLM_AVAIL_CHECK(__glewGetMPEGParameterivSGIX, glGetMPEGParameterivSGIX)
  glGetMPEGParameterivSGIX(target, pname, params);
  OGLM_CHECK_ERR(glGetMPEGParameterivSGIX, )
#line 26484 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetMPEGPredictorSGIX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMPEGPredictorSGIX_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, format, type, pixels");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	format = (int)SvIV(ST(1))
;
	GLenum	type = (int)SvIV(ST(2))
;
	void *	pixels = INT2PTR(void *,SvIV(ST(3)))
;
#line 12970 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMPEGPredictorSGIX, )
  OGLM_AVAIL_CHECK(__glewGetMPEGPredictorSGIX, glGetMPEGPredictorSGIX)
  glGetMPEGPredictorSGIX(target, format, type, pixels);
  OGLM_CHECK_ERR(glGetMPEGPredictorSGIX, )
#line 26511 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetMPEGQuantTableubv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMPEGQuantTableubv_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, values");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLubyte*	values = INT2PTR(GLubyte *,SvIV(ST(1)))
;
#line 12981 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMPEGQuantTableubv, )
  OGLM_AVAIL_CHECK(__glewGetMPEGQuantTableubv, glGetMPEGQuantTableubv)
  glGetMPEGQuantTableubv(target, values);
  OGLM_CHECK_ERR(glGetMPEGQuantTableubv, )
#line 26534 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetMapAttribParameterfvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMapAttribParameterfvNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, index, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(3)))
;
#line 12994 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMapAttribParameterfvNV, )
  OGLM_AVAIL_CHECK(__glewGetMapAttribParameterfvNV, glGetMapAttribParameterfvNV)
  glGetMapAttribParameterfvNV(target, index, pname, params);
  OGLM_CHECK_ERR(glGetMapAttribParameterfvNV, )
#line 26561 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetMapAttribParameterivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMapAttribParameterivNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, index, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(3)))
;
#line 13007 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMapAttribParameterivNV, )
  OGLM_AVAIL_CHECK(__glewGetMapAttribParameterivNV, glGetMapAttribParameterivNV)
  glGetMapAttribParameterivNV(target, index, pname, params);
  OGLM_CHECK_ERR(glGetMapAttribParameterivNV, )
#line 26588 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetMapControlPointsNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMapControlPointsNV_c)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "target, index, type, ustride, vstride, packed, points");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLenum	type = (int)SvIV(ST(2))
;
	GLsizei	ustride = (int)SvIV(ST(3))
;
	GLsizei	vstride = (int)SvIV(ST(4))
;
	GLboolean	packed = (int)SvIV(ST(5))
;
	void *	points = INT2PTR(void *,SvIV(ST(6)))
;
#line 13023 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMapControlPointsNV, )
  OGLM_AVAIL_CHECK(__glewGetMapControlPointsNV, glGetMapControlPointsNV)
  glGetMapControlPointsNV(target, index, type, ustride, vstride, packed, points);
  OGLM_CHECK_ERR(glGetMapControlPointsNV, )
#line 26621 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetMapParameterfvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMapParameterfvNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 13035 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMapParameterfvNV, )
  OGLM_AVAIL_CHECK(__glewGetMapParameterfvNV, glGetMapParameterfvNV)
  glGetMapParameterfvNV(target, pname, params);
  OGLM_CHECK_ERR(glGetMapParameterfvNV, )
#line 26646 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetMapParameterivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMapParameterivNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 13047 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMapParameterivNV, )
  OGLM_AVAIL_CHECK(__glewGetMapParameterivNV, glGetMapParameterivNV)
  glGetMapParameterivNV(target, pname, params);
  OGLM_CHECK_ERR(glGetMapParameterivNV, )
#line 26671 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetMapdv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMapdv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, query, v");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	query = (int)SvIV(ST(1))
;
	GLdouble *	v = INT2PTR(GLdouble *,SvIV(ST(2)))
;
#line 13059 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMapdv, )
  glGetMapdv(target, query, v);
  OGLM_CHECK_ERR(glGetMapdv, )
#line 26695 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetMapfv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMapfv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, query, v");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	query = (int)SvIV(ST(1))
;
	GLfloat *	v = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 13070 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMapfv, )
  glGetMapfv(target, query, v);
  OGLM_CHECK_ERR(glGetMapfv, )
#line 26719 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetMapiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMapiv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, query, v");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	query = (int)SvIV(ST(1))
;
	GLint *	v = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 13081 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMapiv, )
  glGetMapiv(target, query, v);
  OGLM_CHECK_ERR(glGetMapiv, )
#line 26743 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetMaterialfv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMaterialfv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "face, pname, params");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat *	params = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 13092 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMaterialfv, )
  glGetMaterialfv(face, pname, params);
  OGLM_CHECK_ERR(glGetMaterialfv, )
#line 26767 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetMaterialfv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMaterialfv_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "face, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 13102 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMaterialfv, )
  OGLM_SIZE_ENUM(MaterialParameter,pname,1)
  GLfloat *params = OGLM_ALLOC(pname_count,GLfloat,params);
  glGetMaterialfv(face, pname, params);
  OGLM_CHECK_ERR(glGetMaterialfv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSVnv)
  free(params);
#line 26795 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetMaterialiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMaterialiv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "face, pname, params");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint *	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 13117 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMaterialiv, )
  glGetMaterialiv(face, pname, params);
  OGLM_CHECK_ERR(glGetMaterialiv, )
#line 26820 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetMaterialiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMaterialiv_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "face, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 13127 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMaterialiv, )
  OGLM_SIZE_ENUM(MaterialParameter,pname,1)
  GLint *params = OGLM_ALLOC(pname_count,GLint,params);
  glGetMaterialiv(face, pname, params);
  OGLM_CHECK_ERR(glGetMaterialiv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 26848 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetMaterialxv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMaterialxv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "face, pname, params");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfixed*	params = INT2PTR(GLfixed *,SvIV(ST(2)))
;
#line 13142 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMaterialxv, )
  OGLM_AVAIL_CHECK(__glewGetMaterialxv, glGetMaterialxv)
  glGetMaterialxv(face, pname, params);
  OGLM_CHECK_ERR(glGetMaterialxv, )
#line 26874 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetMaterialxv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMaterialxv_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "face, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 13153 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMaterialxv, )
  OGLM_AVAIL_CHECK(__glewGetMaterialxv, glGetMaterialxv)
  OGLM_SIZE_ENUM(MaterialParameter,pname,1)
  GLfixed* params = OGLM_ALLOC(pname_count,GLfixed,params);
  glGetMaterialxv(face, pname, params);
  OGLM_CHECK_ERR(glGetMaterialxv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 26903 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetMemoryObjectDetachedResourcesuivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMemoryObjectDetachedResourcesuivNV_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "memory, pname, first, count, params");
    {
	GLuint	memory = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint	first = (int)SvIV(ST(2))
;
	GLsizei	count = (int)SvIV(ST(3))
;
	GLuint*	params = INT2PTR(GLuint *,SvIV(ST(4)))
;
#line 13171 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMemoryObjectDetachedResourcesuivNV, )
  OGLM_AVAIL_CHECK(__glewGetMemoryObjectDetachedResourcesuivNV, glGetMemoryObjectDetachedResourcesuivNV)
  glGetMemoryObjectDetachedResourcesuivNV(memory, pname, first, count, params);
  OGLM_CHECK_ERR(glGetMemoryObjectDetachedResourcesuivNV, )
#line 26933 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetMemoryObjectParameterivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMemoryObjectParameterivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "memoryObject, pname, params");
    {
	GLuint	memoryObject = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 13183 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMemoryObjectParameterivEXT, )
  OGLM_AVAIL_CHECK(__glewGetMemoryObjectParameterivEXT, glGetMemoryObjectParameterivEXT)
  glGetMemoryObjectParameterivEXT(memoryObject, pname, params);
  OGLM_CHECK_ERR(glGetMemoryObjectParameterivEXT, )
#line 26958 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetMinmax_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMinmax_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "target, reset, format, type, values");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLboolean	reset = (int)SvIV(ST(1))
;
	GLenum	format = (int)SvIV(ST(2))
;
	GLenum	type = (int)SvIV(ST(3))
;
	void *	values = INT2PTR(void *,SvIV(ST(4)))
;
#line 13197 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMinmax, )
  OGLM_AVAIL_CHECK(__glewGetMinmax, glGetMinmax)
  glGetMinmax(target, reset, format, type, values);
  OGLM_CHECK_ERR(glGetMinmax, )
#line 26987 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetMinmaxEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMinmaxEXT_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "target, reset, format, type, values");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLboolean	reset = (int)SvIV(ST(1))
;
	GLenum	format = (int)SvIV(ST(2))
;
	GLenum	type = (int)SvIV(ST(3))
;
	void *	values = INT2PTR(void *,SvIV(ST(4)))
;
#line 13211 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMinmaxEXT, )
  OGLM_AVAIL_CHECK(__glewGetMinmaxEXT, glGetMinmaxEXT)
  glGetMinmaxEXT(target, reset, format, type, values);
  OGLM_CHECK_ERR(glGetMinmaxEXT, )
#line 27016 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetMinmaxParameterfv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMinmaxParameterfv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat *	params = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 13223 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMinmaxParameterfv, )
  OGLM_AVAIL_CHECK(__glewGetMinmaxParameterfv, glGetMinmaxParameterfv)
  glGetMinmaxParameterfv(target, pname, params);
  OGLM_CHECK_ERR(glGetMinmaxParameterfv, )
#line 27041 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetMinmaxParameterfv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMinmaxParameterfv_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 13234 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMinmaxParameterfv, )
  OGLM_AVAIL_CHECK(__glewGetMinmaxParameterfv, glGetMinmaxParameterfv)
  OGLM_SIZE_ENUM(GetMinmaxParameterPNameEXT,pname,1)
  GLfloat *params = OGLM_ALLOC(pname_count,GLfloat,params);
  glGetMinmaxParameterfv(target, pname, params);
  OGLM_CHECK_ERR(glGetMinmaxParameterfv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSVnv)
  free(params);
#line 27070 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetMinmaxParameterfvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMinmaxParameterfvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 13250 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMinmaxParameterfvEXT, )
  OGLM_AVAIL_CHECK(__glewGetMinmaxParameterfvEXT, glGetMinmaxParameterfvEXT)
  glGetMinmaxParameterfvEXT(target, pname, params);
  OGLM_CHECK_ERR(glGetMinmaxParameterfvEXT, )
#line 27096 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetMinmaxParameterfvEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMinmaxParameterfvEXT_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 13261 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMinmaxParameterfvEXT, )
  OGLM_AVAIL_CHECK(__glewGetMinmaxParameterfvEXT, glGetMinmaxParameterfvEXT)
  OGLM_SIZE_ENUM(GetMinmaxParameterPNameEXT,pname,1)
  GLfloat* params = OGLM_ALLOC(pname_count,GLfloat,params);
  glGetMinmaxParameterfvEXT(target, pname, params);
  OGLM_CHECK_ERR(glGetMinmaxParameterfvEXT, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSVnv)
  free(params);
#line 27125 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetMinmaxParameteriv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMinmaxParameteriv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint *	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 13277 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMinmaxParameteriv, )
  OGLM_AVAIL_CHECK(__glewGetMinmaxParameteriv, glGetMinmaxParameteriv)
  glGetMinmaxParameteriv(target, pname, params);
  OGLM_CHECK_ERR(glGetMinmaxParameteriv, )
#line 27151 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetMinmaxParameteriv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMinmaxParameteriv_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 13288 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMinmaxParameteriv, )
  OGLM_AVAIL_CHECK(__glewGetMinmaxParameteriv, glGetMinmaxParameteriv)
  OGLM_SIZE_ENUM(GetMinmaxParameterPNameEXT,pname,1)
  GLint *params = OGLM_ALLOC(pname_count,GLint,params);
  glGetMinmaxParameteriv(target, pname, params);
  OGLM_CHECK_ERR(glGetMinmaxParameteriv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 27180 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetMinmaxParameterivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMinmaxParameterivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 13304 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMinmaxParameterivEXT, )
  OGLM_AVAIL_CHECK(__glewGetMinmaxParameterivEXT, glGetMinmaxParameterivEXT)
  glGetMinmaxParameterivEXT(target, pname, params);
  OGLM_CHECK_ERR(glGetMinmaxParameterivEXT, )
#line 27206 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetMinmaxParameterivEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMinmaxParameterivEXT_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 13315 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMinmaxParameterivEXT, )
  OGLM_AVAIL_CHECK(__glewGetMinmaxParameterivEXT, glGetMinmaxParameterivEXT)
  OGLM_SIZE_ENUM(GetMinmaxParameterPNameEXT,pname,1)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  glGetMinmaxParameterivEXT(target, pname, params);
  OGLM_CHECK_ERR(glGetMinmaxParameterivEXT, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 27235 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexEnvfvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexEnvfvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texunit, target, pname, params");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(3)))
;
#line 13332 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMultiTexEnvfvEXT, )
  OGLM_AVAIL_CHECK(__glewGetMultiTexEnvfvEXT, glGetMultiTexEnvfvEXT)
  glGetMultiTexEnvfvEXT(texunit, target, pname, params);
  OGLM_CHECK_ERR(glGetMultiTexEnvfvEXT, )
#line 27263 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexEnvfvEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexEnvfvEXT_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texunit, target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
#line 13344 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMultiTexEnvfvEXT, )
  OGLM_AVAIL_CHECK(__glewGetMultiTexEnvfvEXT, glGetMultiTexEnvfvEXT)
  OGLM_SIZE_ENUM(TextureEnvParameter,pname,1)
  GLfloat* params = OGLM_ALLOC(pname_count,GLfloat,params);
  glGetMultiTexEnvfvEXT(texunit, target, pname, params);
  OGLM_CHECK_ERR(glGetMultiTexEnvfvEXT, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSVnv)
  free(params);
#line 27294 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexEnvivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexEnvivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texunit, target, pname, params");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(3)))
;
#line 13361 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMultiTexEnvivEXT, )
  OGLM_AVAIL_CHECK(__glewGetMultiTexEnvivEXT, glGetMultiTexEnvivEXT)
  glGetMultiTexEnvivEXT(texunit, target, pname, params);
  OGLM_CHECK_ERR(glGetMultiTexEnvivEXT, )
#line 27322 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexEnvivEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexEnvivEXT_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texunit, target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
#line 13373 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMultiTexEnvivEXT, )
  OGLM_AVAIL_CHECK(__glewGetMultiTexEnvivEXT, glGetMultiTexEnvivEXT)
  OGLM_SIZE_ENUM(TextureEnvParameter,pname,1)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  glGetMultiTexEnvivEXT(texunit, target, pname, params);
  OGLM_CHECK_ERR(glGetMultiTexEnvivEXT, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 27353 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexGendvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexGendvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texunit, coord, pname, params");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	coord = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLdouble*	params = INT2PTR(GLdouble *,SvIV(ST(3)))
;
#line 13390 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMultiTexGendvEXT, )
  OGLM_AVAIL_CHECK(__glewGetMultiTexGendvEXT, glGetMultiTexGendvEXT)
  glGetMultiTexGendvEXT(texunit, coord, pname, params);
  OGLM_CHECK_ERR(glGetMultiTexGendvEXT, )
#line 27381 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexGendvEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexGendvEXT_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texunit, coord, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	coord = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
#line 13402 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMultiTexGendvEXT, )
  OGLM_AVAIL_CHECK(__glewGetMultiTexGendvEXT, glGetMultiTexGendvEXT)
  OGLM_SIZE_ENUM(TextureGenParameter,pname,1)
  GLdouble* params = OGLM_ALLOC(pname_count,GLdouble,params);
  glGetMultiTexGendvEXT(texunit, coord, pname, params);
  OGLM_CHECK_ERR(glGetMultiTexGendvEXT, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSVnv)
  free(params);
#line 27412 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexGenfvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexGenfvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texunit, coord, pname, params");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	coord = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(3)))
;
#line 13419 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMultiTexGenfvEXT, )
  OGLM_AVAIL_CHECK(__glewGetMultiTexGenfvEXT, glGetMultiTexGenfvEXT)
  glGetMultiTexGenfvEXT(texunit, coord, pname, params);
  OGLM_CHECK_ERR(glGetMultiTexGenfvEXT, )
#line 27440 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexGenfvEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexGenfvEXT_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texunit, coord, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	coord = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
#line 13431 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMultiTexGenfvEXT, )
  OGLM_AVAIL_CHECK(__glewGetMultiTexGenfvEXT, glGetMultiTexGenfvEXT)
  OGLM_SIZE_ENUM(TextureGenParameter,pname,1)
  GLfloat* params = OGLM_ALLOC(pname_count,GLfloat,params);
  glGetMultiTexGenfvEXT(texunit, coord, pname, params);
  OGLM_CHECK_ERR(glGetMultiTexGenfvEXT, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSVnv)
  free(params);
#line 27471 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexGenivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexGenivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texunit, coord, pname, params");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	coord = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(3)))
;
#line 13448 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMultiTexGenivEXT, )
  OGLM_AVAIL_CHECK(__glewGetMultiTexGenivEXT, glGetMultiTexGenivEXT)
  glGetMultiTexGenivEXT(texunit, coord, pname, params);
  OGLM_CHECK_ERR(glGetMultiTexGenivEXT, )
#line 27499 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexGenivEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexGenivEXT_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texunit, coord, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	coord = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
#line 13460 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMultiTexGenivEXT, )
  OGLM_AVAIL_CHECK(__glewGetMultiTexGenivEXT, glGetMultiTexGenivEXT)
  OGLM_SIZE_ENUM(TextureGenParameter,pname,1)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  glGetMultiTexGenivEXT(texunit, coord, pname, params);
  OGLM_CHECK_ERR(glGetMultiTexGenivEXT, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 27530 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexImageEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexImageEXT_c)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "texunit, target, level, format, type, pixels");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLenum	format = (int)SvIV(ST(3))
;
	GLenum	type = (int)SvIV(ST(4))
;
	void *	pixels = INT2PTR(void *,SvIV(ST(5)))
;
#line 13479 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMultiTexImageEXT, )
  OGLM_AVAIL_CHECK(__glewGetMultiTexImageEXT, glGetMultiTexImageEXT)
  glGetMultiTexImageEXT(texunit, target, level, format, type, pixels);
  OGLM_CHECK_ERR(glGetMultiTexImageEXT, )
#line 27562 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexLevelParameterfvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexLevelParameterfvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "texunit, target, level, pname, params");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLenum	pname = (int)SvIV(ST(3))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(4)))
;
#line 13493 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMultiTexLevelParameterfvEXT, )
  OGLM_AVAIL_CHECK(__glewGetMultiTexLevelParameterfvEXT, glGetMultiTexLevelParameterfvEXT)
  glGetMultiTexLevelParameterfvEXT(texunit, target, level, pname, params);
  OGLM_CHECK_ERR(glGetMultiTexLevelParameterfvEXT, )
#line 27591 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexLevelParameterfvEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexLevelParameterfvEXT_p)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texunit, target, level, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLenum	pname = (int)SvIV(ST(3))
;
#line 13506 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMultiTexLevelParameterfvEXT, )
  OGLM_AVAIL_CHECK(__glewGetMultiTexLevelParameterfvEXT, glGetMultiTexLevelParameterfvEXT)
  OGLM_SIZE_ENUM(GetTextureParameter,pname,1)
  GLfloat* params = OGLM_ALLOC(pname_count,GLfloat,params);
  glGetMultiTexLevelParameterfvEXT(texunit, target, level, pname, params);
  OGLM_CHECK_ERR(glGetMultiTexLevelParameterfvEXT, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSVnv)
  free(params);
#line 27624 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexLevelParameterivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexLevelParameterivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "texunit, target, level, pname, params");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLenum	pname = (int)SvIV(ST(3))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(4)))
;
#line 13524 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMultiTexLevelParameterivEXT, )
  OGLM_AVAIL_CHECK(__glewGetMultiTexLevelParameterivEXT, glGetMultiTexLevelParameterivEXT)
  glGetMultiTexLevelParameterivEXT(texunit, target, level, pname, params);
  OGLM_CHECK_ERR(glGetMultiTexLevelParameterivEXT, )
#line 27654 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexLevelParameterivEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexLevelParameterivEXT_p)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texunit, target, level, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLenum	pname = (int)SvIV(ST(3))
;
#line 13537 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMultiTexLevelParameterivEXT, )
  OGLM_AVAIL_CHECK(__glewGetMultiTexLevelParameterivEXT, glGetMultiTexLevelParameterivEXT)
  OGLM_SIZE_ENUM(GetTextureParameter,pname,1)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  glGetMultiTexLevelParameterivEXT(texunit, target, level, pname, params);
  OGLM_CHECK_ERR(glGetMultiTexLevelParameterivEXT, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 27687 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexParameterIivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexParameterIivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texunit, target, pname, params");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(3)))
;
#line 13554 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMultiTexParameterIivEXT, )
  OGLM_AVAIL_CHECK(__glewGetMultiTexParameterIivEXT, glGetMultiTexParameterIivEXT)
  glGetMultiTexParameterIivEXT(texunit, target, pname, params);
  OGLM_CHECK_ERR(glGetMultiTexParameterIivEXT, )
#line 27715 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexParameterIivEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexParameterIivEXT_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texunit, target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
#line 13566 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMultiTexParameterIivEXT, )
  OGLM_AVAIL_CHECK(__glewGetMultiTexParameterIivEXT, glGetMultiTexParameterIivEXT)
  OGLM_SIZE_ENUM(GetTextureParameter,pname,1)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  glGetMultiTexParameterIivEXT(texunit, target, pname, params);
  OGLM_CHECK_ERR(glGetMultiTexParameterIivEXT, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 27746 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexParameterIuivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexParameterIuivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texunit, target, pname, params");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLuint*	params = INT2PTR(GLuint *,SvIV(ST(3)))
;
#line 13583 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMultiTexParameterIuivEXT, )
  OGLM_AVAIL_CHECK(__glewGetMultiTexParameterIuivEXT, glGetMultiTexParameterIuivEXT)
  glGetMultiTexParameterIuivEXT(texunit, target, pname, params);
  OGLM_CHECK_ERR(glGetMultiTexParameterIuivEXT, )
#line 27774 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexParameterIuivEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexParameterIuivEXT_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texunit, target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
#line 13595 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMultiTexParameterIuivEXT, )
  OGLM_AVAIL_CHECK(__glewGetMultiTexParameterIuivEXT, glGetMultiTexParameterIuivEXT)
  OGLM_SIZE_ENUM(GetTextureParameter,pname,1)
  GLuint* params = OGLM_ALLOC(pname_count,GLuint,params);
  glGetMultiTexParameterIuivEXT(texunit, target, pname, params);
  OGLM_CHECK_ERR(glGetMultiTexParameterIuivEXT, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSVuv)
  free(params);
#line 27805 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexParameterfvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexParameterfvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texunit, target, pname, params");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(3)))
;
#line 13612 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMultiTexParameterfvEXT, )
  OGLM_AVAIL_CHECK(__glewGetMultiTexParameterfvEXT, glGetMultiTexParameterfvEXT)
  glGetMultiTexParameterfvEXT(texunit, target, pname, params);
  OGLM_CHECK_ERR(glGetMultiTexParameterfvEXT, )
#line 27833 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexParameterfvEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexParameterfvEXT_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texunit, target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
#line 13624 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMultiTexParameterfvEXT, )
  OGLM_AVAIL_CHECK(__glewGetMultiTexParameterfvEXT, glGetMultiTexParameterfvEXT)
  OGLM_SIZE_ENUM(GetTextureParameter,pname,1)
  GLfloat* params = OGLM_ALLOC(pname_count,GLfloat,params);
  glGetMultiTexParameterfvEXT(texunit, target, pname, params);
  OGLM_CHECK_ERR(glGetMultiTexParameterfvEXT, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSVnv)
  free(params);
#line 27864 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexParameterivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexParameterivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texunit, target, pname, params");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(3)))
;
#line 13641 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMultiTexParameterivEXT, )
  OGLM_AVAIL_CHECK(__glewGetMultiTexParameterivEXT, glGetMultiTexParameterivEXT)
  glGetMultiTexParameterivEXT(texunit, target, pname, params);
  OGLM_CHECK_ERR(glGetMultiTexParameterivEXT, )
#line 27892 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexParameterivEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMultiTexParameterivEXT_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texunit, target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
#line 13653 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMultiTexParameterivEXT, )
  OGLM_AVAIL_CHECK(__glewGetMultiTexParameterivEXT, glGetMultiTexParameterivEXT)
  OGLM_SIZE_ENUM(GetTextureParameter,pname,1)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  glGetMultiTexParameterivEXT(texunit, target, pname, params);
  OGLM_CHECK_ERR(glGetMultiTexParameterivEXT, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 27923 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetMultisamplefv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMultisamplefv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "pname, index, val");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLfloat*	val = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 13671 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMultisamplefv, )
  OGLM_AVAIL_CHECK(__glewGetMultisamplefv, glGetMultisamplefv)
  glGetMultisamplefv(pname, index, val);
  OGLM_CHECK_ERR(glGetMultisamplefv, )
#line 27950 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetMultisamplefv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetMultisamplefv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "pname, index");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 13684 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetMultisamplefv, )
  OGLM_AVAIL_CHECK(__glewGetMultisamplefv, glGetMultisamplefv)
  OGLM_SIZE_ENUM(GetMultisamplePNameNV,pname,1)
  GLfloat* val = OGLM_ALLOC(pname_count,GLfloat,val);
  glGetMultisamplefv(pname, index, val);
  OGLM_CHECK_ERR(glGetMultisamplefv, free(val);)
  OGLM_OUT_FINISH(val,pname_count,newSVnv)
  free(val);
#line 27980 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetNamedBufferParameteri64v_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetNamedBufferParameteri64v_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "buffer, pname, params");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint64*	params = INT2PTR(GLint64 *,SvIV(ST(2)))
;
#line 13700 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetNamedBufferParameteri64v, )
  OGLM_AVAIL_CHECK(__glewGetNamedBufferParameteri64v, glGetNamedBufferParameteri64v)
  glGetNamedBufferParameteri64v(buffer, pname, params);
  OGLM_CHECK_ERR(glGetNamedBufferParameteri64v, )
#line 28006 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetNamedBufferParameteriv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetNamedBufferParameteriv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "buffer, pname, params");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 13712 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetNamedBufferParameteriv, )
  OGLM_AVAIL_CHECK(__glewGetNamedBufferParameteriv, glGetNamedBufferParameteriv)
  glGetNamedBufferParameteriv(buffer, pname, params);
  OGLM_CHECK_ERR(glGetNamedBufferParameteriv, )
#line 28031 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetNamedBufferParameterivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetNamedBufferParameterivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "buffer, pname, params");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 13724 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetNamedBufferParameterivEXT, )
  OGLM_AVAIL_CHECK(__glewGetNamedBufferParameterivEXT, glGetNamedBufferParameterivEXT)
  glGetNamedBufferParameterivEXT(buffer, pname, params);
  OGLM_CHECK_ERR(glGetNamedBufferParameterivEXT, )
#line 28056 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetNamedBufferParameterivEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetNamedBufferParameterivEXT_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "buffer, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 13735 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetNamedBufferParameterivEXT, )
  OGLM_AVAIL_CHECK(__glewGetNamedBufferParameterivEXT, glGetNamedBufferParameterivEXT)
  OGLM_SIZE_ENUM(BufferPNameARB,pname,1)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  glGetNamedBufferParameterivEXT(buffer, pname, params);
  OGLM_CHECK_ERR(glGetNamedBufferParameterivEXT, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 28085 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetNamedBufferParameterui64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetNamedBufferParameterui64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "buffer, pname, params");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLuint64EXT*	params = INT2PTR(GLuint64EXT *,SvIV(ST(2)))
;
#line 13751 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetNamedBufferParameterui64vNV, )
  OGLM_AVAIL_CHECK(__glewGetNamedBufferParameterui64vNV, glGetNamedBufferParameterui64vNV)
  glGetNamedBufferParameterui64vNV(buffer, pname, params);
  OGLM_CHECK_ERR(glGetNamedBufferParameterui64vNV, )
#line 28111 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetNamedBufferParameterui64vNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetNamedBufferParameterui64vNV_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "buffer, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 13762 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetNamedBufferParameterui64vNV, )
  OGLM_AVAIL_CHECK(__glewGetNamedBufferParameterui64vNV, glGetNamedBufferParameterui64vNV)
  OGLM_SIZE_ENUM(BufferPNameARB,pname,1)
  GLuint64EXT* params = OGLM_ALLOC(pname_count,GLuint64EXT,params);
  glGetNamedBufferParameterui64vNV(buffer, pname, params);
  OGLM_CHECK_ERR(glGetNamedBufferParameterui64vNV, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSVuv)
  free(params);
#line 28140 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetNamedBufferPointerv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetNamedBufferPointerv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "buffer, pname, params");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	void**	params = INT2PTR(void **,SvIV(ST(2)))
;
#line 13778 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetNamedBufferPointerv, )
  OGLM_AVAIL_CHECK(__glewGetNamedBufferPointerv, glGetNamedBufferPointerv)
  glGetNamedBufferPointerv(buffer, pname, params);
  OGLM_CHECK_ERR(glGetNamedBufferPointerv, )
#line 28166 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetNamedBufferPointervEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetNamedBufferPointervEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "buffer, pname, params");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	void**	params = INT2PTR(void **,SvIV(ST(2)))
;
#line 13790 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetNamedBufferPointervEXT, )
  OGLM_AVAIL_CHECK(__glewGetNamedBufferPointervEXT, glGetNamedBufferPointervEXT)
  glGetNamedBufferPointervEXT(buffer, pname, params);
  OGLM_CHECK_ERR(glGetNamedBufferPointervEXT, )
#line 28191 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetNamedBufferSubData_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetNamedBufferSubData_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "buffer, offset, size, data");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLintptr	offset = (unsigned int)SvUV(ST(1))
;
	GLsizeiptr	size = (unsigned int)SvUV(ST(2))
;
	void *	data = INT2PTR(void *,SvIV(ST(3)))
;
#line 13803 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetNamedBufferSubData, )
  OGLM_AVAIL_CHECK(__glewGetNamedBufferSubData, glGetNamedBufferSubData)
  glGetNamedBufferSubData(buffer, offset, size, data);
  OGLM_CHECK_ERR(glGetNamedBufferSubData, )
#line 28218 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetNamedBufferSubDataEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetNamedBufferSubDataEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "buffer, offset, size, data");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLintptr	offset = (unsigned int)SvUV(ST(1))
;
	GLsizeiptr	size = (unsigned int)SvUV(ST(2))
;
	void *	data = INT2PTR(void *,SvIV(ST(3)))
;
#line 13816 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetNamedBufferSubDataEXT, )
  OGLM_AVAIL_CHECK(__glewGetNamedBufferSubDataEXT, glGetNamedBufferSubDataEXT)
  glGetNamedBufferSubDataEXT(buffer, offset, size, data);
  OGLM_CHECK_ERR(glGetNamedBufferSubDataEXT, )
#line 28245 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetNamedFramebufferAttachmentParameteriv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetNamedFramebufferAttachmentParameteriv_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "framebuffer, attachment, pname, params");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	attachment = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(3)))
;
#line 13829 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetNamedFramebufferAttachmentParameteriv, )
  OGLM_AVAIL_CHECK(__glewGetNamedFramebufferAttachmentParameteriv, glGetNamedFramebufferAttachmentParameteriv)
  glGetNamedFramebufferAttachmentParameteriv(framebuffer, attachment, pname, params);
  OGLM_CHECK_ERR(glGetNamedFramebufferAttachmentParameteriv, )
#line 28272 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetNamedFramebufferAttachmentParameterivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetNamedFramebufferAttachmentParameterivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "framebuffer, attachment, pname, params");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	attachment = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(3)))
;
#line 13842 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetNamedFramebufferAttachmentParameterivEXT, )
  OGLM_AVAIL_CHECK(__glewGetNamedFramebufferAttachmentParameterivEXT, glGetNamedFramebufferAttachmentParameterivEXT)
  glGetNamedFramebufferAttachmentParameterivEXT(framebuffer, attachment, pname, params);
  OGLM_CHECK_ERR(glGetNamedFramebufferAttachmentParameterivEXT, )
#line 28299 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetNamedFramebufferAttachmentParameterivEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetNamedFramebufferAttachmentParameterivEXT_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "framebuffer, attachment, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	attachment = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
#line 13854 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetNamedFramebufferAttachmentParameterivEXT, )
  OGLM_AVAIL_CHECK(__glewGetNamedFramebufferAttachmentParameterivEXT, glGetNamedFramebufferAttachmentParameterivEXT)
  OGLM_SIZE_ENUM(FramebufferAttachmentParameterName,pname,1)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  glGetNamedFramebufferAttachmentParameterivEXT(framebuffer, attachment, pname, params);
  OGLM_CHECK_ERR(glGetNamedFramebufferAttachmentParameterivEXT, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 28330 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetNamedFramebufferParameterfvAMD_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetNamedFramebufferParameterfvAMD_c)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "framebuffer, pname, numsamples, pixelindex, size, values");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLuint	numsamples = (unsigned int)SvUV(ST(2))
;
	GLuint	pixelindex = (unsigned int)SvUV(ST(3))
;
	GLsizei	size = (int)SvIV(ST(4))
;
	GLfloat*	values = INT2PTR(GLfloat *,SvIV(ST(5)))
;
#line 13873 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetNamedFramebufferParameterfvAMD, )
  OGLM_AVAIL_CHECK(__glewGetNamedFramebufferParameterfvAMD, glGetNamedFramebufferParameterfvAMD)
  glGetNamedFramebufferParameterfvAMD(framebuffer, pname, numsamples, pixelindex, size, values);
  OGLM_CHECK_ERR(glGetNamedFramebufferParameterfvAMD, )
#line 28362 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetNamedFramebufferParameteriv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetNamedFramebufferParameteriv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "framebuffer, pname, param");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	param = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 13885 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetNamedFramebufferParameteriv, )
  OGLM_AVAIL_CHECK(__glewGetNamedFramebufferParameteriv, glGetNamedFramebufferParameteriv)
  glGetNamedFramebufferParameteriv(framebuffer, pname, param);
  OGLM_CHECK_ERR(glGetNamedFramebufferParameteriv, )
#line 28387 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetNamedFramebufferParameterivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetNamedFramebufferParameterivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "framebuffer, pname, params");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 13897 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetNamedFramebufferParameterivEXT, )
  OGLM_AVAIL_CHECK(__glewGetNamedFramebufferParameterivEXT, glGetNamedFramebufferParameterivEXT)
  glGetNamedFramebufferParameterivEXT(framebuffer, pname, params);
  OGLM_CHECK_ERR(glGetNamedFramebufferParameterivEXT, )
#line 28412 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetNamedFramebufferParameterivEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetNamedFramebufferParameterivEXT_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "framebuffer, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 13908 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetNamedFramebufferParameterivEXT, )
  OGLM_AVAIL_CHECK(__glewGetNamedFramebufferParameterivEXT, glGetNamedFramebufferParameterivEXT)
  OGLM_SIZE_ENUM(GetFramebufferParameter,pname,1)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  glGetNamedFramebufferParameterivEXT(framebuffer, pname, params);
  OGLM_CHECK_ERR(glGetNamedFramebufferParameterivEXT, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 28441 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetNamedProgramLocalParameterIivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetNamedProgramLocalParameterIivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, target, index, params");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(3)))
;
#line 13925 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetNamedProgramLocalParameterIivEXT, )
  OGLM_AVAIL_CHECK(__glewGetNamedProgramLocalParameterIivEXT, glGetNamedProgramLocalParameterIivEXT)
  glGetNamedProgramLocalParameterIivEXT(program, target, index, params);
  OGLM_CHECK_ERR(glGetNamedProgramLocalParameterIivEXT, )
#line 28469 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetNamedProgramLocalParameterIivEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetNamedProgramLocalParameterIivEXT_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, target, index");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
#line 13937 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetNamedProgramLocalParameterIivEXT, )
  OGLM_AVAIL_CHECK(__glewGetNamedProgramLocalParameterIivEXT, glGetNamedProgramLocalParameterIivEXT)
  GLint* params = OGLM_ALLOC(4,GLint,params);
  glGetNamedProgramLocalParameterIivEXT(program, target, index, params);
  OGLM_CHECK_ERR(glGetNamedProgramLocalParameterIivEXT, free(params);)
  OGLM_OUT_FINISH(params,4,newSViv)
  free(params);
#line 28499 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetNamedProgramLocalParameterIuivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetNamedProgramLocalParameterIuivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, target, index, params");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
	GLuint*	params = INT2PTR(GLuint *,SvIV(ST(3)))
;
#line 13953 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetNamedProgramLocalParameterIuivEXT, )
  OGLM_AVAIL_CHECK(__glewGetNamedProgramLocalParameterIuivEXT, glGetNamedProgramLocalParameterIuivEXT)
  glGetNamedProgramLocalParameterIuivEXT(program, target, index, params);
  OGLM_CHECK_ERR(glGetNamedProgramLocalParameterIuivEXT, )
#line 28527 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetNamedProgramLocalParameterIuivEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetNamedProgramLocalParameterIuivEXT_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, target, index");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
#line 13965 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetNamedProgramLocalParameterIuivEXT, )
  OGLM_AVAIL_CHECK(__glewGetNamedProgramLocalParameterIuivEXT, glGetNamedProgramLocalParameterIuivEXT)
  GLuint* params = OGLM_ALLOC(4,GLuint,params);
  glGetNamedProgramLocalParameterIuivEXT(program, target, index, params);
  OGLM_CHECK_ERR(glGetNamedProgramLocalParameterIuivEXT, free(params);)
  OGLM_OUT_FINISH(params,4,newSVuv)
  free(params);
#line 28557 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetNamedProgramLocalParameterdvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetNamedProgramLocalParameterdvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, target, index, params");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
	GLdouble*	params = INT2PTR(GLdouble *,SvIV(ST(3)))
;
#line 13981 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetNamedProgramLocalParameterdvEXT, )
  OGLM_AVAIL_CHECK(__glewGetNamedProgramLocalParameterdvEXT, glGetNamedProgramLocalParameterdvEXT)
  glGetNamedProgramLocalParameterdvEXT(program, target, index, params);
  OGLM_CHECK_ERR(glGetNamedProgramLocalParameterdvEXT, )
#line 28585 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetNamedProgramLocalParameterdvEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetNamedProgramLocalParameterdvEXT_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, target, index");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
#line 13993 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetNamedProgramLocalParameterdvEXT, )
  OGLM_AVAIL_CHECK(__glewGetNamedProgramLocalParameterdvEXT, glGetNamedProgramLocalParameterdvEXT)
  GLdouble* params = OGLM_ALLOC(4,GLdouble,params);
  glGetNamedProgramLocalParameterdvEXT(program, target, index, params);
  OGLM_CHECK_ERR(glGetNamedProgramLocalParameterdvEXT, free(params);)
  OGLM_OUT_FINISH(params,4,newSVnv)
  free(params);
#line 28615 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetNamedProgramLocalParameterfvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetNamedProgramLocalParameterfvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, target, index, params");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(3)))
;
#line 14009 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetNamedProgramLocalParameterfvEXT, )
  OGLM_AVAIL_CHECK(__glewGetNamedProgramLocalParameterfvEXT, glGetNamedProgramLocalParameterfvEXT)
  glGetNamedProgramLocalParameterfvEXT(program, target, index, params);
  OGLM_CHECK_ERR(glGetNamedProgramLocalParameterfvEXT, )
#line 28643 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetNamedProgramLocalParameterfvEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetNamedProgramLocalParameterfvEXT_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, target, index");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
#line 14021 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetNamedProgramLocalParameterfvEXT, )
  OGLM_AVAIL_CHECK(__glewGetNamedProgramLocalParameterfvEXT, glGetNamedProgramLocalParameterfvEXT)
  GLfloat* params = OGLM_ALLOC(4,GLfloat,params);
  glGetNamedProgramLocalParameterfvEXT(program, target, index, params);
  OGLM_CHECK_ERR(glGetNamedProgramLocalParameterfvEXT, free(params);)
  OGLM_OUT_FINISH(params,4,newSVnv)
  free(params);
#line 28673 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetNamedProgramStringEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetNamedProgramStringEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, target, pname, string");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	void *	string = INT2PTR(void *,SvIV(ST(3)))
;
#line 14037 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetNamedProgramStringEXT, )
  OGLM_AVAIL_CHECK(__glewGetNamedProgramStringEXT, glGetNamedProgramStringEXT)
  glGetNamedProgramStringEXT(program, target, pname, string);
  OGLM_CHECK_ERR(glGetNamedProgramStringEXT, )
#line 28701 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetNamedProgramivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetNamedProgramivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, target, pname, params");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(3)))
;
#line 14050 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetNamedProgramivEXT, )
  OGLM_AVAIL_CHECK(__glewGetNamedProgramivEXT, glGetNamedProgramivEXT)
  glGetNamedProgramivEXT(program, target, pname, params);
  OGLM_CHECK_ERR(glGetNamedProgramivEXT, )
#line 28728 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetNamedProgramivEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetNamedProgramivEXT_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, target, pname");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLint	RETVAL;
	dXSTARG;
#line 14062 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetNamedProgramivEXT, )
  OGLM_AVAIL_CHECK(__glewGetNamedProgramivEXT, glGetNamedProgramivEXT)
  GLint params[1];
  glGetNamedProgramivEXT(program, target, pname, params);
  OGLM_CHECK_ERR(glGetNamedProgramivEXT, )
  RETVAL = params[0];
#line 28757 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetNamedRenderbufferParameteriv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetNamedRenderbufferParameteriv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "renderbuffer, pname, params");
    {
	GLuint	renderbuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 14078 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetNamedRenderbufferParameteriv, )
  OGLM_AVAIL_CHECK(__glewGetNamedRenderbufferParameteriv, glGetNamedRenderbufferParameteriv)
  glGetNamedRenderbufferParameteriv(renderbuffer, pname, params);
  OGLM_CHECK_ERR(glGetNamedRenderbufferParameteriv, )
#line 28784 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetNamedRenderbufferParameterivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetNamedRenderbufferParameterivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "renderbuffer, pname, params");
    {
	GLuint	renderbuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 14090 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetNamedRenderbufferParameterivEXT, )
  OGLM_AVAIL_CHECK(__glewGetNamedRenderbufferParameterivEXT, glGetNamedRenderbufferParameterivEXT)
  glGetNamedRenderbufferParameterivEXT(renderbuffer, pname, params);
  OGLM_CHECK_ERR(glGetNamedRenderbufferParameterivEXT, )
#line 28809 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetNamedRenderbufferParameterivEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetNamedRenderbufferParameterivEXT_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "renderbuffer, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	renderbuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 14101 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetNamedRenderbufferParameterivEXT, )
  OGLM_AVAIL_CHECK(__glewGetNamedRenderbufferParameterivEXT, glGetNamedRenderbufferParameterivEXT)
  OGLM_SIZE_ENUM(RenderbufferParameterName,pname,1)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  glGetNamedRenderbufferParameterivEXT(renderbuffer, pname, params);
  OGLM_CHECK_ERR(glGetNamedRenderbufferParameterivEXT, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 28838 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetNamedStringARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetNamedStringARB_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "namelen, name, bufSize, stringlen, string");
    {
	GLint	namelen = (int)SvIV(ST(0))
;
	const GLchar*	name = (const GLchar *)SvPV_nolen(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
	GLint *	stringlen = INT2PTR(GLint *,SvIV(ST(3)))
;
	GLchar *	string = (GLchar *)SvPV_nolen(ST(4))
;
#line 14119 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetNamedStringARB, )
  OGLM_AVAIL_CHECK(__glewGetNamedStringARB, glGetNamedStringARB)
  glGetNamedStringARB(namelen, name, bufSize, stringlen, string);
  OGLM_CHECK_ERR(glGetNamedStringARB, )
#line 28868 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetNamedStringARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetNamedStringARB_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "namelen, name, bufSize");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLint	namelen = (int)SvIV(ST(0))
;
	const GLchar*	name = (const GLchar *)SvPV_nolen(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
#line 14131 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetNamedStringARB, )
  OGLM_AVAIL_CHECK(__glewGetNamedStringARB, glGetNamedStringARB)
  GLchar string[bufSize];
  GLint stringlen[1];
  glGetNamedStringARB(namelen, name, bufSize, stringlen, string);
  OGLM_CHECK_ERR(glGetNamedStringARB, )
  EXTEND(sp, 2);
  mPUSHs(newSViv(stringlen[0]));
  mPUSHs(newSVpv(string,0));
#line 28900 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetNamedStringivARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetNamedStringivARB_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "namelen, name, pname, params");
    {
	GLint	namelen = (int)SvIV(ST(0))
;
	const GLchar*	name = (const GLchar *)SvPV_nolen(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLint *	params = INT2PTR(GLint *,SvIV(ST(3)))
;
#line 14149 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetNamedStringivARB, )
  OGLM_AVAIL_CHECK(__glewGetNamedStringivARB, glGetNamedStringivARB)
  glGetNamedStringivARB(namelen, name, pname, params);
  OGLM_CHECK_ERR(glGetNamedStringivARB, )
#line 28928 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetNextPerfQueryIdINTEL_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetNextPerfQueryIdINTEL_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "queryId, nextQueryId");
    {
	GLuint	queryId = (unsigned int)SvUV(ST(0))
;
	GLuint*	nextQueryId = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 14160 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetNextPerfQueryIdINTEL, )
  OGLM_AVAIL_CHECK(__glewGetNextPerfQueryIdINTEL, glGetNextPerfQueryIdINTEL)
  glGetNextPerfQueryIdINTEL(queryId, nextQueryId);
  OGLM_CHECK_ERR(glGetNextPerfQueryIdINTEL, )
#line 28951 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetNonlinLightfvSGIX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetNonlinLightfvSGIX_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "light, pname, terms, data");
    {
	GLenum	light = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	terms = INT2PTR(GLint *,SvIV(ST(2)))
;
	GLfloat *	data = INT2PTR(GLfloat *,SvIV(ST(3)))
;
#line 14173 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetNonlinLightfvSGIX, )
  OGLM_AVAIL_CHECK(__glewGetNonlinLightfvSGIX, glGetNonlinLightfvSGIX)
  glGetNonlinLightfvSGIX(light, pname, terms, data);
  OGLM_CHECK_ERR(glGetNonlinLightfvSGIX, )
#line 28978 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetNonlinMaterialfvSGIX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetNonlinMaterialfvSGIX_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "face, pname, terms, data");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	terms = INT2PTR(GLint *,SvIV(ST(2)))
;
	const GLfloat *	data = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 14186 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetNonlinMaterialfvSGIX, )
  OGLM_AVAIL_CHECK(__glewGetNonlinMaterialfvSGIX, glGetNonlinMaterialfvSGIX)
  glGetNonlinMaterialfvSGIX(face, pname, terms, data);
  OGLM_CHECK_ERR(glGetNonlinMaterialfvSGIX, )
#line 29005 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetObjectBufferfvATI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetObjectBufferfvATI_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "buffer, pname, params");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 14198 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetObjectBufferfvATI, )
  OGLM_AVAIL_CHECK(__glewGetObjectBufferfvATI, glGetObjectBufferfvATI)
  glGetObjectBufferfvATI(buffer, pname, params);
  OGLM_CHECK_ERR(glGetObjectBufferfvATI, )
#line 29030 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetObjectBufferfvATI_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetObjectBufferfvATI_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "buffer, pname");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat	RETVAL;
	dXSTARG;
#line 14209 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetObjectBufferfvATI, )
  OGLM_AVAIL_CHECK(__glewGetObjectBufferfvATI, glGetObjectBufferfvATI)
  GLfloat params[1];
  glGetObjectBufferfvATI(buffer, pname, params);
  OGLM_CHECK_ERR(glGetObjectBufferfvATI, )
  RETVAL = params[0];
#line 29057 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHn((double)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetObjectBufferivATI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetObjectBufferivATI_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "buffer, pname, params");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 14225 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetObjectBufferivATI, )
  OGLM_AVAIL_CHECK(__glewGetObjectBufferivATI, glGetObjectBufferivATI)
  glGetObjectBufferivATI(buffer, pname, params);
  OGLM_CHECK_ERR(glGetObjectBufferivATI, )
#line 29084 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetObjectBufferivATI_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetObjectBufferivATI_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "buffer, pname");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint	RETVAL;
	dXSTARG;
#line 14236 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetObjectBufferivATI, )
  OGLM_AVAIL_CHECK(__glewGetObjectBufferivATI, glGetObjectBufferivATI)
  GLint params[1];
  glGetObjectBufferivATI(buffer, pname, params);
  OGLM_CHECK_ERR(glGetObjectBufferivATI, )
  RETVAL = params[0];
#line 29111 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetObjectLabel_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetObjectLabel_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "identifier, name, bufSize, length, label");
    {
	GLenum	identifier = (int)SvIV(ST(0))
;
	GLuint	name = (unsigned int)SvUV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
	GLsizei*	length = INT2PTR(GLsizei *,SvIV(ST(3)))
;
	GLchar *	label = (GLchar *)SvPV_nolen(ST(4))
;
#line 14256 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetObjectLabel, )
  OGLM_AVAIL_CHECK(__glewGetObjectLabel, glGetObjectLabel)
  glGetObjectLabel(identifier, name, bufSize, length, label);
  OGLM_CHECK_ERR(glGetObjectLabel, )
#line 29143 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetObjectLabel_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetObjectLabel_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "identifier, name");
    {
	GLenum	identifier = (int)SvIV(ST(0))
;
	GLuint	name = (unsigned int)SvUV(ST(1))
;
	GLchar *	RETVAL;
	dXSTARG;
#line 14269 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetObjectLabel, )
  OGLM_AVAIL_CHECK(__glewGetObjectLabel, glGetObjectLabel)
  GLsizei bufSize;
  glGetIntegerv(GL_MAX_LABEL_LENGTH,&bufSize);
  GLsizei* length = NULL;
  GLchar label[bufSize];
  glGetObjectLabel(identifier, name, bufSize, length, label);
  OGLM_CHECK_ERR(glGetObjectLabel, )
  RETVAL = label;
#line 29174 "lib/OpenGL/Modern.c"
	sv_setpv(TARG, RETVAL);
	XSprePUSH;
	PUSHTARG;
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetObjectLabelEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetObjectLabelEXT_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "type, object, bufSize, length, label");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	GLuint	object = (unsigned int)SvUV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
	GLsizei*	length = INT2PTR(GLsizei *,SvIV(ST(3)))
;
	GLchar *	label = (GLchar *)SvPV_nolen(ST(4))
;
#line 14290 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetObjectLabelEXT, )
  OGLM_AVAIL_CHECK(__glewGetObjectLabelEXT, glGetObjectLabelEXT)
  glGetObjectLabelEXT(type, object, bufSize, length, label);
  OGLM_CHECK_ERR(glGetObjectLabelEXT, )
#line 29206 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetObjectLabelEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetObjectLabelEXT_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "type, object, bufSize");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	type = (int)SvIV(ST(0))
;
	GLuint	object = (unsigned int)SvUV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
#line 14302 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetObjectLabelEXT, )
  OGLM_AVAIL_CHECK(__glewGetObjectLabelEXT, glGetObjectLabelEXT)
  GLchar label[bufSize];
  GLsizei length[1];
  glGetObjectLabelEXT(type, object, bufSize, length, label);
  OGLM_CHECK_ERR(glGetObjectLabelEXT, )
  EXTEND(sp, 2);
  mPUSHs(newSViv(length[0]));
  mPUSHs(newSVpv(label,0));
#line 29238 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetObjectParameterfvARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetObjectParameterfvARB_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "obj, pname, params");
    {
	GLhandleARB	obj = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 14319 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetObjectParameterfvARB, )
  OGLM_AVAIL_CHECK(__glewGetObjectParameterfvARB, glGetObjectParameterfvARB)
  glGetObjectParameterfvARB(obj, pname, params);
  OGLM_CHECK_ERR(glGetObjectParameterfvARB, )
#line 29264 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetObjectParameterivAPPLE_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetObjectParameterivAPPLE_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "objectType, name, pname, params");
    {
	GLenum	objectType = (int)SvIV(ST(0))
;
	GLuint	name = (unsigned int)SvUV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(3)))
;
#line 14332 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetObjectParameterivAPPLE, )
  OGLM_AVAIL_CHECK(__glewGetObjectParameterivAPPLE, glGetObjectParameterivAPPLE)
  glGetObjectParameterivAPPLE(objectType, name, pname, params);
  OGLM_CHECK_ERR(glGetObjectParameterivAPPLE, )
#line 29291 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetObjectParameterivARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetObjectParameterivARB_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "obj, pname, params");
    {
	GLhandleARB	obj = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 14344 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetObjectParameterivARB, )
  OGLM_AVAIL_CHECK(__glewGetObjectParameterivARB, glGetObjectParameterivARB)
  glGetObjectParameterivARB(obj, pname, params);
  OGLM_CHECK_ERR(glGetObjectParameterivARB, )
#line 29316 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetObjectPtrLabel_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetObjectPtrLabel_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "ptr, bufSize, length, label");
    {
	void*	ptr = INT2PTR(void *,SvIV(ST(0)))
;
	GLsizei	bufSize = (int)SvIV(ST(1))
;
	GLsizei*	length = INT2PTR(GLsizei *,SvIV(ST(2)))
;
	GLchar *	label = (GLchar *)SvPV_nolen(ST(3))
;
#line 14359 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetObjectPtrLabel, )
  OGLM_AVAIL_CHECK(__glewGetObjectPtrLabel, glGetObjectPtrLabel)
  glGetObjectPtrLabel(ptr, bufSize, length, label);
  OGLM_CHECK_ERR(glGetObjectPtrLabel, )
#line 29344 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetOcclusionQueryivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetOcclusionQueryivNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "id, pname, params");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 14371 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetOcclusionQueryivNV, )
  OGLM_AVAIL_CHECK(__glewGetOcclusionQueryivNV, glGetOcclusionQueryivNV)
  glGetOcclusionQueryivNV(id, pname, params);
  OGLM_CHECK_ERR(glGetOcclusionQueryivNV, )
#line 29369 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetOcclusionQueryuivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetOcclusionQueryuivNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "id, pname, params");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLuint*	params = INT2PTR(GLuint *,SvIV(ST(2)))
;
#line 14383 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetOcclusionQueryuivNV, )
  OGLM_AVAIL_CHECK(__glewGetOcclusionQueryuivNV, glGetOcclusionQueryuivNV)
  glGetOcclusionQueryuivNV(id, pname, params);
  OGLM_CHECK_ERR(glGetOcclusionQueryuivNV, )
#line 29394 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetPathColorGenfvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPathColorGenfvNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "color, pname, value");
    {
	GLenum	color = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat*	value = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 14395 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPathColorGenfvNV, )
  OGLM_AVAIL_CHECK(__glewGetPathColorGenfvNV, glGetPathColorGenfvNV)
  glGetPathColorGenfvNV(color, pname, value);
  OGLM_CHECK_ERR(glGetPathColorGenfvNV, )
#line 29419 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetPathColorGenivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPathColorGenivNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "color, pname, value");
    {
	GLenum	color = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	value = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 14407 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPathColorGenivNV, )
  OGLM_AVAIL_CHECK(__glewGetPathColorGenivNV, glGetPathColorGenivNV)
  glGetPathColorGenivNV(color, pname, value);
  OGLM_CHECK_ERR(glGetPathColorGenivNV, )
#line 29444 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetPathCommandsNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPathCommandsNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "path, commands");
    {
	GLuint	path = (unsigned int)SvUV(ST(0))
;
	GLubyte*	commands = INT2PTR(GLubyte *,SvIV(ST(1)))
;
#line 14418 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPathCommandsNV, )
  OGLM_AVAIL_CHECK(__glewGetPathCommandsNV, glGetPathCommandsNV)
  glGetPathCommandsNV(path, commands);
  OGLM_CHECK_ERR(glGetPathCommandsNV, )
#line 29467 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetPathCoordsNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPathCoordsNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "path, coords");
    {
	GLuint	path = (unsigned int)SvUV(ST(0))
;
	GLfloat*	coords = INT2PTR(GLfloat *,SvIV(ST(1)))
;
#line 14429 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPathCoordsNV, )
  OGLM_AVAIL_CHECK(__glewGetPathCoordsNV, glGetPathCoordsNV)
  glGetPathCoordsNV(path, coords);
  OGLM_CHECK_ERR(glGetPathCoordsNV, )
#line 29490 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetPathDashArrayNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPathDashArrayNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "path, dashArray");
    {
	GLuint	path = (unsigned int)SvUV(ST(0))
;
	GLfloat*	dashArray = INT2PTR(GLfloat *,SvIV(ST(1)))
;
#line 14440 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPathDashArrayNV, )
  OGLM_AVAIL_CHECK(__glewGetPathDashArrayNV, glGetPathDashArrayNV)
  glGetPathDashArrayNV(path, dashArray);
  OGLM_CHECK_ERR(glGetPathDashArrayNV, )
#line 29513 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetPathLengthNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPathLengthNV)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "path, startSegment, numSegments");
    {
	GLuint	path = (unsigned int)SvUV(ST(0))
;
	GLsizei	startSegment = (int)SvIV(ST(1))
;
	GLsizei	numSegments = (int)SvIV(ST(2))
;
	GLfloat	RETVAL;
	dXSTARG;
#line 14452 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPathLengthNV, )
  OGLM_AVAIL_CHECK(__glewGetPathLengthNV, glGetPathLengthNV)
  RETVAL = glGetPathLengthNV(path, startSegment, numSegments);
  OGLM_CHECK_ERR(glGetPathLengthNV, )
#line 29540 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHn((double)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetPathMetricRangeNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPathMetricRangeNV_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "metricQueryMask, firstPathName, numPaths, stride, metrics");
    {
	GLbitfield	metricQueryMask = (int)SvIV(ST(0))
;
	GLuint	firstPathName = (unsigned int)SvUV(ST(1))
;
	GLsizei	numPaths = (int)SvIV(ST(2))
;
	GLsizei	stride = (int)SvIV(ST(3))
;
	GLfloat*	metrics = INT2PTR(GLfloat *,SvIV(ST(4)))
;
#line 14468 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPathMetricRangeNV, )
  OGLM_AVAIL_CHECK(__glewGetPathMetricRangeNV, glGetPathMetricRangeNV)
  glGetPathMetricRangeNV(metricQueryMask, firstPathName, numPaths, stride, metrics);
  OGLM_CHECK_ERR(glGetPathMetricRangeNV, )
#line 29571 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetPathMetricsNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPathMetricsNV_c)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "metricQueryMask, numPaths, pathNameType, paths, pathBase, stride, metrics");
    {
	GLbitfield	metricQueryMask = (int)SvIV(ST(0))
;
	GLsizei	numPaths = (int)SvIV(ST(1))
;
	GLenum	pathNameType = (int)SvIV(ST(2))
;
	const void *	paths = INT2PTR(const void *,SvIV(ST(3)))
;
	GLuint	pathBase = (unsigned int)SvUV(ST(4))
;
	GLsizei	stride = (int)SvIV(ST(5))
;
	GLfloat *	metrics = INT2PTR(GLfloat *,SvIV(ST(6)))
;
#line 14484 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPathMetricsNV, )
  OGLM_AVAIL_CHECK(__glewGetPathMetricsNV, glGetPathMetricsNV)
  glGetPathMetricsNV(metricQueryMask, numPaths, pathNameType, paths, pathBase, stride, metrics);
  OGLM_CHECK_ERR(glGetPathMetricsNV, )
#line 29604 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetPathParameterfvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPathParameterfvNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "path, pname, value");
    {
	GLuint	path = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat*	value = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 14496 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPathParameterfvNV, )
  OGLM_AVAIL_CHECK(__glewGetPathParameterfvNV, glGetPathParameterfvNV)
  glGetPathParameterfvNV(path, pname, value);
  OGLM_CHECK_ERR(glGetPathParameterfvNV, )
#line 29629 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetPathParameterfvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPathParameterfvNV_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "path, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	path = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 14507 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPathParameterfvNV, )
  OGLM_AVAIL_CHECK(__glewGetPathParameterfvNV, glGetPathParameterfvNV)
  GLfloat* value = OGLM_ALLOC(4,GLfloat,value);
  glGetPathParameterfvNV(path, pname, value);
  OGLM_CHECK_ERR(glGetPathParameterfvNV, free(value);)
  OGLM_OUT_FINISH(value,4,newSVnv)
  free(value);
#line 29657 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetPathParameterivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPathParameterivNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "path, pname, value");
    {
	GLuint	path = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	value = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 14522 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPathParameterivNV, )
  OGLM_AVAIL_CHECK(__glewGetPathParameterivNV, glGetPathParameterivNV)
  glGetPathParameterivNV(path, pname, value);
  OGLM_CHECK_ERR(glGetPathParameterivNV, )
#line 29683 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetPathParameterivNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPathParameterivNV_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "path, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	path = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 14533 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPathParameterivNV, )
  OGLM_AVAIL_CHECK(__glewGetPathParameterivNV, glGetPathParameterivNV)
  GLint* value = OGLM_ALLOC(4,GLint,value);
  glGetPathParameterivNV(path, pname, value);
  OGLM_CHECK_ERR(glGetPathParameterivNV, free(value);)
  OGLM_OUT_FINISH(value,4,newSViv)
  free(value);
#line 29711 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetPathSpacingNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPathSpacingNV_c)
{
    dVAR; dXSARGS;
    if (items != 9)
       croak_xs_usage(cv,  "pathListMode, numPaths, pathNameType, paths, pathBase, advanceScale, kerningScale, transformType, returnedSpacing");
    {
	GLenum	pathListMode = (int)SvIV(ST(0))
;
	GLsizei	numPaths = (int)SvIV(ST(1))
;
	GLenum	pathNameType = (int)SvIV(ST(2))
;
	const void *	paths = INT2PTR(const void *,SvIV(ST(3)))
;
	GLuint	pathBase = (unsigned int)SvUV(ST(4))
;
	GLfloat	advanceScale = (float)SvNV(ST(5))
;
	GLfloat	kerningScale = (float)SvNV(ST(6))
;
	GLenum	transformType = (int)SvIV(ST(7))
;
	GLfloat *	returnedSpacing = INT2PTR(GLfloat *,SvIV(ST(8)))
;
#line 14554 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPathSpacingNV, )
  OGLM_AVAIL_CHECK(__glewGetPathSpacingNV, glGetPathSpacingNV)
  glGetPathSpacingNV(pathListMode, numPaths, pathNameType, paths, pathBase, advanceScale, kerningScale, transformType, returnedSpacing);
  OGLM_CHECK_ERR(glGetPathSpacingNV, )
#line 29749 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetPathTexGenfvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPathTexGenfvNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texCoordSet, pname, value");
    {
	GLenum	texCoordSet = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat*	value = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 14566 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPathTexGenfvNV, )
  OGLM_AVAIL_CHECK(__glewGetPathTexGenfvNV, glGetPathTexGenfvNV)
  glGetPathTexGenfvNV(texCoordSet, pname, value);
  OGLM_CHECK_ERR(glGetPathTexGenfvNV, )
#line 29774 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetPathTexGenivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPathTexGenivNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texCoordSet, pname, value");
    {
	GLenum	texCoordSet = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	value = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 14578 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPathTexGenivNV, )
  OGLM_AVAIL_CHECK(__glewGetPathTexGenivNV, glGetPathTexGenivNV)
  glGetPathTexGenivNV(texCoordSet, pname, value);
  OGLM_CHECK_ERR(glGetPathTexGenivNV, )
#line 29799 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetPerfCounterInfoINTEL_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPerfCounterInfoINTEL_c)
{
    dVAR; dXSARGS;
    if (items != 11)
       croak_xs_usage(cv,  "queryId, counterId, counterNameLength, counterName, counterDescLength, counterDesc, counterOffset, counterDataSize, counterTypeEnum, counterDataTypeEnum, rawCounterMaxValue");
    {
	GLuint	queryId = (unsigned int)SvUV(ST(0))
;
	GLuint	counterId = (unsigned int)SvUV(ST(1))
;
	GLuint	counterNameLength = (unsigned int)SvUV(ST(2))
;
	GLchar*	counterName = (GLchar *)SvPV_nolen(ST(3))
;
	GLuint	counterDescLength = (unsigned int)SvUV(ST(4))
;
	GLchar *	counterDesc = (GLchar *)SvPV_nolen(ST(5))
;
	GLuint *	counterOffset = INT2PTR(GLuint *,SvIV(ST(6)))
;
	GLuint *	counterDataSize = INT2PTR(GLuint *,SvIV(ST(7)))
;
	GLuint *	counterTypeEnum = INT2PTR(GLuint *,SvIV(ST(8)))
;
	GLuint *	counterDataTypeEnum = INT2PTR(GLuint *,SvIV(ST(9)))
;
	GLuint64 *	rawCounterMaxValue = INT2PTR(GLuint64 *,SvIV(ST(10)))
;
#line 14598 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPerfCounterInfoINTEL, )
  OGLM_AVAIL_CHECK(__glewGetPerfCounterInfoINTEL, glGetPerfCounterInfoINTEL)
  glGetPerfCounterInfoINTEL(queryId, counterId, counterNameLength, counterName, counterDescLength, counterDesc, counterOffset, counterDataSize, counterTypeEnum, counterDataTypeEnum, rawCounterMaxValue);
  OGLM_CHECK_ERR(glGetPerfCounterInfoINTEL, )
#line 29840 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetPerfMonitorCounterDataAMD_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPerfMonitorCounterDataAMD_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "monitor, pname, dataSize, data, bytesWritten");
    {
	GLuint	monitor = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLsizei	dataSize = (int)SvIV(ST(2))
;
	GLuint*	data = INT2PTR(GLuint *,SvIV(ST(3)))
;
	GLint *	bytesWritten = INT2PTR(GLint *,SvIV(ST(4)))
;
#line 14612 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPerfMonitorCounterDataAMD, )
  OGLM_AVAIL_CHECK(__glewGetPerfMonitorCounterDataAMD, glGetPerfMonitorCounterDataAMD)
  glGetPerfMonitorCounterDataAMD(monitor, pname, dataSize, data, bytesWritten);
  OGLM_CHECK_ERR(glGetPerfMonitorCounterDataAMD, )
#line 29869 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetPerfMonitorCounterDataAMD_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPerfMonitorCounterDataAMD_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "monitor, pname, dataSize");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	monitor = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLsizei	dataSize = (int)SvIV(ST(2))
;
#line 14624 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPerfMonitorCounterDataAMD, )
  OGLM_AVAIL_CHECK(__glewGetPerfMonitorCounterDataAMD, glGetPerfMonitorCounterDataAMD)
  GLuint* data = OGLM_ALLOC(dataSize/4,GLuint,data);
  GLint bytesWritten[1];
  glGetPerfMonitorCounterDataAMD(monitor, pname, dataSize, data, bytesWritten);
  OGLM_CHECK_ERR(glGetPerfMonitorCounterDataAMD, free(data);)
  EXTEND(sp, 2);
  OGLM_PUSH_ARRAY(glGetPerfMonitorCounterDataAMD, newSVuv, data, dataSize/4)
  mPUSHs(newSViv(bytesWritten[0]));
  free(data);
#line 29902 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetPerfMonitorCounterInfoAMD_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPerfMonitorCounterInfoAMD_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "group, counter, pname, data");
    {
	GLuint	group = (unsigned int)SvUV(ST(0))
;
	GLuint	counter = (unsigned int)SvUV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	void *	data = INT2PTR(void *,SvIV(ST(3)))
;
#line 14643 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPerfMonitorCounterInfoAMD, )
  OGLM_AVAIL_CHECK(__glewGetPerfMonitorCounterInfoAMD, glGetPerfMonitorCounterInfoAMD)
  glGetPerfMonitorCounterInfoAMD(group, counter, pname, data);
  OGLM_CHECK_ERR(glGetPerfMonitorCounterInfoAMD, )
#line 29930 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetPerfMonitorCounterStringAMD_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPerfMonitorCounterStringAMD_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "group, counter, bufSize, length, counterString");
    {
	GLuint	group = (unsigned int)SvUV(ST(0))
;
	GLuint	counter = (unsigned int)SvUV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
	GLsizei*	length = INT2PTR(GLsizei *,SvIV(ST(3)))
;
	GLchar *	counterString = (GLchar *)SvPV_nolen(ST(4))
;
#line 14657 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPerfMonitorCounterStringAMD, )
  OGLM_AVAIL_CHECK(__glewGetPerfMonitorCounterStringAMD, glGetPerfMonitorCounterStringAMD)
  glGetPerfMonitorCounterStringAMD(group, counter, bufSize, length, counterString);
  OGLM_CHECK_ERR(glGetPerfMonitorCounterStringAMD, )
#line 29959 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetPerfMonitorCounterStringAMD_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPerfMonitorCounterStringAMD_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "group, counter, bufSize");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	group = (unsigned int)SvUV(ST(0))
;
	GLuint	counter = (unsigned int)SvUV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
#line 14669 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPerfMonitorCounterStringAMD, )
  OGLM_AVAIL_CHECK(__glewGetPerfMonitorCounterStringAMD, glGetPerfMonitorCounterStringAMD)
  GLchar counterString[bufSize];
  GLsizei length[1];
  glGetPerfMonitorCounterStringAMD(group, counter, bufSize, length, counterString);
  OGLM_CHECK_ERR(glGetPerfMonitorCounterStringAMD, )
  EXTEND(sp, 2);
  mPUSHs(newSViv(length[0]));
  mPUSHs(newSVpv(counterString,0));
#line 29991 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetPerfMonitorCountersAMD_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPerfMonitorCountersAMD_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "group, numCounters, maxActiveCounters, counterSize, counters");
    {
	GLuint	group = (unsigned int)SvUV(ST(0))
;
	GLint*	numCounters = INT2PTR(GLint *,SvIV(ST(1)))
;
	GLint *	maxActiveCounters = INT2PTR(GLint *,SvIV(ST(2)))
;
	GLsizei	counterSize = (int)SvIV(ST(3))
;
	GLuint *	counters = INT2PTR(GLuint *,SvIV(ST(4)))
;
#line 14688 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPerfMonitorCountersAMD, )
  OGLM_AVAIL_CHECK(__glewGetPerfMonitorCountersAMD, glGetPerfMonitorCountersAMD)
  glGetPerfMonitorCountersAMD(group, numCounters, maxActiveCounters, counterSize, counters);
  OGLM_CHECK_ERR(glGetPerfMonitorCountersAMD, )
#line 30021 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetPerfMonitorCountersAMD_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPerfMonitorCountersAMD_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "group, counterSize");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	group = (unsigned int)SvUV(ST(0))
;
	GLsizei	counterSize = (int)SvIV(ST(1))
;
#line 14699 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPerfMonitorCountersAMD, )
  OGLM_AVAIL_CHECK(__glewGetPerfMonitorCountersAMD, glGetPerfMonitorCountersAMD)
  GLuint *counters = OGLM_ALLOC(counterSize,GLuint,counters);
  GLint maxActiveCounters[1];
  GLint numCounters[1];
  glGetPerfMonitorCountersAMD(group, numCounters, maxActiveCounters, counterSize, counters);
  OGLM_CHECK_ERR(glGetPerfMonitorCountersAMD, free(counters);)
  EXTEND(sp, 3);
  mPUSHs(newSViv(numCounters[0]));
  mPUSHs(newSViv(maxActiveCounters[0]));
  OGLM_PUSH_ARRAY(glGetPerfMonitorCountersAMD, newSVuv, counters, counterSize)
  free(counters);
#line 30054 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetPerfMonitorGroupStringAMD_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPerfMonitorGroupStringAMD_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "group, bufSize, length, groupString");
    {
	GLuint	group = (unsigned int)SvUV(ST(0))
;
	GLsizei	bufSize = (int)SvIV(ST(1))
;
	GLsizei*	length = INT2PTR(GLsizei *,SvIV(ST(2)))
;
	GLchar *	groupString = (GLchar *)SvPV_nolen(ST(3))
;
#line 14720 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPerfMonitorGroupStringAMD, )
  OGLM_AVAIL_CHECK(__glewGetPerfMonitorGroupStringAMD, glGetPerfMonitorGroupStringAMD)
  glGetPerfMonitorGroupStringAMD(group, bufSize, length, groupString);
  OGLM_CHECK_ERR(glGetPerfMonitorGroupStringAMD, )
#line 30082 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetPerfMonitorGroupStringAMD_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPerfMonitorGroupStringAMD_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "group, bufSize");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	group = (unsigned int)SvUV(ST(0))
;
	GLsizei	bufSize = (int)SvIV(ST(1))
;
#line 14731 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPerfMonitorGroupStringAMD, )
  OGLM_AVAIL_CHECK(__glewGetPerfMonitorGroupStringAMD, glGetPerfMonitorGroupStringAMD)
  GLchar groupString[bufSize];
  GLsizei length[1];
  glGetPerfMonitorGroupStringAMD(group, bufSize, length, groupString);
  OGLM_CHECK_ERR(glGetPerfMonitorGroupStringAMD, )
  EXTEND(sp, 2);
  mPUSHs(newSViv(length[0]));
  mPUSHs(newSVpv(groupString,0));
#line 30112 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetPerfMonitorGroupsAMD_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPerfMonitorGroupsAMD_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "numGroups, groupsSize, groups");
    {
	GLint*	numGroups = INT2PTR(GLint *,SvIV(ST(0)))
;
	GLsizei	groupsSize = (int)SvIV(ST(1))
;
	GLuint *	groups = INT2PTR(GLuint *,SvIV(ST(2)))
;
#line 14748 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPerfMonitorGroupsAMD, )
  OGLM_AVAIL_CHECK(__glewGetPerfMonitorGroupsAMD, glGetPerfMonitorGroupsAMD)
  glGetPerfMonitorGroupsAMD(numGroups, groupsSize, groups);
  OGLM_CHECK_ERR(glGetPerfMonitorGroupsAMD, )
#line 30138 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetPerfMonitorGroupsAMD_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPerfMonitorGroupsAMD_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "groupsSize");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLsizei	groupsSize = (int)SvIV(ST(0))
;
#line 14758 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPerfMonitorGroupsAMD, )
  OGLM_AVAIL_CHECK(__glewGetPerfMonitorGroupsAMD, glGetPerfMonitorGroupsAMD)
  GLuint *groups = OGLM_ALLOC(groupsSize,GLuint,groups);
  GLint numGroups[1];
  glGetPerfMonitorGroupsAMD(numGroups, groupsSize, groups);
  OGLM_CHECK_ERR(glGetPerfMonitorGroupsAMD, free(groups);)
  EXTEND(sp, 2);
  mPUSHs(newSViv(numGroups[0]));
  OGLM_PUSH_ARRAY(glGetPerfMonitorGroupsAMD, newSVuv, groups, groupsSize)
  free(groups);
#line 30167 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetPerfQueryDataINTEL_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPerfQueryDataINTEL_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "queryHandle, flags, dataSize, data, bytesWritten");
    {
	GLuint	queryHandle = (unsigned int)SvUV(ST(0))
;
	GLuint	flags = (unsigned int)SvUV(ST(1))
;
	GLsizei	dataSize = (int)SvIV(ST(2))
;
	void *	data = INT2PTR(void *,SvIV(ST(3)))
;
	GLuint *	bytesWritten = INT2PTR(GLuint *,SvIV(ST(4)))
;
#line 14778 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPerfQueryDataINTEL, )
  OGLM_AVAIL_CHECK(__glewGetPerfQueryDataINTEL, glGetPerfQueryDataINTEL)
  glGetPerfQueryDataINTEL(queryHandle, flags, dataSize, data, bytesWritten);
  OGLM_CHECK_ERR(glGetPerfQueryDataINTEL, )
#line 30197 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetPerfQueryIdByNameINTEL_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPerfQueryIdByNameINTEL_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "queryName, queryId");
    {
	GLchar*	queryName = (GLchar *)SvPV_nolen(ST(0))
;
	GLuint *	queryId = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 14789 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPerfQueryIdByNameINTEL, )
  OGLM_AVAIL_CHECK(__glewGetPerfQueryIdByNameINTEL, glGetPerfQueryIdByNameINTEL)
  glGetPerfQueryIdByNameINTEL(queryName, queryId);
  OGLM_CHECK_ERR(glGetPerfQueryIdByNameINTEL, )
#line 30220 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetPerfQueryInfoINTEL_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPerfQueryInfoINTEL_c)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "queryId, queryNameLength, queryName, dataSize, noCounters, noInstances, capsMask");
    {
	GLuint	queryId = (unsigned int)SvUV(ST(0))
;
	GLuint	queryNameLength = (unsigned int)SvUV(ST(1))
;
	GLchar*	queryName = (GLchar *)SvPV_nolen(ST(2))
;
	GLuint *	dataSize = INT2PTR(GLuint *,SvIV(ST(3)))
;
	GLuint *	noCounters = INT2PTR(GLuint *,SvIV(ST(4)))
;
	GLuint *	noInstances = INT2PTR(GLuint *,SvIV(ST(5)))
;
	GLuint *	capsMask = INT2PTR(GLuint *,SvIV(ST(6)))
;
#line 14805 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPerfQueryInfoINTEL, )
  OGLM_AVAIL_CHECK(__glewGetPerfQueryInfoINTEL, glGetPerfQueryInfoINTEL)
  glGetPerfQueryInfoINTEL(queryId, queryNameLength, queryName, dataSize, noCounters, noInstances, capsMask);
  OGLM_CHECK_ERR(glGetPerfQueryInfoINTEL, )
#line 30253 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetPixelMapfv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPixelMapfv_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "map, values");
    {
	GLenum	map = (int)SvIV(ST(0))
;
	GLfloat *	values = INT2PTR(GLfloat *,SvIV(ST(1)))
;
#line 14816 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPixelMapfv, )
  glGetPixelMapfv(map, values);
  OGLM_CHECK_ERR(glGetPixelMapfv, )
#line 30275 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetPixelMapuiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPixelMapuiv_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "map, values");
    {
	GLenum	map = (int)SvIV(ST(0))
;
	GLuint *	values = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 14826 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPixelMapuiv, )
  glGetPixelMapuiv(map, values);
  OGLM_CHECK_ERR(glGetPixelMapuiv, )
#line 30297 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetPixelMapusv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPixelMapusv_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "map, values");
    {
	GLenum	map = (int)SvIV(ST(0))
;
	GLushort *	values = INT2PTR(GLushort *,SvIV(ST(1)))
;
#line 14836 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPixelMapusv, )
  glGetPixelMapusv(map, values);
  OGLM_CHECK_ERR(glGetPixelMapusv, )
#line 30319 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetPixelTransformParameterfvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPixelTransformParameterfvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLfloat*	params = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 14847 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPixelTransformParameterfvEXT, )
  OGLM_AVAIL_CHECK(__glewGetPixelTransformParameterfvEXT, glGetPixelTransformParameterfvEXT)
  glGetPixelTransformParameterfvEXT(target, pname, params);
  OGLM_CHECK_ERR(glGetPixelTransformParameterfvEXT, )
#line 30344 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetPixelTransformParameterfvSGI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPixelTransformParameterfvSGI_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 14859 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPixelTransformParameterfvSGI, )
  OGLM_AVAIL_CHECK(__glewGetPixelTransformParameterfvSGI, glGetPixelTransformParameterfvSGI)
  glGetPixelTransformParameterfvSGI(target, pname, params);
  OGLM_CHECK_ERR(glGetPixelTransformParameterfvSGI, )
#line 30369 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetPixelTransformParameterivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPixelTransformParameterivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLint*	params = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 14871 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPixelTransformParameterivEXT, )
  OGLM_AVAIL_CHECK(__glewGetPixelTransformParameterivEXT, glGetPixelTransformParameterivEXT)
  glGetPixelTransformParameterivEXT(target, pname, params);
  OGLM_CHECK_ERR(glGetPixelTransformParameterivEXT, )
#line 30394 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetPixelTransformParameterivSGI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPixelTransformParameterivSGI_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 14883 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPixelTransformParameterivSGI, )
  OGLM_AVAIL_CHECK(__glewGetPixelTransformParameterivSGI, glGetPixelTransformParameterivSGI)
  glGetPixelTransformParameterivSGI(target, pname, params);
  OGLM_CHECK_ERR(glGetPixelTransformParameterivSGI, )
#line 30419 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetPointerIndexedvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPointerIndexedvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, index, data");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	void**	data = INT2PTR(void **,SvIV(ST(2)))
;
#line 14895 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPointerIndexedvEXT, )
  OGLM_AVAIL_CHECK(__glewGetPointerIndexedvEXT, glGetPointerIndexedvEXT)
  glGetPointerIndexedvEXT(target, index, data);
  OGLM_CHECK_ERR(glGetPointerIndexedvEXT, )
#line 30444 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetPointeri_vEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPointeri_vEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "pname, index, params");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	void**	params = INT2PTR(void **,SvIV(ST(2)))
;
#line 14907 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPointeri_vEXT, )
  OGLM_AVAIL_CHECK(__glewGetPointeri_vEXT, glGetPointeri_vEXT)
  glGetPointeri_vEXT(pname, index, params);
  OGLM_CHECK_ERR(glGetPointeri_vEXT, )
#line 30469 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetPointerv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPointerv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "pname, params");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	void* *	params = INT2PTR(void **,SvIV(ST(1)))
;
#line 14921 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPointerv, )
  glGetPointerv(pname, params);
  OGLM_CHECK_ERR(glGetPointerv, )
#line 30492 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetPolygonStipple_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetPolygonStipple_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "mask");
    {
	GLubyte *	mask = INT2PTR(GLubyte *,SvIV(ST(0)))
;
#line 14930 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetPolygonStipple, )
  glGetPolygonStipple(mask);
  OGLM_CHECK_ERR(glGetPolygonStipple, )
#line 30512 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetProcAddressREGAL_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProcAddressREGAL_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "name");
    {
	const GLchar *	name = (const GLchar *)SvPV_nolen(ST(0))
;
	void *	RETVAL;
	dXSTARG;
#line 14939 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProcAddressREGAL, )
  OGLM_AVAIL_CHECK(__glewGetProcAddressREGAL, glGetProcAddressREGAL)
  RETVAL = glGetProcAddressREGAL(name);
  OGLM_CHECK_ERR(glGetProcAddressREGAL, )
#line 30535 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi(PTR2IV(RETVAL));
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramBinary_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramBinary_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "program, bufSize, length, binaryFormat, binary");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLsizei	bufSize = (int)SvIV(ST(1))
;
	GLsizei*	length = INT2PTR(GLsizei *,SvIV(ST(2)))
;
	GLenum *	binaryFormat = INT2PTR(GLenum *,SvIV(ST(3)))
;
	void*	binary = INT2PTR(void *,SvIV(ST(4)))
;
#line 14955 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramBinary, )
  OGLM_AVAIL_CHECK(__glewGetProgramBinary, glGetProgramBinary)
  glGetProgramBinary(program, bufSize, length, binaryFormat, binary);
  OGLM_CHECK_ERR(glGetProgramBinary, )
#line 30566 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramBinary_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramBinary_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "program");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
#line 14965 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramBinary, )
  OGLM_AVAIL_CHECK(__glewGetProgramBinary, glGetProgramBinary)
  OGLM_AVAIL_CHECK(__glewGetProgramiv, glGetProgramiv)
  GLsizei bufSize;
  glGetProgramiv(program,GL_PROGRAM_BINARY_LENGTH,&bufSize);
  GLsizei* length = NULL;
  char binary[bufSize];
  GLenum binaryFormat[1];
  glGetProgramBinary(program, bufSize, length, binaryFormat, binary);
  OGLM_CHECK_ERR(glGetProgramBinary, )
  EXTEND(sp, 2);
  mPUSHs(newSViv(binaryFormat[0]));
  mPUSHs(newSVpv(binary,bufSize));
#line 30598 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramBinaryOES_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramBinaryOES_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "program, bufSize, length, binaryFormat, binary");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLsizei	bufSize = (int)SvIV(ST(1))
;
	GLsizei*	length = INT2PTR(GLsizei *,SvIV(ST(2)))
;
	GLenum *	binaryFormat = INT2PTR(GLenum *,SvIV(ST(3)))
;
	void*	binary = INT2PTR(void *,SvIV(ST(4)))
;
#line 14988 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramBinaryOES, )
  OGLM_AVAIL_CHECK(__glewGetProgramBinaryOES, glGetProgramBinaryOES)
  glGetProgramBinaryOES(program, bufSize, length, binaryFormat, binary);
  OGLM_CHECK_ERR(glGetProgramBinaryOES, )
#line 30628 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramEnvParameterdvARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramEnvParameterdvARB_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, index, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLdouble*	params = INT2PTR(GLdouble *,SvIV(ST(2)))
;
#line 15000 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramEnvParameterdvARB, )
  OGLM_AVAIL_CHECK(__glewGetProgramEnvParameterdvARB, glGetProgramEnvParameterdvARB)
  glGetProgramEnvParameterdvARB(target, index, params);
  OGLM_CHECK_ERR(glGetProgramEnvParameterdvARB, )
#line 30653 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramEnvParameterdvARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramEnvParameterdvARB_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, index");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 15011 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramEnvParameterdvARB, )
  OGLM_AVAIL_CHECK(__glewGetProgramEnvParameterdvARB, glGetProgramEnvParameterdvARB)
  GLdouble* params = OGLM_ALLOC(4,GLdouble,params);
  glGetProgramEnvParameterdvARB(target, index, params);
  OGLM_CHECK_ERR(glGetProgramEnvParameterdvARB, free(params);)
  OGLM_OUT_FINISH(params,4,newSVnv)
  free(params);
#line 30681 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramEnvParameterfvARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramEnvParameterfvARB_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, index, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 15026 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramEnvParameterfvARB, )
  OGLM_AVAIL_CHECK(__glewGetProgramEnvParameterfvARB, glGetProgramEnvParameterfvARB)
  glGetProgramEnvParameterfvARB(target, index, params);
  OGLM_CHECK_ERR(glGetProgramEnvParameterfvARB, )
#line 30707 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramEnvParameterfvARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramEnvParameterfvARB_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, index");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 15037 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramEnvParameterfvARB, )
  OGLM_AVAIL_CHECK(__glewGetProgramEnvParameterfvARB, glGetProgramEnvParameterfvARB)
  GLfloat* params = OGLM_ALLOC(4,GLfloat,params);
  glGetProgramEnvParameterfvARB(target, index, params);
  OGLM_CHECK_ERR(glGetProgramEnvParameterfvARB, free(params);)
  OGLM_OUT_FINISH(params,4,newSVnv)
  free(params);
#line 30735 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramInfoLog_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramInfoLog_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, bufSize, length, infoLog");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLsizei	bufSize = (int)SvIV(ST(1))
;
	GLsizei*	length = INT2PTR(GLsizei *,SvIV(ST(2)))
;
	GLchar*	infoLog = (GLchar *)SvPV_nolen(ST(3))
;
#line 15053 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramInfoLog, )
  OGLM_AVAIL_CHECK(__glewGetProgramInfoLog, glGetProgramInfoLog)
  glGetProgramInfoLog(program, bufSize, length, infoLog);
  OGLM_CHECK_ERR(glGetProgramInfoLog, )
#line 30763 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramInfoLog_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramInfoLog_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "program");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLchar *	RETVAL;
	dXSTARG;
#line 15063 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramInfoLog, )
  OGLM_AVAIL_CHECK(__glewGetProgramInfoLog, glGetProgramInfoLog)
  OGLM_AVAIL_CHECK(__glewGetProgramiv, glGetProgramiv)
  GLsizei bufSize;
  glGetProgramiv(program,GL_INFO_LOG_LENGTH,&bufSize);
  GLsizei* length = NULL;
  GLchar infoLog[bufSize];
  glGetProgramInfoLog(program, bufSize, length, infoLog);
  OGLM_CHECK_ERR(glGetProgramInfoLog, )
  RETVAL = infoLog;
#line 30792 "lib/OpenGL/Modern.c"
	sv_setpv(TARG, RETVAL);
	XSprePUSH;
	PUSHTARG;
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramInterfaceiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramInterfaceiv_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, programInterface, pname, params");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	programInterface = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(3)))
;
#line 15084 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramInterfaceiv, )
  OGLM_AVAIL_CHECK(__glewGetProgramInterfaceiv, glGetProgramInterfaceiv)
  glGetProgramInterfaceiv(program, programInterface, pname, params);
  OGLM_CHECK_ERR(glGetProgramInterfaceiv, )
#line 30822 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramInterfaceiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramInterfaceiv_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, programInterface, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	programInterface = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
#line 15096 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramInterfaceiv, )
  OGLM_AVAIL_CHECK(__glewGetProgramInterfaceiv, glGetProgramInterfaceiv)
  OGLM_SIZE_ENUM(ProgramInterfacePName,pname,1)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  glGetProgramInterfaceiv(program, programInterface, pname, params);
  OGLM_CHECK_ERR(glGetProgramInterfaceiv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 30853 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramLocalParameterdvARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramLocalParameterdvARB_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, index, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLdouble*	params = INT2PTR(GLdouble *,SvIV(ST(2)))
;
#line 15112 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramLocalParameterdvARB, )
  OGLM_AVAIL_CHECK(__glewGetProgramLocalParameterdvARB, glGetProgramLocalParameterdvARB)
  glGetProgramLocalParameterdvARB(target, index, params);
  OGLM_CHECK_ERR(glGetProgramLocalParameterdvARB, )
#line 30879 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramLocalParameterdvARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramLocalParameterdvARB_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, index");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 15123 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramLocalParameterdvARB, )
  OGLM_AVAIL_CHECK(__glewGetProgramLocalParameterdvARB, glGetProgramLocalParameterdvARB)
  GLdouble* params = OGLM_ALLOC(4,GLdouble,params);
  glGetProgramLocalParameterdvARB(target, index, params);
  OGLM_CHECK_ERR(glGetProgramLocalParameterdvARB, free(params);)
  OGLM_OUT_FINISH(params,4,newSVnv)
  free(params);
#line 30907 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramLocalParameterfvARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramLocalParameterfvARB_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, index, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 15138 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramLocalParameterfvARB, )
  OGLM_AVAIL_CHECK(__glewGetProgramLocalParameterfvARB, glGetProgramLocalParameterfvARB)
  glGetProgramLocalParameterfvARB(target, index, params);
  OGLM_CHECK_ERR(glGetProgramLocalParameterfvARB, )
#line 30933 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramLocalParameterfvARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramLocalParameterfvARB_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, index");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 15149 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramLocalParameterfvARB, )
  OGLM_AVAIL_CHECK(__glewGetProgramLocalParameterfvARB, glGetProgramLocalParameterfvARB)
  GLfloat* params = OGLM_ALLOC(4,GLfloat,params);
  glGetProgramLocalParameterfvARB(target, index, params);
  OGLM_CHECK_ERR(glGetProgramLocalParameterfvARB, free(params);)
  OGLM_OUT_FINISH(params,4,newSVnv)
  free(params);
#line 30961 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramNamedParameterdvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramNamedParameterdvNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "id, len, name, params");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLsizei	len = (int)SvIV(ST(1))
;
	const GLubyte*        name = (const GLubyte *)SvPV_nolen(ST(2))
;
	GLdouble *	params = INT2PTR(GLdouble *,SvIV(ST(3)))
;
#line 15165 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramNamedParameterdvNV, )
  OGLM_AVAIL_CHECK(__glewGetProgramNamedParameterdvNV, glGetProgramNamedParameterdvNV)
  glGetProgramNamedParameterdvNV(id, len, name, params);
  OGLM_CHECK_ERR(glGetProgramNamedParameterdvNV, )
#line 30989 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramNamedParameterdvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramNamedParameterdvNV_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "id, len, name");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLsizei	len = (int)SvIV(ST(1))
;
	const GLubyte*        name = (const GLubyte *)SvPV_nolen(ST(2))
;
#line 15177 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramNamedParameterdvNV, )
  OGLM_AVAIL_CHECK(__glewGetProgramNamedParameterdvNV, glGetProgramNamedParameterdvNV)
  GLdouble *params = OGLM_ALLOC(4,GLdouble,params);
  glGetProgramNamedParameterdvNV(id, len, name, params);
  OGLM_CHECK_ERR(glGetProgramNamedParameterdvNV, free(params);)
  OGLM_OUT_FINISH(params,4,newSVnv)
  free(params);
#line 31019 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramNamedParameterfvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramNamedParameterfvNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "id, len, name, params");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLsizei	len = (int)SvIV(ST(1))
;
	const GLubyte*        name = (const GLubyte *)SvPV_nolen(ST(2))
;
	GLfloat *	params = INT2PTR(GLfloat *,SvIV(ST(3)))
;
#line 15193 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramNamedParameterfvNV, )
  OGLM_AVAIL_CHECK(__glewGetProgramNamedParameterfvNV, glGetProgramNamedParameterfvNV)
  glGetProgramNamedParameterfvNV(id, len, name, params);
  OGLM_CHECK_ERR(glGetProgramNamedParameterfvNV, )
#line 31047 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramNamedParameterfvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramNamedParameterfvNV_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "id, len, name");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLsizei	len = (int)SvIV(ST(1))
;
	const GLubyte*        name = (const GLubyte *)SvPV_nolen(ST(2))
;
#line 15205 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramNamedParameterfvNV, )
  OGLM_AVAIL_CHECK(__glewGetProgramNamedParameterfvNV, glGetProgramNamedParameterfvNV)
  GLfloat *params = OGLM_ALLOC(4,GLfloat,params);
  glGetProgramNamedParameterfvNV(id, len, name, params);
  OGLM_CHECK_ERR(glGetProgramNamedParameterfvNV, free(params);)
  OGLM_OUT_FINISH(params,4,newSVnv)
  free(params);
#line 31077 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramParameterdvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramParameterdvNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, index, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLdouble*	params = INT2PTR(GLdouble *,SvIV(ST(3)))
;
#line 15221 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramParameterdvNV, )
  OGLM_AVAIL_CHECK(__glewGetProgramParameterdvNV, glGetProgramParameterdvNV)
  glGetProgramParameterdvNV(target, index, pname, params);
  OGLM_CHECK_ERR(glGetProgramParameterdvNV, )
#line 31105 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramParameterdvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramParameterdvNV_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, index, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
#line 15233 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramParameterdvNV, )
  OGLM_AVAIL_CHECK(__glewGetProgramParameterdvNV, glGetProgramParameterdvNV)
  GLdouble* params = OGLM_ALLOC(4,GLdouble,params);
  glGetProgramParameterdvNV(target, index, pname, params);
  OGLM_CHECK_ERR(glGetProgramParameterdvNV, free(params);)
  OGLM_OUT_FINISH(params,4,newSVnv)
  free(params);
#line 31135 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramParameterfvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramParameterfvNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, index, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(3)))
;
#line 15249 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramParameterfvNV, )
  OGLM_AVAIL_CHECK(__glewGetProgramParameterfvNV, glGetProgramParameterfvNV)
  glGetProgramParameterfvNV(target, index, pname, params);
  OGLM_CHECK_ERR(glGetProgramParameterfvNV, )
#line 31163 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramParameterfvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramParameterfvNV_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, index, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
#line 15261 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramParameterfvNV, )
  OGLM_AVAIL_CHECK(__glewGetProgramParameterfvNV, glGetProgramParameterfvNV)
  GLfloat* params = OGLM_ALLOC(4,GLfloat,params);
  glGetProgramParameterfvNV(target, index, pname, params);
  OGLM_CHECK_ERR(glGetProgramParameterfvNV, free(params);)
  OGLM_OUT_FINISH(params,4,newSVnv)
  free(params);
#line 31193 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramPipelineInfoLog_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramPipelineInfoLog_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "pipeline, bufSize, length, infoLog");
    {
	GLuint	pipeline = (unsigned int)SvUV(ST(0))
;
	GLsizei	bufSize = (int)SvIV(ST(1))
;
	GLsizei*	length = INT2PTR(GLsizei *,SvIV(ST(2)))
;
	GLchar *	infoLog = (GLchar *)SvPV_nolen(ST(3))
;
#line 15277 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramPipelineInfoLog, )
  OGLM_AVAIL_CHECK(__glewGetProgramPipelineInfoLog, glGetProgramPipelineInfoLog)
  glGetProgramPipelineInfoLog(pipeline, bufSize, length, infoLog);
  OGLM_CHECK_ERR(glGetProgramPipelineInfoLog, )
#line 31221 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramPipelineInfoLog_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramPipelineInfoLog_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "pipeline");
    {
	GLuint	pipeline = (unsigned int)SvUV(ST(0))
;
	GLchar *	RETVAL;
	dXSTARG;
#line 15287 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramPipelineInfoLog, )
  OGLM_AVAIL_CHECK(__glewGetProgramPipelineInfoLog, glGetProgramPipelineInfoLog)
  OGLM_AVAIL_CHECK(__glewGetProgramPipelineiv, glGetProgramPipelineiv)
  GLsizei bufSize;
  glGetProgramPipelineiv(pipeline,GL_INFO_LOG_LENGTH,&bufSize);
  GLsizei* length = NULL;
  GLchar infoLog[bufSize];
  glGetProgramPipelineInfoLog(pipeline, bufSize, length, infoLog);
  OGLM_CHECK_ERR(glGetProgramPipelineInfoLog, )
  RETVAL = infoLog;
#line 31250 "lib/OpenGL/Modern.c"
	sv_setpv(TARG, RETVAL);
	XSprePUSH;
	PUSHTARG;
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramPipelineiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramPipelineiv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "pipeline, pname, params");
    {
	GLuint	pipeline = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 15307 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramPipelineiv, )
  OGLM_AVAIL_CHECK(__glewGetProgramPipelineiv, glGetProgramPipelineiv)
  glGetProgramPipelineiv(pipeline, pname, params);
  OGLM_CHECK_ERR(glGetProgramPipelineiv, )
#line 31278 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramPipelineiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramPipelineiv_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pipeline, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	pipeline = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 15318 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramPipelineiv, )
  OGLM_AVAIL_CHECK(__glewGetProgramPipelineiv, glGetProgramPipelineiv)
  OGLM_SIZE_ENUM(PipelineParameterName,pname,1)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  glGetProgramPipelineiv(pipeline, pname, params);
  OGLM_CHECK_ERR(glGetProgramPipelineiv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 31307 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramResourceIndex); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramResourceIndex)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, programInterface, name");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	programInterface = (int)SvIV(ST(1))
;
	const GLchar*	name = (const GLchar *)SvPV_nolen(ST(2))
;
	GLuint	RETVAL;
	dXSTARG;
#line 15334 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramResourceIndex, )
  OGLM_AVAIL_CHECK(__glewGetProgramResourceIndex, glGetProgramResourceIndex)
  RETVAL = glGetProgramResourceIndex(program, programInterface, name);
  OGLM_CHECK_ERR(glGetProgramResourceIndex, )
#line 31335 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramResourceLocation); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramResourceLocation)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, programInterface, name");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	programInterface = (int)SvIV(ST(1))
;
	const GLchar*	name = (const GLchar *)SvPV_nolen(ST(2))
;
	GLint	RETVAL;
	dXSTARG;
#line 15348 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramResourceLocation, )
  OGLM_AVAIL_CHECK(__glewGetProgramResourceLocation, glGetProgramResourceLocation)
  RETVAL = glGetProgramResourceLocation(program, programInterface, name);
  OGLM_CHECK_ERR(glGetProgramResourceLocation, )
#line 31364 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramResourceLocationIndex); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramResourceLocationIndex)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, programInterface, name");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	programInterface = (int)SvIV(ST(1))
;
	const GLchar*	name = (const GLchar *)SvPV_nolen(ST(2))
;
	GLint	RETVAL;
	dXSTARG;
#line 15362 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramResourceLocationIndex, )
  OGLM_AVAIL_CHECK(__glewGetProgramResourceLocationIndex, glGetProgramResourceLocationIndex)
  RETVAL = glGetProgramResourceLocationIndex(program, programInterface, name);
  OGLM_CHECK_ERR(glGetProgramResourceLocationIndex, )
#line 31393 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramResourceLocationIndexEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramResourceLocationIndexEXT)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, programInterface, name");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	programInterface = (int)SvIV(ST(1))
;
	const GLchar*	name = (const GLchar *)SvPV_nolen(ST(2))
;
	GLint	RETVAL;
	dXSTARG;
#line 15376 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramResourceLocationIndexEXT, )
  OGLM_AVAIL_CHECK(__glewGetProgramResourceLocationIndexEXT, glGetProgramResourceLocationIndexEXT)
  RETVAL = glGetProgramResourceLocationIndexEXT(program, programInterface, name);
  OGLM_CHECK_ERR(glGetProgramResourceLocationIndexEXT, )
#line 31422 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramResourceName_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramResourceName_c)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "program, programInterface, index, bufSize, length, name");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	programInterface = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
	GLsizei	bufSize = (int)SvIV(ST(3))
;
	GLsizei*	length = INT2PTR(GLsizei *,SvIV(ST(4)))
;
	GLchar *	name = (GLchar *)SvPV_nolen(ST(5))
;
#line 15393 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramResourceName, )
  OGLM_AVAIL_CHECK(__glewGetProgramResourceName, glGetProgramResourceName)
  glGetProgramResourceName(program, programInterface, index, bufSize, length, name);
  OGLM_CHECK_ERR(glGetProgramResourceName, )
#line 31455 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramResourceName_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramResourceName_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, programInterface, index");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	programInterface = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
	GLchar *	RETVAL;
	dXSTARG;
#line 15405 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramResourceName, )
  OGLM_AVAIL_CHECK(__glewGetProgramResourceName, glGetProgramResourceName)
  OGLM_AVAIL_CHECK(__glewGetProgramResourceiv, glGetProgramResourceiv)
  GLsizei bufSize;
  glGetProgramResourceiv(program,programInterface,index,1,&(GLenum){GL_NAME_LENGTH},sizeof(bufSize),NULL,&bufSize);
  GLsizei* length = NULL;
  GLchar name[bufSize];
  glGetProgramResourceName(program, programInterface, index, bufSize, length, name);
  OGLM_CHECK_ERR(glGetProgramResourceName, )
  RETVAL = name;
#line 31488 "lib/OpenGL/Modern.c"
	sv_setpv(TARG, RETVAL);
	XSprePUSH;
	PUSHTARG;
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramResourcefvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramResourcefvNV_c)
{
    dVAR; dXSARGS;
    if (items != 8)
       croak_xs_usage(cv,  "program, programInterface, index, propCount, props, count, length, params");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	programInterface = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
	GLsizei	propCount = (int)SvIV(ST(3))
;
	const GLenum*	props = INT2PTR(const GLenum *,SvIV(ST(4)))
;
	GLsizei	count = (int)SvIV(ST(5))
;
	GLsizei *	length = INT2PTR(GLsizei *,SvIV(ST(6)))
;
	GLfloat *	params = INT2PTR(GLfloat *,SvIV(ST(7)))
;
#line 15430 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramResourcefvNV, )
  OGLM_AVAIL_CHECK(__glewGetProgramResourcefvNV, glGetProgramResourcefvNV)
  glGetProgramResourcefvNV(program, programInterface, index, propCount, props, count, length, params);
  OGLM_CHECK_ERR(glGetProgramResourcefvNV, )
#line 31526 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramResourcefvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramResourcefvNV_p)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "program, programInterface, index, propCount, props, count");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	programInterface = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
	GLsizei	propCount = (int)SvIV(ST(3))
;
	const GLenum*	props = INT2PTR(const GLenum *,SvIV(ST(4)))
;
	GLsizei	count = (int)SvIV(ST(5))
;
#line 15445 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramResourcefvNV, )
  OGLM_AVAIL_CHECK(__glewGetProgramResourcefvNV, glGetProgramResourcefvNV)
  GLfloat *params = OGLM_ALLOC(count,GLfloat,params);
  GLsizei length[1];
  glGetProgramResourcefvNV(program, programInterface, index, propCount, props, count, length, params);
  OGLM_CHECK_ERR(glGetProgramResourcefvNV, free(params);)
  EXTEND(sp, 2);
  mPUSHs(newSViv(length[0]));
  OGLM_PUSH_ARRAY(glGetProgramResourcefvNV, newSVnv, params, count)
  free(params);
#line 31565 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramResourceiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramResourceiv_c)
{
    dVAR; dXSARGS;
    if (items != 8)
       croak_xs_usage(cv,  "program, programInterface, index, propCount, props, count, length, params");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	programInterface = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
	GLsizei	propCount = (int)SvIV(ST(3))
;
	const GLenum*	props = INT2PTR(const GLenum *,SvIV(ST(4)))
;
	GLsizei	count = (int)SvIV(ST(5))
;
	GLsizei *	length = INT2PTR(GLsizei *,SvIV(ST(6)))
;
	GLint *	params = INT2PTR(GLint *,SvIV(ST(7)))
;
#line 15468 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramResourceiv, )
  OGLM_AVAIL_CHECK(__glewGetProgramResourceiv, glGetProgramResourceiv)
  glGetProgramResourceiv(program, programInterface, index, propCount, props, count, length, params);
  OGLM_CHECK_ERR(glGetProgramResourceiv, )
#line 31601 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramResourceiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramResourceiv_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "program, programInterface, index, ...");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	programInterface = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
#line 15480 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramResourceiv, )
  OGLM_AVAIL_CHECK(__glewGetProgramResourceiv, glGetProgramResourceiv)
  GLsizei propCount = items-3;
  GLsizei count = propCount;
  GLsizei *length = NULL;
  GLint *params = OGLM_ALLOC(count,GLint,params);
  GLenum* props = OGLM_GET_VARARGS(props,3,GLenum,IV,propCount);
  glGetProgramResourceiv((GLuint )program, (GLenum )programInterface, (GLuint )index, (GLsizei )propCount, (const GLenum* )props, (GLsizei )count, (GLsizei *)length, (GLint *)params);
  OGLM_CHECK_ERR(glGetProgramResourceiv, free(params);free(props);)
  OGLM_OUT_FINISH(params,count,newSViv)
  free(params);free(props);
#line 31635 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramStageiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramStageiv_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, shadertype, pname, values");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	shadertype = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLint*	values = INT2PTR(GLint *,SvIV(ST(3)))
;
#line 15500 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramStageiv, )
  OGLM_AVAIL_CHECK(__glewGetProgramStageiv, glGetProgramStageiv)
  glGetProgramStageiv(program, shadertype, pname, values);
  OGLM_CHECK_ERR(glGetProgramStageiv, )
#line 31663 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramStageiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramStageiv_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, shadertype, pname");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	shadertype = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLint	RETVAL;
	dXSTARG;
#line 15512 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramStageiv, )
  OGLM_AVAIL_CHECK(__glewGetProgramStageiv, glGetProgramStageiv)
  GLint values[1];
  glGetProgramStageiv(program, shadertype, pname, values);
  OGLM_CHECK_ERR(glGetProgramStageiv, )
  RETVAL = values[0];
#line 31692 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramStringARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramStringARB_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, string");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	void *	string = INT2PTR(void *,SvIV(ST(2)))
;
#line 15528 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramStringARB, )
  OGLM_AVAIL_CHECK(__glewGetProgramStringARB, glGetProgramStringARB)
  glGetProgramStringARB(target, pname, string);
  OGLM_CHECK_ERR(glGetProgramStringARB, )
#line 31719 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramStringNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramStringNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "id, pname, program");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLubyte*	program = INT2PTR(GLubyte *,SvIV(ST(2)))
;
#line 15540 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramStringNV, )
  OGLM_AVAIL_CHECK(__glewGetProgramStringNV, glGetProgramStringNV)
  glGetProgramStringNV(id, pname, program);
  OGLM_CHECK_ERR(glGetProgramStringNV, )
#line 31744 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramiv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, pname, params");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 15552 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramiv, )
  OGLM_AVAIL_CHECK(__glewGetProgramiv, glGetProgramiv)
  glGetProgramiv(program, pname, params);
  OGLM_CHECK_ERR(glGetProgramiv, )
#line 31769 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramiv_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "program, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 15563 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramiv, )
  OGLM_AVAIL_CHECK(__glewGetProgramiv, glGetProgramiv)
  OGLM_SIZE_ENUM(ProgramPropertyARB,pname,1)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  glGetProgramiv(program, pname, params);
  OGLM_CHECK_ERR(glGetProgramiv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 31798 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramivARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramivARB_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 15579 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramivARB, )
  OGLM_AVAIL_CHECK(__glewGetProgramivARB, glGetProgramivARB)
  glGetProgramivARB(target, pname, params);
  OGLM_CHECK_ERR(glGetProgramivARB, )
#line 31824 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramivARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramivARB_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, pname");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint	RETVAL;
	dXSTARG;
#line 15590 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramivARB, )
  OGLM_AVAIL_CHECK(__glewGetProgramivARB, glGetProgramivARB)
  GLint params[1];
  glGetProgramivARB(target, pname, params);
  OGLM_CHECK_ERR(glGetProgramivARB, )
  RETVAL = params[0];
#line 31851 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramivNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "id, pname, params");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 15606 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramivNV, )
  OGLM_AVAIL_CHECK(__glewGetProgramivNV, glGetProgramivNV)
  glGetProgramivNV(id, pname, params);
  OGLM_CHECK_ERR(glGetProgramivNV, )
#line 31878 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetProgramivNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetProgramivNV_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "id, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 15617 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetProgramivNV, )
  OGLM_AVAIL_CHECK(__glewGetProgramivNV, glGetProgramivNV)
  GLint* params = OGLM_ALLOC(4,GLint,params);
  glGetProgramivNV(id, pname, params);
  OGLM_CHECK_ERR(glGetProgramivNV, free(params);)
  OGLM_OUT_FINISH(params,4,newSViv)
  free(params);
#line 31906 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetQueryBufferObjecti64v); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetQueryBufferObjecti64v)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "id, buffer, pname, offset");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLuint	buffer = (unsigned int)SvUV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLintptr	offset = (unsigned int)SvUV(ST(3))
;
#line 15633 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetQueryBufferObjecti64v, )
  OGLM_AVAIL_CHECK(__glewGetQueryBufferObjecti64v, glGetQueryBufferObjecti64v)
  glGetQueryBufferObjecti64v(id, buffer, pname, offset);
  OGLM_CHECK_ERR(glGetQueryBufferObjecti64v, )
#line 31934 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetQueryBufferObjectiv); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetQueryBufferObjectiv)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "id, buffer, pname, offset");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLuint	buffer = (unsigned int)SvUV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLintptr	offset = (unsigned int)SvUV(ST(3))
;
#line 15646 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetQueryBufferObjectiv, )
  OGLM_AVAIL_CHECK(__glewGetQueryBufferObjectiv, glGetQueryBufferObjectiv)
  glGetQueryBufferObjectiv(id, buffer, pname, offset);
  OGLM_CHECK_ERR(glGetQueryBufferObjectiv, )
#line 31961 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetQueryBufferObjectui64v); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetQueryBufferObjectui64v)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "id, buffer, pname, offset");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLuint	buffer = (unsigned int)SvUV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLintptr	offset = (unsigned int)SvUV(ST(3))
;
#line 15659 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetQueryBufferObjectui64v, )
  OGLM_AVAIL_CHECK(__glewGetQueryBufferObjectui64v, glGetQueryBufferObjectui64v)
  glGetQueryBufferObjectui64v(id, buffer, pname, offset);
  OGLM_CHECK_ERR(glGetQueryBufferObjectui64v, )
#line 31988 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetQueryBufferObjectuiv); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetQueryBufferObjectuiv)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "id, buffer, pname, offset");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLuint	buffer = (unsigned int)SvUV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLintptr	offset = (unsigned int)SvUV(ST(3))
;
#line 15672 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetQueryBufferObjectuiv, )
  OGLM_AVAIL_CHECK(__glewGetQueryBufferObjectuiv, glGetQueryBufferObjectuiv)
  glGetQueryBufferObjectuiv(id, buffer, pname, offset);
  OGLM_CHECK_ERR(glGetQueryBufferObjectuiv, )
#line 32015 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetQueryIndexediv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetQueryIndexediv_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, index, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(3)))
;
#line 15685 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetQueryIndexediv, )
  OGLM_AVAIL_CHECK(__glewGetQueryIndexediv, glGetQueryIndexediv)
  glGetQueryIndexediv(target, index, pname, params);
  OGLM_CHECK_ERR(glGetQueryIndexediv, )
#line 32042 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetQueryIndexediv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetQueryIndexediv_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, index, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
#line 15697 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetQueryIndexediv, )
  OGLM_AVAIL_CHECK(__glewGetQueryIndexediv, glGetQueryIndexediv)
  OGLM_SIZE_ENUM(QueryParameterName,pname,1)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  glGetQueryIndexediv(target, index, pname, params);
  OGLM_CHECK_ERR(glGetQueryIndexediv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 32073 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetQueryObjecti64v_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetQueryObjecti64v_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "id, pname, params");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint64*	params = INT2PTR(GLint64 *,SvIV(ST(2)))
;
#line 15715 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetQueryObjecti64v, )
  OGLM_AVAIL_CHECK(__glewGetQueryObjecti64v, glGetQueryObjecti64v)
  glGetQueryObjecti64v(id, pname, params);
  OGLM_CHECK_ERR(glGetQueryObjecti64v, )
#line 32100 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetQueryObjecti64v_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetQueryObjecti64v_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "id, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 15728 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetQueryObjecti64v, )
  OGLM_AVAIL_CHECK(__glewGetQueryObjecti64v, glGetQueryObjecti64v)
  OGLM_SIZE_ENUM(QueryObjectParameterName,pname,1)
  GLint64* params = OGLM_ALLOC(pname_count,GLint64,params);
  glGetQueryObjecti64v(id, pname, params);
  OGLM_CHECK_ERR(glGetQueryObjecti64v, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 32130 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetQueryObjecti64vANGLE_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetQueryObjecti64vANGLE_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "id, pname, params");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint64*	params = INT2PTR(GLint64 *,SvIV(ST(2)))
;
#line 15744 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetQueryObjecti64vANGLE, )
  OGLM_AVAIL_CHECK(__glewGetQueryObjecti64vANGLE, glGetQueryObjecti64vANGLE)
  glGetQueryObjecti64vANGLE(id, pname, params);
  OGLM_CHECK_ERR(glGetQueryObjecti64vANGLE, )
#line 32156 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetQueryObjectiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetQueryObjectiv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "id, pname, params");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 15759 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetQueryObjectiv, )
  OGLM_AVAIL_CHECK(__glewGetQueryObjectiv, glGetQueryObjectiv)
  glGetQueryObjectiv(id, pname, params);
  OGLM_CHECK_ERR(glGetQueryObjectiv, )
#line 32182 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetQueryObjectiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetQueryObjectiv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "id, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 15773 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetQueryObjectiv, )
  OGLM_AVAIL_CHECK(__glewGetQueryObjectiv, glGetQueryObjectiv)
  OGLM_SIZE_ENUM(QueryObjectParameterName,pname,1)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  glGetQueryObjectiv(id, pname, params);
  OGLM_CHECK_ERR(glGetQueryObjectiv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 32212 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetQueryObjectivANGLE_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetQueryObjectivANGLE_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "id, pname, params");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 15789 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetQueryObjectivANGLE, )
  OGLM_AVAIL_CHECK(__glewGetQueryObjectivANGLE, glGetQueryObjectivANGLE)
  glGetQueryObjectivANGLE(id, pname, params);
  OGLM_CHECK_ERR(glGetQueryObjectivANGLE, )
#line 32238 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetQueryObjectui64v_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetQueryObjectui64v_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "id, pname, params");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLuint64*	params = INT2PTR(GLuint64 *,SvIV(ST(2)))
;
#line 15803 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetQueryObjectui64v, )
  OGLM_AVAIL_CHECK(__glewGetQueryObjectui64v, glGetQueryObjectui64v)
  glGetQueryObjectui64v(id, pname, params);
  OGLM_CHECK_ERR(glGetQueryObjectui64v, )
#line 32264 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetQueryObjectui64v_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetQueryObjectui64v_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "id, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 15816 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetQueryObjectui64v, )
  OGLM_AVAIL_CHECK(__glewGetQueryObjectui64v, glGetQueryObjectui64v)
  OGLM_SIZE_ENUM(QueryObjectParameterName,pname,1)
  GLuint64* params = OGLM_ALLOC(pname_count,GLuint64,params);
  glGetQueryObjectui64v(id, pname, params);
  OGLM_CHECK_ERR(glGetQueryObjectui64v, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSVuv)
  free(params);
#line 32294 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetQueryObjectui64vANGLE_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetQueryObjectui64vANGLE_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "id, pname, params");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLuint64*	params = INT2PTR(GLuint64 *,SvIV(ST(2)))
;
#line 15832 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetQueryObjectui64vANGLE, )
  OGLM_AVAIL_CHECK(__glewGetQueryObjectui64vANGLE, glGetQueryObjectui64vANGLE)
  glGetQueryObjectui64vANGLE(id, pname, params);
  OGLM_CHECK_ERR(glGetQueryObjectui64vANGLE, )
#line 32320 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetQueryObjectuiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetQueryObjectuiv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "id, pname, params");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLuint*	params = INT2PTR(GLuint *,SvIV(ST(2)))
;
#line 15846 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetQueryObjectuiv, )
  OGLM_AVAIL_CHECK(__glewGetQueryObjectuiv, glGetQueryObjectuiv)
  glGetQueryObjectuiv(id, pname, params);
  OGLM_CHECK_ERR(glGetQueryObjectuiv, )
#line 32346 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetQueryObjectuiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetQueryObjectuiv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "id, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 15859 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetQueryObjectuiv, )
  OGLM_AVAIL_CHECK(__glewGetQueryObjectuiv, glGetQueryObjectuiv)
  OGLM_SIZE_ENUM(QueryObjectParameterName,pname,1)
  GLuint* params = OGLM_ALLOC(pname_count,GLuint,params);
  glGetQueryObjectuiv(id, pname, params);
  OGLM_CHECK_ERR(glGetQueryObjectuiv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSVuv)
  free(params);
#line 32376 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetQueryObjectuivANGLE_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetQueryObjectuivANGLE_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "id, pname, params");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLuint*	params = INT2PTR(GLuint *,SvIV(ST(2)))
;
#line 15875 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetQueryObjectuivANGLE, )
  OGLM_AVAIL_CHECK(__glewGetQueryObjectuivANGLE, glGetQueryObjectuivANGLE)
  glGetQueryObjectuivANGLE(id, pname, params);
  OGLM_CHECK_ERR(glGetQueryObjectuivANGLE, )
#line 32402 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetQueryObjectuivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetQueryObjectuivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "id, pname, params");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLuint*	params = INT2PTR(GLuint *,SvIV(ST(2)))
;
#line 15887 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetQueryObjectuivEXT, )
  OGLM_AVAIL_CHECK(__glewGetQueryObjectuivEXT, glGetQueryObjectuivEXT)
  glGetQueryObjectuivEXT(id, pname, params);
  OGLM_CHECK_ERR(glGetQueryObjectuivEXT, )
#line 32427 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetQueryObjectuivEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetQueryObjectuivEXT_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "id, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 15898 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetQueryObjectuivEXT, )
  OGLM_AVAIL_CHECK(__glewGetQueryObjectuivEXT, glGetQueryObjectuivEXT)
  OGLM_SIZE_ENUM(QueryObjectParameterName,pname,1)
  GLuint* params = OGLM_ALLOC(pname_count,GLuint,params);
  glGetQueryObjectuivEXT(id, pname, params);
  OGLM_CHECK_ERR(glGetQueryObjectuivEXT, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSVuv)
  free(params);
#line 32456 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetQueryiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetQueryiv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 15916 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetQueryiv, )
  OGLM_AVAIL_CHECK(__glewGetQueryiv, glGetQueryiv)
  glGetQueryiv(target, pname, params);
  OGLM_CHECK_ERR(glGetQueryiv, )
#line 32483 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetQueryiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetQueryiv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 15929 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetQueryiv, )
  OGLM_AVAIL_CHECK(__glewGetQueryiv, glGetQueryiv)
  OGLM_SIZE_ENUM(QueryParameterName,pname,1)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  glGetQueryiv(target, pname, params);
  OGLM_CHECK_ERR(glGetQueryiv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 32513 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetQueryivANGLE_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetQueryivANGLE_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 15945 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetQueryivANGLE, )
  OGLM_AVAIL_CHECK(__glewGetQueryivANGLE, glGetQueryivANGLE)
  glGetQueryivANGLE(target, pname, params);
  OGLM_CHECK_ERR(glGetQueryivANGLE, )
#line 32539 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetQueryivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetQueryivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 15957 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetQueryivEXT, )
  OGLM_AVAIL_CHECK(__glewGetQueryivEXT, glGetQueryivEXT)
  glGetQueryivEXT(target, pname, params);
  OGLM_CHECK_ERR(glGetQueryivEXT, )
#line 32564 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetQueryivEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetQueryivEXT_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 15968 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetQueryivEXT, )
  OGLM_AVAIL_CHECK(__glewGetQueryivEXT, glGetQueryivEXT)
  OGLM_SIZE_ENUM(QueryParameterName,pname,1)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  glGetQueryivEXT(target, pname, params);
  OGLM_CHECK_ERR(glGetQueryivEXT, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 32593 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetRenderbufferParameteriv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetRenderbufferParameteriv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 15986 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetRenderbufferParameteriv, )
  OGLM_AVAIL_CHECK(__glewGetRenderbufferParameteriv, glGetRenderbufferParameteriv)
  glGetRenderbufferParameteriv(target, pname, params);
  OGLM_CHECK_ERR(glGetRenderbufferParameteriv, )
#line 32620 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetRenderbufferParameteriv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetRenderbufferParameteriv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 15999 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetRenderbufferParameteriv, )
  OGLM_AVAIL_CHECK(__glewGetRenderbufferParameteriv, glGetRenderbufferParameteriv)
  OGLM_SIZE_ENUM(RenderbufferParameterName,pname,1)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  glGetRenderbufferParameteriv(target, pname, params);
  OGLM_CHECK_ERR(glGetRenderbufferParameteriv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 32650 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetRenderbufferParameterivOES_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetRenderbufferParameterivOES_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 16015 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetRenderbufferParameterivOES, )
  OGLM_AVAIL_CHECK(__glewGetRenderbufferParameterivOES, glGetRenderbufferParameterivOES)
  glGetRenderbufferParameterivOES(target, pname, params);
  OGLM_CHECK_ERR(glGetRenderbufferParameterivOES, )
#line 32676 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetSamplerParameterIiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetSamplerParameterIiv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "sampler, pname, params");
    {
	GLuint	sampler = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 16029 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetSamplerParameterIiv, )
  OGLM_AVAIL_CHECK(__glewGetSamplerParameterIiv, glGetSamplerParameterIiv)
  glGetSamplerParameterIiv(sampler, pname, params);
  OGLM_CHECK_ERR(glGetSamplerParameterIiv, )
#line 32702 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetSamplerParameterIiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetSamplerParameterIiv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "sampler, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	sampler = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 16042 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetSamplerParameterIiv, )
  OGLM_AVAIL_CHECK(__glewGetSamplerParameterIiv, glGetSamplerParameterIiv)
  OGLM_SIZE_ENUM(SamplerParameterI,pname,1)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  glGetSamplerParameterIiv(sampler, pname, params);
  OGLM_CHECK_ERR(glGetSamplerParameterIiv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 32732 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetSamplerParameterIivOES_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetSamplerParameterIivOES_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "sampler, pname, params");
    {
	GLuint	sampler = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 16058 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetSamplerParameterIivOES, )
  OGLM_AVAIL_CHECK(__glewGetSamplerParameterIivOES, glGetSamplerParameterIivOES)
  glGetSamplerParameterIivOES(sampler, pname, params);
  OGLM_CHECK_ERR(glGetSamplerParameterIivOES, )
#line 32758 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetSamplerParameterIuiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetSamplerParameterIuiv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "sampler, pname, params");
    {
	GLuint	sampler = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLuint*	params = INT2PTR(GLuint *,SvIV(ST(2)))
;
#line 16072 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetSamplerParameterIuiv, )
  OGLM_AVAIL_CHECK(__glewGetSamplerParameterIuiv, glGetSamplerParameterIuiv)
  glGetSamplerParameterIuiv(sampler, pname, params);
  OGLM_CHECK_ERR(glGetSamplerParameterIuiv, )
#line 32784 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetSamplerParameterIuiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetSamplerParameterIuiv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "sampler, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	sampler = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 16085 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetSamplerParameterIuiv, )
  OGLM_AVAIL_CHECK(__glewGetSamplerParameterIuiv, glGetSamplerParameterIuiv)
  OGLM_SIZE_ENUM(SamplerParameterI,pname,1)
  GLuint* params = OGLM_ALLOC(pname_count,GLuint,params);
  glGetSamplerParameterIuiv(sampler, pname, params);
  OGLM_CHECK_ERR(glGetSamplerParameterIuiv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSVuv)
  free(params);
#line 32814 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetSamplerParameterIuivOES_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetSamplerParameterIuivOES_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "sampler, pname, params");
    {
	GLuint	sampler = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLuint*	params = INT2PTR(GLuint *,SvIV(ST(2)))
;
#line 16101 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetSamplerParameterIuivOES, )
  OGLM_AVAIL_CHECK(__glewGetSamplerParameterIuivOES, glGetSamplerParameterIuivOES)
  glGetSamplerParameterIuivOES(sampler, pname, params);
  OGLM_CHECK_ERR(glGetSamplerParameterIuivOES, )
#line 32840 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetSamplerParameterfv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetSamplerParameterfv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "sampler, pname, params");
    {
	GLuint	sampler = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 16113 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetSamplerParameterfv, )
  OGLM_AVAIL_CHECK(__glewGetSamplerParameterfv, glGetSamplerParameterfv)
  glGetSamplerParameterfv(sampler, pname, params);
  OGLM_CHECK_ERR(glGetSamplerParameterfv, )
#line 32865 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetSamplerParameterfv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetSamplerParameterfv_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "sampler, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	sampler = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 16124 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetSamplerParameterfv, )
  OGLM_AVAIL_CHECK(__glewGetSamplerParameterfv, glGetSamplerParameterfv)
  OGLM_SIZE_ENUM(SamplerParameterF,pname,1)
  GLfloat* params = OGLM_ALLOC(pname_count,GLfloat,params);
  glGetSamplerParameterfv(sampler, pname, params);
  OGLM_CHECK_ERR(glGetSamplerParameterfv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSVnv)
  free(params);
#line 32894 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetSamplerParameteriv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetSamplerParameteriv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "sampler, pname, params");
    {
	GLuint	sampler = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 16140 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetSamplerParameteriv, )
  OGLM_AVAIL_CHECK(__glewGetSamplerParameteriv, glGetSamplerParameteriv)
  glGetSamplerParameteriv(sampler, pname, params);
  OGLM_CHECK_ERR(glGetSamplerParameteriv, )
#line 32920 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetSamplerParameteriv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetSamplerParameteriv_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "sampler, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	sampler = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 16151 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetSamplerParameteriv, )
  OGLM_AVAIL_CHECK(__glewGetSamplerParameteriv, glGetSamplerParameteriv)
  OGLM_SIZE_ENUM(SamplerParameterI,pname,1)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  glGetSamplerParameteriv(sampler, pname, params);
  OGLM_CHECK_ERR(glGetSamplerParameteriv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 32949 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetSemaphoreParameterivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetSemaphoreParameterivNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "semaphore, pname, params");
    {
	GLuint	semaphore = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 16167 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetSemaphoreParameterivNV, )
  OGLM_AVAIL_CHECK(__glewGetSemaphoreParameterivNV, glGetSemaphoreParameterivNV)
  glGetSemaphoreParameterivNV(semaphore, pname, params);
  OGLM_CHECK_ERR(glGetSemaphoreParameterivNV, )
#line 32975 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetSemaphoreParameterui64vEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetSemaphoreParameterui64vEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "semaphore, pname, params");
    {
	GLuint	semaphore = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLuint64*	params = INT2PTR(GLuint64 *,SvIV(ST(2)))
;
#line 16179 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetSemaphoreParameterui64vEXT, )
  OGLM_AVAIL_CHECK(__glewGetSemaphoreParameterui64vEXT, glGetSemaphoreParameterui64vEXT)
  glGetSemaphoreParameterui64vEXT(semaphore, pname, params);
  OGLM_CHECK_ERR(glGetSemaphoreParameterui64vEXT, )
#line 33000 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetSeparableFilter_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetSeparableFilter_c)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "target, format, type, row, column, span");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	format = (int)SvIV(ST(1))
;
	GLenum	type = (int)SvIV(ST(2))
;
	void *	row = INT2PTR(void *,SvIV(ST(3)))
;
	void *	column = INT2PTR(void *,SvIV(ST(4)))
;
	void *	span = INT2PTR(void *,SvIV(ST(5)))
;
#line 16194 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetSeparableFilter, )
  OGLM_AVAIL_CHECK(__glewGetSeparableFilter, glGetSeparableFilter)
  glGetSeparableFilter(target, format, type, row, column, span);
  OGLM_CHECK_ERR(glGetSeparableFilter, )
#line 33031 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetSeparableFilterEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetSeparableFilterEXT_c)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "target, format, type, row, column, span");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	format = (int)SvIV(ST(1))
;
	GLenum	type = (int)SvIV(ST(2))
;
	void *	row = INT2PTR(void *,SvIV(ST(3)))
;
	void *	column = INT2PTR(void *,SvIV(ST(4)))
;
	void *	span = INT2PTR(void *,SvIV(ST(5)))
;
#line 16209 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetSeparableFilterEXT, )
  OGLM_AVAIL_CHECK(__glewGetSeparableFilterEXT, glGetSeparableFilterEXT)
  glGetSeparableFilterEXT(target, format, type, row, column, span);
  OGLM_CHECK_ERR(glGetSeparableFilterEXT, )
#line 33062 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetShaderInfoLog_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetShaderInfoLog_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "shader, bufSize, length, infoLog");
    {
	GLuint	shader = (unsigned int)SvUV(ST(0))
;
	GLsizei	bufSize = (int)SvIV(ST(1))
;
	GLsizei*	length = INT2PTR(GLsizei *,SvIV(ST(2)))
;
	GLchar*	infoLog = (GLchar *)SvPV_nolen(ST(3))
;
#line 16222 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetShaderInfoLog, )
  OGLM_AVAIL_CHECK(__glewGetShaderInfoLog, glGetShaderInfoLog)
  glGetShaderInfoLog(shader, bufSize, length, infoLog);
  OGLM_CHECK_ERR(glGetShaderInfoLog, )
#line 33089 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetShaderInfoLog_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetShaderInfoLog_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "shader");
    {
	GLuint	shader = (unsigned int)SvUV(ST(0))
;
	GLchar *	RETVAL;
	dXSTARG;
#line 16232 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetShaderInfoLog, )
  OGLM_AVAIL_CHECK(__glewGetShaderInfoLog, glGetShaderInfoLog)
  OGLM_AVAIL_CHECK(__glewGetShaderiv, glGetShaderiv)
  GLsizei bufSize;
  glGetShaderiv(shader,GL_INFO_LOG_LENGTH,&bufSize);
  GLsizei* length = NULL;
  GLchar infoLog[bufSize];
  glGetShaderInfoLog(shader, bufSize, length, infoLog);
  OGLM_CHECK_ERR(glGetShaderInfoLog, )
  RETVAL = infoLog;
#line 33118 "lib/OpenGL/Modern.c"
	sv_setpv(TARG, RETVAL);
	XSprePUSH;
	PUSHTARG;
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetShaderPrecisionFormat_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetShaderPrecisionFormat_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "shadertype, precisiontype, range, precision");
    {
	GLenum	shadertype = (int)SvIV(ST(0))
;
	GLenum	precisiontype = (int)SvIV(ST(1))
;
	GLint*	range = INT2PTR(GLint *,SvIV(ST(2)))
;
	GLint *	precision = INT2PTR(GLint *,SvIV(ST(3)))
;
#line 16253 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetShaderPrecisionFormat, )
  OGLM_AVAIL_CHECK(__glewGetShaderPrecisionFormat, glGetShaderPrecisionFormat)
  glGetShaderPrecisionFormat(shadertype, precisiontype, range, precision);
  OGLM_CHECK_ERR(glGetShaderPrecisionFormat, )
#line 33148 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetShaderPrecisionFormat_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetShaderPrecisionFormat_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "shadertype, precisiontype");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	shadertype = (int)SvIV(ST(0))
;
	GLenum	precisiontype = (int)SvIV(ST(1))
;
#line 16264 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetShaderPrecisionFormat, )
  OGLM_AVAIL_CHECK(__glewGetShaderPrecisionFormat, glGetShaderPrecisionFormat)
  GLint* range = OGLM_ALLOC(2,GLint,range);
  GLint precision[1];
  glGetShaderPrecisionFormat(shadertype, precisiontype, range, precision);
  OGLM_CHECK_ERR(glGetShaderPrecisionFormat, free(range);)
  EXTEND(sp, 2);
  OGLM_PUSH_ARRAY(glGetShaderPrecisionFormat, newSViv, range, 2)
  mPUSHs(newSViv(precision[0]));
  free(range);
#line 33179 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetShaderSource_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetShaderSource_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "shader, bufSize, length, source");
    {
	GLuint	shader = (unsigned int)SvUV(ST(0))
;
	GLsizei	bufSize = (int)SvIV(ST(1))
;
	GLsizei*	length = INT2PTR(GLsizei *,SvIV(ST(2)))
;
	GLchar*	source = (GLchar *)SvPV_nolen(ST(3))
;
#line 16283 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetShaderSource, )
  OGLM_AVAIL_CHECK(__glewGetShaderSource, glGetShaderSource)
  glGetShaderSource(shader, bufSize, length, source);
  OGLM_CHECK_ERR(glGetShaderSource, )
#line 33207 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetShaderSource_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetShaderSource_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "shader");
    {
	GLuint	shader = (unsigned int)SvUV(ST(0))
;
	GLchar *	RETVAL;
	dXSTARG;
#line 16293 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetShaderSource, )
  OGLM_AVAIL_CHECK(__glewGetShaderSource, glGetShaderSource)
  OGLM_AVAIL_CHECK(__glewGetShaderiv, glGetShaderiv)
  GLsizei bufSize;
  glGetShaderiv(shader,GL_SHADER_SOURCE_LENGTH,&bufSize);
  GLsizei* length = NULL;
  GLchar source[bufSize];
  glGetShaderSource(shader, bufSize, length, source);
  OGLM_CHECK_ERR(glGetShaderSource, )
  RETVAL = source;
#line 33236 "lib/OpenGL/Modern.c"
	sv_setpv(TARG, RETVAL);
	XSprePUSH;
	PUSHTARG;
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetShaderSourceARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetShaderSourceARB_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "shader, bufSize, length, source");
    {
	GLhandleARB	shader = (unsigned int)SvUV(ST(0))
;
	GLsizei	bufSize = (int)SvIV(ST(1))
;
	GLsizei*	length = INT2PTR(GLsizei *,SvIV(ST(2)))
;
	GLcharARB *	source = (GLcharARB *)SvPV_nolen(ST(3))
;
#line 16314 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetShaderSourceARB, )
  OGLM_AVAIL_CHECK(__glewGetShaderSourceARB, glGetShaderSourceARB)
  glGetShaderSourceARB(shader, bufSize, length, source);
  OGLM_CHECK_ERR(glGetShaderSourceARB, )
#line 33266 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetShaderSourceARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetShaderSourceARB_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "shader");
    {
	GLhandleARB	shader = (unsigned int)SvUV(ST(0))
;
	GLcharARB *	RETVAL;
	dXSTARG;
#line 16324 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetShaderSourceARB, )
  OGLM_AVAIL_CHECK(__glewGetShaderSourceARB, glGetShaderSourceARB)
  OGLM_AVAIL_CHECK(__glewGetShaderiv, glGetShaderiv)
  GLsizei bufSize;
  glGetShaderiv(shader,GL_SHADER_SOURCE_LENGTH,&bufSize);
  GLsizei* length = NULL;
  GLcharARB source[bufSize];
  glGetShaderSourceARB(shader, bufSize, length, source);
  OGLM_CHECK_ERR(glGetShaderSourceARB, )
  RETVAL = source;
#line 33295 "lib/OpenGL/Modern.c"
	sv_setpv(TARG, RETVAL);
	XSprePUSH;
	PUSHTARG;
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetShaderiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetShaderiv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "shader, pname, params");
    {
	GLuint	shader = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 16344 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetShaderiv, )
  OGLM_AVAIL_CHECK(__glewGetShaderiv, glGetShaderiv)
  glGetShaderiv(shader, pname, params);
  OGLM_CHECK_ERR(glGetShaderiv, )
#line 33323 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetShaderiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetShaderiv_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "shader, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	shader = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 16355 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetShaderiv, )
  OGLM_AVAIL_CHECK(__glewGetShaderiv, glGetShaderiv)
  OGLM_SIZE_ENUM(ShaderParameterName,pname,1)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  glGetShaderiv(shader, pname, params);
  OGLM_CHECK_ERR(glGetShaderiv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 33352 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetShadingRateImagePaletteNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetShadingRateImagePaletteNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "viewport, entry, rate");
    {
	GLuint	viewport = (unsigned int)SvUV(ST(0))
;
	GLuint	entry = (unsigned int)SvUV(ST(1))
;
	GLenum*	rate = INT2PTR(GLenum *,SvIV(ST(2)))
;
#line 16371 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetShadingRateImagePaletteNV, )
  OGLM_AVAIL_CHECK(__glewGetShadingRateImagePaletteNV, glGetShadingRateImagePaletteNV)
  glGetShadingRateImagePaletteNV(viewport, entry, rate);
  OGLM_CHECK_ERR(glGetShadingRateImagePaletteNV, )
#line 33378 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetShadingRateImagePaletteNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetShadingRateImagePaletteNV_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "viewport, entry");
    {
	GLuint	viewport = (unsigned int)SvUV(ST(0))
;
	GLuint	entry = (unsigned int)SvUV(ST(1))
;
	GLenum	RETVAL;
	dXSTARG;
#line 16382 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetShadingRateImagePaletteNV, )
  OGLM_AVAIL_CHECK(__glewGetShadingRateImagePaletteNV, glGetShadingRateImagePaletteNV)
  GLenum rate[1];
  glGetShadingRateImagePaletteNV(viewport, entry, rate);
  OGLM_CHECK_ERR(glGetShadingRateImagePaletteNV, )
  RETVAL = rate[0];
#line 33405 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetShadingRateSampleLocationivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetShadingRateSampleLocationivNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "rate, samples, index, location");
    {
	GLenum	rate = (int)SvIV(ST(0))
;
	GLuint	samples = (unsigned int)SvUV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
	GLint*	location = INT2PTR(GLint *,SvIV(ST(3)))
;
#line 16399 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetShadingRateSampleLocationivNV, )
  OGLM_AVAIL_CHECK(__glewGetShadingRateSampleLocationivNV, glGetShadingRateSampleLocationivNV)
  glGetShadingRateSampleLocationivNV(rate, samples, index, location);
  OGLM_CHECK_ERR(glGetShadingRateSampleLocationivNV, )
#line 33434 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetShadingRateSampleLocationivNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetShadingRateSampleLocationivNV_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "rate, samples, index");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	rate = (int)SvIV(ST(0))
;
	GLuint	samples = (unsigned int)SvUV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
#line 16411 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetShadingRateSampleLocationivNV, )
  OGLM_AVAIL_CHECK(__glewGetShadingRateSampleLocationivNV, glGetShadingRateSampleLocationivNV)
  GLint* location = OGLM_ALLOC(3,GLint,location);
  glGetShadingRateSampleLocationivNV(rate, samples, index, location);
  OGLM_CHECK_ERR(glGetShadingRateSampleLocationivNV, free(location);)
  OGLM_OUT_FINISH(location,3,newSViv)
  free(location);
#line 33464 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetSharpenTexFuncSGIS_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetSharpenTexFuncSGIS_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, points");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLfloat*	points = INT2PTR(GLfloat *,SvIV(ST(1)))
;
#line 16425 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetSharpenTexFuncSGIS, )
  OGLM_AVAIL_CHECK(__glewGetSharpenTexFuncSGIS, glGetSharpenTexFuncSGIS)
  glGetSharpenTexFuncSGIS(target, points);
  OGLM_CHECK_ERR(glGetSharpenTexFuncSGIS, )
#line 33488 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetSharpenTexFuncSGIS_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetSharpenTexFuncSGIS_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "target");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
#line 16435 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetSharpenTexFuncSGIS, )
  OGLM_AVAIL_CHECK(__glewGetSharpenTexFuncSGIS, glGetSharpenTexFuncSGIS)
  OGLM_SIZE_ENUM(TextureTarget,target,1)
  GLfloat* points = OGLM_ALLOC(target_count,GLfloat,points);
  glGetSharpenTexFuncSGIS(target, points);
  OGLM_CHECK_ERR(glGetSharpenTexFuncSGIS, free(points);)
  OGLM_OUT_FINISH(points,target_count,newSVnv)
  free(points);
#line 33515 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetStageIndexNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetStageIndexNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "shadertype");
    {
	GLenum	shadertype = (int)SvIV(ST(0))
;
	GLushort	RETVAL;
	dXSTARG;
#line 16449 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetStageIndexNV, )
  OGLM_AVAIL_CHECK(__glewGetStageIndexNV, glGetStageIndexNV)
  RETVAL = glGetStageIndexNV(shadertype);
  OGLM_CHECK_ERR(glGetStageIndexNV, )
#line 33539 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetString); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetString)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "name");
    {
	GLenum	name = (int)SvIV(ST(0))
;
	const GLubyte *	RETVAL;
	dXSTARG;
#line 16461 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetString, )
  RETVAL = glGetString(name);
  OGLM_CHECK_ERR(glGetString, )
#line 33563 "lib/OpenGL/Modern.c"
	sv_setpv(TARG, (void*)RETVAL);
	XSprePUSH;
	PUSHTARG;
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetSubroutineIndex); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetSubroutineIndex)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, shadertype, name");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	shadertype = (int)SvIV(ST(1))
;
	const GLchar*	name = (const GLchar *)SvPV_nolen(ST(2))
;
	GLuint	RETVAL;
	dXSTARG;
#line 16474 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetSubroutineIndex, )
  OGLM_AVAIL_CHECK(__glewGetSubroutineIndex, glGetSubroutineIndex)
  RETVAL = glGetSubroutineIndex(program, shadertype, name);
  OGLM_CHECK_ERR(glGetSubroutineIndex, )
#line 33593 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetSubroutineUniformLocation); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetSubroutineUniformLocation)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, shadertype, name");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	shadertype = (int)SvIV(ST(1))
;
	const GLchar*	name = (const GLchar *)SvPV_nolen(ST(2))
;
	GLint	RETVAL;
	dXSTARG;
#line 16488 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetSubroutineUniformLocation, )
  OGLM_AVAIL_CHECK(__glewGetSubroutineUniformLocation, glGetSubroutineUniformLocation)
  RETVAL = glGetSubroutineUniformLocation(program, shadertype, name);
  OGLM_CHECK_ERR(glGetSubroutineUniformLocation, )
#line 33622 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetSynciv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetSynciv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "sync, pname, count, length, values");
    {
	GLsync	sync = INT2PTR(GLsync,SvIV(ST(0)))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLsizei*	length = INT2PTR(GLsizei *,SvIV(ST(3)))
;
	GLint *	values = INT2PTR(GLint *,SvIV(ST(4)))
;
#line 16506 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetSynciv, )
  OGLM_AVAIL_CHECK(__glewGetSynciv, glGetSynciv)
  glGetSynciv(sync, pname, count, length, values);
  OGLM_CHECK_ERR(glGetSynciv, )
#line 33654 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetSynciv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetSynciv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "sync, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLsync	sync = INT2PTR(GLsync,SvIV(ST(0)))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 16519 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetSynciv, )
  OGLM_AVAIL_CHECK(__glewGetSynciv, glGetSynciv)
  GLsizei count = sizeof(GLint);
  GLsizei* length = NULL;
  OGLM_SIZE_ENUM(SyncParameterName,pname,1)
  GLint *values = OGLM_ALLOC(pname_count,GLint,values);
  glGetSynciv(sync, pname, count, length, values);
  OGLM_CHECK_ERR(glGetSynciv, free(values);)
  OGLM_OUT_FINISH(values,pname_count,newSViv)
  free(values);
#line 33686 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetTexBumpParameterfvATI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTexBumpParameterfvATI_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, param");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLfloat *	param = INT2PTR(GLfloat *,SvIV(ST(1)))
;
#line 16536 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTexBumpParameterfvATI, )
  OGLM_AVAIL_CHECK(__glewGetTexBumpParameterfvATI, glGetTexBumpParameterfvATI)
  glGetTexBumpParameterfvATI(pname, param);
  OGLM_CHECK_ERR(glGetTexBumpParameterfvATI, )
#line 33710 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTexBumpParameterivATI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTexBumpParameterivATI_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, param");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLint *	param = INT2PTR(GLint *,SvIV(ST(1)))
;
#line 16547 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTexBumpParameterivATI, )
  OGLM_AVAIL_CHECK(__glewGetTexBumpParameterivATI, glGetTexBumpParameterivATI)
  glGetTexBumpParameterivATI(pname, param);
  OGLM_CHECK_ERR(glGetTexBumpParameterivATI, )
#line 33733 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTexEnvfv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTexEnvfv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat *	params = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 16559 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTexEnvfv, )
  glGetTexEnvfv(target, pname, params);
  OGLM_CHECK_ERR(glGetTexEnvfv, )
#line 33757 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTexEnvfv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTexEnvfv_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 16569 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTexEnvfv, )
  OGLM_SIZE_ENUM(TextureEnvParameter,pname,1)
  GLfloat *params = OGLM_ALLOC(pname_count,GLfloat,params);
  glGetTexEnvfv(target, pname, params);
  OGLM_CHECK_ERR(glGetTexEnvfv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSVnv)
  free(params);
#line 33785 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetTexEnviv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTexEnviv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint *	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 16584 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTexEnviv, )
  glGetTexEnviv(target, pname, params);
  OGLM_CHECK_ERR(glGetTexEnviv, )
#line 33810 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTexEnviv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTexEnviv_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 16594 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTexEnviv, )
  OGLM_SIZE_ENUM(TextureEnvParameter,pname,1)
  GLint *params = OGLM_ALLOC(pname_count,GLint,params);
  glGetTexEnviv(target, pname, params);
  OGLM_CHECK_ERR(glGetTexEnviv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 33838 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetTexEnvxv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTexEnvxv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfixed*	params = INT2PTR(GLfixed *,SvIV(ST(2)))
;
#line 16609 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTexEnvxv, )
  OGLM_AVAIL_CHECK(__glewGetTexEnvxv, glGetTexEnvxv)
  glGetTexEnvxv(target, pname, params);
  OGLM_CHECK_ERR(glGetTexEnvxv, )
#line 33864 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTexEnvxv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTexEnvxv_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 16620 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTexEnvxv, )
  OGLM_AVAIL_CHECK(__glewGetTexEnvxv, glGetTexEnvxv)
  OGLM_SIZE_ENUM(TextureEnvParameter,pname,1)
  GLfixed* params = OGLM_ALLOC(pname_count,GLfixed,params);
  glGetTexEnvxv(target, pname, params);
  OGLM_CHECK_ERR(glGetTexEnvxv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 33893 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetTexFilterFuncSGIS_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTexFilterFuncSGIS_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, filter, weights");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	filter = (int)SvIV(ST(1))
;
	GLfloat*	weights = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 16636 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTexFilterFuncSGIS, )
  OGLM_AVAIL_CHECK(__glewGetTexFilterFuncSGIS, glGetTexFilterFuncSGIS)
  glGetTexFilterFuncSGIS(target, filter, weights);
  OGLM_CHECK_ERR(glGetTexFilterFuncSGIS, )
#line 33919 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTexGendv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTexGendv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "coord, pname, params");
    {
	GLenum	coord = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLdouble *	params = INT2PTR(GLdouble *,SvIV(ST(2)))
;
#line 16648 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTexGendv, )
  glGetTexGendv(coord, pname, params);
  OGLM_CHECK_ERR(glGetTexGendv, )
#line 33943 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTexGendv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTexGendv_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "coord, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	coord = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 16658 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTexGendv, )
  OGLM_SIZE_ENUM(TextureGenParameter,pname,1)
  GLdouble *params = OGLM_ALLOC(pname_count,GLdouble,params);
  glGetTexGendv(coord, pname, params);
  OGLM_CHECK_ERR(glGetTexGendv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSVnv)
  free(params);
#line 33971 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetTexGenfv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTexGenfv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "coord, pname, params");
    {
	GLenum	coord = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat *	params = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 16673 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTexGenfv, )
  glGetTexGenfv(coord, pname, params);
  OGLM_CHECK_ERR(glGetTexGenfv, )
#line 33996 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTexGenfv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTexGenfv_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "coord, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	coord = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 16683 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTexGenfv, )
  OGLM_SIZE_ENUM(TextureGenParameter,pname,1)
  GLfloat *params = OGLM_ALLOC(pname_count,GLfloat,params);
  glGetTexGenfv(coord, pname, params);
  OGLM_CHECK_ERR(glGetTexGenfv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSVnv)
  free(params);
#line 34024 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetTexGenfvOES_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTexGenfvOES_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "coord, pname, params");
    {
	GLenum	coord = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 16698 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTexGenfvOES, )
  OGLM_AVAIL_CHECK(__glewGetTexGenfvOES, glGetTexGenfvOES)
  glGetTexGenfvOES(coord, pname, params);
  OGLM_CHECK_ERR(glGetTexGenfvOES, )
#line 34050 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTexGeniv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTexGeniv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "coord, pname, params");
    {
	GLenum	coord = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint *	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 16710 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTexGeniv, )
  glGetTexGeniv(coord, pname, params);
  OGLM_CHECK_ERR(glGetTexGeniv, )
#line 34074 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTexGeniv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTexGeniv_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "coord, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	coord = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 16720 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTexGeniv, )
  OGLM_SIZE_ENUM(TextureGenParameter,pname,1)
  GLint *params = OGLM_ALLOC(pname_count,GLint,params);
  glGetTexGeniv(coord, pname, params);
  OGLM_CHECK_ERR(glGetTexGeniv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 34102 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetTexGenivOES_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTexGenivOES_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "coord, pname, params");
    {
	GLenum	coord = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 16735 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTexGenivOES, )
  OGLM_AVAIL_CHECK(__glewGetTexGenivOES, glGetTexGenivOES)
  glGetTexGenivOES(coord, pname, params);
  OGLM_CHECK_ERR(glGetTexGenivOES, )
#line 34128 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTexGenxvOES_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTexGenxvOES_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "coord, pname, params");
    {
	GLenum	coord = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfixed*	params = INT2PTR(GLfixed *,SvIV(ST(2)))
;
#line 16747 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTexGenxvOES, )
  OGLM_AVAIL_CHECK(__glewGetTexGenxvOES, glGetTexGenxvOES)
  glGetTexGenxvOES(coord, pname, params);
  OGLM_CHECK_ERR(glGetTexGenxvOES, )
#line 34153 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTexImage_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTexImage_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "target, level, format, type, pixels");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLenum	format = (int)SvIV(ST(2))
;
	GLenum	type = (int)SvIV(ST(3))
;
	void *	pixels = INT2PTR(void *,SvIV(ST(4)))
;
#line 16761 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTexImage, )
  glGetTexImage(target, level, format, type, pixels);
  OGLM_CHECK_ERR(glGetTexImage, )
#line 34181 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTexLevelParameterfv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTexLevelParameterfv_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, level, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLfloat *	params = INT2PTR(GLfloat *,SvIV(ST(3)))
;
#line 16773 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTexLevelParameterfv, )
  glGetTexLevelParameterfv(target, level, pname, params);
  OGLM_CHECK_ERR(glGetTexLevelParameterfv, )
#line 34207 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTexLevelParameterfv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTexLevelParameterfv_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, level, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
#line 16784 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTexLevelParameterfv, )
  OGLM_SIZE_ENUM(GetTextureParameter,pname,1)
  GLfloat *params = OGLM_ALLOC(pname_count,GLfloat,params);
  glGetTexLevelParameterfv(target, level, pname, params);
  OGLM_CHECK_ERR(glGetTexLevelParameterfv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSVnv)
  free(params);
#line 34237 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetTexLevelParameteriv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTexLevelParameteriv_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, level, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLint *	params = INT2PTR(GLint *,SvIV(ST(3)))
;
#line 16800 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTexLevelParameteriv, )
  glGetTexLevelParameteriv(target, level, pname, params);
  OGLM_CHECK_ERR(glGetTexLevelParameteriv, )
#line 34264 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTexLevelParameteriv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTexLevelParameteriv_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, level, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
#line 16811 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTexLevelParameteriv, )
  OGLM_SIZE_ENUM(GetTextureParameter,pname,1)
  GLint *params = OGLM_ALLOC(pname_count,GLint,params);
  glGetTexLevelParameteriv(target, level, pname, params);
  OGLM_CHECK_ERR(glGetTexLevelParameteriv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 34294 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetTexParameterIiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTexParameterIiv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 16828 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTexParameterIiv, )
  OGLM_AVAIL_CHECK(__glewGetTexParameterIiv, glGetTexParameterIiv)
  glGetTexParameterIiv(target, pname, params);
  OGLM_CHECK_ERR(glGetTexParameterIiv, )
#line 34321 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTexParameterIiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTexParameterIiv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 16841 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTexParameterIiv, )
  OGLM_AVAIL_CHECK(__glewGetTexParameterIiv, glGetTexParameterIiv)
  OGLM_SIZE_ENUM(GetTextureParameter,pname,1)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  glGetTexParameterIiv(target, pname, params);
  OGLM_CHECK_ERR(glGetTexParameterIiv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 34351 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetTexParameterIivOES_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTexParameterIivOES_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 16857 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTexParameterIivOES, )
  OGLM_AVAIL_CHECK(__glewGetTexParameterIivOES, glGetTexParameterIivOES)
  glGetTexParameterIivOES(target, pname, params);
  OGLM_CHECK_ERR(glGetTexParameterIivOES, )
#line 34377 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTexParameterIuiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTexParameterIuiv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLuint*	params = INT2PTR(GLuint *,SvIV(ST(2)))
;
#line 16871 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTexParameterIuiv, )
  OGLM_AVAIL_CHECK(__glewGetTexParameterIuiv, glGetTexParameterIuiv)
  glGetTexParameterIuiv(target, pname, params);
  OGLM_CHECK_ERR(glGetTexParameterIuiv, )
#line 34403 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTexParameterIuiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTexParameterIuiv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 16884 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTexParameterIuiv, )
  OGLM_AVAIL_CHECK(__glewGetTexParameterIuiv, glGetTexParameterIuiv)
  OGLM_SIZE_ENUM(GetTextureParameter,pname,1)
  GLuint* params = OGLM_ALLOC(pname_count,GLuint,params);
  glGetTexParameterIuiv(target, pname, params);
  OGLM_CHECK_ERR(glGetTexParameterIuiv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSVuv)
  free(params);
#line 34433 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetTexParameterIuivOES_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTexParameterIuivOES_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLuint*	params = INT2PTR(GLuint *,SvIV(ST(2)))
;
#line 16900 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTexParameterIuivOES, )
  OGLM_AVAIL_CHECK(__glewGetTexParameterIuivOES, glGetTexParameterIuivOES)
  glGetTexParameterIuivOES(target, pname, params);
  OGLM_CHECK_ERR(glGetTexParameterIuivOES, )
#line 34459 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTexParameterPointervAPPLE_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTexParameterPointervAPPLE_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	void **	params = INT2PTR(void **,SvIV(ST(2)))
;
#line 16912 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTexParameterPointervAPPLE, )
  OGLM_AVAIL_CHECK(__glewGetTexParameterPointervAPPLE, glGetTexParameterPointervAPPLE)
  glGetTexParameterPointervAPPLE(target, pname, params);
  OGLM_CHECK_ERR(glGetTexParameterPointervAPPLE, )
#line 34484 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTexParameterfv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTexParameterfv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat *	params = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 16924 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTexParameterfv, )
  glGetTexParameterfv(target, pname, params);
  OGLM_CHECK_ERR(glGetTexParameterfv, )
#line 34508 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTexParameterfv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTexParameterfv_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 16934 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTexParameterfv, )
  OGLM_SIZE_ENUM(GetTextureParameter,pname,1)
  GLfloat *params = OGLM_ALLOC(pname_count,GLfloat,params);
  glGetTexParameterfv(target, pname, params);
  OGLM_CHECK_ERR(glGetTexParameterfv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSVnv)
  free(params);
#line 34536 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetTexParameteriv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTexParameteriv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint *	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 16949 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTexParameteriv, )
  glGetTexParameteriv(target, pname, params);
  OGLM_CHECK_ERR(glGetTexParameteriv, )
#line 34561 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTexParameteriv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTexParameteriv_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 16959 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTexParameteriv, )
  OGLM_SIZE_ENUM(GetTextureParameter,pname,1)
  GLint *params = OGLM_ALLOC(pname_count,GLint,params);
  glGetTexParameteriv(target, pname, params);
  OGLM_CHECK_ERR(glGetTexParameteriv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 34589 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetTexParameterxv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTexParameterxv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfixed*	params = INT2PTR(GLfixed *,SvIV(ST(2)))
;
#line 16974 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTexParameterxv, )
  OGLM_AVAIL_CHECK(__glewGetTexParameterxv, glGetTexParameterxv)
  glGetTexParameterxv(target, pname, params);
  OGLM_CHECK_ERR(glGetTexParameterxv, )
#line 34615 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTexParameterxv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTexParameterxv_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 16985 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTexParameterxv, )
  OGLM_AVAIL_CHECK(__glewGetTexParameterxv, glGetTexParameterxv)
  OGLM_SIZE_ENUM(GetTextureParameter,pname,1)
  GLfixed* params = OGLM_ALLOC(pname_count,GLfixed,params);
  glGetTexParameterxv(target, pname, params);
  OGLM_CHECK_ERR(glGetTexParameterxv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 34644 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetTextureHandleARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTextureHandleARB)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "texture");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLuint64	RETVAL;
	dXSTARG;
#line 17001 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTextureHandleARB, )
  OGLM_AVAIL_CHECK(__glewGetTextureHandleARB, glGetTextureHandleARB)
  RETVAL = glGetTextureHandleARB(texture);
  OGLM_CHECK_ERR(glGetTextureHandleARB, )
#line 34669 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetTextureHandleNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTextureHandleNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "texture");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLuint64	RETVAL;
	dXSTARG;
#line 17013 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTextureHandleNV, )
  OGLM_AVAIL_CHECK(__glewGetTextureHandleNV, glGetTextureHandleNV)
  RETVAL = glGetTextureHandleNV(texture);
  OGLM_CHECK_ERR(glGetTextureHandleNV, )
#line 34694 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetTextureImage_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTextureImage_c)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "texture, level, format, type, bufSize, pixels");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLenum	format = (int)SvIV(ST(2))
;
	GLenum	type = (int)SvIV(ST(3))
;
	GLsizei	bufSize = (int)SvIV(ST(4))
;
	void *	pixels = INT2PTR(void *,SvIV(ST(5)))
;
#line 17030 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTextureImage, )
  OGLM_AVAIL_CHECK(__glewGetTextureImage, glGetTextureImage)
  glGetTextureImage(texture, level, format, type, bufSize, pixels);
  OGLM_CHECK_ERR(glGetTextureImage, )
#line 34727 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTextureImageEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTextureImageEXT_c)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "texture, target, level, format, type, pixels");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLenum	format = (int)SvIV(ST(3))
;
	GLenum	type = (int)SvIV(ST(4))
;
	void *	pixels = INT2PTR(void *,SvIV(ST(5)))
;
#line 17045 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTextureImageEXT, )
  OGLM_AVAIL_CHECK(__glewGetTextureImageEXT, glGetTextureImageEXT)
  glGetTextureImageEXT(texture, target, level, format, type, pixels);
  OGLM_CHECK_ERR(glGetTextureImageEXT, )
#line 34758 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTextureLevelParameterfv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTextureLevelParameterfv_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texture, level, pname, params");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(3)))
;
#line 17058 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTextureLevelParameterfv, )
  OGLM_AVAIL_CHECK(__glewGetTextureLevelParameterfv, glGetTextureLevelParameterfv)
  glGetTextureLevelParameterfv(texture, level, pname, params);
  OGLM_CHECK_ERR(glGetTextureLevelParameterfv, )
#line 34785 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTextureLevelParameterfvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTextureLevelParameterfvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "texture, target, level, pname, params");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLenum	pname = (int)SvIV(ST(3))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(4)))
;
#line 17072 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTextureLevelParameterfvEXT, )
  OGLM_AVAIL_CHECK(__glewGetTextureLevelParameterfvEXT, glGetTextureLevelParameterfvEXT)
  glGetTextureLevelParameterfvEXT(texture, target, level, pname, params);
  OGLM_CHECK_ERR(glGetTextureLevelParameterfvEXT, )
#line 34814 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTextureLevelParameterfvEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTextureLevelParameterfvEXT_p)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texture, target, level, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLenum	pname = (int)SvIV(ST(3))
;
#line 17085 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTextureLevelParameterfvEXT, )
  OGLM_AVAIL_CHECK(__glewGetTextureLevelParameterfvEXT, glGetTextureLevelParameterfvEXT)
  OGLM_SIZE_ENUM(GetTextureParameter,pname,1)
  GLfloat* params = OGLM_ALLOC(pname_count,GLfloat,params);
  glGetTextureLevelParameterfvEXT(texture, target, level, pname, params);
  OGLM_CHECK_ERR(glGetTextureLevelParameterfvEXT, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSVnv)
  free(params);
#line 34847 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetTextureLevelParameteriv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTextureLevelParameteriv_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texture, level, pname, params");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(3)))
;
#line 17102 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTextureLevelParameteriv, )
  OGLM_AVAIL_CHECK(__glewGetTextureLevelParameteriv, glGetTextureLevelParameteriv)
  glGetTextureLevelParameteriv(texture, level, pname, params);
  OGLM_CHECK_ERR(glGetTextureLevelParameteriv, )
#line 34875 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTextureLevelParameterivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTextureLevelParameterivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "texture, target, level, pname, params");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLenum	pname = (int)SvIV(ST(3))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(4)))
;
#line 17116 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTextureLevelParameterivEXT, )
  OGLM_AVAIL_CHECK(__glewGetTextureLevelParameterivEXT, glGetTextureLevelParameterivEXT)
  glGetTextureLevelParameterivEXT(texture, target, level, pname, params);
  OGLM_CHECK_ERR(glGetTextureLevelParameterivEXT, )
#line 34904 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTextureLevelParameterivEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTextureLevelParameterivEXT_p)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texture, target, level, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLenum	pname = (int)SvIV(ST(3))
;
#line 17129 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTextureLevelParameterivEXT, )
  OGLM_AVAIL_CHECK(__glewGetTextureLevelParameterivEXT, glGetTextureLevelParameterivEXT)
  OGLM_SIZE_ENUM(GetTextureParameter,pname,1)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  glGetTextureLevelParameterivEXT(texture, target, level, pname, params);
  OGLM_CHECK_ERR(glGetTextureLevelParameterivEXT, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 34937 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetTextureParameterIiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTextureParameterIiv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texture, pname, params");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 17145 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTextureParameterIiv, )
  OGLM_AVAIL_CHECK(__glewGetTextureParameterIiv, glGetTextureParameterIiv)
  glGetTextureParameterIiv(texture, pname, params);
  OGLM_CHECK_ERR(glGetTextureParameterIiv, )
#line 34963 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTextureParameterIivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTextureParameterIivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texture, target, pname, params");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(3)))
;
#line 17158 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTextureParameterIivEXT, )
  OGLM_AVAIL_CHECK(__glewGetTextureParameterIivEXT, glGetTextureParameterIivEXT)
  glGetTextureParameterIivEXT(texture, target, pname, params);
  OGLM_CHECK_ERR(glGetTextureParameterIivEXT, )
#line 34990 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTextureParameterIivEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTextureParameterIivEXT_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texture, target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
#line 17170 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTextureParameterIivEXT, )
  OGLM_AVAIL_CHECK(__glewGetTextureParameterIivEXT, glGetTextureParameterIivEXT)
  OGLM_SIZE_ENUM(GetTextureParameter,pname,1)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  glGetTextureParameterIivEXT(texture, target, pname, params);
  OGLM_CHECK_ERR(glGetTextureParameterIivEXT, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 35021 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetTextureParameterIuiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTextureParameterIuiv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texture, pname, params");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLuint*	params = INT2PTR(GLuint *,SvIV(ST(2)))
;
#line 17186 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTextureParameterIuiv, )
  OGLM_AVAIL_CHECK(__glewGetTextureParameterIuiv, glGetTextureParameterIuiv)
  glGetTextureParameterIuiv(texture, pname, params);
  OGLM_CHECK_ERR(glGetTextureParameterIuiv, )
#line 35047 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTextureParameterIuivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTextureParameterIuivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texture, target, pname, params");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLuint*	params = INT2PTR(GLuint *,SvIV(ST(3)))
;
#line 17199 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTextureParameterIuivEXT, )
  OGLM_AVAIL_CHECK(__glewGetTextureParameterIuivEXT, glGetTextureParameterIuivEXT)
  glGetTextureParameterIuivEXT(texture, target, pname, params);
  OGLM_CHECK_ERR(glGetTextureParameterIuivEXT, )
#line 35074 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTextureParameterIuivEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTextureParameterIuivEXT_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texture, target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
#line 17211 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTextureParameterIuivEXT, )
  OGLM_AVAIL_CHECK(__glewGetTextureParameterIuivEXT, glGetTextureParameterIuivEXT)
  OGLM_SIZE_ENUM(GetTextureParameter,pname,1)
  GLuint* params = OGLM_ALLOC(pname_count,GLuint,params);
  glGetTextureParameterIuivEXT(texture, target, pname, params);
  OGLM_CHECK_ERR(glGetTextureParameterIuivEXT, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSVuv)
  free(params);
#line 35105 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetTextureParameterfv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTextureParameterfv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texture, pname, params");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 17227 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTextureParameterfv, )
  OGLM_AVAIL_CHECK(__glewGetTextureParameterfv, glGetTextureParameterfv)
  glGetTextureParameterfv(texture, pname, params);
  OGLM_CHECK_ERR(glGetTextureParameterfv, )
#line 35131 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTextureParameterfvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTextureParameterfvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texture, target, pname, params");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(3)))
;
#line 17240 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTextureParameterfvEXT, )
  OGLM_AVAIL_CHECK(__glewGetTextureParameterfvEXT, glGetTextureParameterfvEXT)
  glGetTextureParameterfvEXT(texture, target, pname, params);
  OGLM_CHECK_ERR(glGetTextureParameterfvEXT, )
#line 35158 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTextureParameterfvEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTextureParameterfvEXT_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texture, target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
#line 17252 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTextureParameterfvEXT, )
  OGLM_AVAIL_CHECK(__glewGetTextureParameterfvEXT, glGetTextureParameterfvEXT)
  OGLM_SIZE_ENUM(GetTextureParameter,pname,1)
  GLfloat* params = OGLM_ALLOC(pname_count,GLfloat,params);
  glGetTextureParameterfvEXT(texture, target, pname, params);
  OGLM_CHECK_ERR(glGetTextureParameterfvEXT, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSVnv)
  free(params);
#line 35189 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetTextureParameteriv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTextureParameteriv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texture, pname, params");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 17268 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTextureParameteriv, )
  OGLM_AVAIL_CHECK(__glewGetTextureParameteriv, glGetTextureParameteriv)
  glGetTextureParameteriv(texture, pname, params);
  OGLM_CHECK_ERR(glGetTextureParameteriv, )
#line 35215 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTextureParameterivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTextureParameterivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texture, target, pname, params");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(3)))
;
#line 17281 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTextureParameterivEXT, )
  OGLM_AVAIL_CHECK(__glewGetTextureParameterivEXT, glGetTextureParameterivEXT)
  glGetTextureParameterivEXT(texture, target, pname, params);
  OGLM_CHECK_ERR(glGetTextureParameterivEXT, )
#line 35242 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTextureParameterivEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTextureParameterivEXT_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texture, target, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
#line 17293 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTextureParameterivEXT, )
  OGLM_AVAIL_CHECK(__glewGetTextureParameterivEXT, glGetTextureParameterivEXT)
  OGLM_SIZE_ENUM(GetTextureParameter,pname,1)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  glGetTextureParameterivEXT(texture, target, pname, params);
  OGLM_CHECK_ERR(glGetTextureParameterivEXT, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 35273 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetTextureSamplerHandleARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTextureSamplerHandleARB)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "texture, sampler");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLuint	sampler = (unsigned int)SvUV(ST(1))
;
	GLuint64	RETVAL;
	dXSTARG;
#line 17310 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTextureSamplerHandleARB, )
  OGLM_AVAIL_CHECK(__glewGetTextureSamplerHandleARB, glGetTextureSamplerHandleARB)
  RETVAL = glGetTextureSamplerHandleARB(texture, sampler);
  OGLM_CHECK_ERR(glGetTextureSamplerHandleARB, )
#line 35300 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetTextureSamplerHandleNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTextureSamplerHandleNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "texture, sampler");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLuint	sampler = (unsigned int)SvUV(ST(1))
;
	GLuint64	RETVAL;
	dXSTARG;
#line 17323 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTextureSamplerHandleNV, )
  OGLM_AVAIL_CHECK(__glewGetTextureSamplerHandleNV, glGetTextureSamplerHandleNV)
  RETVAL = glGetTextureSamplerHandleNV(texture, sampler);
  OGLM_CHECK_ERR(glGetTextureSamplerHandleNV, )
#line 35327 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetTextureSubImage_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTextureSubImage_c)
{
    dVAR; dXSARGS;
    if (items != 12)
       croak_xs_usage(cv,  "texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, bufSize, pixels");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLint	xoffset = (int)SvIV(ST(2))
;
	GLint	yoffset = (int)SvIV(ST(3))
;
	GLint	zoffset = (int)SvIV(ST(4))
;
	GLsizei	width = (int)SvIV(ST(5))
;
	GLsizei	height = (int)SvIV(ST(6))
;
	GLsizei	depth = (int)SvIV(ST(7))
;
	GLenum	format = (int)SvIV(ST(8))
;
	GLenum	type = (int)SvIV(ST(9))
;
	GLsizei	bufSize = (int)SvIV(ST(10))
;
	void *	pixels = INT2PTR(void *,SvIV(ST(11)))
;
#line 17346 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTextureSubImage, )
  OGLM_AVAIL_CHECK(__glewGetTextureSubImage, glGetTextureSubImage)
  glGetTextureSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, bufSize, pixels);
  OGLM_CHECK_ERR(glGetTextureSubImage, )
#line 35372 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTrackMatrixivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTrackMatrixivNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, address, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	address = (unsigned int)SvUV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(3)))
;
#line 17359 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTrackMatrixivNV, )
  OGLM_AVAIL_CHECK(__glewGetTrackMatrixivNV, glGetTrackMatrixivNV)
  glGetTrackMatrixivNV(target, address, pname, params);
  OGLM_CHECK_ERR(glGetTrackMatrixivNV, )
#line 35399 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTrackMatrixivNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTrackMatrixivNV_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, address, pname");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	address = (unsigned int)SvUV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLint	RETVAL;
	dXSTARG;
#line 17371 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTrackMatrixivNV, )
  OGLM_AVAIL_CHECK(__glewGetTrackMatrixivNV, glGetTrackMatrixivNV)
  GLint params[1];
  glGetTrackMatrixivNV(target, address, pname, params);
  OGLM_CHECK_ERR(glGetTrackMatrixivNV, )
  RETVAL = params[0];
#line 35428 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetTransformFeedbackVarying_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTransformFeedbackVarying_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 7)
       croak_xs_usage(cv,  "program, index, bufSize, length, size, type, name");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
	GLsizei *	length = INT2PTR(GLsizei *,SvIV(ST(3)))
;
	GLsizei *	size = INT2PTR(GLsizei *,SvIV(ST(4)))
;
	GLenum *	type = INT2PTR(GLenum *,SvIV(ST(5)))
;
	GLchar *	name = (GLchar *)SvPV_nolen(ST(6))
;
#line 17393 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTransformFeedbackVarying, )
  OGLM_AVAIL_CHECK(__glewGetTransformFeedbackVarying, glGetTransformFeedbackVarying)
  glGetTransformFeedbackVarying(program, index, bufSize, length, size, type, name);
  OGLM_CHECK_ERR(glGetTransformFeedbackVarying, )
#line 35464 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTransformFeedbackVarying_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTransformFeedbackVarying_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "program, index");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 17406 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTransformFeedbackVarying, )
  OGLM_AVAIL_CHECK(__glewGetTransformFeedbackVarying, glGetTransformFeedbackVarying)
  OGLM_AVAIL_CHECK(__glewGetProgramiv, glGetProgramiv)
  GLsizei bufSize;
  glGetProgramiv(program,GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH,&bufSize);
  GLsizei * length = NULL;
  GLchar name[bufSize];
  GLsizei size[1];
  GLenum type[1];
  glGetTransformFeedbackVarying(program, index, bufSize, length, size, type, name);
  OGLM_CHECK_ERR(glGetTransformFeedbackVarying, )
  EXTEND(sp, 3);
  mPUSHs(newSViv(size[0]));
  mPUSHs(newSViv(type[0]));
  mPUSHs(newSVpv(name,0));
#line 35501 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetTransformFeedbackVaryingNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTransformFeedbackVaryingNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, index, location");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLint *	location = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 17429 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTransformFeedbackVaryingNV, )
  OGLM_AVAIL_CHECK(__glewGetTransformFeedbackVaryingNV, glGetTransformFeedbackVaryingNV)
  glGetTransformFeedbackVaryingNV(program, index, location);
  OGLM_CHECK_ERR(glGetTransformFeedbackVaryingNV, )
#line 35527 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTransformFeedbackVaryingNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTransformFeedbackVaryingNV_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "program, index");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLint	RETVAL;
	dXSTARG;
#line 17440 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTransformFeedbackVaryingNV, )
  OGLM_AVAIL_CHECK(__glewGetTransformFeedbackVaryingNV, glGetTransformFeedbackVaryingNV)
  GLint location[1];
  glGetTransformFeedbackVaryingNV(program, index, location);
  OGLM_CHECK_ERR(glGetTransformFeedbackVaryingNV, )
  RETVAL = location[0];
#line 35554 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetTransformFeedbacki64_v_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTransformFeedbacki64_v_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "xfb, pname, index, param");
    {
	GLuint	xfb = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
	GLint64*	param = INT2PTR(GLint64 *,SvIV(ST(3)))
;
#line 17457 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTransformFeedbacki64_v, )
  OGLM_AVAIL_CHECK(__glewGetTransformFeedbacki64_v, glGetTransformFeedbacki64_v)
  glGetTransformFeedbacki64_v(xfb, pname, index, param);
  OGLM_CHECK_ERR(glGetTransformFeedbacki64_v, )
#line 35583 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTransformFeedbacki_v_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTransformFeedbacki_v_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "xfb, pname, index, param");
    {
	GLuint	xfb = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
	GLint*	param = INT2PTR(GLint *,SvIV(ST(3)))
;
#line 17470 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTransformFeedbacki_v, )
  OGLM_AVAIL_CHECK(__glewGetTransformFeedbacki_v, glGetTransformFeedbacki_v)
  glGetTransformFeedbacki_v(xfb, pname, index, param);
  OGLM_CHECK_ERR(glGetTransformFeedbacki_v, )
#line 35610 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTransformFeedbackiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTransformFeedbackiv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "xfb, pname, param");
    {
	GLuint	xfb = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	param = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 17482 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTransformFeedbackiv, )
  OGLM_AVAIL_CHECK(__glewGetTransformFeedbackiv, glGetTransformFeedbackiv)
  glGetTransformFeedbackiv(xfb, pname, param);
  OGLM_CHECK_ERR(glGetTransformFeedbackiv, )
#line 35635 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTranslatedShaderSourceANGLE_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTranslatedShaderSourceANGLE_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "shader, bufSize, length, source");
    {
	GLuint	shader = (unsigned int)SvUV(ST(0))
;
	GLsizei	bufSize = (int)SvIV(ST(1))
;
	GLsizei*	length = INT2PTR(GLsizei *,SvIV(ST(2)))
;
	GLchar*	source = (GLchar *)SvPV_nolen(ST(3))
;
#line 17495 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTranslatedShaderSourceANGLE, )
  OGLM_AVAIL_CHECK(__glewGetTranslatedShaderSourceANGLE, glGetTranslatedShaderSourceANGLE)
  glGetTranslatedShaderSourceANGLE(shader, bufSize, length, source);
  OGLM_CHECK_ERR(glGetTranslatedShaderSourceANGLE, )
#line 35662 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetTranslatedShaderSourceANGLE_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetTranslatedShaderSourceANGLE_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "shader, bufSize");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	shader = (unsigned int)SvUV(ST(0))
;
	GLsizei	bufSize = (int)SvIV(ST(1))
;
#line 17506 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetTranslatedShaderSourceANGLE, )
  OGLM_AVAIL_CHECK(__glewGetTranslatedShaderSourceANGLE, glGetTranslatedShaderSourceANGLE)
  GLsizei length[1];
  GLchar source[bufSize];
  glGetTranslatedShaderSourceANGLE(shader, bufSize, length, source);
  OGLM_CHECK_ERR(glGetTranslatedShaderSourceANGLE, )
  EXTEND(sp, 2);
  mPUSHs(newSViv(length[0]));
  mPUSHs(newSVpv(source,0));
#line 35692 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetUniformBlockIndex); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetUniformBlockIndex)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "program, uniformBlockName");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	const GLchar*	uniformBlockName = (const GLchar *)SvPV_nolen(ST(1))
;
	GLuint	RETVAL;
	dXSTARG;
#line 17522 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetUniformBlockIndex, )
  OGLM_AVAIL_CHECK(__glewGetUniformBlockIndex, glGetUniformBlockIndex)
  RETVAL = glGetUniformBlockIndex(program, uniformBlockName);
  OGLM_CHECK_ERR(glGetUniformBlockIndex, )
#line 35718 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetUniformBufferSizeEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetUniformBufferSizeEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "program, location");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLint	RETVAL;
	dXSTARG;
#line 17535 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetUniformBufferSizeEXT, )
  OGLM_AVAIL_CHECK(__glewGetUniformBufferSizeEXT, glGetUniformBufferSizeEXT)
  RETVAL = glGetUniformBufferSizeEXT(program, location);
  OGLM_CHECK_ERR(glGetUniformBufferSizeEXT, )
#line 35745 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetUniformIndices_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetUniformIndices_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, uniformCount, uniformNames, uniformIndices");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLsizei	uniformCount = (int)SvIV(ST(1))
;
	const GLchar* const *	uniformNames = (const GLchar * const *)SvPV_nolen(ST(2))
;
	GLuint*	uniformIndices = INT2PTR(GLuint *,SvIV(ST(3)))
;
#line 17550 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetUniformIndices, )
  OGLM_AVAIL_CHECK(__glewGetUniformIndices, glGetUniformIndices)
  glGetUniformIndices(program, uniformCount, uniformNames, uniformIndices);
  OGLM_CHECK_ERR(glGetUniformIndices, )
#line 35774 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetUniformIndices_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetUniformIndices_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "program, ...");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
#line 17560 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetUniformIndices, )
  OGLM_AVAIL_CHECK(__glewGetUniformIndices, glGetUniformIndices)
  GLsizei uniformCount = items-1;
  GLuint* uniformIndices = OGLM_ALLOC(uniformCount,GLuint,uniformIndices);
  GLchar* * uniformNames = OGLM_GET_VARARGS(uniformNames,1,GLchar*,PV_nolen,uniformCount);
  glGetUniformIndices((GLuint )program, (GLsizei )uniformCount, (const GLchar* const * )uniformNames, (GLuint* )uniformIndices);
  OGLM_CHECK_ERR(glGetUniformIndices, free(uniformIndices);free(uniformNames);)
  OGLM_OUT_FINISH(uniformIndices,uniformCount,newSVuv)
  free(uniformIndices);free(uniformNames);
#line 35802 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetUniformLocation); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetUniformLocation)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "program, name");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	const GLchar*	name = (const GLchar *)SvPV_nolen(ST(1))
;
	GLint	RETVAL;
	dXSTARG;
#line 17576 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetUniformLocation, )
  OGLM_AVAIL_CHECK(__glewGetUniformLocation, glGetUniformLocation)
  RETVAL = glGetUniformLocation(program, name);
  OGLM_CHECK_ERR(glGetUniformLocation, )
#line 35828 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetUniformLocationARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetUniformLocationARB)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "programObj, name");
    {
	GLhandleARB	programObj = (unsigned int)SvUV(ST(0))
;
	const GLcharARB*	name = (const GLcharARB *)SvPV_nolen(ST(1))
;
	GLint	RETVAL;
	dXSTARG;
#line 17589 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetUniformLocationARB, )
  OGLM_AVAIL_CHECK(__glewGetUniformLocationARB, glGetUniformLocationARB)
  RETVAL = glGetUniformLocationARB(programObj, name);
  OGLM_CHECK_ERR(glGetUniformLocationARB, )
#line 35855 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetUniformOffsetEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetUniformOffsetEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "program, location");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLintptr	RETVAL;
	dXSTARG;
#line 17602 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetUniformOffsetEXT, )
  OGLM_AVAIL_CHECK(__glewGetUniformOffsetEXT, glGetUniformOffsetEXT)
  RETVAL = glGetUniformOffsetEXT(program, location);
  OGLM_CHECK_ERR(glGetUniformOffsetEXT, )
#line 35882 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetUniformSubroutineuiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetUniformSubroutineuiv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "shadertype, location, params");
    {
	GLenum	shadertype = (int)SvIV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLuint*	params = INT2PTR(GLuint *,SvIV(ST(2)))
;
#line 17616 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetUniformSubroutineuiv, )
  OGLM_AVAIL_CHECK(__glewGetUniformSubroutineuiv, glGetUniformSubroutineuiv)
  glGetUniformSubroutineuiv(shadertype, location, params);
  OGLM_CHECK_ERR(glGetUniformSubroutineuiv, )
#line 35909 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetUniformSubroutineuiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetUniformSubroutineuiv_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "shadertype, location");
    {
	GLenum	shadertype = (int)SvIV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLuint	RETVAL;
	dXSTARG;
#line 17627 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetUniformSubroutineuiv, )
  OGLM_AVAIL_CHECK(__glewGetUniformSubroutineuiv, glGetUniformSubroutineuiv)
  GLuint params[1];
  glGetUniformSubroutineuiv(shadertype, location, params);
  OGLM_CHECK_ERR(glGetUniformSubroutineuiv, )
  RETVAL = params[0];
#line 35936 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetUniformdv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetUniformdv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, location, params");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLdouble*	params = INT2PTR(GLdouble *,SvIV(ST(2)))
;
#line 17643 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetUniformdv, )
  OGLM_AVAIL_CHECK(__glewGetUniformdv, glGetUniformdv)
  glGetUniformdv(program, location, params);
  OGLM_CHECK_ERR(glGetUniformdv, )
#line 35963 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetUniformfv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetUniformfv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, location, params");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 17655 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetUniformfv, )
  OGLM_AVAIL_CHECK(__glewGetUniformfv, glGetUniformfv)
  glGetUniformfv(program, location, params);
  OGLM_CHECK_ERR(glGetUniformfv, )
#line 35988 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetUniformfvARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetUniformfvARB_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "programObj, location, params");
    {
	GLhandleARB	programObj = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 17667 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetUniformfvARB, )
  OGLM_AVAIL_CHECK(__glewGetUniformfvARB, glGetUniformfvARB)
  glGetUniformfvARB(programObj, location, params);
  OGLM_CHECK_ERR(glGetUniformfvARB, )
#line 36013 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetUniformi64vARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetUniformi64vARB_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, location, params");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLint64*	params = INT2PTR(GLint64 *,SvIV(ST(2)))
;
#line 17679 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetUniformi64vARB, )
  OGLM_AVAIL_CHECK(__glewGetUniformi64vARB, glGetUniformi64vARB)
  glGetUniformi64vARB(program, location, params);
  OGLM_CHECK_ERR(glGetUniformi64vARB, )
#line 36038 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetUniformi64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetUniformi64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, location, params");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLint64EXT*	params = INT2PTR(GLint64EXT *,SvIV(ST(2)))
;
#line 17691 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetUniformi64vNV, )
  OGLM_AVAIL_CHECK(__glewGetUniformi64vNV, glGetUniformi64vNV)
  glGetUniformi64vNV(program, location, params);
  OGLM_CHECK_ERR(glGetUniformi64vNV, )
#line 36063 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetUniformiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetUniformiv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, location, params");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 17703 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetUniformiv, )
  OGLM_AVAIL_CHECK(__glewGetUniformiv, glGetUniformiv)
  glGetUniformiv(program, location, params);
  OGLM_CHECK_ERR(glGetUniformiv, )
#line 36088 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetUniformivARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetUniformivARB_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "programObj, location, params");
    {
	GLhandleARB	programObj = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 17715 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetUniformivARB, )
  OGLM_AVAIL_CHECK(__glewGetUniformivARB, glGetUniformivARB)
  glGetUniformivARB(programObj, location, params);
  OGLM_CHECK_ERR(glGetUniformivARB, )
#line 36113 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetUniformui64vARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetUniformui64vARB_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, location, params");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLuint64*	params = INT2PTR(GLuint64 *,SvIV(ST(2)))
;
#line 17727 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetUniformui64vARB, )
  OGLM_AVAIL_CHECK(__glewGetUniformui64vARB, glGetUniformui64vARB)
  glGetUniformui64vARB(program, location, params);
  OGLM_CHECK_ERR(glGetUniformui64vARB, )
#line 36138 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetUniformui64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetUniformui64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, location, params");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLuint64EXT*	params = INT2PTR(GLuint64EXT *,SvIV(ST(2)))
;
#line 17739 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetUniformui64vNV, )
  OGLM_AVAIL_CHECK(__glewGetUniformui64vNV, glGetUniformui64vNV)
  glGetUniformui64vNV(program, location, params);
  OGLM_CHECK_ERR(glGetUniformui64vNV, )
#line 36163 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetUniformuiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetUniformuiv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "program, location, params");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLuint*	params = INT2PTR(GLuint *,SvIV(ST(2)))
;
#line 17753 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetUniformuiv, )
  OGLM_AVAIL_CHECK(__glewGetUniformuiv, glGetUniformuiv)
  glGetUniformuiv(program, location, params);
  OGLM_CHECK_ERR(glGetUniformuiv, )
#line 36189 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetUnsignedBytei_vEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetUnsignedBytei_vEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, index, data");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLubyte*	data = INT2PTR(GLubyte *,SvIV(ST(2)))
;
#line 17765 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetUnsignedBytei_vEXT, )
  OGLM_AVAIL_CHECK(__glewGetUnsignedBytei_vEXT, glGetUnsignedBytei_vEXT)
  glGetUnsignedBytei_vEXT(target, index, data);
  OGLM_CHECK_ERR(glGetUnsignedBytei_vEXT, )
#line 36214 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetUnsignedBytevEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetUnsignedBytevEXT_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, data");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLubyte*	data = INT2PTR(GLubyte *,SvIV(ST(1)))
;
#line 17776 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetUnsignedBytevEXT, )
  OGLM_AVAIL_CHECK(__glewGetUnsignedBytevEXT, glGetUnsignedBytevEXT)
  glGetUnsignedBytevEXT(pname, data);
  OGLM_CHECK_ERR(glGetUnsignedBytevEXT, )
#line 36237 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetUnsignedBytevEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetUnsignedBytevEXT_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	pname = (int)SvIV(ST(0))
;
#line 17786 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetUnsignedBytevEXT, )
  OGLM_AVAIL_CHECK(__glewGetUnsignedBytevEXT, glGetUnsignedBytevEXT)
  OGLM_SIZE_ENUM(GetPName,pname,1)
  GLubyte* data = OGLM_ALLOC(pname_count,GLubyte,data);
  glGetUnsignedBytevEXT(pname, data);
  OGLM_CHECK_ERR(glGetUnsignedBytevEXT, free(data);)
  OGLM_OUT_FINISH(data,pname_count,newSVuv)
  free(data);
#line 36264 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetVariantArrayObjectfvATI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVariantArrayObjectfvATI_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "id, pname, params");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 17802 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVariantArrayObjectfvATI, )
  OGLM_AVAIL_CHECK(__glewGetVariantArrayObjectfvATI, glGetVariantArrayObjectfvATI)
  glGetVariantArrayObjectfvATI(id, pname, params);
  OGLM_CHECK_ERR(glGetVariantArrayObjectfvATI, )
#line 36290 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetVariantArrayObjectfvATI_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVariantArrayObjectfvATI_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "id, pname");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat	RETVAL;
	dXSTARG;
#line 17813 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVariantArrayObjectfvATI, )
  OGLM_AVAIL_CHECK(__glewGetVariantArrayObjectfvATI, glGetVariantArrayObjectfvATI)
  GLfloat params[1];
  glGetVariantArrayObjectfvATI(id, pname, params);
  OGLM_CHECK_ERR(glGetVariantArrayObjectfvATI, )
  RETVAL = params[0];
#line 36317 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHn((double)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetVariantArrayObjectivATI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVariantArrayObjectivATI_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "id, pname, params");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 17829 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVariantArrayObjectivATI, )
  OGLM_AVAIL_CHECK(__glewGetVariantArrayObjectivATI, glGetVariantArrayObjectivATI)
  glGetVariantArrayObjectivATI(id, pname, params);
  OGLM_CHECK_ERR(glGetVariantArrayObjectivATI, )
#line 36344 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetVariantArrayObjectivATI_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVariantArrayObjectivATI_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "id, pname");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint	RETVAL;
	dXSTARG;
#line 17840 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVariantArrayObjectivATI, )
  OGLM_AVAIL_CHECK(__glewGetVariantArrayObjectivATI, glGetVariantArrayObjectivATI)
  GLint params[1];
  glGetVariantArrayObjectivATI(id, pname, params);
  OGLM_CHECK_ERR(glGetVariantArrayObjectivATI, )
  RETVAL = params[0];
#line 36371 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetVariantBooleanvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVariantBooleanvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "id, value, data");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	value = (int)SvIV(ST(1))
;
	GLboolean *	data = INT2PTR(GLboolean *,SvIV(ST(2)))
;
#line 17856 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVariantBooleanvEXT, )
  OGLM_AVAIL_CHECK(__glewGetVariantBooleanvEXT, glGetVariantBooleanvEXT)
  glGetVariantBooleanvEXT(id, value, data);
  OGLM_CHECK_ERR(glGetVariantBooleanvEXT, )
#line 36398 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetVariantFloatvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVariantFloatvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "id, value, data");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	value = (int)SvIV(ST(1))
;
	GLfloat *	data = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 17868 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVariantFloatvEXT, )
  OGLM_AVAIL_CHECK(__glewGetVariantFloatvEXT, glGetVariantFloatvEXT)
  glGetVariantFloatvEXT(id, value, data);
  OGLM_CHECK_ERR(glGetVariantFloatvEXT, )
#line 36423 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetVariantIntegervEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVariantIntegervEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "id, value, data");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	value = (int)SvIV(ST(1))
;
	GLint *	data = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 17880 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVariantIntegervEXT, )
  OGLM_AVAIL_CHECK(__glewGetVariantIntegervEXT, glGetVariantIntegervEXT)
  glGetVariantIntegervEXT(id, value, data);
  OGLM_CHECK_ERR(glGetVariantIntegervEXT, )
#line 36448 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetVariantPointervEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVariantPointervEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "id, value, data");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	value = (int)SvIV(ST(1))
;
	void **	data = INT2PTR(void **,SvIV(ST(2)))
;
#line 17892 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVariantPointervEXT, )
  OGLM_AVAIL_CHECK(__glewGetVariantPointervEXT, glGetVariantPointervEXT)
  glGetVariantPointervEXT(id, value, data);
  OGLM_CHECK_ERR(glGetVariantPointervEXT, )
#line 36473 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetVaryingLocationNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVaryingLocationNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "program, name");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	const GLchar *	name = (const GLchar *)SvPV_nolen(ST(1))
;
	GLint	RETVAL;
	dXSTARG;
#line 17903 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVaryingLocationNV, )
  OGLM_AVAIL_CHECK(__glewGetVaryingLocationNV, glGetVaryingLocationNV)
  RETVAL = glGetVaryingLocationNV(program, name);
  OGLM_CHECK_ERR(glGetVaryingLocationNV, )
#line 36498 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetVectorOperationSGIX); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVectorOperationSGIX)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "operation");
    {
	GLenum	operation = (int)SvIV(ST(0))
;
#line 17915 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVectorOperationSGIX, )
  OGLM_AVAIL_CHECK(__glewGetVectorOperationSGIX, glGetVectorOperationSGIX)
  glGetVectorOperationSGIX(operation);
  OGLM_CHECK_ERR(glGetVectorOperationSGIX, )
#line 36521 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetVertexArrayIndexed64iv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVertexArrayIndexed64iv_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "vaobj, index, pname, param");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLint64*	param = INT2PTR(GLint64 *,SvIV(ST(3)))
;
#line 17928 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVertexArrayIndexed64iv, )
  OGLM_AVAIL_CHECK(__glewGetVertexArrayIndexed64iv, glGetVertexArrayIndexed64iv)
  glGetVertexArrayIndexed64iv(vaobj, index, pname, param);
  OGLM_CHECK_ERR(glGetVertexArrayIndexed64iv, )
#line 36548 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetVertexArrayIndexediv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVertexArrayIndexediv_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "vaobj, index, pname, param");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLint*	param = INT2PTR(GLint *,SvIV(ST(3)))
;
#line 17941 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVertexArrayIndexediv, )
  OGLM_AVAIL_CHECK(__glewGetVertexArrayIndexediv, glGetVertexArrayIndexediv)
  glGetVertexArrayIndexediv(vaobj, index, pname, param);
  OGLM_CHECK_ERR(glGetVertexArrayIndexediv, )
#line 36575 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetVertexArrayIntegeri_vEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVertexArrayIntegeri_vEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "vaobj, index, pname, param");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLint*	param = INT2PTR(GLint *,SvIV(ST(3)))
;
#line 17954 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVertexArrayIntegeri_vEXT, )
  OGLM_AVAIL_CHECK(__glewGetVertexArrayIntegeri_vEXT, glGetVertexArrayIntegeri_vEXT)
  glGetVertexArrayIntegeri_vEXT(vaobj, index, pname, param);
  OGLM_CHECK_ERR(glGetVertexArrayIntegeri_vEXT, )
#line 36602 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetVertexArrayIntegervEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVertexArrayIntegervEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "vaobj, pname, param");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	param = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 17966 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVertexArrayIntegervEXT, )
  OGLM_AVAIL_CHECK(__glewGetVertexArrayIntegervEXT, glGetVertexArrayIntegervEXT)
  glGetVertexArrayIntegervEXT(vaobj, pname, param);
  OGLM_CHECK_ERR(glGetVertexArrayIntegervEXT, )
#line 36627 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetVertexArrayPointeri_vEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVertexArrayPointeri_vEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "vaobj, index, pname, param");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	void**	param = INT2PTR(void **,SvIV(ST(3)))
;
#line 17979 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVertexArrayPointeri_vEXT, )
  OGLM_AVAIL_CHECK(__glewGetVertexArrayPointeri_vEXT, glGetVertexArrayPointeri_vEXT)
  glGetVertexArrayPointeri_vEXT(vaobj, index, pname, param);
  OGLM_CHECK_ERR(glGetVertexArrayPointeri_vEXT, )
#line 36654 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetVertexArrayPointervEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVertexArrayPointervEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "vaobj, pname, param");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	void**	param = INT2PTR(void **,SvIV(ST(2)))
;
#line 17991 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVertexArrayPointervEXT, )
  OGLM_AVAIL_CHECK(__glewGetVertexArrayPointervEXT, glGetVertexArrayPointervEXT)
  glGetVertexArrayPointervEXT(vaobj, pname, param);
  OGLM_CHECK_ERR(glGetVertexArrayPointervEXT, )
#line 36679 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetVertexArrayiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVertexArrayiv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "vaobj, pname, param");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	param = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 18003 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVertexArrayiv, )
  OGLM_AVAIL_CHECK(__glewGetVertexArrayiv, glGetVertexArrayiv)
  glGetVertexArrayiv(vaobj, pname, param);
  OGLM_CHECK_ERR(glGetVertexArrayiv, )
#line 36704 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribArrayObjectfvATI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribArrayObjectfvATI_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "index, pname, params");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 18015 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVertexAttribArrayObjectfvATI, )
  OGLM_AVAIL_CHECK(__glewGetVertexAttribArrayObjectfvATI, glGetVertexAttribArrayObjectfvATI)
  glGetVertexAttribArrayObjectfvATI(index, pname, params);
  OGLM_CHECK_ERR(glGetVertexAttribArrayObjectfvATI, )
#line 36729 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribArrayObjectfvATI_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribArrayObjectfvATI_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "index, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 18026 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVertexAttribArrayObjectfvATI, )
  OGLM_AVAIL_CHECK(__glewGetVertexAttribArrayObjectfvATI, glGetVertexAttribArrayObjectfvATI)
  OGLM_SIZE_ENUM(ArrayObjectPNameATI,pname,1)
  GLfloat* params = OGLM_ALLOC(pname_count,GLfloat,params);
  glGetVertexAttribArrayObjectfvATI(index, pname, params);
  OGLM_CHECK_ERR(glGetVertexAttribArrayObjectfvATI, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSVnv)
  free(params);
#line 36758 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribArrayObjectivATI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribArrayObjectivATI_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "index, pname, params");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 18042 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVertexAttribArrayObjectivATI, )
  OGLM_AVAIL_CHECK(__glewGetVertexAttribArrayObjectivATI, glGetVertexAttribArrayObjectivATI)
  glGetVertexAttribArrayObjectivATI(index, pname, params);
  OGLM_CHECK_ERR(glGetVertexAttribArrayObjectivATI, )
#line 36784 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribArrayObjectivATI_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribArrayObjectivATI_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "index, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 18053 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVertexAttribArrayObjectivATI, )
  OGLM_AVAIL_CHECK(__glewGetVertexAttribArrayObjectivATI, glGetVertexAttribArrayObjectivATI)
  OGLM_SIZE_ENUM(ArrayObjectPNameATI,pname,1)
  GLint* params = OGLM_ALLOC(pname_count,GLint,params);
  glGetVertexAttribArrayObjectivATI(index, pname, params);
  OGLM_CHECK_ERR(glGetVertexAttribArrayObjectivATI, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 36813 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribIiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribIiv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "index, pname, params");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 18071 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVertexAttribIiv, )
  OGLM_AVAIL_CHECK(__glewGetVertexAttribIiv, glGetVertexAttribIiv)
  glGetVertexAttribIiv(index, pname, params);
  OGLM_CHECK_ERR(glGetVertexAttribIiv, )
#line 36840 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribIiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribIiv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, pname");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint	RETVAL;
	dXSTARG;
#line 18084 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVertexAttribIiv, )
  OGLM_AVAIL_CHECK(__glewGetVertexAttribIiv, glGetVertexAttribIiv)
  GLint params[1];
  glGetVertexAttribIiv(index, pname, params);
  OGLM_CHECK_ERR(glGetVertexAttribIiv, )
  RETVAL = params[0];
#line 36868 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribIuiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribIuiv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "index, pname, params");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLuint*	params = INT2PTR(GLuint *,SvIV(ST(2)))
;
#line 18102 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVertexAttribIuiv, )
  OGLM_AVAIL_CHECK(__glewGetVertexAttribIuiv, glGetVertexAttribIuiv)
  glGetVertexAttribIuiv(index, pname, params);
  OGLM_CHECK_ERR(glGetVertexAttribIuiv, )
#line 36896 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribIuiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribIuiv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, pname");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLuint	RETVAL;
	dXSTARG;
#line 18115 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVertexAttribIuiv, )
  OGLM_AVAIL_CHECK(__glewGetVertexAttribIuiv, glGetVertexAttribIuiv)
  GLuint params[1];
  glGetVertexAttribIuiv(index, pname, params);
  OGLM_CHECK_ERR(glGetVertexAttribIuiv, )
  RETVAL = params[0];
#line 36924 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribLdv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribLdv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "index, pname, params");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLdouble*	params = INT2PTR(GLdouble *,SvIV(ST(2)))
;
#line 18133 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVertexAttribLdv, )
  OGLM_AVAIL_CHECK(__glewGetVertexAttribLdv, glGetVertexAttribLdv)
  glGetVertexAttribLdv(index, pname, params);
  OGLM_CHECK_ERR(glGetVertexAttribLdv, )
#line 36952 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribLdv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribLdv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 18146 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVertexAttribLdv, )
  OGLM_AVAIL_CHECK(__glewGetVertexAttribLdv, glGetVertexAttribLdv)
  OGLM_SIZE_ENUM(VertexAttribEnum,pname,1)
  GLdouble* params = OGLM_ALLOC(pname_count,GLdouble,params);
  glGetVertexAttribLdv(index, pname, params);
  OGLM_CHECK_ERR(glGetVertexAttribLdv, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSVnv)
  free(params);
#line 36982 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribLi64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribLi64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "index, pname, params");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint64EXT*	params = INT2PTR(GLint64EXT *,SvIV(ST(2)))
;
#line 18162 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVertexAttribLi64vNV, )
  OGLM_AVAIL_CHECK(__glewGetVertexAttribLi64vNV, glGetVertexAttribLi64vNV)
  glGetVertexAttribLi64vNV(index, pname, params);
  OGLM_CHECK_ERR(glGetVertexAttribLi64vNV, )
#line 37008 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribLi64vNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribLi64vNV_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "index, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 18173 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVertexAttribLi64vNV, )
  OGLM_AVAIL_CHECK(__glewGetVertexAttribLi64vNV, glGetVertexAttribLi64vNV)
  OGLM_SIZE_ENUM(VertexAttribEnum,pname,1)
  GLint64EXT* params = OGLM_ALLOC(pname_count,GLint64EXT,params);
  glGetVertexAttribLi64vNV(index, pname, params);
  OGLM_CHECK_ERR(glGetVertexAttribLi64vNV, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSViv)
  free(params);
#line 37037 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribLui64vARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribLui64vARB_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "index, pname, params");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLuint64EXT*	params = INT2PTR(GLuint64EXT *,SvIV(ST(2)))
;
#line 18189 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVertexAttribLui64vARB, )
  OGLM_AVAIL_CHECK(__glewGetVertexAttribLui64vARB, glGetVertexAttribLui64vARB)
  glGetVertexAttribLui64vARB(index, pname, params);
  OGLM_CHECK_ERR(glGetVertexAttribLui64vARB, )
#line 37063 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribLui64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribLui64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "index, pname, params");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLuint64EXT*	params = INT2PTR(GLuint64EXT *,SvIV(ST(2)))
;
#line 18201 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVertexAttribLui64vNV, )
  OGLM_AVAIL_CHECK(__glewGetVertexAttribLui64vNV, glGetVertexAttribLui64vNV)
  glGetVertexAttribLui64vNV(index, pname, params);
  OGLM_CHECK_ERR(glGetVertexAttribLui64vNV, )
#line 37088 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribLui64vNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribLui64vNV_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "index, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 18212 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVertexAttribLui64vNV, )
  OGLM_AVAIL_CHECK(__glewGetVertexAttribLui64vNV, glGetVertexAttribLui64vNV)
  OGLM_SIZE_ENUM(VertexAttribEnum,pname,1)
  GLuint64EXT* params = OGLM_ALLOC(pname_count,GLuint64EXT,params);
  glGetVertexAttribLui64vNV(index, pname, params);
  OGLM_CHECK_ERR(glGetVertexAttribLui64vNV, free(params);)
  OGLM_OUT_FINISH(params,pname_count,newSVuv)
  free(params);
#line 37117 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribPointerv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribPointerv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "index, pname, pointer");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	void**	pointer = INT2PTR(void **,SvIV(ST(2)))
;
#line 18231 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVertexAttribPointerv, )
  OGLM_AVAIL_CHECK(__glewGetVertexAttribPointerv, glGetVertexAttribPointerv)
  glGetVertexAttribPointerv(index, pname, pointer);
  OGLM_CHECK_ERR(glGetVertexAttribPointerv, )
#line 37144 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribdv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribdv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "index, pname, params");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLdouble*	params = INT2PTR(GLdouble *,SvIV(ST(2)))
;
#line 18246 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVertexAttribdv, )
  OGLM_AVAIL_CHECK(__glewGetVertexAttribdv, glGetVertexAttribdv)
  glGetVertexAttribdv(index, pname, params);
  OGLM_CHECK_ERR(glGetVertexAttribdv, )
#line 37170 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribdv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribdv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 18260 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVertexAttribdv, )
  OGLM_AVAIL_CHECK(__glewGetVertexAttribdv, glGetVertexAttribdv)
  GLdouble* params = OGLM_ALLOC(4,GLdouble,params);
  glGetVertexAttribdv(index, pname, params);
  OGLM_CHECK_ERR(glGetVertexAttribdv, free(params);)
  OGLM_OUT_FINISH(params,4,newSVnv)
  free(params);
#line 37199 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribfv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribfv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "index, pname, params");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 18278 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVertexAttribfv, )
  OGLM_AVAIL_CHECK(__glewGetVertexAttribfv, glGetVertexAttribfv)
  glGetVertexAttribfv(index, pname, params);
  OGLM_CHECK_ERR(glGetVertexAttribfv, )
#line 37226 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribfv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribfv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 18292 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVertexAttribfv, )
  OGLM_AVAIL_CHECK(__glewGetVertexAttribfv, glGetVertexAttribfv)
  GLfloat* params = OGLM_ALLOC(4,GLfloat,params);
  glGetVertexAttribfv(index, pname, params);
  OGLM_CHECK_ERR(glGetVertexAttribfv, free(params);)
  OGLM_OUT_FINISH(params,4,newSVnv)
  free(params);
#line 37255 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribiv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "index, pname, params");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 18310 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVertexAttribiv, )
  OGLM_AVAIL_CHECK(__glewGetVertexAttribiv, glGetVertexAttribiv)
  glGetVertexAttribiv(index, pname, params);
  OGLM_CHECK_ERR(glGetVertexAttribiv, )
#line 37282 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVertexAttribiv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, pname");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 18324 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVertexAttribiv, )
  OGLM_AVAIL_CHECK(__glewGetVertexAttribiv, glGetVertexAttribiv)
  GLint* params = OGLM_ALLOC(4,GLint,params);
  glGetVertexAttribiv(index, pname, params);
  OGLM_CHECK_ERR(glGetVertexAttribiv, free(params);)
  OGLM_OUT_FINISH(params,4,newSViv)
  free(params);
#line 37311 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetVideoCaptureStreamdvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVideoCaptureStreamdvNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "video_capture_slot, stream, pname, params");
    {
	GLuint	video_capture_slot = (unsigned int)SvUV(ST(0))
;
	GLuint	stream = (unsigned int)SvUV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLdouble*	params = INT2PTR(GLdouble *,SvIV(ST(3)))
;
#line 18340 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVideoCaptureStreamdvNV, )
  OGLM_AVAIL_CHECK(__glewGetVideoCaptureStreamdvNV, glGetVideoCaptureStreamdvNV)
  glGetVideoCaptureStreamdvNV(video_capture_slot, stream, pname, params);
  OGLM_CHECK_ERR(glGetVideoCaptureStreamdvNV, )
#line 37339 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetVideoCaptureStreamfvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVideoCaptureStreamfvNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "video_capture_slot, stream, pname, params");
    {
	GLuint	video_capture_slot = (unsigned int)SvUV(ST(0))
;
	GLuint	stream = (unsigned int)SvUV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(3)))
;
#line 18353 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVideoCaptureStreamfvNV, )
  OGLM_AVAIL_CHECK(__glewGetVideoCaptureStreamfvNV, glGetVideoCaptureStreamfvNV)
  glGetVideoCaptureStreamfvNV(video_capture_slot, stream, pname, params);
  OGLM_CHECK_ERR(glGetVideoCaptureStreamfvNV, )
#line 37366 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetVideoCaptureStreamivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVideoCaptureStreamivNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "video_capture_slot, stream, pname, params");
    {
	GLuint	video_capture_slot = (unsigned int)SvUV(ST(0))
;
	GLuint	stream = (unsigned int)SvUV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(3)))
;
#line 18366 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVideoCaptureStreamivNV, )
  OGLM_AVAIL_CHECK(__glewGetVideoCaptureStreamivNV, glGetVideoCaptureStreamivNV)
  glGetVideoCaptureStreamivNV(video_capture_slot, stream, pname, params);
  OGLM_CHECK_ERR(glGetVideoCaptureStreamivNV, )
#line 37393 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetVideoCaptureivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVideoCaptureivNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "video_capture_slot, pname, params");
    {
	GLuint	video_capture_slot = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 18378 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVideoCaptureivNV, )
  OGLM_AVAIL_CHECK(__glewGetVideoCaptureivNV, glGetVideoCaptureivNV)
  glGetVideoCaptureivNV(video_capture_slot, pname, params);
  OGLM_CHECK_ERR(glGetVideoCaptureivNV, )
#line 37418 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetVideoi64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVideoi64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "video_slot, pname, params");
    {
	GLuint	video_slot = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint64EXT*	params = INT2PTR(GLint64EXT *,SvIV(ST(2)))
;
#line 18390 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVideoi64vNV, )
  OGLM_AVAIL_CHECK(__glewGetVideoi64vNV, glGetVideoi64vNV)
  glGetVideoi64vNV(video_slot, pname, params);
  OGLM_CHECK_ERR(glGetVideoi64vNV, )
#line 37443 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetVideoivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVideoivNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "video_slot, pname, params");
    {
	GLuint	video_slot = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(2)))
;
#line 18402 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVideoivNV, )
  OGLM_AVAIL_CHECK(__glewGetVideoivNV, glGetVideoivNV)
  glGetVideoivNV(video_slot, pname, params);
  OGLM_CHECK_ERR(glGetVideoivNV, )
#line 37468 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetVideoui64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVideoui64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "video_slot, pname, params");
    {
	GLuint	video_slot = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLuint64EXT*	params = INT2PTR(GLuint64EXT *,SvIV(ST(2)))
;
#line 18414 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVideoui64vNV, )
  OGLM_AVAIL_CHECK(__glewGetVideoui64vNV, glGetVideoui64vNV)
  glGetVideoui64vNV(video_slot, pname, params);
  OGLM_CHECK_ERR(glGetVideoui64vNV, )
#line 37493 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetVideouivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVideouivNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "video_slot, pname, params");
    {
	GLuint	video_slot = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLuint*	params = INT2PTR(GLuint *,SvIV(ST(2)))
;
#line 18426 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVideouivNV, )
  OGLM_AVAIL_CHECK(__glewGetVideouivNV, glGetVideouivNV)
  glGetVideouivNV(video_slot, pname, params);
  OGLM_CHECK_ERR(glGetVideouivNV, )
#line 37518 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetVkProcAddrNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetVkProcAddrNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "name");
    {
	const GLchar*	name = (const GLchar *)SvPV_nolen(ST(0))
;
	GLVULKANPROCNV	RETVAL;
	dXSTARG;
#line 18436 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetVkProcAddrNV, )
  OGLM_AVAIL_CHECK(__glewGetVkProcAddrNV, glGetVkProcAddrNV)
  RETVAL = glGetVkProcAddrNV(name);
  OGLM_CHECK_ERR(glGetVkProcAddrNV, )
#line 37541 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi(PTR2IV(RETVAL));
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glGetnColorTableARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnColorTableARB_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "target, format, type, bufSize, table");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	format = (int)SvIV(ST(1))
;
	GLenum	type = (int)SvIV(ST(2))
;
	GLsizei	bufSize = (int)SvIV(ST(3))
;
	void*	table = INT2PTR(void *,SvIV(ST(4)))
;
#line 18452 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnColorTableARB, )
  OGLM_AVAIL_CHECK(__glewGetnColorTableARB, glGetnColorTableARB)
  glGetnColorTableARB(target, format, type, bufSize, table);
  OGLM_CHECK_ERR(glGetnColorTableARB, )
#line 37572 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetnCompressedTexImage_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnCompressedTexImage_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, lod, bufSize, pixels");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	lod = (int)SvIV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
	GLvoid *	pixels = INT2PTR(GLvoid *,SvIV(ST(3)))
;
#line 18465 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnCompressedTexImage, )
  OGLM_AVAIL_CHECK(__glewGetnCompressedTexImage, glGetnCompressedTexImage)
  glGetnCompressedTexImage(target, lod, bufSize, pixels);
  OGLM_CHECK_ERR(glGetnCompressedTexImage, )
#line 37599 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetnCompressedTexImageARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnCompressedTexImageARB_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, lod, bufSize, img");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	lod = (int)SvIV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
	void*	img = INT2PTR(void *,SvIV(ST(3)))
;
#line 18478 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnCompressedTexImageARB, )
  OGLM_AVAIL_CHECK(__glewGetnCompressedTexImageARB, glGetnCompressedTexImageARB)
  glGetnCompressedTexImageARB(target, lod, bufSize, img);
  OGLM_CHECK_ERR(glGetnCompressedTexImageARB, )
#line 37626 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetnConvolutionFilterARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnConvolutionFilterARB_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "target, format, type, bufSize, image");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	format = (int)SvIV(ST(1))
;
	GLenum	type = (int)SvIV(ST(2))
;
	GLsizei	bufSize = (int)SvIV(ST(3))
;
	void*	image = INT2PTR(void *,SvIV(ST(4)))
;
#line 18492 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnConvolutionFilterARB, )
  OGLM_AVAIL_CHECK(__glewGetnConvolutionFilterARB, glGetnConvolutionFilterARB)
  glGetnConvolutionFilterARB(target, format, type, bufSize, image);
  OGLM_CHECK_ERR(glGetnConvolutionFilterARB, )
#line 37655 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetnHistogramARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnHistogramARB_c)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "target, reset, format, type, bufSize, values");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLboolean	reset = (int)SvIV(ST(1))
;
	GLenum	format = (int)SvIV(ST(2))
;
	GLenum	type = (int)SvIV(ST(3))
;
	GLsizei	bufSize = (int)SvIV(ST(4))
;
	void*	values = INT2PTR(void *,SvIV(ST(5)))
;
#line 18507 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnHistogramARB, )
  OGLM_AVAIL_CHECK(__glewGetnHistogramARB, glGetnHistogramARB)
  glGetnHistogramARB(target, reset, format, type, bufSize, values);
  OGLM_CHECK_ERR(glGetnHistogramARB, )
#line 37686 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetnMapdvARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnMapdvARB_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, query, bufSize, v");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	query = (int)SvIV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
	GLdouble*	v = INT2PTR(GLdouble *,SvIV(ST(3)))
;
#line 18520 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnMapdvARB, )
  OGLM_AVAIL_CHECK(__glewGetnMapdvARB, glGetnMapdvARB)
  glGetnMapdvARB(target, query, bufSize, v);
  OGLM_CHECK_ERR(glGetnMapdvARB, )
#line 37713 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetnMapdvARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnMapdvARB_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, query, bufSize");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	query = (int)SvIV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
#line 18532 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnMapdvARB, )
  OGLM_AVAIL_CHECK(__glewGetnMapdvARB, glGetnMapdvARB)
  GLdouble* v = OGLM_ALLOC(bufSize/8,GLdouble,v);
  glGetnMapdvARB(target, query, bufSize, v);
  OGLM_CHECK_ERR(glGetnMapdvARB, free(v);)
  OGLM_OUT_FINISH(v,bufSize/8,newSVnv)
  free(v);
#line 37743 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetnMapfvARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnMapfvARB_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, query, bufSize, v");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	query = (int)SvIV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
	GLfloat*	v = INT2PTR(GLfloat *,SvIV(ST(3)))
;
#line 18548 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnMapfvARB, )
  OGLM_AVAIL_CHECK(__glewGetnMapfvARB, glGetnMapfvARB)
  glGetnMapfvARB(target, query, bufSize, v);
  OGLM_CHECK_ERR(glGetnMapfvARB, )
#line 37771 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetnMapfvARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnMapfvARB_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, query, bufSize");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	query = (int)SvIV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
#line 18560 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnMapfvARB, )
  OGLM_AVAIL_CHECK(__glewGetnMapfvARB, glGetnMapfvARB)
  GLfloat* v = OGLM_ALLOC(bufSize,GLfloat,v);
  glGetnMapfvARB(target, query, bufSize, v);
  OGLM_CHECK_ERR(glGetnMapfvARB, free(v);)
  OGLM_OUT_FINISH(v,bufSize,newSVnv)
  free(v);
#line 37801 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetnMapivARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnMapivARB_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, query, bufSize, v");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	query = (int)SvIV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
	GLint*	v = INT2PTR(GLint *,SvIV(ST(3)))
;
#line 18576 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnMapivARB, )
  OGLM_AVAIL_CHECK(__glewGetnMapivARB, glGetnMapivARB)
  glGetnMapivARB(target, query, bufSize, v);
  OGLM_CHECK_ERR(glGetnMapivARB, )
#line 37829 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetnMapivARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnMapivARB_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, query, bufSize");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	query = (int)SvIV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
#line 18588 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnMapivARB, )
  OGLM_AVAIL_CHECK(__glewGetnMapivARB, glGetnMapivARB)
  GLint* v = OGLM_ALLOC(bufSize,GLint,v);
  glGetnMapivARB(target, query, bufSize, v);
  OGLM_CHECK_ERR(glGetnMapivARB, free(v);)
  OGLM_OUT_FINISH(v,bufSize,newSViv)
  free(v);
#line 37859 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetnMinmaxARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnMinmaxARB_c)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "target, reset, format, type, bufSize, values");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLboolean	reset = (int)SvIV(ST(1))
;
	GLenum	format = (int)SvIV(ST(2))
;
	GLenum	type = (int)SvIV(ST(3))
;
	GLsizei	bufSize = (int)SvIV(ST(4))
;
	void*	values = INT2PTR(void *,SvIV(ST(5)))
;
#line 18606 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnMinmaxARB, )
  OGLM_AVAIL_CHECK(__glewGetnMinmaxARB, glGetnMinmaxARB)
  glGetnMinmaxARB(target, reset, format, type, bufSize, values);
  OGLM_CHECK_ERR(glGetnMinmaxARB, )
#line 37891 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetnPixelMapfvARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnPixelMapfvARB_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "map, bufSize, values");
    {
	GLenum	map = (int)SvIV(ST(0))
;
	GLsizei	bufSize = (int)SvIV(ST(1))
;
	GLfloat*	values = INT2PTR(GLfloat *,SvIV(ST(2)))
;
#line 18618 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnPixelMapfvARB, )
  OGLM_AVAIL_CHECK(__glewGetnPixelMapfvARB, glGetnPixelMapfvARB)
  glGetnPixelMapfvARB(map, bufSize, values);
  OGLM_CHECK_ERR(glGetnPixelMapfvARB, )
#line 37916 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetnPixelMapfvARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnPixelMapfvARB_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "map, bufSize");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	map = (int)SvIV(ST(0))
;
	GLsizei	bufSize = (int)SvIV(ST(1))
;
#line 18629 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnPixelMapfvARB, )
  OGLM_AVAIL_CHECK(__glewGetnPixelMapfvARB, glGetnPixelMapfvARB)
  GLfloat* values = OGLM_ALLOC(bufSize/4,GLfloat,values);
  glGetnPixelMapfvARB(map, bufSize, values);
  OGLM_CHECK_ERR(glGetnPixelMapfvARB, free(values);)
  OGLM_OUT_FINISH(values,bufSize/4,newSVnv)
  free(values);
#line 37944 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetnPixelMapuivARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnPixelMapuivARB_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "map, bufSize, values");
    {
	GLenum	map = (int)SvIV(ST(0))
;
	GLsizei	bufSize = (int)SvIV(ST(1))
;
	GLuint*	values = INT2PTR(GLuint *,SvIV(ST(2)))
;
#line 18644 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnPixelMapuivARB, )
  OGLM_AVAIL_CHECK(__glewGetnPixelMapuivARB, glGetnPixelMapuivARB)
  glGetnPixelMapuivARB(map, bufSize, values);
  OGLM_CHECK_ERR(glGetnPixelMapuivARB, )
#line 37970 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetnPixelMapuivARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnPixelMapuivARB_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "map, bufSize");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	map = (int)SvIV(ST(0))
;
	GLsizei	bufSize = (int)SvIV(ST(1))
;
#line 18655 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnPixelMapuivARB, )
  OGLM_AVAIL_CHECK(__glewGetnPixelMapuivARB, glGetnPixelMapuivARB)
  GLuint* values = OGLM_ALLOC(bufSize,GLuint,values);
  glGetnPixelMapuivARB(map, bufSize, values);
  OGLM_CHECK_ERR(glGetnPixelMapuivARB, free(values);)
  OGLM_OUT_FINISH(values,bufSize,newSVuv)
  free(values);
#line 37998 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetnPixelMapusvARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnPixelMapusvARB_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "map, bufSize, values");
    {
	GLenum	map = (int)SvIV(ST(0))
;
	GLsizei	bufSize = (int)SvIV(ST(1))
;
	GLushort*	values = INT2PTR(GLushort *,SvIV(ST(2)))
;
#line 18670 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnPixelMapusvARB, )
  OGLM_AVAIL_CHECK(__glewGetnPixelMapusvARB, glGetnPixelMapusvARB)
  glGetnPixelMapusvARB(map, bufSize, values);
  OGLM_CHECK_ERR(glGetnPixelMapusvARB, )
#line 38024 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetnPixelMapusvARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnPixelMapusvARB_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "map, bufSize");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	map = (int)SvIV(ST(0))
;
	GLsizei	bufSize = (int)SvIV(ST(1))
;
#line 18681 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnPixelMapusvARB, )
  OGLM_AVAIL_CHECK(__glewGetnPixelMapusvARB, glGetnPixelMapusvARB)
  GLushort* values = OGLM_ALLOC(bufSize,GLushort,values);
  glGetnPixelMapusvARB(map, bufSize, values);
  OGLM_CHECK_ERR(glGetnPixelMapusvARB, free(values);)
  OGLM_OUT_FINISH(values,bufSize,newSVuv)
  free(values);
#line 38052 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetnPolygonStippleARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnPolygonStippleARB_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "bufSize, pattern");
    {
	GLsizei	bufSize = (int)SvIV(ST(0))
;
	GLubyte*	pattern = INT2PTR(GLubyte *,SvIV(ST(1)))
;
#line 18695 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnPolygonStippleARB, )
  OGLM_AVAIL_CHECK(__glewGetnPolygonStippleARB, glGetnPolygonStippleARB)
  glGetnPolygonStippleARB(bufSize, pattern);
  OGLM_CHECK_ERR(glGetnPolygonStippleARB, )
#line 38076 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetnPolygonStippleARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnPolygonStippleARB_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "bufSize");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLsizei	bufSize = (int)SvIV(ST(0))
;
#line 18705 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnPolygonStippleARB, )
  OGLM_AVAIL_CHECK(__glewGetnPolygonStippleARB, glGetnPolygonStippleARB)
  GLubyte* pattern = OGLM_ALLOC(bufSize,GLubyte,pattern);
  glGetnPolygonStippleARB(bufSize, pattern);
  OGLM_CHECK_ERR(glGetnPolygonStippleARB, free(pattern);)
  OGLM_OUT_FINISH(pattern,bufSize,newSVuv)
  free(pattern);
#line 38102 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetnSeparableFilterARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnSeparableFilterARB_c)
{
    dVAR; dXSARGS;
    if (items != 8)
       croak_xs_usage(cv,  "target, format, type, rowBufSize, row, columnBufSize, column, span");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	format = (int)SvIV(ST(1))
;
	GLenum	type = (int)SvIV(ST(2))
;
	GLsizei	rowBufSize = (int)SvIV(ST(3))
;
	void*	row = INT2PTR(void *,SvIV(ST(4)))
;
	GLsizei	columnBufSize = (int)SvIV(ST(5))
;
	void*	column = INT2PTR(void *,SvIV(ST(6)))
;
	void*	span = INT2PTR(void *,SvIV(ST(7)))
;
#line 18725 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnSeparableFilterARB, )
  OGLM_AVAIL_CHECK(__glewGetnSeparableFilterARB, glGetnSeparableFilterARB)
  glGetnSeparableFilterARB(target, format, type, rowBufSize, row, columnBufSize, column, span);
  OGLM_CHECK_ERR(glGetnSeparableFilterARB, )
#line 38138 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetnTexImage_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnTexImage_c)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "target, level, format, type, bufSize, pixels");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLenum	format = (int)SvIV(ST(2))
;
	GLenum	type = (int)SvIV(ST(3))
;
	GLsizei	bufSize = (int)SvIV(ST(4))
;
	GLvoid *	pixels = INT2PTR(GLvoid *,SvIV(ST(5)))
;
#line 18740 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnTexImage, )
  OGLM_AVAIL_CHECK(__glewGetnTexImage, glGetnTexImage)
  glGetnTexImage(target, level, format, type, bufSize, pixels);
  OGLM_CHECK_ERR(glGetnTexImage, )
#line 38169 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetnTexImageARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnTexImageARB_c)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "target, level, format, type, bufSize, img");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLenum	format = (int)SvIV(ST(2))
;
	GLenum	type = (int)SvIV(ST(3))
;
	GLsizei	bufSize = (int)SvIV(ST(4))
;
	void*	img = INT2PTR(void *,SvIV(ST(5)))
;
#line 18755 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnTexImageARB, )
  OGLM_AVAIL_CHECK(__glewGetnTexImageARB, glGetnTexImageARB)
  glGetnTexImageARB(target, level, format, type, bufSize, img);
  OGLM_CHECK_ERR(glGetnTexImageARB, )
#line 38200 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetnUniformdv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnUniformdv_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, bufSize, params");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
	GLdouble *	params = INT2PTR(GLdouble *,SvIV(ST(3)))
;
#line 18768 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnUniformdv, )
  OGLM_AVAIL_CHECK(__glewGetnUniformdv, glGetnUniformdv)
  glGetnUniformdv(program, location, bufSize, params);
  OGLM_CHECK_ERR(glGetnUniformdv, )
#line 38227 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetnUniformdv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnUniformdv_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, location, bufSize");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
#line 18780 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnUniformdv, )
  OGLM_AVAIL_CHECK(__glewGetnUniformdv, glGetnUniformdv)
  GLdouble *params = OGLM_ALLOC(bufSize/8,GLdouble,params);
  glGetnUniformdv(program, location, bufSize, params);
  OGLM_CHECK_ERR(glGetnUniformdv, free(params);)
  OGLM_OUT_FINISH(params,bufSize/8,newSVnv)
  free(params);
#line 38257 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetnUniformdvARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnUniformdvARB_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, bufSize, params");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
	GLdouble*	params = INT2PTR(GLdouble *,SvIV(ST(3)))
;
#line 18796 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnUniformdvARB, )
  OGLM_AVAIL_CHECK(__glewGetnUniformdvARB, glGetnUniformdvARB)
  glGetnUniformdvARB(program, location, bufSize, params);
  OGLM_CHECK_ERR(glGetnUniformdvARB, )
#line 38285 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetnUniformdvARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnUniformdvARB_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, location, bufSize");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
#line 18808 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnUniformdvARB, )
  OGLM_AVAIL_CHECK(__glewGetnUniformdvARB, glGetnUniformdvARB)
  GLdouble* params = OGLM_ALLOC(bufSize/8,GLdouble,params);
  glGetnUniformdvARB(program, location, bufSize, params);
  OGLM_CHECK_ERR(glGetnUniformdvARB, free(params);)
  OGLM_OUT_FINISH(params,bufSize/8,newSVnv)
  free(params);
#line 38315 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetnUniformfv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnUniformfv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, bufSize, params");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(3)))
;
#line 18827 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnUniformfv, )
  OGLM_AVAIL_CHECK(__glewGetnUniformfv, glGetnUniformfv)
  glGetnUniformfv(program, location, bufSize, params);
  OGLM_CHECK_ERR(glGetnUniformfv, )
#line 38344 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetnUniformfv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnUniformfv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "program, location, bufSize");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
#line 18842 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnUniformfv, )
  OGLM_AVAIL_CHECK(__glewGetnUniformfv, glGetnUniformfv)
  GLfloat* params = OGLM_ALLOC(bufSize/4,GLfloat,params);
  glGetnUniformfv(program, location, bufSize, params);
  OGLM_CHECK_ERR(glGetnUniformfv, free(params);)
  OGLM_OUT_FINISH(params,bufSize/4,newSVnv)
  free(params);
#line 38375 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetnUniformfvARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnUniformfvARB_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, bufSize, params");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(3)))
;
#line 18858 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnUniformfvARB, )
  OGLM_AVAIL_CHECK(__glewGetnUniformfvARB, glGetnUniformfvARB)
  glGetnUniformfvARB(program, location, bufSize, params);
  OGLM_CHECK_ERR(glGetnUniformfvARB, )
#line 38403 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetnUniformfvARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnUniformfvARB_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, location, bufSize");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
#line 18870 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnUniformfvARB, )
  OGLM_AVAIL_CHECK(__glewGetnUniformfvARB, glGetnUniformfvARB)
  GLfloat* params = OGLM_ALLOC(bufSize/4,GLfloat,params);
  glGetnUniformfvARB(program, location, bufSize, params);
  OGLM_CHECK_ERR(glGetnUniformfvARB, free(params);)
  OGLM_OUT_FINISH(params,bufSize/4,newSVnv)
  free(params);
#line 38433 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetnUniformi64vARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnUniformi64vARB_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, bufSize, params");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
	GLint64*	params = INT2PTR(GLint64 *,SvIV(ST(3)))
;
#line 18886 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnUniformi64vARB, )
  OGLM_AVAIL_CHECK(__glewGetnUniformi64vARB, glGetnUniformi64vARB)
  glGetnUniformi64vARB(program, location, bufSize, params);
  OGLM_CHECK_ERR(glGetnUniformi64vARB, )
#line 38461 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetnUniformi64vARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnUniformi64vARB_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, location, bufSize");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
#line 18898 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnUniformi64vARB, )
  OGLM_AVAIL_CHECK(__glewGetnUniformi64vARB, glGetnUniformi64vARB)
  GLint64* params = OGLM_ALLOC(bufSize/8,GLint64,params);
  glGetnUniformi64vARB(program, location, bufSize, params);
  OGLM_CHECK_ERR(glGetnUniformi64vARB, free(params);)
  OGLM_OUT_FINISH(params,bufSize/8,newSViv)
  free(params);
#line 38491 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetnUniformiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnUniformiv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, bufSize, params");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(3)))
;
#line 18917 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnUniformiv, )
  OGLM_AVAIL_CHECK(__glewGetnUniformiv, glGetnUniformiv)
  glGetnUniformiv(program, location, bufSize, params);
  OGLM_CHECK_ERR(glGetnUniformiv, )
#line 38520 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetnUniformiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnUniformiv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "program, location, bufSize");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
#line 18932 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnUniformiv, )
  OGLM_AVAIL_CHECK(__glewGetnUniformiv, glGetnUniformiv)
  GLint* params = OGLM_ALLOC(bufSize/4,GLint,params);
  glGetnUniformiv(program, location, bufSize, params);
  OGLM_CHECK_ERR(glGetnUniformiv, free(params);)
  OGLM_OUT_FINISH(params,bufSize/4,newSViv)
  free(params);
#line 38551 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetnUniformivARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnUniformivARB_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, bufSize, params");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(3)))
;
#line 18948 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnUniformivARB, )
  OGLM_AVAIL_CHECK(__glewGetnUniformivARB, glGetnUniformivARB)
  glGetnUniformivARB(program, location, bufSize, params);
  OGLM_CHECK_ERR(glGetnUniformivARB, )
#line 38579 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetnUniformivARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnUniformivARB_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, location, bufSize");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
#line 18960 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnUniformivARB, )
  OGLM_AVAIL_CHECK(__glewGetnUniformivARB, glGetnUniformivARB)
  GLint* params = OGLM_ALLOC(bufSize/4,GLint,params);
  glGetnUniformivARB(program, location, bufSize, params);
  OGLM_CHECK_ERR(glGetnUniformivARB, free(params);)
  OGLM_OUT_FINISH(params,bufSize/4,newSViv)
  free(params);
#line 38609 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetnUniformui64vARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnUniformui64vARB_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, bufSize, params");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
	GLuint64*	params = INT2PTR(GLuint64 *,SvIV(ST(3)))
;
#line 18976 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnUniformui64vARB, )
  OGLM_AVAIL_CHECK(__glewGetnUniformui64vARB, glGetnUniformui64vARB)
  glGetnUniformui64vARB(program, location, bufSize, params);
  OGLM_CHECK_ERR(glGetnUniformui64vARB, )
#line 38637 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetnUniformui64vARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnUniformui64vARB_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, location, bufSize");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
#line 18988 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnUniformui64vARB, )
  OGLM_AVAIL_CHECK(__glewGetnUniformui64vARB, glGetnUniformui64vARB)
  GLuint64* params = OGLM_ALLOC(bufSize/8,GLuint64,params);
  glGetnUniformui64vARB(program, location, bufSize, params);
  OGLM_CHECK_ERR(glGetnUniformui64vARB, free(params);)
  OGLM_OUT_FINISH(params,bufSize/8,newSVuv)
  free(params);
#line 38667 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetnUniformuiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnUniformuiv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, bufSize, params");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
	GLuint*	params = INT2PTR(GLuint *,SvIV(ST(3)))
;
#line 19006 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnUniformuiv, )
  OGLM_AVAIL_CHECK(__glewGetnUniformuiv, glGetnUniformuiv)
  glGetnUniformuiv(program, location, bufSize, params);
  OGLM_CHECK_ERR(glGetnUniformuiv, )
#line 38696 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetnUniformuiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnUniformuiv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "program, location, bufSize");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
#line 19020 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnUniformuiv, )
  OGLM_AVAIL_CHECK(__glewGetnUniformuiv, glGetnUniformuiv)
  GLuint* params = OGLM_ALLOC(bufSize/4,GLuint,params);
  glGetnUniformuiv(program, location, bufSize, params);
  OGLM_CHECK_ERR(glGetnUniformuiv, free(params);)
  OGLM_OUT_FINISH(params,bufSize/4,newSVuv)
  free(params);
#line 38727 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGetnUniformuivARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnUniformuivARB_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, bufSize, params");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
	GLuint*	params = INT2PTR(GLuint *,SvIV(ST(3)))
;
#line 19036 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnUniformuivARB, )
  OGLM_AVAIL_CHECK(__glewGetnUniformuivARB, glGetnUniformuivARB)
  glGetnUniformuivARB(program, location, bufSize, params);
  OGLM_CHECK_ERR(glGetnUniformuivARB, )
#line 38755 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGetnUniformuivARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGetnUniformuivARB_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, location, bufSize");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	bufSize = (int)SvIV(ST(2))
;
#line 19048 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGetnUniformuivARB, )
  OGLM_AVAIL_CHECK(__glewGetnUniformuivARB, glGetnUniformuivARB)
  GLuint* params = OGLM_ALLOC(bufSize/4,GLuint,params);
  glGetnUniformuivARB(program, location, bufSize, params);
  OGLM_CHECK_ERR(glGetnUniformuivARB, free(params);)
  OGLM_OUT_FINISH(params,bufSize/4,newSVuv)
  free(params);
#line 38785 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glGlobalAlphaFactorbSUN); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGlobalAlphaFactorbSUN)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "factor");
    {
	GLbyte	factor = (int)SvIV(ST(0))
;
#line 19061 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGlobalAlphaFactorbSUN, )
  OGLM_AVAIL_CHECK(__glewGlobalAlphaFactorbSUN, glGlobalAlphaFactorbSUN)
  glGlobalAlphaFactorbSUN(factor);
  OGLM_CHECK_ERR(glGlobalAlphaFactorbSUN, )
#line 38807 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGlobalAlphaFactordSUN); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGlobalAlphaFactordSUN)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "factor");
    {
	GLdouble	factor = (double)SvNV(ST(0))
;
#line 19071 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGlobalAlphaFactordSUN, )
  OGLM_AVAIL_CHECK(__glewGlobalAlphaFactordSUN, glGlobalAlphaFactordSUN)
  glGlobalAlphaFactordSUN(factor);
  OGLM_CHECK_ERR(glGlobalAlphaFactordSUN, )
#line 38828 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGlobalAlphaFactorfSUN); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGlobalAlphaFactorfSUN)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "factor");
    {
	GLfloat	factor = (float)SvNV(ST(0))
;
#line 19081 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGlobalAlphaFactorfSUN, )
  OGLM_AVAIL_CHECK(__glewGlobalAlphaFactorfSUN, glGlobalAlphaFactorfSUN)
  glGlobalAlphaFactorfSUN(factor);
  OGLM_CHECK_ERR(glGlobalAlphaFactorfSUN, )
#line 38849 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGlobalAlphaFactoriSUN); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGlobalAlphaFactoriSUN)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "factor");
    {
	GLint	factor = (int)SvIV(ST(0))
;
#line 19091 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGlobalAlphaFactoriSUN, )
  OGLM_AVAIL_CHECK(__glewGlobalAlphaFactoriSUN, glGlobalAlphaFactoriSUN)
  glGlobalAlphaFactoriSUN(factor);
  OGLM_CHECK_ERR(glGlobalAlphaFactoriSUN, )
#line 38870 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGlobalAlphaFactorsSUN); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGlobalAlphaFactorsSUN)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "factor");
    {
	GLshort	factor = (short)SvIV(ST(0))
;
#line 19101 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGlobalAlphaFactorsSUN, )
  OGLM_AVAIL_CHECK(__glewGlobalAlphaFactorsSUN, glGlobalAlphaFactorsSUN)
  glGlobalAlphaFactorsSUN(factor);
  OGLM_CHECK_ERR(glGlobalAlphaFactorsSUN, )
#line 38891 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGlobalAlphaFactorubSUN); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGlobalAlphaFactorubSUN)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "factor");
    {
	GLubyte	factor = (unsigned int)SvUV(ST(0))
;
#line 19111 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGlobalAlphaFactorubSUN, )
  OGLM_AVAIL_CHECK(__glewGlobalAlphaFactorubSUN, glGlobalAlphaFactorubSUN)
  glGlobalAlphaFactorubSUN(factor);
  OGLM_CHECK_ERR(glGlobalAlphaFactorubSUN, )
#line 38912 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGlobalAlphaFactoruiSUN); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGlobalAlphaFactoruiSUN)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "factor");
    {
	GLuint	factor = (unsigned int)SvUV(ST(0))
;
#line 19121 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGlobalAlphaFactoruiSUN, )
  OGLM_AVAIL_CHECK(__glewGlobalAlphaFactoruiSUN, glGlobalAlphaFactoruiSUN)
  glGlobalAlphaFactoruiSUN(factor);
  OGLM_CHECK_ERR(glGlobalAlphaFactoruiSUN, )
#line 38933 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glGlobalAlphaFactorusSUN); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glGlobalAlphaFactorusSUN)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "factor");
    {
	GLushort	factor = (unsigned short)SvUV(ST(0))
;
#line 19131 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glGlobalAlphaFactorusSUN, )
  OGLM_AVAIL_CHECK(__glewGlobalAlphaFactorusSUN, glGlobalAlphaFactorusSUN)
  glGlobalAlphaFactorusSUN(factor);
  OGLM_CHECK_ERR(glGlobalAlphaFactorusSUN, )
#line 38954 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glHint); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glHint)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, mode");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	mode = (int)SvIV(ST(1))
;
#line 19142 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glHint, )
  glHint(target, mode);
  OGLM_CHECK_ERR(glHint, )
#line 38976 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glHistogram); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glHistogram)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "target, width, internalformat, sink");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	width = (int)SvIV(ST(1))
;
	GLenum	internalformat = (int)SvIV(ST(2))
;
	GLboolean	sink = (int)SvIV(ST(3))
;
#line 19156 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glHistogram, )
  OGLM_AVAIL_CHECK(__glewHistogram, glHistogram)
  glHistogram(target, width, internalformat, sink);
  OGLM_CHECK_ERR(glHistogram, )
#line 39004 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glIglooInterfaceSGIX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIglooInterfaceSGIX_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, params");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	void *	params = INT2PTR(void *,SvIV(ST(1)))
;
#line 19167 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIglooInterfaceSGIX, )
  OGLM_AVAIL_CHECK(__glewIglooInterfaceSGIX, glIglooInterfaceSGIX)
  glIglooInterfaceSGIX(pname, params);
  OGLM_CHECK_ERR(glIglooInterfaceSGIX, )
#line 39027 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glImageTransformParameterfHP); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glImageTransformParameterfHP)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, param");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLfloat	param = (float)SvNV(ST(2))
;
#line 19179 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glImageTransformParameterfHP, )
  OGLM_AVAIL_CHECK(__glewImageTransformParameterfHP, glImageTransformParameterfHP)
  glImageTransformParameterfHP(target, pname, param);
  OGLM_CHECK_ERR(glImageTransformParameterfHP, )
#line 39052 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glImageTransformParameterfvHP_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glImageTransformParameterfvHP_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLfloat*	params = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 19191 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glImageTransformParameterfvHP, )
  OGLM_AVAIL_CHECK(__glewImageTransformParameterfvHP, glImageTransformParameterfvHP)
  glImageTransformParameterfvHP(target, pname, params);
  OGLM_CHECK_ERR(glImageTransformParameterfvHP, )
#line 39077 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glImageTransformParameteriHP); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glImageTransformParameteriHP)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, param");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLint	param = (int)SvIV(ST(2))
;
#line 19203 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glImageTransformParameteriHP, )
  OGLM_AVAIL_CHECK(__glewImageTransformParameteriHP, glImageTransformParameteriHP)
  glImageTransformParameteriHP(target, pname, param);
  OGLM_CHECK_ERR(glImageTransformParameteriHP, )
#line 39102 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glImageTransformParameterivHP_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glImageTransformParameterivHP_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLint*	params = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 19215 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glImageTransformParameterivHP, )
  OGLM_AVAIL_CHECK(__glewImageTransformParameterivHP, glImageTransformParameterivHP)
  glImageTransformParameterivHP(target, pname, params);
  OGLM_CHECK_ERR(glImageTransformParameterivHP, )
#line 39127 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glImportMemoryFdEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glImportMemoryFdEXT)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "memory, size, handleType, fd");
    {
	GLuint	memory = (unsigned int)SvUV(ST(0))
;
	GLuint64	size = (unsigned int)SvUV(ST(1))
;
	GLenum	handleType = (int)SvIV(ST(2))
;
	GLint	fd = (int)SvIV(ST(3))
;
#line 19228 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glImportMemoryFdEXT, )
  OGLM_AVAIL_CHECK(__glewImportMemoryFdEXT, glImportMemoryFdEXT)
  glImportMemoryFdEXT(memory, size, handleType, fd);
  OGLM_CHECK_ERR(glImportMemoryFdEXT, )
#line 39154 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glImportMemoryWin32HandleEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glImportMemoryWin32HandleEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "memory, size, handleType, handle");
    {
	GLuint	memory = (unsigned int)SvUV(ST(0))
;
	GLuint64	size = (unsigned int)SvUV(ST(1))
;
	GLenum	handleType = (int)SvIV(ST(2))
;
	void *	handle = INT2PTR(void *,SvIV(ST(3)))
;
#line 19241 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glImportMemoryWin32HandleEXT, )
  OGLM_AVAIL_CHECK(__glewImportMemoryWin32HandleEXT, glImportMemoryWin32HandleEXT)
  glImportMemoryWin32HandleEXT(memory, size, handleType, handle);
  OGLM_CHECK_ERR(glImportMemoryWin32HandleEXT, )
#line 39181 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glImportMemoryWin32NameEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glImportMemoryWin32NameEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "memory, size, handleType, name");
    {
	GLuint	memory = (unsigned int)SvUV(ST(0))
;
	GLuint64	size = (unsigned int)SvUV(ST(1))
;
	GLenum	handleType = (int)SvIV(ST(2))
;
	const void *	name = INT2PTR(const void *,SvIV(ST(3)))
;
#line 19254 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glImportMemoryWin32NameEXT, )
  OGLM_AVAIL_CHECK(__glewImportMemoryWin32NameEXT, glImportMemoryWin32NameEXT)
  glImportMemoryWin32NameEXT(memory, size, handleType, name);
  OGLM_CHECK_ERR(glImportMemoryWin32NameEXT, )
#line 39208 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glImportSemaphoreFdEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glImportSemaphoreFdEXT)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "semaphore, handleType, fd");
    {
	GLuint	semaphore = (unsigned int)SvUV(ST(0))
;
	GLenum	handleType = (int)SvIV(ST(1))
;
	GLint	fd = (int)SvIV(ST(2))
;
#line 19266 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glImportSemaphoreFdEXT, )
  OGLM_AVAIL_CHECK(__glewImportSemaphoreFdEXT, glImportSemaphoreFdEXT)
  glImportSemaphoreFdEXT(semaphore, handleType, fd);
  OGLM_CHECK_ERR(glImportSemaphoreFdEXT, )
#line 39233 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glImportSemaphoreWin32HandleEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glImportSemaphoreWin32HandleEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "semaphore, handleType, handle");
    {
	GLuint	semaphore = (unsigned int)SvUV(ST(0))
;
	GLenum	handleType = (int)SvIV(ST(1))
;
	void *	handle = INT2PTR(void *,SvIV(ST(2)))
;
#line 19278 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glImportSemaphoreWin32HandleEXT, )
  OGLM_AVAIL_CHECK(__glewImportSemaphoreWin32HandleEXT, glImportSemaphoreWin32HandleEXT)
  glImportSemaphoreWin32HandleEXT(semaphore, handleType, handle);
  OGLM_CHECK_ERR(glImportSemaphoreWin32HandleEXT, )
#line 39258 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glImportSemaphoreWin32NameEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glImportSemaphoreWin32NameEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "semaphore, handleType, name");
    {
	GLuint	semaphore = (unsigned int)SvUV(ST(0))
;
	GLenum	handleType = (int)SvIV(ST(1))
;
	const void *	name = INT2PTR(const void *,SvIV(ST(2)))
;
#line 19290 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glImportSemaphoreWin32NameEXT, )
  OGLM_AVAIL_CHECK(__glewImportSemaphoreWin32NameEXT, glImportSemaphoreWin32NameEXT)
  glImportSemaphoreWin32NameEXT(semaphore, handleType, name);
  OGLM_CHECK_ERR(glImportSemaphoreWin32NameEXT, )
#line 39283 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glImportSyncEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glImportSyncEXT)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "external_sync_type, external_sync, flags");
    {
	GLenum	external_sync_type = (int)SvIV(ST(0))
;
	GLintptr	external_sync = (unsigned int)SvUV(ST(1))
;
	GLbitfield	flags = (int)SvIV(ST(2))
;
	GLsync	RETVAL;
	dXSTARG;
#line 19302 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glImportSyncEXT, )
  OGLM_AVAIL_CHECK(__glewImportSyncEXT, glImportSyncEXT)
  RETVAL = glImportSyncEXT(external_sync_type, external_sync, flags);
  OGLM_CHECK_ERR(glImportSyncEXT, )
#line 39310 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi(PTR2IV(RETVAL));
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIndexFormatNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIndexFormatNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "type, stride");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	GLsizei	stride = (int)SvIV(ST(1))
;
#line 19315 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIndexFormatNV, )
  OGLM_AVAIL_CHECK(__glewIndexFormatNV, glIndexFormatNV)
  glIndexFormatNV(type, stride);
  OGLM_CHECK_ERR(glIndexFormatNV, )
#line 39335 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glIndexFuncEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIndexFuncEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "func, ref");
    {
	GLenum	func = (int)SvIV(ST(0))
;
	GLfloat	ref = (float)SvNV(ST(1))
;
#line 19326 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIndexFuncEXT, )
  OGLM_AVAIL_CHECK(__glewIndexFuncEXT, glIndexFuncEXT)
  glIndexFuncEXT(func, ref);
  OGLM_CHECK_ERR(glIndexFuncEXT, )
#line 39358 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glIndexMask); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIndexMask)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "mask");
    {
	GLuint	mask = (unsigned int)SvUV(ST(0))
;
#line 19336 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIndexMask, )
  glIndexMask(mask);
  OGLM_CHECK_ERR(glIndexMask, )
#line 39378 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glIndexMaterialEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIndexMaterialEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "face, mode");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	mode = (int)SvIV(ST(1))
;
#line 19346 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIndexMaterialEXT, )
  OGLM_AVAIL_CHECK(__glewIndexMaterialEXT, glIndexMaterialEXT)
  glIndexMaterialEXT(face, mode);
  OGLM_CHECK_ERR(glIndexMaterialEXT, )
#line 39401 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glIndexPointer_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIndexPointer_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "type, stride, pointer");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	GLsizei	stride = (int)SvIV(ST(1))
;
	const void *	pointer = INT2PTR(const void *,SvIV(ST(2)))
;
#line 19358 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIndexPointer, )
  glIndexPointer(type, stride, pointer);
  OGLM_CHECK_ERR(glIndexPointer, )
#line 39425 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glIndexPointerEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIndexPointerEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "type, stride, count, pointer");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	GLsizei	stride = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const void *	pointer = INT2PTR(const void *,SvIV(ST(3)))
;
#line 19370 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIndexPointerEXT, )
  OGLM_AVAIL_CHECK(__glewIndexPointerEXT, glIndexPointerEXT)
  glIndexPointerEXT(type, stride, count, pointer);
  OGLM_CHECK_ERR(glIndexPointerEXT, )
#line 39452 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glIndexPointerListIBM_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIndexPointerListIBM_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "type, stride, pointer, ptrstride");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	GLint	stride = (int)SvIV(ST(1))
;
	const void**	pointer = INT2PTR(const void **,SvIV(ST(2)))
;
	GLint	ptrstride = (int)SvIV(ST(3))
;
#line 19383 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIndexPointerListIBM, )
  OGLM_AVAIL_CHECK(__glewIndexPointerListIBM, glIndexPointerListIBM)
  glIndexPointerListIBM(type, stride, pointer, ptrstride);
  OGLM_CHECK_ERR(glIndexPointerListIBM, )
#line 39479 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glIndexd); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIndexd)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "c");
    {
	GLdouble	c = (double)SvNV(ST(0))
;
#line 19393 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIndexd, )
  glIndexd(c);
  OGLM_CHECK_ERR(glIndexd, )
#line 39499 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glIndexdv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIndexdv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "c");
    {
	const GLdouble *	c = INT2PTR(const GLdouble *,SvIV(ST(0)))
;
#line 19402 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIndexdv, )
  glIndexdv(c);
  OGLM_CHECK_ERR(glIndexdv, )
#line 39519 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glIndexdv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIndexdv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 19410 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIndexdv, )
  GLdouble *c = OGLM_GET_VARARGS(c,0,GLdouble,NV,1);
  glIndexdv((const GLdouble *)c);
  OGLM_CHECK_ERR(glIndexdv, free(c);)
  free(c);
#line 39539 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glIndexf); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIndexf)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "c");
    {
	GLfloat	c = (float)SvNV(ST(0))
;
#line 19421 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIndexf, )
  glIndexf(c);
  OGLM_CHECK_ERR(glIndexf, )
#line 39559 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glIndexfv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIndexfv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "c");
    {
	const GLfloat *	c = INT2PTR(const GLfloat *,SvIV(ST(0)))
;
#line 19430 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIndexfv, )
  glIndexfv(c);
  OGLM_CHECK_ERR(glIndexfv, )
#line 39579 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glIndexfv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIndexfv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 19438 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIndexfv, )
  GLfloat *c = OGLM_GET_VARARGS(c,0,GLfloat,NV,1);
  glIndexfv((const GLfloat *)c);
  OGLM_CHECK_ERR(glIndexfv, free(c);)
  free(c);
#line 39599 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glIndexi); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIndexi)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "c");
    {
	GLint	c = (int)SvIV(ST(0))
;
#line 19449 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIndexi, )
  glIndexi(c);
  OGLM_CHECK_ERR(glIndexi, )
#line 39619 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glIndexiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIndexiv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "c");
    {
	const GLint *	c = INT2PTR(const GLint *,SvIV(ST(0)))
;
#line 19458 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIndexiv, )
  glIndexiv(c);
  OGLM_CHECK_ERR(glIndexiv, )
#line 39639 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glIndexiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIndexiv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 19466 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIndexiv, )
  GLint *c = OGLM_GET_VARARGS(c,0,GLint,IV,1);
  glIndexiv((const GLint *)c);
  OGLM_CHECK_ERR(glIndexiv, free(c);)
  free(c);
#line 39659 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glIndexs); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIndexs)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "c");
    {
	GLshort	c = (short)SvIV(ST(0))
;
#line 19477 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIndexs, )
  glIndexs(c);
  OGLM_CHECK_ERR(glIndexs, )
#line 39679 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glIndexsv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIndexsv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "c");
    {
	const GLshort *	c = INT2PTR(const GLshort *,SvIV(ST(0)))
;
#line 19486 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIndexsv, )
  glIndexsv(c);
  OGLM_CHECK_ERR(glIndexsv, )
#line 39699 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glIndexsv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIndexsv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 19494 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIndexsv, )
  GLshort *c = OGLM_GET_VARARGS(c,0,GLshort,IV,1);
  glIndexsv((const GLshort *)c);
  OGLM_CHECK_ERR(glIndexsv, free(c);)
  free(c);
#line 39719 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glIndexub); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIndexub)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "c");
    {
	GLubyte	c = (unsigned int)SvUV(ST(0))
;
#line 19505 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIndexub, )
  glIndexub(c);
  OGLM_CHECK_ERR(glIndexub, )
#line 39739 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glIndexubv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIndexubv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "c");
    {
	const GLubyte *        c = (const GLubyte *)SvPV_nolen(ST(0))
;
#line 19514 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIndexubv, )
  glIndexubv(c);
  OGLM_CHECK_ERR(glIndexubv, )
#line 39759 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glIndexubv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIndexubv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 19522 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIndexubv, )
  GLubyte *c = OGLM_GET_VARARGS(c,0,GLubyte,UV,1);
  glIndexubv((const GLubyte *)c);
  OGLM_CHECK_ERR(glIndexubv, free(c);)
  free(c);
#line 39779 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glInitNames); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glInitNames)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 19532 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glInitNames, )
  glInitNames();
  OGLM_CHECK_ERR(glInitNames, )
#line 39797 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glInsertComponentEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glInsertComponentEXT)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "res, src, num");
    {
	GLuint	res = (unsigned int)SvUV(ST(0))
;
	GLuint	src = (unsigned int)SvUV(ST(1))
;
	GLuint	num = (unsigned int)SvUV(ST(2))
;
#line 19543 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glInsertComponentEXT, )
  OGLM_AVAIL_CHECK(__glewInsertComponentEXT, glInsertComponentEXT)
  glInsertComponentEXT(res, src, num);
  OGLM_CHECK_ERR(glInsertComponentEXT, )
#line 39822 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glInsertEventMarkerEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glInsertEventMarkerEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "length, marker");
    {
	GLsizei	length = (int)SvIV(ST(0))
;
	const GLchar*	marker = (const GLchar *)SvPV_nolen(ST(1))
;
#line 19554 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glInsertEventMarkerEXT, )
  OGLM_AVAIL_CHECK(__glewInsertEventMarkerEXT, glInsertEventMarkerEXT)
  glInsertEventMarkerEXT(length, marker);
  OGLM_CHECK_ERR(glInsertEventMarkerEXT, )
#line 39845 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glInterleavedArrays_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glInterleavedArrays_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "format, stride, pointer");
    {
	GLenum	format = (int)SvIV(ST(0))
;
	GLsizei	stride = (int)SvIV(ST(1))
;
	const void *	pointer = INT2PTR(const void *,SvIV(ST(2)))
;
#line 19566 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glInterleavedArrays, )
  glInterleavedArrays(format, stride, pointer);
  OGLM_CHECK_ERR(glInterleavedArrays, )
#line 39869 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glInterleavedTextureCoordSetsSGIS); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glInterleavedTextureCoordSetsSGIS)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "factor");
    {
	GLint	factor = (int)SvIV(ST(0))
;
#line 19575 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glInterleavedTextureCoordSetsSGIS, )
  OGLM_AVAIL_CHECK(__glewInterleavedTextureCoordSetsSGIS, glInterleavedTextureCoordSetsSGIS)
  glInterleavedTextureCoordSetsSGIS(factor);
  OGLM_CHECK_ERR(glInterleavedTextureCoordSetsSGIS, )
#line 39890 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glInterpolatePathsNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glInterpolatePathsNV)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "resultPath, pathA, pathB, weight");
    {
	GLuint	resultPath = (unsigned int)SvUV(ST(0))
;
	GLuint	pathA = (unsigned int)SvUV(ST(1))
;
	GLuint	pathB = (unsigned int)SvUV(ST(2))
;
	GLfloat	weight = (float)SvNV(ST(3))
;
#line 19588 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glInterpolatePathsNV, )
  OGLM_AVAIL_CHECK(__glewInterpolatePathsNV, glInterpolatePathsNV)
  glInterpolatePathsNV(resultPath, pathA, pathB, weight);
  OGLM_CHECK_ERR(glInterpolatePathsNV, )
#line 39917 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glInvalidateBufferData); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glInvalidateBufferData)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "buffer");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
#line 19598 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glInvalidateBufferData, )
  OGLM_AVAIL_CHECK(__glewInvalidateBufferData, glInvalidateBufferData)
  glInvalidateBufferData(buffer);
  OGLM_CHECK_ERR(glInvalidateBufferData, )
#line 39938 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glInvalidateBufferSubData); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glInvalidateBufferSubData)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "buffer, offset, length");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLintptr	offset = (unsigned int)SvUV(ST(1))
;
	GLsizeiptr	length = (unsigned int)SvUV(ST(2))
;
#line 19610 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glInvalidateBufferSubData, )
  OGLM_AVAIL_CHECK(__glewInvalidateBufferSubData, glInvalidateBufferSubData)
  glInvalidateBufferSubData(buffer, offset, length);
  OGLM_CHECK_ERR(glInvalidateBufferSubData, )
#line 39963 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glInvalidateFramebuffer_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glInvalidateFramebuffer_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, numAttachments, attachments");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	numAttachments = (int)SvIV(ST(1))
;
	const GLenum*	attachments = INT2PTR(const GLenum *,SvIV(ST(2)))
;
#line 19622 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glInvalidateFramebuffer, )
  OGLM_AVAIL_CHECK(__glewInvalidateFramebuffer, glInvalidateFramebuffer)
  glInvalidateFramebuffer(target, numAttachments, attachments);
  OGLM_CHECK_ERR(glInvalidateFramebuffer, )
#line 39988 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glInvalidateFramebuffer_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glInvalidateFramebuffer_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "target, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
#line 19632 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glInvalidateFramebuffer, )
  OGLM_AVAIL_CHECK(__glewInvalidateFramebuffer, glInvalidateFramebuffer)
  GLsizei numAttachments = items-1;
  GLenum* attachments = OGLM_GET_VARARGS(attachments,1,GLenum,IV,numAttachments);
  glInvalidateFramebuffer((GLenum )target, (GLsizei )numAttachments, (const GLenum* )attachments);
  OGLM_CHECK_ERR(glInvalidateFramebuffer, free(attachments);)
  free(attachments);
#line 40012 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glInvalidateNamedFramebufferData_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glInvalidateNamedFramebufferData_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "framebuffer, numAttachments, attachments");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLsizei	numAttachments = (int)SvIV(ST(1))
;
	const GLenum*	attachments = INT2PTR(const GLenum *,SvIV(ST(2)))
;
#line 19647 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glInvalidateNamedFramebufferData, )
  OGLM_AVAIL_CHECK(__glewInvalidateNamedFramebufferData, glInvalidateNamedFramebufferData)
  glInvalidateNamedFramebufferData(framebuffer, numAttachments, attachments);
  OGLM_CHECK_ERR(glInvalidateNamedFramebufferData, )
#line 40037 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glInvalidateNamedFramebufferData_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glInvalidateNamedFramebufferData_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "framebuffer, ...");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
#line 19657 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glInvalidateNamedFramebufferData, )
  OGLM_AVAIL_CHECK(__glewInvalidateNamedFramebufferData, glInvalidateNamedFramebufferData)
  GLsizei numAttachments = items-1;
  GLenum* attachments = OGLM_GET_VARARGS(attachments,1,GLenum,IV,numAttachments);
  glInvalidateNamedFramebufferData((GLuint )framebuffer, (GLsizei )numAttachments, (const GLenum* )attachments);
  OGLM_CHECK_ERR(glInvalidateNamedFramebufferData, free(attachments);)
  free(attachments);
#line 40061 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glInvalidateNamedFramebufferSubData_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glInvalidateNamedFramebufferSubData_c)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "framebuffer, numAttachments, attachments, x, y, width, height");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLsizei	numAttachments = (int)SvIV(ST(1))
;
	const GLenum*	attachments = INT2PTR(const GLenum *,SvIV(ST(2)))
;
	GLint	x = (int)SvIV(ST(3))
;
	GLint	y = (int)SvIV(ST(4))
;
	GLsizei	width = (int)SvIV(ST(5))
;
	GLsizei	height = (int)SvIV(ST(6))
;
#line 19676 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glInvalidateNamedFramebufferSubData, )
  OGLM_AVAIL_CHECK(__glewInvalidateNamedFramebufferSubData, glInvalidateNamedFramebufferSubData)
  glInvalidateNamedFramebufferSubData(framebuffer, numAttachments, attachments, x, y, width, height);
  OGLM_CHECK_ERR(glInvalidateNamedFramebufferSubData, )
#line 40094 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glInvalidateNamedFramebufferSubData_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glInvalidateNamedFramebufferSubData_p)
{
    dVAR; dXSARGS;
    if (items < 5)
       croak_xs_usage(cv,  "framebuffer, x, y, width, height, ...");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLint	x = (int)SvIV(ST(1))
;
	GLint	y = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
#line 19690 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glInvalidateNamedFramebufferSubData, )
  OGLM_AVAIL_CHECK(__glewInvalidateNamedFramebufferSubData, glInvalidateNamedFramebufferSubData)
  GLsizei numAttachments = items-5;
  GLenum* attachments = OGLM_GET_VARARGS(attachments,5,GLenum,IV,numAttachments);
  glInvalidateNamedFramebufferSubData((GLuint )framebuffer, (GLsizei )numAttachments, (const GLenum* )attachments, (GLint )x, (GLint )y, (GLsizei )width, (GLsizei )height);
  OGLM_CHECK_ERR(glInvalidateNamedFramebufferSubData, free(attachments);)
  free(attachments);
#line 40126 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glInvalidateSubFramebuffer_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glInvalidateSubFramebuffer_c)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "target, numAttachments, attachments, x, y, width, height");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	numAttachments = (int)SvIV(ST(1))
;
	const GLenum*	attachments = INT2PTR(const GLenum *,SvIV(ST(2)))
;
	GLint	x = (int)SvIV(ST(3))
;
	GLint	y = (int)SvIV(ST(4))
;
	GLsizei	width = (int)SvIV(ST(5))
;
	GLsizei	height = (int)SvIV(ST(6))
;
#line 19709 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glInvalidateSubFramebuffer, )
  OGLM_AVAIL_CHECK(__glewInvalidateSubFramebuffer, glInvalidateSubFramebuffer)
  glInvalidateSubFramebuffer(target, numAttachments, attachments, x, y, width, height);
  OGLM_CHECK_ERR(glInvalidateSubFramebuffer, )
#line 40159 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glInvalidateSubFramebuffer_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glInvalidateSubFramebuffer_p)
{
    dVAR; dXSARGS;
    if (items < 5)
       croak_xs_usage(cv,  "target, x, y, width, height, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	x = (int)SvIV(ST(1))
;
	GLint	y = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
#line 19723 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glInvalidateSubFramebuffer, )
  OGLM_AVAIL_CHECK(__glewInvalidateSubFramebuffer, glInvalidateSubFramebuffer)
  GLsizei numAttachments = items-5;
  GLenum* attachments = OGLM_GET_VARARGS(attachments,5,GLenum,IV,numAttachments);
  glInvalidateSubFramebuffer((GLenum )target, (GLsizei )numAttachments, (const GLenum* )attachments, (GLint )x, (GLint )y, (GLsizei )width, (GLsizei )height);
  OGLM_CHECK_ERR(glInvalidateSubFramebuffer, free(attachments);)
  free(attachments);
#line 40191 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glInvalidateTexImage); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glInvalidateTexImage)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "texture, level");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
#line 19737 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glInvalidateTexImage, )
  OGLM_AVAIL_CHECK(__glewInvalidateTexImage, glInvalidateTexImage)
  glInvalidateTexImage(texture, level);
  OGLM_CHECK_ERR(glInvalidateTexImage, )
#line 40214 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glInvalidateTexSubImage); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glInvalidateTexSubImage)
{
    dVAR; dXSARGS;
    if (items != 8)
       croak_xs_usage(cv,  "texture, level, xoffset, yoffset, zoffset, width, height, depth");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLint	xoffset = (int)SvIV(ST(2))
;
	GLint	yoffset = (int)SvIV(ST(3))
;
	GLint	zoffset = (int)SvIV(ST(4))
;
	GLsizei	width = (int)SvIV(ST(5))
;
	GLsizei	height = (int)SvIV(ST(6))
;
	GLsizei	depth = (int)SvIV(ST(7))
;
#line 19754 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glInvalidateTexSubImage, )
  OGLM_AVAIL_CHECK(__glewInvalidateTexSubImage, glInvalidateTexSubImage)
  glInvalidateTexSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth);
  OGLM_CHECK_ERR(glInvalidateTexSubImage, )
#line 40249 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glIsAsyncMarkerSGIX); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsAsyncMarkerSGIX)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "marker");
    {
	GLuint	marker = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 19764 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsAsyncMarkerSGIX, )
  OGLM_AVAIL_CHECK(__glewIsAsyncMarkerSGIX, glIsAsyncMarkerSGIX)
  RETVAL = glIsAsyncMarkerSGIX(marker);
  OGLM_CHECK_ERR(glIsAsyncMarkerSGIX, )
#line 40272 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsBuffer); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsBuffer)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "buffer");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 19778 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsBuffer, )
  OGLM_AVAIL_CHECK(__glewIsBuffer, glIsBuffer)
  RETVAL = glIsBuffer(buffer);
  OGLM_CHECK_ERR(glIsBuffer, )
#line 40298 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsBufferResidentNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsBufferResidentNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "target");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 19790 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsBufferResidentNV, )
  OGLM_AVAIL_CHECK(__glewIsBufferResidentNV, glIsBufferResidentNV)
  RETVAL = glIsBufferResidentNV(target);
  OGLM_CHECK_ERR(glIsBufferResidentNV, )
#line 40323 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsCommandListNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsCommandListNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "list");
    {
	GLuint	list = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 19802 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsCommandListNV, )
  OGLM_AVAIL_CHECK(__glewIsCommandListNV, glIsCommandListNV)
  RETVAL = glIsCommandListNV(list);
  OGLM_CHECK_ERR(glIsCommandListNV, )
#line 40348 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsEnabled); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsEnabled)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "cap");
    {
	GLenum	cap = (int)SvIV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 19814 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsEnabled, )
  RETVAL = glIsEnabled(cap);
  OGLM_CHECK_ERR(glIsEnabled, )
#line 40372 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsEnabledi); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsEnabledi)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, index");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 19830 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsEnabledi, )
  OGLM_AVAIL_CHECK(__glewIsEnabledi, glIsEnabledi)
  RETVAL = glIsEnabledi(target, index);
  OGLM_CHECK_ERR(glIsEnabledi, )
#line 40400 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsEnablediOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsEnablediOES)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, index");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 19843 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsEnablediOES, )
  OGLM_AVAIL_CHECK(__glewIsEnablediOES, glIsEnablediOES)
  RETVAL = glIsEnablediOES(target, index);
  OGLM_CHECK_ERR(glIsEnablediOES, )
#line 40427 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsFenceAPPLE); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsFenceAPPLE)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "fence");
    {
	GLuint	fence = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 19855 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsFenceAPPLE, )
  OGLM_AVAIL_CHECK(__glewIsFenceAPPLE, glIsFenceAPPLE)
  RETVAL = glIsFenceAPPLE(fence);
  OGLM_CHECK_ERR(glIsFenceAPPLE, )
#line 40452 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsFenceNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsFenceNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "fence");
    {
	GLuint	fence = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 19867 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsFenceNV, )
  OGLM_AVAIL_CHECK(__glewIsFenceNV, glIsFenceNV)
  RETVAL = glIsFenceNV(fence);
  OGLM_CHECK_ERR(glIsFenceNV, )
#line 40477 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsFramebuffer); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsFramebuffer)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "framebuffer");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 19881 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsFramebuffer, )
  OGLM_AVAIL_CHECK(__glewIsFramebuffer, glIsFramebuffer)
  RETVAL = glIsFramebuffer(framebuffer);
  OGLM_CHECK_ERR(glIsFramebuffer, )
#line 40503 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsFramebufferOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsFramebufferOES)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "framebuffer");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 19893 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsFramebufferOES, )
  OGLM_AVAIL_CHECK(__glewIsFramebufferOES, glIsFramebufferOES)
  RETVAL = glIsFramebufferOES(framebuffer);
  OGLM_CHECK_ERR(glIsFramebufferOES, )
#line 40528 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsImageHandleResidentARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsImageHandleResidentARB)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "handle");
    {
	GLuint64	handle = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 19905 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsImageHandleResidentARB, )
  OGLM_AVAIL_CHECK(__glewIsImageHandleResidentARB, glIsImageHandleResidentARB)
  RETVAL = glIsImageHandleResidentARB(handle);
  OGLM_CHECK_ERR(glIsImageHandleResidentARB, )
#line 40553 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsImageHandleResidentNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsImageHandleResidentNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "handle");
    {
	GLuint64	handle = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 19917 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsImageHandleResidentNV, )
  OGLM_AVAIL_CHECK(__glewIsImageHandleResidentNV, glIsImageHandleResidentNV)
  RETVAL = glIsImageHandleResidentNV(handle);
  OGLM_CHECK_ERR(glIsImageHandleResidentNV, )
#line 40578 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsList); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsList)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "list");
    {
	GLuint	list = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 19929 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsList, )
  RETVAL = glIsList(list);
  OGLM_CHECK_ERR(glIsList, )
#line 40602 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsMPEGPredictorSGIX); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsMPEGPredictorSGIX)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "predictor");
    {
	GLuint	predictor = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 19940 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsMPEGPredictorSGIX, )
  OGLM_AVAIL_CHECK(__glewIsMPEGPredictorSGIX, glIsMPEGPredictorSGIX)
  RETVAL = glIsMPEGPredictorSGIX(predictor);
  OGLM_CHECK_ERR(glIsMPEGPredictorSGIX, )
#line 40627 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsMemoryObjectEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsMemoryObjectEXT)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "memoryObject");
    {
	GLuint	memoryObject = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 19952 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsMemoryObjectEXT, )
  OGLM_AVAIL_CHECK(__glewIsMemoryObjectEXT, glIsMemoryObjectEXT)
  RETVAL = glIsMemoryObjectEXT(memoryObject);
  OGLM_CHECK_ERR(glIsMemoryObjectEXT, )
#line 40652 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsNameAMD); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsNameAMD)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "identifier, name");
    {
	GLenum	identifier = (int)SvIV(ST(0))
;
	GLuint	name = (unsigned int)SvUV(ST(1))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 19965 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsNameAMD, )
  OGLM_AVAIL_CHECK(__glewIsNameAMD, glIsNameAMD)
  RETVAL = glIsNameAMD(identifier, name);
  OGLM_CHECK_ERR(glIsNameAMD, )
#line 40679 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsNamedBufferResidentNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsNamedBufferResidentNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "buffer");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 19977 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsNamedBufferResidentNV, )
  OGLM_AVAIL_CHECK(__glewIsNamedBufferResidentNV, glIsNamedBufferResidentNV)
  RETVAL = glIsNamedBufferResidentNV(buffer);
  OGLM_CHECK_ERR(glIsNamedBufferResidentNV, )
#line 40704 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsNamedStringARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsNamedStringARB)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "namelen, name");
    {
	GLint	namelen = (int)SvIV(ST(0))
;
	const GLchar*	name = (const GLchar *)SvPV_nolen(ST(1))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 19990 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsNamedStringARB, )
  OGLM_AVAIL_CHECK(__glewIsNamedStringARB, glIsNamedStringARB)
  RETVAL = glIsNamedStringARB(namelen, name);
  OGLM_CHECK_ERR(glIsNamedStringARB, )
#line 40731 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsObjectBufferATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsObjectBufferATI)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "buffer");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 20002 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsObjectBufferATI, )
  OGLM_AVAIL_CHECK(__glewIsObjectBufferATI, glIsObjectBufferATI)
  RETVAL = glIsObjectBufferATI(buffer);
  OGLM_CHECK_ERR(glIsObjectBufferATI, )
#line 40756 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsOcclusionQueryNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsOcclusionQueryNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "id");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 20014 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsOcclusionQueryNV, )
  OGLM_AVAIL_CHECK(__glewIsOcclusionQueryNV, glIsOcclusionQueryNV)
  RETVAL = glIsOcclusionQueryNV(id);
  OGLM_CHECK_ERR(glIsOcclusionQueryNV, )
#line 40781 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsPathNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsPathNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "path");
    {
	GLuint	path = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 20026 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsPathNV, )
  OGLM_AVAIL_CHECK(__glewIsPathNV, glIsPathNV)
  RETVAL = glIsPathNV(path);
  OGLM_CHECK_ERR(glIsPathNV, )
#line 40806 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsPointInFillPathNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsPointInFillPathNV)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "path, mask, x, y");
    {
	GLuint	path = (unsigned int)SvUV(ST(0))
;
	GLuint	mask = (unsigned int)SvUV(ST(1))
;
	GLfloat	x = (float)SvNV(ST(2))
;
	GLfloat	y = (float)SvNV(ST(3))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 20041 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsPointInFillPathNV, )
  OGLM_AVAIL_CHECK(__glewIsPointInFillPathNV, glIsPointInFillPathNV)
  RETVAL = glIsPointInFillPathNV(path, mask, x, y);
  OGLM_CHECK_ERR(glIsPointInFillPathNV, )
#line 40837 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsPointInStrokePathNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsPointInStrokePathNV)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "path, x, y");
    {
	GLuint	path = (unsigned int)SvUV(ST(0))
;
	GLfloat	x = (float)SvNV(ST(1))
;
	GLfloat	y = (float)SvNV(ST(2))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 20055 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsPointInStrokePathNV, )
  OGLM_AVAIL_CHECK(__glewIsPointInStrokePathNV, glIsPointInStrokePathNV)
  RETVAL = glIsPointInStrokePathNV(path, x, y);
  OGLM_CHECK_ERR(glIsPointInStrokePathNV, )
#line 40866 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsProgram); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsProgram)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "program");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 20067 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsProgram, )
  OGLM_AVAIL_CHECK(__glewIsProgram, glIsProgram)
  RETVAL = glIsProgram(program);
  OGLM_CHECK_ERR(glIsProgram, )
#line 40891 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsProgramARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsProgramARB)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "program");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 20081 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsProgramARB, )
  OGLM_AVAIL_CHECK(__glewIsProgramARB, glIsProgramARB)
  RETVAL = glIsProgramARB(program);
  OGLM_CHECK_ERR(glIsProgramARB, )
#line 40917 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsProgramPipeline); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsProgramPipeline)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "pipeline");
    {
	GLuint	pipeline = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 20093 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsProgramPipeline, )
  OGLM_AVAIL_CHECK(__glewIsProgramPipeline, glIsProgramPipeline)
  RETVAL = glIsProgramPipeline(pipeline);
  OGLM_CHECK_ERR(glIsProgramPipeline, )
#line 40942 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsQuery); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsQuery)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "id");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 20107 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsQuery, )
  OGLM_AVAIL_CHECK(__glewIsQuery, glIsQuery)
  RETVAL = glIsQuery(id);
  OGLM_CHECK_ERR(glIsQuery, )
#line 40968 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsQueryANGLE); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsQueryANGLE)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "id");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 20119 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsQueryANGLE, )
  OGLM_AVAIL_CHECK(__glewIsQueryANGLE, glIsQueryANGLE)
  RETVAL = glIsQueryANGLE(id);
  OGLM_CHECK_ERR(glIsQueryANGLE, )
#line 40993 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsQueryEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsQueryEXT)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "id");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 20131 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsQueryEXT, )
  OGLM_AVAIL_CHECK(__glewIsQueryEXT, glIsQueryEXT)
  RETVAL = glIsQueryEXT(id);
  OGLM_CHECK_ERR(glIsQueryEXT, )
#line 41018 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsRenderbuffer); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsRenderbuffer)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "renderbuffer");
    {
	GLuint	renderbuffer = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 20145 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsRenderbuffer, )
  OGLM_AVAIL_CHECK(__glewIsRenderbuffer, glIsRenderbuffer)
  RETVAL = glIsRenderbuffer(renderbuffer);
  OGLM_CHECK_ERR(glIsRenderbuffer, )
#line 41044 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsRenderbufferOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsRenderbufferOES)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "renderbuffer");
    {
	GLuint	renderbuffer = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 20157 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsRenderbufferOES, )
  OGLM_AVAIL_CHECK(__glewIsRenderbufferOES, glIsRenderbufferOES)
  RETVAL = glIsRenderbufferOES(renderbuffer);
  OGLM_CHECK_ERR(glIsRenderbufferOES, )
#line 41069 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsSampler); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsSampler)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "sampler");
    {
	GLuint	sampler = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 20169 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsSampler, )
  OGLM_AVAIL_CHECK(__glewIsSampler, glIsSampler)
  RETVAL = glIsSampler(sampler);
  OGLM_CHECK_ERR(glIsSampler, )
#line 41094 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsSemaphoreEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsSemaphoreEXT)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "semaphore");
    {
	GLuint	semaphore = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 20181 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsSemaphoreEXT, )
  OGLM_AVAIL_CHECK(__glewIsSemaphoreEXT, glIsSemaphoreEXT)
  RETVAL = glIsSemaphoreEXT(semaphore);
  OGLM_CHECK_ERR(glIsSemaphoreEXT, )
#line 41119 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsShader); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsShader)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "shader");
    {
	GLuint	shader = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 20193 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsShader, )
  OGLM_AVAIL_CHECK(__glewIsShader, glIsShader)
  RETVAL = glIsShader(shader);
  OGLM_CHECK_ERR(glIsShader, )
#line 41144 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsStateNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsStateNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "state");
    {
	GLuint	state = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 20205 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsStateNV, )
  OGLM_AVAIL_CHECK(__glewIsStateNV, glIsStateNV)
  RETVAL = glIsStateNV(state);
  OGLM_CHECK_ERR(glIsStateNV, )
#line 41169 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsSupportedREGAL); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsSupportedREGAL)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "ext");
    {
	const GLchar*	ext = (const GLchar *)SvPV_nolen(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 20217 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsSupportedREGAL, )
  OGLM_AVAIL_CHECK(__glewIsSupportedREGAL, glIsSupportedREGAL)
  RETVAL = glIsSupportedREGAL(ext);
  OGLM_CHECK_ERR(glIsSupportedREGAL, )
#line 41194 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsSync); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsSync)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "myGLsync");
    {
	GLsync	myGLsync = INT2PTR(GLsync,SvIV(ST(0)))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 20231 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsSync, )
  OGLM_AVAIL_CHECK(__glewIsSync, glIsSync)
  RETVAL = glIsSync(myGLsync);
  OGLM_CHECK_ERR(glIsSync, )
#line 41220 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsTexture); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsTexture)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "texture");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 20243 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsTexture, )
  RETVAL = glIsTexture(texture);
  OGLM_CHECK_ERR(glIsTexture, )
#line 41244 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsTextureEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsTextureEXT)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "texture");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 20254 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsTextureEXT, )
  OGLM_AVAIL_CHECK(__glewIsTextureEXT, glIsTextureEXT)
  RETVAL = glIsTextureEXT(texture);
  OGLM_CHECK_ERR(glIsTextureEXT, )
#line 41269 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsTextureHandleResidentARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsTextureHandleResidentARB)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "handle");
    {
	GLuint64	handle = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 20266 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsTextureHandleResidentARB, )
  OGLM_AVAIL_CHECK(__glewIsTextureHandleResidentARB, glIsTextureHandleResidentARB)
  RETVAL = glIsTextureHandleResidentARB(handle);
  OGLM_CHECK_ERR(glIsTextureHandleResidentARB, )
#line 41294 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsTextureHandleResidentNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsTextureHandleResidentNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "handle");
    {
	GLuint64	handle = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 20278 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsTextureHandleResidentNV, )
  OGLM_AVAIL_CHECK(__glewIsTextureHandleResidentNV, glIsTextureHandleResidentNV)
  RETVAL = glIsTextureHandleResidentNV(handle);
  OGLM_CHECK_ERR(glIsTextureHandleResidentNV, )
#line 41319 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsTransformFeedback); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsTransformFeedback)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "id");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 20292 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsTransformFeedback, )
  OGLM_AVAIL_CHECK(__glewIsTransformFeedback, glIsTransformFeedback)
  RETVAL = glIsTransformFeedback(id);
  OGLM_CHECK_ERR(glIsTransformFeedback, )
#line 41345 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsVariantEnabledEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsVariantEnabledEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "id, cap");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	cap = (int)SvIV(ST(1))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 20305 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsVariantEnabledEXT, )
  OGLM_AVAIL_CHECK(__glewIsVariantEnabledEXT, glIsVariantEnabledEXT)
  RETVAL = glIsVariantEnabledEXT(id, cap);
  OGLM_CHECK_ERR(glIsVariantEnabledEXT, )
#line 41372 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsVertexArray); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsVertexArray)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "array");
    {
	GLuint	array = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 20319 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsVertexArray, )
  OGLM_AVAIL_CHECK(__glewIsVertexArray, glIsVertexArray)
  RETVAL = glIsVertexArray(array);
  OGLM_CHECK_ERR(glIsVertexArray, )
#line 41398 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsVertexArrayOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsVertexArrayOES)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "array");
    {
	GLuint	array = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 20331 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsVertexArrayOES, )
  OGLM_AVAIL_CHECK(__glewIsVertexArrayOES, glIsVertexArrayOES)
  RETVAL = glIsVertexArrayOES(array);
  OGLM_CHECK_ERR(glIsVertexArrayOES, )
#line 41423 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsVertexArraySGIX); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsVertexArraySGIX)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "array");
    {
	GLuint	array = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 20343 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsVertexArraySGIX, )
  OGLM_AVAIL_CHECK(__glewIsVertexArraySGIX, glIsVertexArraySGIX)
  RETVAL = glIsVertexArraySGIX(array);
  OGLM_CHECK_ERR(glIsVertexArraySGIX, )
#line 41448 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glIsVertexAttribEnabledAPPLE); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glIsVertexAttribEnabledAPPLE)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "index, pname");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 20356 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glIsVertexAttribEnabledAPPLE, )
  OGLM_AVAIL_CHECK(__glewIsVertexAttribEnabledAPPLE, glIsVertexAttribEnabledAPPLE)
  RETVAL = glIsVertexAttribEnabledAPPLE(index, pname);
  OGLM_CHECK_ERR(glIsVertexAttribEnabledAPPLE, )
#line 41475 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glLGPUCopyImageSubDataNVX); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLGPUCopyImageSubDataNVX)
{
    dVAR; dXSARGS;
    if (items != 17)
       croak_xs_usage(cv,  "sourceGpu, destinationGpuMask, srcName, srcTarget, srcLevel, srcX, srxY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, width, height, depth");
    {
	GLuint	sourceGpu = (unsigned int)SvUV(ST(0))
;
	GLbitfield	destinationGpuMask = (int)SvIV(ST(1))
;
	GLuint	srcName = (unsigned int)SvUV(ST(2))
;
	GLenum	srcTarget = (int)SvIV(ST(3))
;
	GLint	srcLevel = (int)SvIV(ST(4))
;
	GLint	srcX = (int)SvIV(ST(5))
;
	GLint	srxY = (int)SvIV(ST(6))
;
	GLint	srcZ = (int)SvIV(ST(7))
;
	GLuint	dstName = (unsigned int)SvUV(ST(8))
;
	GLenum	dstTarget = (int)SvIV(ST(9))
;
	GLint	dstLevel = (int)SvIV(ST(10))
;
	GLint	dstX = (int)SvIV(ST(11))
;
	GLint	dstY = (int)SvIV(ST(12))
;
	GLint	dstZ = (int)SvIV(ST(13))
;
	GLsizei	width = (int)SvIV(ST(14))
;
	GLsizei	height = (int)SvIV(ST(15))
;
	GLsizei	depth = (int)SvIV(ST(16))
;
#line 20384 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLGPUCopyImageSubDataNVX, )
  OGLM_AVAIL_CHECK(__glewLGPUCopyImageSubDataNVX, glLGPUCopyImageSubDataNVX)
  glLGPUCopyImageSubDataNVX(sourceGpu, destinationGpuMask, srcName, srcTarget, srcLevel, srcX, srxY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, width, height, depth);
  OGLM_CHECK_ERR(glLGPUCopyImageSubDataNVX, )
#line 41530 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLGPUInterlockNVX); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLGPUInterlockNVX)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 20393 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLGPUInterlockNVX, )
  OGLM_AVAIL_CHECK(__glewLGPUInterlockNVX, glLGPUInterlockNVX)
  glLGPUInterlockNVX();
  OGLM_CHECK_ERR(glLGPUInterlockNVX, )
#line 41549 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLGPUNamedBufferSubDataNVX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLGPUNamedBufferSubDataNVX_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "gpuMask, buffer, offset, size, data");
    {
	GLbitfield	gpuMask = (int)SvIV(ST(0))
;
	GLuint	buffer = (unsigned int)SvUV(ST(1))
;
	GLintptr	offset = (unsigned int)SvUV(ST(2))
;
	GLsizeiptr	size = (unsigned int)SvUV(ST(3))
;
	const void *	data = INT2PTR(const void *,SvIV(ST(4)))
;
#line 20407 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLGPUNamedBufferSubDataNVX, )
  OGLM_AVAIL_CHECK(__glewLGPUNamedBufferSubDataNVX, glLGPUNamedBufferSubDataNVX)
  glLGPUNamedBufferSubDataNVX(gpuMask, buffer, offset, size, data);
  OGLM_CHECK_ERR(glLGPUNamedBufferSubDataNVX, )
#line 41578 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLabelObjectEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLabelObjectEXT)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "type, object, length, label");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	GLuint	object = (unsigned int)SvUV(ST(1))
;
	GLsizei	length = (int)SvIV(ST(2))
;
	const GLchar*	label = (const GLchar *)SvPV_nolen(ST(3))
;
#line 20420 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLabelObjectEXT, )
  OGLM_AVAIL_CHECK(__glewLabelObjectEXT, glLabelObjectEXT)
  glLabelObjectEXT(type, object, length, label);
  OGLM_CHECK_ERR(glLabelObjectEXT, )
#line 41605 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLightEnviEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLightEnviEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, param");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLint	param = (int)SvIV(ST(1))
;
#line 20431 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLightEnviEXT, )
  OGLM_AVAIL_CHECK(__glewLightEnviEXT, glLightEnviEXT)
  glLightEnviEXT(pname, param);
  OGLM_CHECK_ERR(glLightEnviEXT, )
#line 41628 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLightModelf); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLightModelf)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, param");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLfloat	param = (float)SvNV(ST(1))
;
#line 20442 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLightModelf, )
  glLightModelf(pname, param);
  OGLM_CHECK_ERR(glLightModelf, )
#line 41650 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLightModelfv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLightModelfv_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, params");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	const GLfloat *	params = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 20452 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLightModelfv, )
  glLightModelfv(pname, params);
  OGLM_CHECK_ERR(glLightModelfv, )
#line 41672 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLightModelfv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLightModelfv_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "pname, ...");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
#line 20461 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLightModelfv, )
  OGLM_SIZE_ENUM(LightModelParameter,pname,1)
  GLfloat *params = OGLM_GET_VARARGS(params,1,GLfloat,NV,pname_count);
  glLightModelfv((GLenum )pname, (const GLfloat *)params);
  OGLM_CHECK_ERR(glLightModelfv, free(params);)
  free(params);
#line 41695 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLightModeli); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLightModeli)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, param");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLint	param = (int)SvIV(ST(1))
;
#line 20474 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLightModeli, )
  glLightModeli(pname, param);
  OGLM_CHECK_ERR(glLightModeli, )
#line 41717 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLightModeliv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLightModeliv_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, params");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	const GLint *	params = INT2PTR(const GLint *,SvIV(ST(1)))
;
#line 20484 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLightModeliv, )
  glLightModeliv(pname, params);
  OGLM_CHECK_ERR(glLightModeliv, )
#line 41739 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLightModeliv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLightModeliv_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "pname, ...");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
#line 20493 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLightModeliv, )
  OGLM_SIZE_ENUM(LightModelParameter,pname,1)
  GLint *params = OGLM_GET_VARARGS(params,1,GLint,IV,pname_count);
  glLightModeliv((GLenum )pname, (const GLint *)params);
  OGLM_CHECK_ERR(glLightModeliv, free(params);)
  free(params);
#line 41762 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLightModelx); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLightModelx)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, param");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLfixed	param = (int)SvIV(ST(1))
;
#line 20506 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLightModelx, )
  OGLM_AVAIL_CHECK(__glewLightModelx, glLightModelx)
  glLightModelx(pname, param);
  OGLM_CHECK_ERR(glLightModelx, )
#line 41785 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLightModelxv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLightModelxv_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, param");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	const GLfixed*	param = INT2PTR(const GLfixed *,SvIV(ST(1)))
;
#line 20517 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLightModelxv, )
  OGLM_AVAIL_CHECK(__glewLightModelxv, glLightModelxv)
  glLightModelxv(pname, param);
  OGLM_CHECK_ERR(glLightModelxv, )
#line 41808 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLightModelxv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLightModelxv_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "pname, ...");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
#line 20527 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLightModelxv, )
  OGLM_AVAIL_CHECK(__glewLightModelxv, glLightModelxv)
  OGLM_SIZE_ENUM(LightModelParameter,pname,1)
  GLfixed* param = OGLM_GET_VARARGS(param,1,GLfixed,IV,pname_count);
  glLightModelxv((GLenum )pname, (const GLfixed* )param);
  OGLM_CHECK_ERR(glLightModelxv, free(param);)
  free(param);
#line 41832 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLightf); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLightf)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "light, pname, param");
    {
	GLenum	light = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat	param = (float)SvNV(ST(2))
;
#line 20542 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLightf, )
  glLightf(light, pname, param);
  OGLM_CHECK_ERR(glLightf, )
#line 41856 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLightfv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLightfv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "light, pname, params");
    {
	GLenum	light = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLfloat *	params = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 20553 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLightfv, )
  glLightfv(light, pname, params);
  OGLM_CHECK_ERR(glLightfv, )
#line 41880 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLightfv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLightfv_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "light, pname, ...");
    {
	GLenum	light = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 20563 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLightfv, )
  OGLM_SIZE_ENUM(LightParameter,pname,1)
  GLfloat *params = OGLM_GET_VARARGS(params,2,GLfloat,NV,pname_count);
  glLightfv((GLenum )light, (GLenum )pname, (const GLfloat *)params);
  OGLM_CHECK_ERR(glLightfv, free(params);)
  free(params);
#line 41905 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLighti); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLighti)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "light, pname, param");
    {
	GLenum	light = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint	param = (int)SvIV(ST(2))
;
#line 20577 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLighti, )
  glLighti(light, pname, param);
  OGLM_CHECK_ERR(glLighti, )
#line 41929 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLightiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLightiv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "light, pname, params");
    {
	GLenum	light = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLint *	params = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 20588 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLightiv, )
  glLightiv(light, pname, params);
  OGLM_CHECK_ERR(glLightiv, )
#line 41953 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLightiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLightiv_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "light, pname, ...");
    {
	GLenum	light = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 20598 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLightiv, )
  OGLM_SIZE_ENUM(LightParameter,pname,1)
  GLint *params = OGLM_GET_VARARGS(params,2,GLint,IV,pname_count);
  glLightiv((GLenum )light, (GLenum )pname, (const GLint *)params);
  OGLM_CHECK_ERR(glLightiv, free(params);)
  free(params);
#line 41978 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLightx); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLightx)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "light, pname, param");
    {
	GLenum	light = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfixed	param = (int)SvIV(ST(2))
;
#line 20612 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLightx, )
  OGLM_AVAIL_CHECK(__glewLightx, glLightx)
  glLightx(light, pname, param);
  OGLM_CHECK_ERR(glLightx, )
#line 42003 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLightxv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLightxv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "light, pname, params");
    {
	GLenum	light = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLfixed*	params = INT2PTR(const GLfixed *,SvIV(ST(2)))
;
#line 20624 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLightxv, )
  OGLM_AVAIL_CHECK(__glewLightxv, glLightxv)
  glLightxv(light, pname, params);
  OGLM_CHECK_ERR(glLightxv, )
#line 42028 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLightxv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLightxv_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "light, pname, ...");
    {
	GLenum	light = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 20635 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLightxv, )
  OGLM_AVAIL_CHECK(__glewLightxv, glLightxv)
  OGLM_SIZE_ENUM(LightParameter,pname,1)
  GLfixed* params = OGLM_GET_VARARGS(params,2,GLfixed,IV,pname_count);
  glLightxv((GLenum )light, (GLenum )pname, (const GLfixed* )params);
  OGLM_CHECK_ERR(glLightxv, free(params);)
  free(params);
#line 42054 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLineStipple); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLineStipple)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "factor, pattern");
    {
	GLint	factor = (int)SvIV(ST(0))
;
	GLushort	pattern = (unsigned short)SvUV(ST(1))
;
#line 20649 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLineStipple, )
  glLineStipple(factor, pattern);
  OGLM_CHECK_ERR(glLineStipple, )
#line 42076 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLineWidth); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLineWidth)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "width");
    {
	GLfloat	width = (float)SvNV(ST(0))
;
#line 20658 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLineWidth, )
  glLineWidth(width);
  OGLM_CHECK_ERR(glLineWidth, )
#line 42096 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLineWidthx); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLineWidthx)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "width");
    {
	GLfixed	width = (int)SvIV(ST(0))
;
#line 20667 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLineWidthx, )
  OGLM_AVAIL_CHECK(__glewLineWidthx, glLineWidthx)
  glLineWidthx(width);
  OGLM_CHECK_ERR(glLineWidthx, )
#line 42117 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLinkProgram); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLinkProgram)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "program");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
#line 20677 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLinkProgram, )
  OGLM_AVAIL_CHECK(__glewLinkProgram, glLinkProgram)
  glLinkProgram(program);
  OGLM_CHECK_ERR(glLinkProgram, )
#line 42138 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLinkProgramARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLinkProgramARB)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "programObj");
    {
	GLhandleARB	programObj = (unsigned int)SvUV(ST(0))
;
#line 20687 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLinkProgramARB, )
  OGLM_AVAIL_CHECK(__glewLinkProgramARB, glLinkProgramARB)
  glLinkProgramARB(programObj);
  OGLM_CHECK_ERR(glLinkProgramARB, )
#line 42159 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glListBase); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glListBase)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "base");
    {
	GLuint	base = (unsigned int)SvUV(ST(0))
;
#line 20697 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glListBase, )
  glListBase(base);
  OGLM_CHECK_ERR(glListBase, )
#line 42179 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glListDrawCommandsStatesClientNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glListDrawCommandsStatesClientNV_c)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "list, segment, indirects, sizes, states, fbos, count");
    {
	GLuint	list = (unsigned int)SvUV(ST(0))
;
	GLuint	segment = (unsigned int)SvUV(ST(1))
;
	const void**	indirects = INT2PTR(const void **,SvIV(ST(2)))
;
	const GLsizei*	sizes = INT2PTR(const GLsizei *,SvIV(ST(3)))
;
	const GLuint*	states = INT2PTR(const GLuint *,SvIV(ST(4)))
;
	const GLuint*	fbos = INT2PTR(const GLuint *,SvIV(ST(5)))
;
	GLuint	count = (unsigned int)SvUV(ST(6))
;
#line 20712 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glListDrawCommandsStatesClientNV, )
  OGLM_AVAIL_CHECK(__glewListDrawCommandsStatesClientNV, glListDrawCommandsStatesClientNV)
  glListDrawCommandsStatesClientNV(list, segment, indirects, sizes, states, fbos, count);
  OGLM_CHECK_ERR(glListDrawCommandsStatesClientNV, )
#line 42212 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLoadIdentity); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLoadIdentity)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 20721 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLoadIdentity, )
  glLoadIdentity();
  OGLM_CHECK_ERR(glLoadIdentity, )
#line 42230 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLoadIdentityDeformationMapSGIX); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLoadIdentityDeformationMapSGIX)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "mask");
    {
	GLbitfield	mask = (int)SvIV(ST(0))
;
#line 20730 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLoadIdentityDeformationMapSGIX, )
  OGLM_AVAIL_CHECK(__glewLoadIdentityDeformationMapSGIX, glLoadIdentityDeformationMapSGIX)
  glLoadIdentityDeformationMapSGIX(mask);
  OGLM_CHECK_ERR(glLoadIdentityDeformationMapSGIX, )
#line 42251 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLoadMatrixd_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLoadMatrixd_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "m");
    {
	const GLdouble *	m = INT2PTR(const GLdouble *,SvIV(ST(0)))
;
#line 20740 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLoadMatrixd, )
  glLoadMatrixd(m);
  OGLM_CHECK_ERR(glLoadMatrixd, )
#line 42271 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLoadMatrixd_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLoadMatrixd_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 20748 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLoadMatrixd, )
  GLdouble *m = OGLM_GET_VARARGS(m,0,GLdouble,NV,16);
  glLoadMatrixd((const GLdouble *)m);
  OGLM_CHECK_ERR(glLoadMatrixd, free(m);)
  free(m);
#line 42291 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLoadMatrixf_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLoadMatrixf_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "m");
    {
	const GLfloat *	m = INT2PTR(const GLfloat *,SvIV(ST(0)))
;
#line 20759 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLoadMatrixf, )
  glLoadMatrixf(m);
  OGLM_CHECK_ERR(glLoadMatrixf, )
#line 42311 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLoadMatrixf_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLoadMatrixf_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 20767 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLoadMatrixf, )
  GLfloat *m = OGLM_GET_VARARGS(m,0,GLfloat,NV,16);
  glLoadMatrixf((const GLfloat *)m);
  OGLM_CHECK_ERR(glLoadMatrixf, free(m);)
  free(m);
#line 42331 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLoadMatrixx_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLoadMatrixx_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "m");
    {
	const GLfixed*	m = INT2PTR(const GLfixed *,SvIV(ST(0)))
;
#line 20778 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLoadMatrixx, )
  OGLM_AVAIL_CHECK(__glewLoadMatrixx, glLoadMatrixx)
  glLoadMatrixx(m);
  OGLM_CHECK_ERR(glLoadMatrixx, )
#line 42352 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLoadMatrixx_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLoadMatrixx_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 20787 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLoadMatrixx, )
  OGLM_AVAIL_CHECK(__glewLoadMatrixx, glLoadMatrixx)
  GLfixed* m = OGLM_GET_VARARGS(m,0,GLfixed,IV,16);
  glLoadMatrixx((const GLfixed* )m);
  OGLM_CHECK_ERR(glLoadMatrixx, free(m);)
  free(m);
#line 42373 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLoadName); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLoadName)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "name");
    {
	GLuint	name = (unsigned int)SvUV(ST(0))
;
#line 20799 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLoadName, )
  glLoadName(name);
  OGLM_CHECK_ERR(glLoadName, )
#line 42393 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLoadPaletteFromModelViewMatrixOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLoadPaletteFromModelViewMatrixOES)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 20807 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLoadPaletteFromModelViewMatrixOES, )
  OGLM_AVAIL_CHECK(__glewLoadPaletteFromModelViewMatrixOES, glLoadPaletteFromModelViewMatrixOES)
  glLoadPaletteFromModelViewMatrixOES();
  OGLM_CHECK_ERR(glLoadPaletteFromModelViewMatrixOES, )
#line 42412 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLoadProgramNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLoadProgramNV)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, id, len, program");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	id = (unsigned int)SvUV(ST(1))
;
	GLsizei	len = (int)SvIV(ST(2))
;
	const GLubyte*        program = (const GLubyte *)SvPV_nolen(ST(3))
;
#line 20820 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLoadProgramNV, )
  OGLM_AVAIL_CHECK(__glewLoadProgramNV, glLoadProgramNV)
  glLoadProgramNV(target, id, len, program);
  OGLM_CHECK_ERR(glLoadProgramNV, )
#line 42439 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLoadTransposeMatrixd_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLoadTransposeMatrixd_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "m");
    {
	const GLdouble *	m = INT2PTR(const GLdouble *,SvIV(ST(0)))
;
#line 20832 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLoadTransposeMatrixd, )
  OGLM_AVAIL_CHECK(__glewLoadTransposeMatrixd, glLoadTransposeMatrixd)
  glLoadTransposeMatrixd(m);
  OGLM_CHECK_ERR(glLoadTransposeMatrixd, )
#line 42461 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLoadTransposeMatrixd_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLoadTransposeMatrixd_p)
{
    dVAR; dXSARGS;
    dXSI32;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 20843 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLoadTransposeMatrixd, )
  OGLM_AVAIL_CHECK(__glewLoadTransposeMatrixd, glLoadTransposeMatrixd)
  GLdouble * m = OGLM_GET_VARARGS(m,0,GLdouble,NV,16);
  glLoadTransposeMatrixd((const GLdouble * )m);
  OGLM_CHECK_ERR(glLoadTransposeMatrixd, free(m);)
  free(m);
#line 42483 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLoadTransposeMatrixf_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLoadTransposeMatrixf_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "m");
    {
	const GLfloat *	m = INT2PTR(const GLfloat *,SvIV(ST(0)))
;
#line 20857 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLoadTransposeMatrixf, )
  OGLM_AVAIL_CHECK(__glewLoadTransposeMatrixf, glLoadTransposeMatrixf)
  glLoadTransposeMatrixf(m);
  OGLM_CHECK_ERR(glLoadTransposeMatrixf, )
#line 42505 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLoadTransposeMatrixf_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLoadTransposeMatrixf_p)
{
    dVAR; dXSARGS;
    dXSI32;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 20868 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLoadTransposeMatrixf, )
  OGLM_AVAIL_CHECK(__glewLoadTransposeMatrixf, glLoadTransposeMatrixf)
  GLfloat * m = OGLM_GET_VARARGS(m,0,GLfloat,NV,16);
  glLoadTransposeMatrixf((const GLfloat * )m);
  OGLM_CHECK_ERR(glLoadTransposeMatrixf, free(m);)
  free(m);
#line 42527 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLockArraysEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLockArraysEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "first, count");
    {
	GLint	first = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 20881 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLockArraysEXT, )
  OGLM_AVAIL_CHECK(__glewLockArraysEXT, glLockArraysEXT)
  glLockArraysEXT(first, count);
  OGLM_CHECK_ERR(glLockArraysEXT, )
#line 42550 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLogMessageCallbackREGAL); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLogMessageCallbackREGAL)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "callback");
    {
	GLLOGPROCREGAL	callback = INT2PTR(GLLOGPROCREGAL,SvIV(ST(0)))
;
#line 20891 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLogMessageCallbackREGAL, )
  OGLM_AVAIL_CHECK(__glewLogMessageCallbackREGAL, glLogMessageCallbackREGAL)
  glLogMessageCallbackREGAL(callback);
  OGLM_CHECK_ERR(glLogMessageCallbackREGAL, )
#line 42571 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glLogicOp); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glLogicOp)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "opcode");
    {
	GLenum	opcode = (int)SvIV(ST(0))
;
#line 20901 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glLogicOp, )
  glLogicOp(opcode);
  OGLM_CHECK_ERR(glLogicOp, )
#line 42591 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMPEGPredictorSGIX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMPEGPredictorSGIX_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, format, type, pixels");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	format = (int)SvIV(ST(1))
;
	GLenum	type = (int)SvIV(ST(2))
;
	void *	pixels = INT2PTR(void *,SvIV(ST(3)))
;
#line 20913 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMPEGPredictorSGIX, )
  OGLM_AVAIL_CHECK(__glewMPEGPredictorSGIX, glMPEGPredictorSGIX)
  glMPEGPredictorSGIX(target, format, type, pixels);
  OGLM_CHECK_ERR(glMPEGPredictorSGIX, )
#line 42618 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMPEGQuantTableubv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMPEGQuantTableubv_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, values");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLubyte*	values = INT2PTR(GLubyte *,SvIV(ST(1)))
;
#line 20924 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMPEGQuantTableubv, )
  OGLM_AVAIL_CHECK(__glewMPEGQuantTableubv, glMPEGQuantTableubv)
  glMPEGQuantTableubv(target, values);
  OGLM_CHECK_ERR(glMPEGQuantTableubv, )
#line 42641 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMakeBufferNonResidentNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMakeBufferNonResidentNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "target");
    {
	GLenum	target = (int)SvIV(ST(0))
;
#line 20934 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMakeBufferNonResidentNV, )
  OGLM_AVAIL_CHECK(__glewMakeBufferNonResidentNV, glMakeBufferNonResidentNV)
  glMakeBufferNonResidentNV(target);
  OGLM_CHECK_ERR(glMakeBufferNonResidentNV, )
#line 42662 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMakeBufferResidentNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMakeBufferResidentNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, access");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	access = (int)SvIV(ST(1))
;
#line 20945 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMakeBufferResidentNV, )
  OGLM_AVAIL_CHECK(__glewMakeBufferResidentNV, glMakeBufferResidentNV)
  glMakeBufferResidentNV(target, access);
  OGLM_CHECK_ERR(glMakeBufferResidentNV, )
#line 42685 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMakeImageHandleNonResidentARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMakeImageHandleNonResidentARB)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "handle");
    {
	GLuint64	handle = (unsigned int)SvUV(ST(0))
;
#line 20955 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMakeImageHandleNonResidentARB, )
  OGLM_AVAIL_CHECK(__glewMakeImageHandleNonResidentARB, glMakeImageHandleNonResidentARB)
  glMakeImageHandleNonResidentARB(handle);
  OGLM_CHECK_ERR(glMakeImageHandleNonResidentARB, )
#line 42706 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMakeImageHandleNonResidentNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMakeImageHandleNonResidentNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "handle");
    {
	GLuint64	handle = (unsigned int)SvUV(ST(0))
;
#line 20965 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMakeImageHandleNonResidentNV, )
  OGLM_AVAIL_CHECK(__glewMakeImageHandleNonResidentNV, glMakeImageHandleNonResidentNV)
  glMakeImageHandleNonResidentNV(handle);
  OGLM_CHECK_ERR(glMakeImageHandleNonResidentNV, )
#line 42727 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMakeImageHandleResidentARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMakeImageHandleResidentARB)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "handle, access");
    {
	GLuint64	handle = (unsigned int)SvUV(ST(0))
;
	GLenum	access = (int)SvIV(ST(1))
;
#line 20976 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMakeImageHandleResidentARB, )
  OGLM_AVAIL_CHECK(__glewMakeImageHandleResidentARB, glMakeImageHandleResidentARB)
  glMakeImageHandleResidentARB(handle, access);
  OGLM_CHECK_ERR(glMakeImageHandleResidentARB, )
#line 42750 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMakeImageHandleResidentNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMakeImageHandleResidentNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "handle, access");
    {
	GLuint64	handle = (unsigned int)SvUV(ST(0))
;
	GLenum	access = (int)SvIV(ST(1))
;
#line 20987 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMakeImageHandleResidentNV, )
  OGLM_AVAIL_CHECK(__glewMakeImageHandleResidentNV, glMakeImageHandleResidentNV)
  glMakeImageHandleResidentNV(handle, access);
  OGLM_CHECK_ERR(glMakeImageHandleResidentNV, )
#line 42773 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMakeNamedBufferNonResidentNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMakeNamedBufferNonResidentNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "buffer");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
#line 20997 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMakeNamedBufferNonResidentNV, )
  OGLM_AVAIL_CHECK(__glewMakeNamedBufferNonResidentNV, glMakeNamedBufferNonResidentNV)
  glMakeNamedBufferNonResidentNV(buffer);
  OGLM_CHECK_ERR(glMakeNamedBufferNonResidentNV, )
#line 42794 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMakeNamedBufferResidentNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMakeNamedBufferResidentNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "buffer, access");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLenum	access = (int)SvIV(ST(1))
;
#line 21008 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMakeNamedBufferResidentNV, )
  OGLM_AVAIL_CHECK(__glewMakeNamedBufferResidentNV, glMakeNamedBufferResidentNV)
  glMakeNamedBufferResidentNV(buffer, access);
  OGLM_CHECK_ERR(glMakeNamedBufferResidentNV, )
#line 42817 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMakeTextureHandleNonResidentARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMakeTextureHandleNonResidentARB)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "handle");
    {
	GLuint64	handle = (unsigned int)SvUV(ST(0))
;
#line 21018 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMakeTextureHandleNonResidentARB, )
  OGLM_AVAIL_CHECK(__glewMakeTextureHandleNonResidentARB, glMakeTextureHandleNonResidentARB)
  glMakeTextureHandleNonResidentARB(handle);
  OGLM_CHECK_ERR(glMakeTextureHandleNonResidentARB, )
#line 42838 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMakeTextureHandleNonResidentNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMakeTextureHandleNonResidentNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "handle");
    {
	GLuint64	handle = (unsigned int)SvUV(ST(0))
;
#line 21028 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMakeTextureHandleNonResidentNV, )
  OGLM_AVAIL_CHECK(__glewMakeTextureHandleNonResidentNV, glMakeTextureHandleNonResidentNV)
  glMakeTextureHandleNonResidentNV(handle);
  OGLM_CHECK_ERR(glMakeTextureHandleNonResidentNV, )
#line 42859 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMakeTextureHandleResidentARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMakeTextureHandleResidentARB)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "handle");
    {
	GLuint64	handle = (unsigned int)SvUV(ST(0))
;
#line 21038 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMakeTextureHandleResidentARB, )
  OGLM_AVAIL_CHECK(__glewMakeTextureHandleResidentARB, glMakeTextureHandleResidentARB)
  glMakeTextureHandleResidentARB(handle);
  OGLM_CHECK_ERR(glMakeTextureHandleResidentARB, )
#line 42880 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMakeTextureHandleResidentNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMakeTextureHandleResidentNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "handle");
    {
	GLuint64	handle = (unsigned int)SvUV(ST(0))
;
#line 21048 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMakeTextureHandleResidentNV, )
  OGLM_AVAIL_CHECK(__glewMakeTextureHandleResidentNV, glMakeTextureHandleResidentNV)
  glMakeTextureHandleResidentNV(handle);
  OGLM_CHECK_ERR(glMakeTextureHandleResidentNV, )
#line 42901 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMap1d_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMap1d_c)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "target, u1, u2, stride, order, points");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLdouble	u1 = (double)SvNV(ST(1))
;
	GLdouble	u2 = (double)SvNV(ST(2))
;
	GLint	stride = (int)SvIV(ST(3))
;
	GLint	order = (int)SvIV(ST(4))
;
	const GLdouble *	points = INT2PTR(const GLdouble *,SvIV(ST(5)))
;
#line 21063 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMap1d, )
  glMap1d(target, u1, u2, stride, order, points);
  OGLM_CHECK_ERR(glMap1d, )
#line 42931 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMap1f_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMap1f_c)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "target, u1, u2, stride, order, points");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLfloat	u1 = (float)SvNV(ST(1))
;
	GLfloat	u2 = (float)SvNV(ST(2))
;
	GLint	stride = (int)SvIV(ST(3))
;
	GLint	order = (int)SvIV(ST(4))
;
	const GLfloat *	points = INT2PTR(const GLfloat *,SvIV(ST(5)))
;
#line 21077 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMap1f, )
  glMap1f(target, u1, u2, stride, order, points);
  OGLM_CHECK_ERR(glMap1f, )
#line 42961 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMap2d_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMap2d_c)
{
    dVAR; dXSARGS;
    if (items != 10)
       croak_xs_usage(cv,  "target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLdouble	u1 = (double)SvNV(ST(1))
;
	GLdouble	u2 = (double)SvNV(ST(2))
;
	GLint	ustride = (int)SvIV(ST(3))
;
	GLint	uorder = (int)SvIV(ST(4))
;
	GLdouble	v1 = (double)SvNV(ST(5))
;
	GLdouble	v2 = (double)SvNV(ST(6))
;
	GLint	vstride = (int)SvIV(ST(7))
;
	GLint	vorder = (int)SvIV(ST(8))
;
	const GLdouble *	points = INT2PTR(const GLdouble *,SvIV(ST(9)))
;
#line 21095 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMap2d, )
  glMap2d(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points);
  OGLM_CHECK_ERR(glMap2d, )
#line 42999 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMap2f_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMap2f_c)
{
    dVAR; dXSARGS;
    if (items != 10)
       croak_xs_usage(cv,  "target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLfloat	u1 = (float)SvNV(ST(1))
;
	GLfloat	u2 = (float)SvNV(ST(2))
;
	GLint	ustride = (int)SvIV(ST(3))
;
	GLint	uorder = (int)SvIV(ST(4))
;
	GLfloat	v1 = (float)SvNV(ST(5))
;
	GLfloat	v2 = (float)SvNV(ST(6))
;
	GLint	vstride = (int)SvIV(ST(7))
;
	GLint	vorder = (int)SvIV(ST(8))
;
	const GLfloat *	points = INT2PTR(const GLfloat *,SvIV(ST(9)))
;
#line 21113 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMap2f, )
  glMap2f(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points);
  OGLM_CHECK_ERR(glMap2f, )
#line 43037 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMapBuffer_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMapBuffer_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, access");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	access = (int)SvIV(ST(1))
;
	void *	RETVAL;
	dXSTARG;
#line 21125 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMapBuffer, )
  OGLM_AVAIL_CHECK(__glewMapBuffer, glMapBuffer)
  RETVAL = glMapBuffer(target, access);
  OGLM_CHECK_ERR(glMapBuffer, )
#line 43063 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi(PTR2IV(RETVAL));
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glMapBufferOES_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMapBufferOES_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, access");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	access = (int)SvIV(ST(1))
;
	void *	RETVAL;
	dXSTARG;
#line 21138 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMapBufferOES, )
  OGLM_AVAIL_CHECK(__glewMapBufferOES, glMapBufferOES)
  RETVAL = glMapBufferOES(target, access);
  OGLM_CHECK_ERR(glMapBufferOES, )
#line 43090 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi(PTR2IV(RETVAL));
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glMapBufferRange_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMapBufferRange_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "target, offset, length, access");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLintptr	offset = (unsigned int)SvUV(ST(1))
;
	GLsizeiptr	length = (unsigned int)SvUV(ST(2))
;
	GLbitfield	access = (int)SvIV(ST(3))
;
	void *	RETVAL;
	dXSTARG;
#line 21155 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMapBufferRange, )
  OGLM_AVAIL_CHECK(__glewMapBufferRange, glMapBufferRange)
  RETVAL = glMapBufferRange(target, offset, length, access);
  OGLM_CHECK_ERR(glMapBufferRange, )
#line 43122 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi(PTR2IV(RETVAL));
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glMapControlPointsNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMapControlPointsNV_c)
{
    dVAR; dXSARGS;
    if (items != 9)
       croak_xs_usage(cv,  "target, index, type, ustride, vstride, uorder, vorder, packed, points");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLenum	type = (int)SvIV(ST(2))
;
	GLsizei	ustride = (int)SvIV(ST(3))
;
	GLsizei	vstride = (int)SvIV(ST(4))
;
	GLint	uorder = (int)SvIV(ST(5))
;
	GLint	vorder = (int)SvIV(ST(6))
;
	GLboolean	packed = (int)SvIV(ST(7))
;
	const void *	points = INT2PTR(const void *,SvIV(ST(8)))
;
#line 21175 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMapControlPointsNV, )
  OGLM_AVAIL_CHECK(__glewMapControlPointsNV, glMapControlPointsNV)
  glMapControlPointsNV(target, index, type, ustride, vstride, uorder, vorder, packed, points);
  OGLM_CHECK_ERR(glMapControlPointsNV, )
#line 43161 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMapGrid1d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMapGrid1d)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "un, u1, u2");
    {
	GLint	un = (int)SvIV(ST(0))
;
	GLdouble	u1 = (double)SvNV(ST(1))
;
	GLdouble	u2 = (double)SvNV(ST(2))
;
#line 21187 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMapGrid1d, )
  glMapGrid1d(un, u1, u2);
  OGLM_CHECK_ERR(glMapGrid1d, )
#line 43185 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMapGrid1f); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMapGrid1f)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "un, u1, u2");
    {
	GLint	un = (int)SvIV(ST(0))
;
	GLfloat	u1 = (float)SvNV(ST(1))
;
	GLfloat	u2 = (float)SvNV(ST(2))
;
#line 21198 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMapGrid1f, )
  glMapGrid1f(un, u1, u2);
  OGLM_CHECK_ERR(glMapGrid1f, )
#line 43209 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMapGrid2d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMapGrid2d)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "un, u1, u2, vn, v1, v2");
    {
	GLint	un = (int)SvIV(ST(0))
;
	GLdouble	u1 = (double)SvNV(ST(1))
;
	GLdouble	u2 = (double)SvNV(ST(2))
;
	GLint	vn = (int)SvIV(ST(3))
;
	GLdouble	v1 = (double)SvNV(ST(4))
;
	GLdouble	v2 = (double)SvNV(ST(5))
;
#line 21212 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMapGrid2d, )
  glMapGrid2d(un, u1, u2, vn, v1, v2);
  OGLM_CHECK_ERR(glMapGrid2d, )
#line 43239 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMapGrid2f); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMapGrid2f)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "un, u1, u2, vn, v1, v2");
    {
	GLint	un = (int)SvIV(ST(0))
;
	GLfloat	u1 = (float)SvNV(ST(1))
;
	GLfloat	u2 = (float)SvNV(ST(2))
;
	GLint	vn = (int)SvIV(ST(3))
;
	GLfloat	v1 = (float)SvNV(ST(4))
;
	GLfloat	v2 = (float)SvNV(ST(5))
;
#line 21226 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMapGrid2f, )
  glMapGrid2f(un, u1, u2, vn, v1, v2);
  OGLM_CHECK_ERR(glMapGrid2f, )
#line 43269 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMapNamedBuffer_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMapNamedBuffer_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "buffer, access");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLenum	access = (int)SvIV(ST(1))
;
	void *	RETVAL;
	dXSTARG;
#line 21236 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMapNamedBuffer, )
  OGLM_AVAIL_CHECK(__glewMapNamedBuffer, glMapNamedBuffer)
  RETVAL = glMapNamedBuffer(buffer, access);
  OGLM_CHECK_ERR(glMapNamedBuffer, )
#line 43294 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi(PTR2IV(RETVAL));
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glMapNamedBufferEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMapNamedBufferEXT_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "buffer, access");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLenum	access = (int)SvIV(ST(1))
;
	void *	RETVAL;
	dXSTARG;
#line 21249 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMapNamedBufferEXT, )
  OGLM_AVAIL_CHECK(__glewMapNamedBufferEXT, glMapNamedBufferEXT)
  RETVAL = glMapNamedBufferEXT(buffer, access);
  OGLM_CHECK_ERR(glMapNamedBufferEXT, )
#line 43321 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi(PTR2IV(RETVAL));
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glMapNamedBufferRange_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMapNamedBufferRange_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "buffer, offset, length, access");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLintptr	offset = (unsigned int)SvUV(ST(1))
;
	GLsizeiptr	length = (unsigned int)SvUV(ST(2))
;
	GLbitfield	access = (int)SvIV(ST(3))
;
	void *	RETVAL;
	dXSTARG;
#line 21264 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMapNamedBufferRange, )
  OGLM_AVAIL_CHECK(__glewMapNamedBufferRange, glMapNamedBufferRange)
  RETVAL = glMapNamedBufferRange(buffer, offset, length, access);
  OGLM_CHECK_ERR(glMapNamedBufferRange, )
#line 43352 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi(PTR2IV(RETVAL));
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glMapNamedBufferRangeEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMapNamedBufferRangeEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "buffer, offset, length, access");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLintptr	offset = (unsigned int)SvUV(ST(1))
;
	GLsizeiptr	length = (unsigned int)SvUV(ST(2))
;
	GLbitfield	access = (int)SvIV(ST(3))
;
	void *	RETVAL;
	dXSTARG;
#line 21279 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMapNamedBufferRangeEXT, )
  OGLM_AVAIL_CHECK(__glewMapNamedBufferRangeEXT, glMapNamedBufferRangeEXT)
  RETVAL = glMapNamedBufferRangeEXT(buffer, offset, length, access);
  OGLM_CHECK_ERR(glMapNamedBufferRangeEXT, )
#line 43383 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi(PTR2IV(RETVAL));
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glMapObjectBufferATI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMapObjectBufferATI_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "buffer");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	void *	RETVAL;
	dXSTARG;
#line 21291 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMapObjectBufferATI, )
  OGLM_AVAIL_CHECK(__glewMapObjectBufferATI, glMapObjectBufferATI)
  RETVAL = glMapObjectBufferATI(buffer);
  OGLM_CHECK_ERR(glMapObjectBufferATI, )
#line 43408 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi(PTR2IV(RETVAL));
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glMapParameterfvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMapParameterfvNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLfloat*	params = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 21305 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMapParameterfvNV, )
  OGLM_AVAIL_CHECK(__glewMapParameterfvNV, glMapParameterfvNV)
  glMapParameterfvNV(target, pname, params);
  OGLM_CHECK_ERR(glMapParameterfvNV, )
#line 43435 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMapParameterivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMapParameterivNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLint*	params = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 21317 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMapParameterivNV, )
  OGLM_AVAIL_CHECK(__glewMapParameterivNV, glMapParameterivNV)
  glMapParameterivNV(target, pname, params);
  OGLM_CHECK_ERR(glMapParameterivNV, )
#line 43460 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMapTexture2DINTEL_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMapTexture2DINTEL_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "texture, level, access, stride, layout");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLbitfield	access = (int)SvIV(ST(2))
;
	GLint*	stride = INT2PTR(GLint *,SvIV(ST(3)))
;
	GLenum *	layout = INT2PTR(GLenum *,SvIV(ST(4)))
;
	void *	RETVAL;
	dXSTARG;
#line 21331 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMapTexture2DINTEL, )
  OGLM_AVAIL_CHECK(__glewMapTexture2DINTEL, glMapTexture2DINTEL)
  RETVAL = glMapTexture2DINTEL(texture, level, access, stride, layout);
  OGLM_CHECK_ERR(glMapTexture2DINTEL, )
#line 43491 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi(PTR2IV(RETVAL));
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glMapTexture2DINTEL_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMapTexture2DINTEL_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texture, level, access");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLbitfield	access = (int)SvIV(ST(2))
;
	void *	RETVAL;
	dXSTARG;
#line 21345 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMapTexture2DINTEL, )
  OGLM_AVAIL_CHECK(__glewMapTexture2DINTEL, glMapTexture2DINTEL)
  GLenum layout[1];
  GLint stride[1];
  RETVAL = glMapTexture2DINTEL(texture, level, access, stride, layout);
  OGLM_CHECK_ERR(glMapTexture2DINTEL, )
  EXTEND(sp, 3);
  mPUSHs(newSViv(PTR2IV(RETVAL)));
  mPUSHs(newSViv(stride[0]));
  mPUSHs(newSViv(layout[0]));
#line 43528 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glMapVertexAttrib1dAPPLE_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMapVertexAttrib1dAPPLE_c)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "index, size, u1, u2, stride, order, points");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLuint	size = (unsigned int)SvUV(ST(1))
;
	GLdouble	u1 = (double)SvNV(ST(2))
;
	GLdouble	u2 = (double)SvNV(ST(3))
;
	GLint	stride = (int)SvIV(ST(4))
;
	GLint	order = (int)SvIV(ST(5))
;
	const GLdouble*	points = INT2PTR(const GLdouble *,SvIV(ST(6)))
;
#line 21367 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMapVertexAttrib1dAPPLE, )
  OGLM_AVAIL_CHECK(__glewMapVertexAttrib1dAPPLE, glMapVertexAttrib1dAPPLE)
  glMapVertexAttrib1dAPPLE(index, size, u1, u2, stride, order, points);
  OGLM_CHECK_ERR(glMapVertexAttrib1dAPPLE, )
#line 43562 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMapVertexAttrib1fAPPLE_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMapVertexAttrib1fAPPLE_c)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "index, size, u1, u2, stride, order, points");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLuint	size = (unsigned int)SvUV(ST(1))
;
	GLfloat	u1 = (float)SvNV(ST(2))
;
	GLfloat	u2 = (float)SvNV(ST(3))
;
	GLint	stride = (int)SvIV(ST(4))
;
	GLint	order = (int)SvIV(ST(5))
;
	const GLfloat*	points = INT2PTR(const GLfloat *,SvIV(ST(6)))
;
#line 21383 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMapVertexAttrib1fAPPLE, )
  OGLM_AVAIL_CHECK(__glewMapVertexAttrib1fAPPLE, glMapVertexAttrib1fAPPLE)
  glMapVertexAttrib1fAPPLE(index, size, u1, u2, stride, order, points);
  OGLM_CHECK_ERR(glMapVertexAttrib1fAPPLE, )
#line 43595 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMapVertexAttrib2dAPPLE_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMapVertexAttrib2dAPPLE_c)
{
    dVAR; dXSARGS;
    if (items != 11)
       croak_xs_usage(cv,  "index, size, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLuint	size = (unsigned int)SvUV(ST(1))
;
	GLdouble	u1 = (double)SvNV(ST(2))
;
	GLdouble	u2 = (double)SvNV(ST(3))
;
	GLint	ustride = (int)SvIV(ST(4))
;
	GLint	uorder = (int)SvIV(ST(5))
;
	GLdouble	v1 = (double)SvNV(ST(6))
;
	GLdouble	v2 = (double)SvNV(ST(7))
;
	GLint	vstride = (int)SvIV(ST(8))
;
	GLint	vorder = (int)SvIV(ST(9))
;
	const GLdouble*	points = INT2PTR(const GLdouble *,SvIV(ST(10)))
;
#line 21403 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMapVertexAttrib2dAPPLE, )
  OGLM_AVAIL_CHECK(__glewMapVertexAttrib2dAPPLE, glMapVertexAttrib2dAPPLE)
  glMapVertexAttrib2dAPPLE(index, size, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points);
  OGLM_CHECK_ERR(glMapVertexAttrib2dAPPLE, )
#line 43636 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMapVertexAttrib2fAPPLE_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMapVertexAttrib2fAPPLE_c)
{
    dVAR; dXSARGS;
    if (items != 11)
       croak_xs_usage(cv,  "index, size, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLuint	size = (unsigned int)SvUV(ST(1))
;
	GLfloat	u1 = (float)SvNV(ST(2))
;
	GLfloat	u2 = (float)SvNV(ST(3))
;
	GLint	ustride = (int)SvIV(ST(4))
;
	GLint	uorder = (int)SvIV(ST(5))
;
	GLfloat	v1 = (float)SvNV(ST(6))
;
	GLfloat	v2 = (float)SvNV(ST(7))
;
	GLint	vstride = (int)SvIV(ST(8))
;
	GLint	vorder = (int)SvIV(ST(9))
;
	const GLfloat*	points = INT2PTR(const GLfloat *,SvIV(ST(10)))
;
#line 21423 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMapVertexAttrib2fAPPLE, )
  OGLM_AVAIL_CHECK(__glewMapVertexAttrib2fAPPLE, glMapVertexAttrib2fAPPLE)
  glMapVertexAttrib2fAPPLE(index, size, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points);
  OGLM_CHECK_ERR(glMapVertexAttrib2fAPPLE, )
#line 43677 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMaterialf); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMaterialf)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "face, pname, param");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat	param = (float)SvNV(ST(2))
;
#line 21435 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMaterialf, )
  glMaterialf(face, pname, param);
  OGLM_CHECK_ERR(glMaterialf, )
#line 43701 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMaterialfv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMaterialfv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "face, pname, params");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLfloat *	params = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 21446 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMaterialfv, )
  glMaterialfv(face, pname, params);
  OGLM_CHECK_ERR(glMaterialfv, )
#line 43725 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMaterialfv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMaterialfv_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "face, pname, ...");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 21456 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMaterialfv, )
  OGLM_SIZE_ENUM(MaterialParameter,pname,1)
  GLfloat *params = OGLM_GET_VARARGS(params,2,GLfloat,NV,pname_count);
  glMaterialfv((GLenum )face, (GLenum )pname, (const GLfloat *)params);
  OGLM_CHECK_ERR(glMaterialfv, free(params);)
  free(params);
#line 43750 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMateriali); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMateriali)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "face, pname, param");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint	param = (int)SvIV(ST(2))
;
#line 21470 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMateriali, )
  glMateriali(face, pname, param);
  OGLM_CHECK_ERR(glMateriali, )
#line 43774 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMaterialiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMaterialiv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "face, pname, params");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLint *	params = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 21481 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMaterialiv, )
  glMaterialiv(face, pname, params);
  OGLM_CHECK_ERR(glMaterialiv, )
#line 43798 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMaterialiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMaterialiv_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "face, pname, ...");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 21491 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMaterialiv, )
  OGLM_SIZE_ENUM(MaterialParameter,pname,1)
  GLint *params = OGLM_GET_VARARGS(params,2,GLint,IV,pname_count);
  glMaterialiv((GLenum )face, (GLenum )pname, (const GLint *)params);
  OGLM_CHECK_ERR(glMaterialiv, free(params);)
  free(params);
#line 43823 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMaterialx); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMaterialx)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "face, pname, param");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfixed	param = (int)SvIV(ST(2))
;
#line 21505 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMaterialx, )
  OGLM_AVAIL_CHECK(__glewMaterialx, glMaterialx)
  glMaterialx(face, pname, param);
  OGLM_CHECK_ERR(glMaterialx, )
#line 43848 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMaterialxv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMaterialxv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "face, pname, param");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLfixed*	param = INT2PTR(const GLfixed *,SvIV(ST(2)))
;
#line 21517 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMaterialxv, )
  OGLM_AVAIL_CHECK(__glewMaterialxv, glMaterialxv)
  glMaterialxv(face, pname, param);
  OGLM_CHECK_ERR(glMaterialxv, )
#line 43873 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMaterialxv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMaterialxv_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "face, pname, ...");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 21528 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMaterialxv, )
  OGLM_AVAIL_CHECK(__glewMaterialxv, glMaterialxv)
  OGLM_SIZE_ENUM(MaterialParameter,pname,1)
  GLfixed* param = OGLM_GET_VARARGS(param,2,GLfixed,IV,pname_count);
  glMaterialxv((GLenum )face, (GLenum )pname, (const GLfixed* )param);
  OGLM_CHECK_ERR(glMaterialxv, free(param);)
  free(param);
#line 43899 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixFrustumEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixFrustumEXT)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "mode, left, right, bottom, top, zNear, zFar");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	GLdouble	left = (double)SvNV(ST(1))
;
	GLdouble	right = (double)SvNV(ST(2))
;
	GLdouble	bottom = (double)SvNV(ST(3))
;
	GLdouble	top = (double)SvNV(ST(4))
;
	GLdouble	zNear = (double)SvNV(ST(5))
;
	GLdouble	zFar = (double)SvNV(ST(6))
;
#line 21547 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixFrustumEXT, )
  OGLM_AVAIL_CHECK(__glewMatrixFrustumEXT, glMatrixFrustumEXT)
  glMatrixFrustumEXT(mode, left, right, bottom, top, zNear, zFar);
  OGLM_CHECK_ERR(glMatrixFrustumEXT, )
#line 43932 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixIndexPointerARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixIndexPointerARB_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "size, type, stride, pointer");
    {
	GLint	size = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLsizei	stride = (int)SvIV(ST(2))
;
	void *	pointer = INT2PTR(void *,SvIV(ST(3)))
;
#line 21560 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixIndexPointerARB, )
  OGLM_AVAIL_CHECK(__glewMatrixIndexPointerARB, glMatrixIndexPointerARB)
  glMatrixIndexPointerARB(size, type, stride, pointer);
  OGLM_CHECK_ERR(glMatrixIndexPointerARB, )
#line 43959 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixIndexPointerOES_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixIndexPointerOES_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "size, type, stride, pointer");
    {
	GLint	size = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLsizei	stride = (int)SvIV(ST(2))
;
	void *	pointer = INT2PTR(void *,SvIV(ST(3)))
;
#line 21573 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixIndexPointerOES, )
  OGLM_AVAIL_CHECK(__glewMatrixIndexPointerOES, glMatrixIndexPointerOES)
  glMatrixIndexPointerOES(size, type, stride, pointer);
  OGLM_CHECK_ERR(glMatrixIndexPointerOES, )
#line 43986 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixIndexubvARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixIndexubvARB_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "size, indices");
    {
	GLint	size = (int)SvIV(ST(0))
;
	GLubyte *	indices = INT2PTR(GLubyte *,SvIV(ST(1)))
;
#line 21584 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixIndexubvARB, )
  OGLM_AVAIL_CHECK(__glewMatrixIndexubvARB, glMatrixIndexubvARB)
  glMatrixIndexubvARB(size, indices);
  OGLM_CHECK_ERR(glMatrixIndexubvARB, )
#line 44009 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixIndexubvARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixIndexubvARB_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "size");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLint	size = (int)SvIV(ST(0))
;
#line 21594 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixIndexubvARB, )
  OGLM_AVAIL_CHECK(__glewMatrixIndexubvARB, glMatrixIndexubvARB)
  GLubyte *indices = OGLM_ALLOC(size,GLubyte,indices);
  glMatrixIndexubvARB(size, indices);
  OGLM_CHECK_ERR(glMatrixIndexubvARB, free(indices);)
  OGLM_OUT_FINISH(indices,size,newSVuv)
  free(indices);
#line 44035 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixIndexuivARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixIndexuivARB_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "size, indices");
    {
	GLint	size = (int)SvIV(ST(0))
;
	GLuint *	indices = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 21608 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixIndexuivARB, )
  OGLM_AVAIL_CHECK(__glewMatrixIndexuivARB, glMatrixIndexuivARB)
  glMatrixIndexuivARB(size, indices);
  OGLM_CHECK_ERR(glMatrixIndexuivARB, )
#line 44059 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixIndexuivARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixIndexuivARB_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "size");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLint	size = (int)SvIV(ST(0))
;
#line 21618 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixIndexuivARB, )
  OGLM_AVAIL_CHECK(__glewMatrixIndexuivARB, glMatrixIndexuivARB)
  GLuint *indices = OGLM_ALLOC(size,GLuint,indices);
  glMatrixIndexuivARB(size, indices);
  OGLM_CHECK_ERR(glMatrixIndexuivARB, free(indices);)
  OGLM_OUT_FINISH(indices,size,newSVuv)
  free(indices);
#line 44085 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixIndexusvARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixIndexusvARB_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "size, indices");
    {
	GLint	size = (int)SvIV(ST(0))
;
	GLushort *	indices = INT2PTR(GLushort *,SvIV(ST(1)))
;
#line 21632 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixIndexusvARB, )
  OGLM_AVAIL_CHECK(__glewMatrixIndexusvARB, glMatrixIndexusvARB)
  glMatrixIndexusvARB(size, indices);
  OGLM_CHECK_ERR(glMatrixIndexusvARB, )
#line 44109 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixIndexusvARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixIndexusvARB_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "size");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLint	size = (int)SvIV(ST(0))
;
#line 21642 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixIndexusvARB, )
  OGLM_AVAIL_CHECK(__glewMatrixIndexusvARB, glMatrixIndexusvARB)
  GLushort *indices = OGLM_ALLOC(size,GLushort,indices);
  glMatrixIndexusvARB(size, indices);
  OGLM_CHECK_ERR(glMatrixIndexusvARB, free(indices);)
  OGLM_OUT_FINISH(indices,size,newSVuv)
  free(indices);
#line 44135 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixLoad3x2fNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixLoad3x2fNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "matrixMode, m");
    {
	GLenum	matrixMode = (int)SvIV(ST(0))
;
	const GLfloat*	m = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 21656 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixLoad3x2fNV, )
  OGLM_AVAIL_CHECK(__glewMatrixLoad3x2fNV, glMatrixLoad3x2fNV)
  glMatrixLoad3x2fNV(matrixMode, m);
  OGLM_CHECK_ERR(glMatrixLoad3x2fNV, )
#line 44159 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixLoad3x3fNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixLoad3x3fNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "matrixMode, m");
    {
	GLenum	matrixMode = (int)SvIV(ST(0))
;
	const GLfloat*	m = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 21667 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixLoad3x3fNV, )
  OGLM_AVAIL_CHECK(__glewMatrixLoad3x3fNV, glMatrixLoad3x3fNV)
  glMatrixLoad3x3fNV(matrixMode, m);
  OGLM_CHECK_ERR(glMatrixLoad3x3fNV, )
#line 44182 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixLoadIdentityEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixLoadIdentityEXT)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "mode");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
#line 21677 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixLoadIdentityEXT, )
  OGLM_AVAIL_CHECK(__glewMatrixLoadIdentityEXT, glMatrixLoadIdentityEXT)
  glMatrixLoadIdentityEXT(mode);
  OGLM_CHECK_ERR(glMatrixLoadIdentityEXT, )
#line 44203 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixLoadTranspose3x3fNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixLoadTranspose3x3fNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "matrixMode, m");
    {
	GLenum	matrixMode = (int)SvIV(ST(0))
;
	const GLfloat*	m = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 21688 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixLoadTranspose3x3fNV, )
  OGLM_AVAIL_CHECK(__glewMatrixLoadTranspose3x3fNV, glMatrixLoadTranspose3x3fNV)
  glMatrixLoadTranspose3x3fNV(matrixMode, m);
  OGLM_CHECK_ERR(glMatrixLoadTranspose3x3fNV, )
#line 44226 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixLoadTransposedEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixLoadTransposedEXT_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "mode, m");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	const GLdouble*	m = INT2PTR(const GLdouble *,SvIV(ST(1)))
;
#line 21699 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixLoadTransposedEXT, )
  OGLM_AVAIL_CHECK(__glewMatrixLoadTransposedEXT, glMatrixLoadTransposedEXT)
  glMatrixLoadTransposedEXT(mode, m);
  OGLM_CHECK_ERR(glMatrixLoadTransposedEXT, )
#line 44249 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixLoadTransposedEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixLoadTransposedEXT_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "mode, ...");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
#line 21709 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixLoadTransposedEXT, )
  OGLM_AVAIL_CHECK(__glewMatrixLoadTransposedEXT, glMatrixLoadTransposedEXT)
  GLdouble* m = OGLM_GET_VARARGS(m,1,GLdouble,NV,16);
  glMatrixLoadTransposedEXT((GLenum )mode, (const GLdouble* )m);
  OGLM_CHECK_ERR(glMatrixLoadTransposedEXT, free(m);)
  free(m);
#line 44272 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixLoadTransposefEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixLoadTransposefEXT_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "mode, m");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	const GLfloat*	m = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 21722 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixLoadTransposefEXT, )
  OGLM_AVAIL_CHECK(__glewMatrixLoadTransposefEXT, glMatrixLoadTransposefEXT)
  glMatrixLoadTransposefEXT(mode, m);
  OGLM_CHECK_ERR(glMatrixLoadTransposefEXT, )
#line 44295 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixLoadTransposefEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixLoadTransposefEXT_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "mode, ...");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
#line 21732 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixLoadTransposefEXT, )
  OGLM_AVAIL_CHECK(__glewMatrixLoadTransposefEXT, glMatrixLoadTransposefEXT)
  GLfloat* m = OGLM_GET_VARARGS(m,1,GLfloat,NV,16);
  glMatrixLoadTransposefEXT((GLenum )mode, (const GLfloat* )m);
  OGLM_CHECK_ERR(glMatrixLoadTransposefEXT, free(m);)
  free(m);
#line 44318 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixLoaddEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixLoaddEXT_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "mode, m");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	const GLdouble*	m = INT2PTR(const GLdouble *,SvIV(ST(1)))
;
#line 21745 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixLoaddEXT, )
  OGLM_AVAIL_CHECK(__glewMatrixLoaddEXT, glMatrixLoaddEXT)
  glMatrixLoaddEXT(mode, m);
  OGLM_CHECK_ERR(glMatrixLoaddEXT, )
#line 44341 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixLoaddEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixLoaddEXT_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "mode, ...");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
#line 21755 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixLoaddEXT, )
  OGLM_AVAIL_CHECK(__glewMatrixLoaddEXT, glMatrixLoaddEXT)
  GLdouble* m = OGLM_GET_VARARGS(m,1,GLdouble,NV,16);
  glMatrixLoaddEXT((GLenum )mode, (const GLdouble* )m);
  OGLM_CHECK_ERR(glMatrixLoaddEXT, free(m);)
  free(m);
#line 44364 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixLoadfEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixLoadfEXT_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "mode, m");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	const GLfloat*	m = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 21768 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixLoadfEXT, )
  OGLM_AVAIL_CHECK(__glewMatrixLoadfEXT, glMatrixLoadfEXT)
  glMatrixLoadfEXT(mode, m);
  OGLM_CHECK_ERR(glMatrixLoadfEXT, )
#line 44387 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixLoadfEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixLoadfEXT_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "mode, ...");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
#line 21778 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixLoadfEXT, )
  OGLM_AVAIL_CHECK(__glewMatrixLoadfEXT, glMatrixLoadfEXT)
  GLfloat* m = OGLM_GET_VARARGS(m,1,GLfloat,NV,16);
  glMatrixLoadfEXT((GLenum )mode, (const GLfloat* )m);
  OGLM_CHECK_ERR(glMatrixLoadfEXT, free(m);)
  free(m);
#line 44410 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixMode); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixMode)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "mode");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
#line 21790 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixMode, )
  glMatrixMode(mode);
  OGLM_CHECK_ERR(glMatrixMode, )
#line 44430 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixMult3x2fNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixMult3x2fNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "matrixMode, m");
    {
	GLenum	matrixMode = (int)SvIV(ST(0))
;
	const GLfloat*	m = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 21800 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixMult3x2fNV, )
  OGLM_AVAIL_CHECK(__glewMatrixMult3x2fNV, glMatrixMult3x2fNV)
  glMatrixMult3x2fNV(matrixMode, m);
  OGLM_CHECK_ERR(glMatrixMult3x2fNV, )
#line 44453 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixMult3x3fNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixMult3x3fNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "matrixMode, m");
    {
	GLenum	matrixMode = (int)SvIV(ST(0))
;
	const GLfloat*	m = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 21811 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixMult3x3fNV, )
  OGLM_AVAIL_CHECK(__glewMatrixMult3x3fNV, glMatrixMult3x3fNV)
  glMatrixMult3x3fNV(matrixMode, m);
  OGLM_CHECK_ERR(glMatrixMult3x3fNV, )
#line 44476 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixMultTranspose3x3fNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixMultTranspose3x3fNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "matrixMode, m");
    {
	GLenum	matrixMode = (int)SvIV(ST(0))
;
	const GLfloat*	m = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 21822 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixMultTranspose3x3fNV, )
  OGLM_AVAIL_CHECK(__glewMatrixMultTranspose3x3fNV, glMatrixMultTranspose3x3fNV)
  glMatrixMultTranspose3x3fNV(matrixMode, m);
  OGLM_CHECK_ERR(glMatrixMultTranspose3x3fNV, )
#line 44499 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixMultTransposedEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixMultTransposedEXT_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "mode, m");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	const GLdouble*	m = INT2PTR(const GLdouble *,SvIV(ST(1)))
;
#line 21833 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixMultTransposedEXT, )
  OGLM_AVAIL_CHECK(__glewMatrixMultTransposedEXT, glMatrixMultTransposedEXT)
  glMatrixMultTransposedEXT(mode, m);
  OGLM_CHECK_ERR(glMatrixMultTransposedEXT, )
#line 44522 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixMultTransposedEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixMultTransposedEXT_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "mode, ...");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
#line 21843 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixMultTransposedEXT, )
  OGLM_AVAIL_CHECK(__glewMatrixMultTransposedEXT, glMatrixMultTransposedEXT)
  GLdouble* m = OGLM_GET_VARARGS(m,1,GLdouble,NV,16);
  glMatrixMultTransposedEXT((GLenum )mode, (const GLdouble* )m);
  OGLM_CHECK_ERR(glMatrixMultTransposedEXT, free(m);)
  free(m);
#line 44545 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixMultTransposefEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixMultTransposefEXT_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "mode, m");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	const GLfloat*	m = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 21856 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixMultTransposefEXT, )
  OGLM_AVAIL_CHECK(__glewMatrixMultTransposefEXT, glMatrixMultTransposefEXT)
  glMatrixMultTransposefEXT(mode, m);
  OGLM_CHECK_ERR(glMatrixMultTransposefEXT, )
#line 44568 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixMultTransposefEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixMultTransposefEXT_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "mode, ...");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
#line 21866 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixMultTransposefEXT, )
  OGLM_AVAIL_CHECK(__glewMatrixMultTransposefEXT, glMatrixMultTransposefEXT)
  GLfloat* m = OGLM_GET_VARARGS(m,1,GLfloat,NV,16);
  glMatrixMultTransposefEXT((GLenum )mode, (const GLfloat* )m);
  OGLM_CHECK_ERR(glMatrixMultTransposefEXT, free(m);)
  free(m);
#line 44591 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixMultdEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixMultdEXT_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "mode, m");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	const GLdouble*	m = INT2PTR(const GLdouble *,SvIV(ST(1)))
;
#line 21879 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixMultdEXT, )
  OGLM_AVAIL_CHECK(__glewMatrixMultdEXT, glMatrixMultdEXT)
  glMatrixMultdEXT(mode, m);
  OGLM_CHECK_ERR(glMatrixMultdEXT, )
#line 44614 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixMultdEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixMultdEXT_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "mode, ...");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
#line 21889 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixMultdEXT, )
  OGLM_AVAIL_CHECK(__glewMatrixMultdEXT, glMatrixMultdEXT)
  GLdouble* m = OGLM_GET_VARARGS(m,1,GLdouble,NV,16);
  glMatrixMultdEXT((GLenum )mode, (const GLdouble* )m);
  OGLM_CHECK_ERR(glMatrixMultdEXT, free(m);)
  free(m);
#line 44637 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixMultfEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixMultfEXT_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "mode, m");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	const GLfloat*	m = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 21902 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixMultfEXT, )
  OGLM_AVAIL_CHECK(__glewMatrixMultfEXT, glMatrixMultfEXT)
  glMatrixMultfEXT(mode, m);
  OGLM_CHECK_ERR(glMatrixMultfEXT, )
#line 44660 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixMultfEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixMultfEXT_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "mode, ...");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
#line 21912 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixMultfEXT, )
  OGLM_AVAIL_CHECK(__glewMatrixMultfEXT, glMatrixMultfEXT)
  GLfloat* m = OGLM_GET_VARARGS(m,1,GLfloat,NV,16);
  glMatrixMultfEXT((GLenum )mode, (const GLfloat* )m);
  OGLM_CHECK_ERR(glMatrixMultfEXT, free(m);)
  free(m);
#line 44683 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixOrthoEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixOrthoEXT)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "mode, left, right, bottom, top, zNear, zFar");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	GLdouble	left = (double)SvNV(ST(1))
;
	GLdouble	right = (double)SvNV(ST(2))
;
	GLdouble	bottom = (double)SvNV(ST(3))
;
	GLdouble	top = (double)SvNV(ST(4))
;
	GLdouble	zNear = (double)SvNV(ST(5))
;
	GLdouble	zFar = (double)SvNV(ST(6))
;
#line 21930 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixOrthoEXT, )
  OGLM_AVAIL_CHECK(__glewMatrixOrthoEXT, glMatrixOrthoEXT)
  glMatrixOrthoEXT(mode, left, right, bottom, top, zNear, zFar);
  OGLM_CHECK_ERR(glMatrixOrthoEXT, )
#line 44716 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixPopEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixPopEXT)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "mode");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
#line 21940 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixPopEXT, )
  OGLM_AVAIL_CHECK(__glewMatrixPopEXT, glMatrixPopEXT)
  glMatrixPopEXT(mode);
  OGLM_CHECK_ERR(glMatrixPopEXT, )
#line 44737 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixPushEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixPushEXT)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "mode");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
#line 21950 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixPushEXT, )
  OGLM_AVAIL_CHECK(__glewMatrixPushEXT, glMatrixPushEXT)
  glMatrixPushEXT(mode);
  OGLM_CHECK_ERR(glMatrixPushEXT, )
#line 44758 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixRotatedEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixRotatedEXT)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "mode, angle, x, y, z");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	GLdouble	angle = (double)SvNV(ST(1))
;
	GLdouble	x = (double)SvNV(ST(2))
;
	GLdouble	y = (double)SvNV(ST(3))
;
	GLdouble	z = (double)SvNV(ST(4))
;
#line 21964 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixRotatedEXT, )
  OGLM_AVAIL_CHECK(__glewMatrixRotatedEXT, glMatrixRotatedEXT)
  glMatrixRotatedEXT(mode, angle, x, y, z);
  OGLM_CHECK_ERR(glMatrixRotatedEXT, )
#line 44787 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixRotatefEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixRotatefEXT)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "mode, angle, x, y, z");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	GLfloat	angle = (float)SvNV(ST(1))
;
	GLfloat	x = (float)SvNV(ST(2))
;
	GLfloat	y = (float)SvNV(ST(3))
;
	GLfloat	z = (float)SvNV(ST(4))
;
#line 21978 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixRotatefEXT, )
  OGLM_AVAIL_CHECK(__glewMatrixRotatefEXT, glMatrixRotatefEXT)
  glMatrixRotatefEXT(mode, angle, x, y, z);
  OGLM_CHECK_ERR(glMatrixRotatefEXT, )
#line 44816 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixScaledEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixScaledEXT)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "mode, x, y, z");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	GLdouble	x = (double)SvNV(ST(1))
;
	GLdouble	y = (double)SvNV(ST(2))
;
	GLdouble	z = (double)SvNV(ST(3))
;
#line 21991 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixScaledEXT, )
  OGLM_AVAIL_CHECK(__glewMatrixScaledEXT, glMatrixScaledEXT)
  glMatrixScaledEXT(mode, x, y, z);
  OGLM_CHECK_ERR(glMatrixScaledEXT, )
#line 44843 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixScalefEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixScalefEXT)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "mode, x, y, z");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	GLfloat	x = (float)SvNV(ST(1))
;
	GLfloat	y = (float)SvNV(ST(2))
;
	GLfloat	z = (float)SvNV(ST(3))
;
#line 22004 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixScalefEXT, )
  OGLM_AVAIL_CHECK(__glewMatrixScalefEXT, glMatrixScalefEXT)
  glMatrixScalefEXT(mode, x, y, z);
  OGLM_CHECK_ERR(glMatrixScalefEXT, )
#line 44870 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixTranslatedEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixTranslatedEXT)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "mode, x, y, z");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	GLdouble	x = (double)SvNV(ST(1))
;
	GLdouble	y = (double)SvNV(ST(2))
;
	GLdouble	z = (double)SvNV(ST(3))
;
#line 22017 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixTranslatedEXT, )
  OGLM_AVAIL_CHECK(__glewMatrixTranslatedEXT, glMatrixTranslatedEXT)
  glMatrixTranslatedEXT(mode, x, y, z);
  OGLM_CHECK_ERR(glMatrixTranslatedEXT, )
#line 44897 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMatrixTranslatefEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMatrixTranslatefEXT)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "mode, x, y, z");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	GLfloat	x = (float)SvNV(ST(1))
;
	GLfloat	y = (float)SvNV(ST(2))
;
	GLfloat	z = (float)SvNV(ST(3))
;
#line 22030 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMatrixTranslatefEXT, )
  OGLM_AVAIL_CHECK(__glewMatrixTranslatefEXT, glMatrixTranslatefEXT)
  glMatrixTranslatefEXT(mode, x, y, z);
  OGLM_CHECK_ERR(glMatrixTranslatefEXT, )
#line 44924 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMaxActiveShaderCoresARM); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMaxActiveShaderCoresARM)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "count");
    {
	GLuint	count = (unsigned int)SvUV(ST(0))
;
#line 22040 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMaxActiveShaderCoresARM, )
  OGLM_AVAIL_CHECK(__glewMaxActiveShaderCoresARM, glMaxActiveShaderCoresARM)
  glMaxActiveShaderCoresARM(count);
  OGLM_CHECK_ERR(glMaxActiveShaderCoresARM, )
#line 44945 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMaxShaderCompilerThreadsKHR); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMaxShaderCompilerThreadsKHR)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "count");
    {
	GLuint	count = (unsigned int)SvUV(ST(0))
;
#line 22052 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMaxShaderCompilerThreadsKHR, )
  OGLM_AVAIL_CHECK(__glewMaxShaderCompilerThreadsKHR, glMaxShaderCompilerThreadsKHR)
  glMaxShaderCompilerThreadsKHR(count);
  OGLM_CHECK_ERR(glMaxShaderCompilerThreadsKHR, )
#line 44967 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMemoryBarrier); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMemoryBarrier)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "barriers");
    {
	GLbitfield	barriers = (int)SvIV(ST(0))
;
#line 22064 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMemoryBarrier, )
  OGLM_AVAIL_CHECK(__glewMemoryBarrier, glMemoryBarrier)
  glMemoryBarrier(barriers);
  OGLM_CHECK_ERR(glMemoryBarrier, )
#line 44989 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMemoryBarrierByRegion); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMemoryBarrierByRegion)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "barriers");
    {
	GLbitfield	barriers = (int)SvIV(ST(0))
;
#line 22074 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMemoryBarrierByRegion, )
  OGLM_AVAIL_CHECK(__glewMemoryBarrierByRegion, glMemoryBarrierByRegion)
  glMemoryBarrierByRegion(barriers);
  OGLM_CHECK_ERR(glMemoryBarrierByRegion, )
#line 45010 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMemoryObjectParameterivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMemoryObjectParameterivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "memoryObject, pname, params");
    {
	GLuint	memoryObject = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLint*	params = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 22086 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMemoryObjectParameterivEXT, )
  OGLM_AVAIL_CHECK(__glewMemoryObjectParameterivEXT, glMemoryObjectParameterivEXT)
  glMemoryObjectParameterivEXT(memoryObject, pname, params);
  OGLM_CHECK_ERR(glMemoryObjectParameterivEXT, )
#line 45035 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMeshBreadthSGIX); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMeshBreadthSGIX)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "breadth");
    {
	GLint	breadth = (int)SvIV(ST(0))
;
#line 22096 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMeshBreadthSGIX, )
  OGLM_AVAIL_CHECK(__glewMeshBreadthSGIX, glMeshBreadthSGIX)
  glMeshBreadthSGIX(breadth);
  OGLM_CHECK_ERR(glMeshBreadthSGIX, )
#line 45056 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMeshStrideSGIX); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMeshStrideSGIX)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "stride");
    {
	GLint	stride = (int)SvIV(ST(0))
;
#line 22106 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMeshStrideSGIX, )
  OGLM_AVAIL_CHECK(__glewMeshStrideSGIX, glMeshStrideSGIX)
  glMeshStrideSGIX(stride);
  OGLM_CHECK_ERR(glMeshStrideSGIX, )
#line 45077 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMinSampleShading); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMinSampleShading)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "value");
    {
	GLclampf	value = (float)SvNV(ST(0))
;
#line 22118 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMinSampleShading, )
  OGLM_AVAIL_CHECK(__glewMinSampleShading, glMinSampleShading)
  glMinSampleShading(value);
  OGLM_CHECK_ERR(glMinSampleShading, )
#line 45099 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMinSampleShadingOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMinSampleShadingOES)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "value");
    {
	GLfloat	value = (float)SvNV(ST(0))
;
#line 22128 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMinSampleShadingOES, )
  OGLM_AVAIL_CHECK(__glewMinSampleShadingOES, glMinSampleShadingOES)
  glMinSampleShadingOES(value);
  OGLM_CHECK_ERR(glMinSampleShadingOES, )
#line 45120 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMinmax); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMinmax)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "target, internalformat, sink");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	internalformat = (int)SvIV(ST(1))
;
	GLboolean	sink = (int)SvIV(ST(2))
;
#line 22142 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMinmax, )
  OGLM_AVAIL_CHECK(__glewMinmax, glMinmax)
  glMinmax(target, internalformat, sink);
  OGLM_CHECK_ERR(glMinmax, )
#line 45146 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultMatrixd_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultMatrixd_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "m");
    {
	const GLdouble *	m = INT2PTR(const GLdouble *,SvIV(ST(0)))
;
#line 22152 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultMatrixd, )
  glMultMatrixd(m);
  OGLM_CHECK_ERR(glMultMatrixd, )
#line 45166 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultMatrixd_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultMatrixd_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 22160 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultMatrixd, )
  GLdouble *m = OGLM_GET_VARARGS(m,0,GLdouble,NV,16);
  glMultMatrixd((const GLdouble *)m);
  OGLM_CHECK_ERR(glMultMatrixd, free(m);)
  free(m);
#line 45186 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultMatrixf_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultMatrixf_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "m");
    {
	const GLfloat *	m = INT2PTR(const GLfloat *,SvIV(ST(0)))
;
#line 22171 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultMatrixf, )
  glMultMatrixf(m);
  OGLM_CHECK_ERR(glMultMatrixf, )
#line 45206 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultMatrixf_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultMatrixf_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 22179 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultMatrixf, )
  GLfloat *m = OGLM_GET_VARARGS(m,0,GLfloat,NV,16);
  glMultMatrixf((const GLfloat *)m);
  OGLM_CHECK_ERR(glMultMatrixf, free(m);)
  free(m);
#line 45226 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultMatrixx_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultMatrixx_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "m");
    {
	const GLfixed*	m = INT2PTR(const GLfixed *,SvIV(ST(0)))
;
#line 22190 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultMatrixx, )
  OGLM_AVAIL_CHECK(__glewMultMatrixx, glMultMatrixx)
  glMultMatrixx(m);
  OGLM_CHECK_ERR(glMultMatrixx, )
#line 45247 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultMatrixx_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultMatrixx_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 22199 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultMatrixx, )
  OGLM_AVAIL_CHECK(__glewMultMatrixx, glMultMatrixx)
  GLfixed* m = OGLM_GET_VARARGS(m,0,GLfixed,IV,16);
  glMultMatrixx((const GLfixed* )m);
  OGLM_CHECK_ERR(glMultMatrixx, free(m);)
  free(m);
#line 45268 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultTransposeMatrixd_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultTransposeMatrixd_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "m");
    {
	const GLdouble *	m = INT2PTR(const GLdouble *,SvIV(ST(0)))
;
#line 22213 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultTransposeMatrixd, )
  OGLM_AVAIL_CHECK(__glewMultTransposeMatrixd, glMultTransposeMatrixd)
  glMultTransposeMatrixd(m);
  OGLM_CHECK_ERR(glMultTransposeMatrixd, )
#line 45290 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultTransposeMatrixd_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultTransposeMatrixd_p)
{
    dVAR; dXSARGS;
    dXSI32;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 22224 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultTransposeMatrixd, )
  OGLM_AVAIL_CHECK(__glewMultTransposeMatrixd, glMultTransposeMatrixd)
  GLdouble * m = OGLM_GET_VARARGS(m,0,GLdouble,NV,16);
  glMultTransposeMatrixd((const GLdouble * )m);
  OGLM_CHECK_ERR(glMultTransposeMatrixd, free(m);)
  free(m);
#line 45312 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultTransposeMatrixf_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultTransposeMatrixf_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "m");
    {
	const GLfloat *	m = INT2PTR(const GLfloat *,SvIV(ST(0)))
;
#line 22238 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultTransposeMatrixf, )
  OGLM_AVAIL_CHECK(__glewMultTransposeMatrixf, glMultTransposeMatrixf)
  glMultTransposeMatrixf(m);
  OGLM_CHECK_ERR(glMultTransposeMatrixf, )
#line 45334 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultTransposeMatrixf_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultTransposeMatrixf_p)
{
    dVAR; dXSARGS;
    dXSI32;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 22249 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultTransposeMatrixf, )
  OGLM_AVAIL_CHECK(__glewMultTransposeMatrixf, glMultTransposeMatrixf)
  GLfloat * m = OGLM_GET_VARARGS(m,0,GLfloat,NV,16);
  glMultTransposeMatrixf((const GLfloat * )m);
  OGLM_CHECK_ERR(glMultTransposeMatrixf, free(m);)
  free(m);
#line 45356 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiDrawArrays_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiDrawArrays_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "mode, first, count, drawcount");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	const GLint *	first = INT2PTR(const GLint *,SvIV(ST(1)))
;
	const GLsizei *	count = INT2PTR(const GLsizei *,SvIV(ST(2)))
;
	GLsizei	drawcount = (int)SvIV(ST(3))
;
#line 22266 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiDrawArrays, )
  OGLM_AVAIL_CHECK(__glewMultiDrawArrays, glMultiDrawArrays)
  glMultiDrawArrays(mode, first, count, drawcount);
  OGLM_CHECK_ERR(glMultiDrawArrays, )
#line 45384 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiDrawArrays_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiDrawArrays_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "mode, firstSV, countSV");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	SV *	firstSV = ST(1)
;
	SV *	countSV = ST(2)
;
#line 22280 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiDrawArrays, )
  OGLM_AVAIL_CHECK(__glewMultiDrawArrays, glMultiDrawArrays)
  GLsizei drawcount = OGLM_LEN_ARRAY(drawcount, first);
  GLsizei *count = OGLM_GET_ARRAY(count, GLsizei, IV, drawcount);
  GLint *first = OGLM_GET_ARRAY(first, GLint, IV, drawcount);
  glMultiDrawArrays((GLenum )mode, (const GLint *)first, (const GLsizei *)count, (GLsizei )drawcount);
  OGLM_CHECK_ERR(glMultiDrawArrays, free(count);free(first);)
  free(count);free(first);
#line 45414 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiDrawArraysIndirect_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiDrawArraysIndirect_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "mode, indirect, drawcount, stride");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	const void *	indirect = INT2PTR(const void *,SvIV(ST(1)))
;
	GLsizei	drawcount = (int)SvIV(ST(2))
;
	GLsizei	stride = (int)SvIV(ST(3))
;
#line 22300 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiDrawArraysIndirect, )
  OGLM_AVAIL_CHECK(__glewMultiDrawArraysIndirect, glMultiDrawArraysIndirect)
  glMultiDrawArraysIndirect(mode, indirect, drawcount, stride);
  OGLM_CHECK_ERR(glMultiDrawArraysIndirect, )
#line 45442 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiDrawArraysIndirectBindlessCountNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiDrawArraysIndirectBindlessCountNV_c)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "mode, indirect, drawCount, maxDrawCount, stride, vertexBufferCount");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	const void *	indirect = INT2PTR(const void *,SvIV(ST(1)))
;
	GLintptr	drawCount = (unsigned int)SvUV(ST(2))
;
	GLsizei	maxDrawCount = (int)SvIV(ST(3))
;
	GLsizei	stride = (int)SvIV(ST(4))
;
	GLint	vertexBufferCount = (int)SvIV(ST(5))
;
#line 22315 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiDrawArraysIndirectBindlessCountNV, )
  OGLM_AVAIL_CHECK(__glewMultiDrawArraysIndirectBindlessCountNV, glMultiDrawArraysIndirectBindlessCountNV)
  glMultiDrawArraysIndirectBindlessCountNV(mode, indirect, drawCount, maxDrawCount, stride, vertexBufferCount);
  OGLM_CHECK_ERR(glMultiDrawArraysIndirectBindlessCountNV, )
#line 45473 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiDrawArraysIndirectBindlessNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiDrawArraysIndirectBindlessNV_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "mode, indirect, drawCount, stride, vertexBufferCount");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	const void *	indirect = INT2PTR(const void *,SvIV(ST(1)))
;
	GLsizei	drawCount = (int)SvIV(ST(2))
;
	GLsizei	stride = (int)SvIV(ST(3))
;
	GLint	vertexBufferCount = (int)SvIV(ST(4))
;
#line 22329 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiDrawArraysIndirectBindlessNV, )
  OGLM_AVAIL_CHECK(__glewMultiDrawArraysIndirectBindlessNV, glMultiDrawArraysIndirectBindlessNV)
  glMultiDrawArraysIndirectBindlessNV(mode, indirect, drawCount, stride, vertexBufferCount);
  OGLM_CHECK_ERR(glMultiDrawArraysIndirectBindlessNV, )
#line 45502 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiDrawArraysIndirectCount_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiDrawArraysIndirectCount_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "mode, indirect, drawcount, maxdrawcount, stride");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	const GLvoid *	indirect = INT2PTR(const GLvoid *,SvIV(ST(1)))
;
	GLintptr	drawcount = (unsigned int)SvUV(ST(2))
;
	GLsizei	maxdrawcount = (int)SvIV(ST(3))
;
	GLsizei	stride = (int)SvIV(ST(4))
;
#line 22345 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiDrawArraysIndirectCount, )
  OGLM_AVAIL_CHECK(__glewMultiDrawArraysIndirectCount, glMultiDrawArraysIndirectCount)
  glMultiDrawArraysIndirectCount(mode, indirect, drawcount, maxdrawcount, stride);
  OGLM_CHECK_ERR(glMultiDrawArraysIndirectCount, )
#line 45532 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiDrawElementArrayAPPLE_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiDrawElementArrayAPPLE_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "mode, first, count, primcount");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	const GLint*	first = INT2PTR(const GLint *,SvIV(ST(1)))
;
	const GLsizei *	count = INT2PTR(const GLsizei *,SvIV(ST(2)))
;
	GLsizei	primcount = (int)SvIV(ST(3))
;
#line 22358 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiDrawElementArrayAPPLE, )
  OGLM_AVAIL_CHECK(__glewMultiDrawElementArrayAPPLE, glMultiDrawElementArrayAPPLE)
  glMultiDrawElementArrayAPPLE(mode, first, count, primcount);
  OGLM_CHECK_ERR(glMultiDrawElementArrayAPPLE, )
#line 45559 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiDrawElementArrayAPPLE_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiDrawElementArrayAPPLE_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "mode, firstSV, countSV");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	SV *	firstSV = ST(1)
;
	SV *	countSV = ST(2)
;
#line 22370 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiDrawElementArrayAPPLE, )
  OGLM_AVAIL_CHECK(__glewMultiDrawElementArrayAPPLE, glMultiDrawElementArrayAPPLE)
  GLsizei primcount = OGLM_LEN_ARRAY(primcount, first);
  GLsizei *count = OGLM_GET_ARRAY(count, GLsizei, IV, primcount);
  GLint* first = OGLM_GET_ARRAY(first, GLint, IV, primcount);
  glMultiDrawElementArrayAPPLE((GLenum )mode, (const GLint* )first, (const GLsizei *)count, (GLsizei )primcount);
  OGLM_CHECK_ERR(glMultiDrawElementArrayAPPLE, free(count);free(first);)
  free(count);free(first);
#line 45588 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiDrawElements_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiDrawElements_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "mode, count, type, indices, drawcount");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	const GLsizei *	count = INT2PTR(const GLsizei *,SvIV(ST(1)))
;
	GLenum	type = (int)SvIV(ST(2))
;
	const void *const*	indices = INT2PTR(const void * const *,SvIV(ST(3)))
;
	GLsizei	drawcount = (int)SvIV(ST(4))
;
#line 22390 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiDrawElements, )
  OGLM_AVAIL_CHECK(__glewMultiDrawElements, glMultiDrawElements)
  glMultiDrawElements(mode, count, type, indices, drawcount);
  OGLM_CHECK_ERR(glMultiDrawElements, )
#line 45618 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiDrawElementsBaseVertex_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiDrawElementsBaseVertex_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 6)
       croak_xs_usage(cv,  "mode, count, type, indices, drawcount, basevertex");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	const GLsizei*	count = INT2PTR(const GLsizei *,SvIV(ST(1)))
;
	GLenum	type = (int)SvIV(ST(2))
;
	const void*const *	indices = INT2PTR(const void * const *,SvIV(ST(3)))
;
	GLsizei	drawcount = (int)SvIV(ST(4))
;
	const GLint *	basevertex = INT2PTR(const GLint *,SvIV(ST(5)))
;
#line 22407 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiDrawElementsBaseVertex, )
  OGLM_AVAIL_CHECK(__glewMultiDrawElementsBaseVertex, glMultiDrawElementsBaseVertex)
  glMultiDrawElementsBaseVertex(mode, count, type, indices, drawcount, basevertex);
  OGLM_CHECK_ERR(glMultiDrawElementsBaseVertex, )
#line 45650 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiDrawElementsIndirect_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiDrawElementsIndirect_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "mode, type, indirect, drawcount, stride");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	const void *	indirect = INT2PTR(const void *,SvIV(ST(2)))
;
	GLsizei	drawcount = (int)SvIV(ST(3))
;
	GLsizei	stride = (int)SvIV(ST(4))
;
#line 22424 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiDrawElementsIndirect, )
  OGLM_AVAIL_CHECK(__glewMultiDrawElementsIndirect, glMultiDrawElementsIndirect)
  glMultiDrawElementsIndirect(mode, type, indirect, drawcount, stride);
  OGLM_CHECK_ERR(glMultiDrawElementsIndirect, )
#line 45680 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiDrawElementsIndirectBindlessCountNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiDrawElementsIndirectBindlessCountNV_c)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "mode, type, indirect, drawCount, maxDrawCount, stride, vertexBufferCount");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	const void *	indirect = INT2PTR(const void *,SvIV(ST(2)))
;
	GLintptr	drawCount = (unsigned int)SvUV(ST(3))
;
	GLsizei	maxDrawCount = (int)SvIV(ST(4))
;
	GLsizei	stride = (int)SvIV(ST(5))
;
	GLint	vertexBufferCount = (int)SvIV(ST(6))
;
#line 22440 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiDrawElementsIndirectBindlessCountNV, )
  OGLM_AVAIL_CHECK(__glewMultiDrawElementsIndirectBindlessCountNV, glMultiDrawElementsIndirectBindlessCountNV)
  glMultiDrawElementsIndirectBindlessCountNV(mode, type, indirect, drawCount, maxDrawCount, stride, vertexBufferCount);
  OGLM_CHECK_ERR(glMultiDrawElementsIndirectBindlessCountNV, )
#line 45713 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiDrawElementsIndirectBindlessNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiDrawElementsIndirectBindlessNV_c)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "mode, type, indirect, drawCount, stride, vertexBufferCount");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	const void *	indirect = INT2PTR(const void *,SvIV(ST(2)))
;
	GLsizei	drawCount = (int)SvIV(ST(3))
;
	GLsizei	stride = (int)SvIV(ST(4))
;
	GLint	vertexBufferCount = (int)SvIV(ST(5))
;
#line 22455 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiDrawElementsIndirectBindlessNV, )
  OGLM_AVAIL_CHECK(__glewMultiDrawElementsIndirectBindlessNV, glMultiDrawElementsIndirectBindlessNV)
  glMultiDrawElementsIndirectBindlessNV(mode, type, indirect, drawCount, stride, vertexBufferCount);
  OGLM_CHECK_ERR(glMultiDrawElementsIndirectBindlessNV, )
#line 45744 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiDrawElementsIndirectCount_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiDrawElementsIndirectCount_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 6)
       croak_xs_usage(cv,  "mode, type, indirect, drawcount, maxdrawcount, stride");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	const GLvoid *	indirect = INT2PTR(const GLvoid *,SvIV(ST(2)))
;
	GLintptr	drawcount = (unsigned int)SvUV(ST(3))
;
	GLsizei	maxdrawcount = (int)SvIV(ST(4))
;
	GLsizei	stride = (int)SvIV(ST(5))
;
#line 22472 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiDrawElementsIndirectCount, )
  OGLM_AVAIL_CHECK(__glewMultiDrawElementsIndirectCount, glMultiDrawElementsIndirectCount)
  glMultiDrawElementsIndirectCount(mode, type, indirect, drawcount, maxdrawcount, stride);
  OGLM_CHECK_ERR(glMultiDrawElementsIndirectCount, )
#line 45776 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiDrawMeshTasksIndirectCountEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiDrawMeshTasksIndirectCountEXT)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "indirect, drawcount, maxdrawcount, stride");
    {
	GLintptr	indirect = (unsigned int)SvUV(ST(0))
;
	GLintptr	drawcount = (unsigned int)SvUV(ST(1))
;
	GLsizei	maxdrawcount = (int)SvIV(ST(2))
;
	GLsizei	stride = (int)SvIV(ST(3))
;
#line 22485 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiDrawMeshTasksIndirectCountEXT, )
  OGLM_AVAIL_CHECK(__glewMultiDrawMeshTasksIndirectCountEXT, glMultiDrawMeshTasksIndirectCountEXT)
  glMultiDrawMeshTasksIndirectCountEXT(indirect, drawcount, maxdrawcount, stride);
  OGLM_CHECK_ERR(glMultiDrawMeshTasksIndirectCountEXT, )
#line 45803 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiDrawMeshTasksIndirectCountNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiDrawMeshTasksIndirectCountNV)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "indirect, drawcount, maxdrawcount, stride");
    {
	GLintptr	indirect = (unsigned int)SvUV(ST(0))
;
	GLintptr	drawcount = (unsigned int)SvUV(ST(1))
;
	GLsizei	maxdrawcount = (int)SvIV(ST(2))
;
	GLsizei	stride = (int)SvIV(ST(3))
;
#line 22498 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiDrawMeshTasksIndirectCountNV, )
  OGLM_AVAIL_CHECK(__glewMultiDrawMeshTasksIndirectCountNV, glMultiDrawMeshTasksIndirectCountNV)
  glMultiDrawMeshTasksIndirectCountNV(indirect, drawcount, maxdrawcount, stride);
  OGLM_CHECK_ERR(glMultiDrawMeshTasksIndirectCountNV, )
#line 45830 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiDrawMeshTasksIndirectEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiDrawMeshTasksIndirectEXT)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "indirect, drawcount, stride");
    {
	GLintptr	indirect = (unsigned int)SvUV(ST(0))
;
	GLsizei	drawcount = (int)SvIV(ST(1))
;
	GLsizei	stride = (int)SvIV(ST(2))
;
#line 22510 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiDrawMeshTasksIndirectEXT, )
  OGLM_AVAIL_CHECK(__glewMultiDrawMeshTasksIndirectEXT, glMultiDrawMeshTasksIndirectEXT)
  glMultiDrawMeshTasksIndirectEXT(indirect, drawcount, stride);
  OGLM_CHECK_ERR(glMultiDrawMeshTasksIndirectEXT, )
#line 45855 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiDrawMeshTasksIndirectNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiDrawMeshTasksIndirectNV)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "indirect, drawcount, stride");
    {
	GLintptr	indirect = (unsigned int)SvUV(ST(0))
;
	GLsizei	drawcount = (int)SvIV(ST(1))
;
	GLsizei	stride = (int)SvIV(ST(2))
;
#line 22522 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiDrawMeshTasksIndirectNV, )
  OGLM_AVAIL_CHECK(__glewMultiDrawMeshTasksIndirectNV, glMultiDrawMeshTasksIndirectNV)
  glMultiDrawMeshTasksIndirectNV(indirect, drawcount, stride);
  OGLM_CHECK_ERR(glMultiDrawMeshTasksIndirectNV, )
#line 45880 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiDrawRangeElementArrayAPPLE_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiDrawRangeElementArrayAPPLE_c)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "mode, start, end, first, count, primcount");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	GLuint	start = (unsigned int)SvUV(ST(1))
;
	GLuint	end = (unsigned int)SvUV(ST(2))
;
	const GLint*	first = INT2PTR(const GLint *,SvIV(ST(3)))
;
	const GLsizei *	count = INT2PTR(const GLsizei *,SvIV(ST(4)))
;
	GLsizei	primcount = (int)SvIV(ST(5))
;
#line 22537 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiDrawRangeElementArrayAPPLE, )
  OGLM_AVAIL_CHECK(__glewMultiDrawRangeElementArrayAPPLE, glMultiDrawRangeElementArrayAPPLE)
  glMultiDrawRangeElementArrayAPPLE(mode, start, end, first, count, primcount);
  OGLM_CHECK_ERR(glMultiDrawRangeElementArrayAPPLE, )
#line 45911 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiDrawRangeElementArrayAPPLE_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiDrawRangeElementArrayAPPLE_p)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "mode, start, end, firstSV, countSV");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	GLuint	start = (unsigned int)SvUV(ST(1))
;
	GLuint	end = (unsigned int)SvUV(ST(2))
;
	SV *	firstSV = ST(3)
;
	SV *	countSV = ST(4)
;
#line 22551 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiDrawRangeElementArrayAPPLE, )
  OGLM_AVAIL_CHECK(__glewMultiDrawRangeElementArrayAPPLE, glMultiDrawRangeElementArrayAPPLE)
  GLsizei primcount = OGLM_LEN_ARRAY(primcount, first);
  GLsizei *count = OGLM_GET_ARRAY(count, GLsizei, IV, primcount);
  GLint* first = OGLM_GET_ARRAY(first, GLint, IV, primcount);
  glMultiDrawRangeElementArrayAPPLE((GLenum )mode, (GLuint )start, (GLuint )end, (const GLint* )first, (const GLsizei *)count, (GLsizei )primcount);
  OGLM_CHECK_ERR(glMultiDrawRangeElementArrayAPPLE, free(count);free(first);)
  free(count);free(first);
#line 45944 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiModeDrawArraysIBM_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiModeDrawArraysIBM_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "mode, first, count, primcount, modestride");
    {
	const GLenum*	mode = INT2PTR(const GLenum *,SvIV(ST(0)))
;
	const GLint *	first = INT2PTR(const GLint *,SvIV(ST(1)))
;
	const GLsizei *	count = INT2PTR(const GLsizei *,SvIV(ST(2)))
;
	GLsizei	primcount = (int)SvIV(ST(3))
;
	GLint	modestride = (int)SvIV(ST(4))
;
#line 22569 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiModeDrawArraysIBM, )
  OGLM_AVAIL_CHECK(__glewMultiModeDrawArraysIBM, glMultiModeDrawArraysIBM)
  glMultiModeDrawArraysIBM(mode, first, count, primcount, modestride);
  OGLM_CHECK_ERR(glMultiModeDrawArraysIBM, )
#line 45973 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiModeDrawElementsIBM_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiModeDrawElementsIBM_c)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "mode, count, type, indices, primcount, modestride");
    {
	const GLenum*	mode = INT2PTR(const GLenum *,SvIV(ST(0)))
;
	const GLsizei *	count = INT2PTR(const GLsizei *,SvIV(ST(1)))
;
	GLenum	type = (int)SvIV(ST(2))
;
	const void *const *	indices = INT2PTR(const void * const *,SvIV(ST(3)))
;
	GLsizei	primcount = (int)SvIV(ST(4))
;
	GLint	modestride = (int)SvIV(ST(5))
;
#line 22584 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiModeDrawElementsIBM, )
  OGLM_AVAIL_CHECK(__glewMultiModeDrawElementsIBM, glMultiModeDrawElementsIBM)
  glMultiModeDrawElementsIBM(mode, count, type, indices, primcount, modestride);
  OGLM_CHECK_ERR(glMultiModeDrawElementsIBM, )
#line 46004 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexBufferEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexBufferEXT)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texunit, target, internalformat, buffer");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	internalformat = (int)SvIV(ST(2))
;
	GLuint	buffer = (unsigned int)SvUV(ST(3))
;
#line 22597 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexBufferEXT, )
  OGLM_AVAIL_CHECK(__glewMultiTexBufferEXT, glMultiTexBufferEXT)
  glMultiTexBufferEXT(texunit, target, internalformat, buffer);
  OGLM_CHECK_ERR(glMultiTexBufferEXT, )
#line 46031 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord1d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord1d)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, s");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLdouble	s = (double)SvNV(ST(1))
;
#line 22610 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord1d, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord1d, glMultiTexCoord1d)
  glMultiTexCoord1d(target, s);
  OGLM_CHECK_ERR(glMultiTexCoord1d, )
#line 46055 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord1dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord1dv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, v");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	const GLdouble *	v = INT2PTR(const GLdouble *,SvIV(ST(1)))
;
#line 22623 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord1dv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord1dv, glMultiTexCoord1dv)
  glMultiTexCoord1dv(target, v);
  OGLM_CHECK_ERR(glMultiTexCoord1dv, )
#line 46079 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord1dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord1dv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "target, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
#line 22635 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord1dv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord1dv, glMultiTexCoord1dv)
  GLdouble *v = OGLM_GET_VARARGS(v,1,GLdouble,NV,1);
  glMultiTexCoord1dv((GLenum )target, (const GLdouble *)v);
  OGLM_CHECK_ERR(glMultiTexCoord1dv, free(v);)
  free(v);
#line 46103 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord1f); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord1f)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, s");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLfloat	s = (float)SvNV(ST(1))
;
#line 22650 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord1f, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord1f, glMultiTexCoord1f)
  glMultiTexCoord1f(target, s);
  OGLM_CHECK_ERR(glMultiTexCoord1f, )
#line 46127 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord1fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord1fv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, v");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 22663 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord1fv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord1fv, glMultiTexCoord1fv)
  glMultiTexCoord1fv(target, v);
  OGLM_CHECK_ERR(glMultiTexCoord1fv, )
#line 46151 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord1fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord1fv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "target, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
#line 22675 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord1fv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord1fv, glMultiTexCoord1fv)
  GLfloat *v = OGLM_GET_VARARGS(v,1,GLfloat,NV,1);
  glMultiTexCoord1fv((GLenum )target, (const GLfloat *)v);
  OGLM_CHECK_ERR(glMultiTexCoord1fv, free(v);)
  free(v);
#line 46175 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord1hNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord1hNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, s");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLhalf	s = (float)SvNV(ST(1))
;
#line 22688 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord1hNV, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord1hNV, glMultiTexCoord1hNV)
  glMultiTexCoord1hNV(target, s);
  OGLM_CHECK_ERR(glMultiTexCoord1hNV, )
#line 46198 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord1hvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord1hvNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, v");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	const GLhalf*	v = INT2PTR(const GLhalf *,SvIV(ST(1)))
;
#line 22699 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord1hvNV, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord1hvNV, glMultiTexCoord1hvNV)
  glMultiTexCoord1hvNV(target, v);
  OGLM_CHECK_ERR(glMultiTexCoord1hvNV, )
#line 46221 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord1hvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord1hvNV_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "target, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
#line 22709 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord1hvNV, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord1hvNV, glMultiTexCoord1hvNV)
  GLhalf* v = OGLM_GET_VARARGS(v,1,GLhalf,NV,1);
  glMultiTexCoord1hvNV((GLenum )target, (const GLhalf* )v);
  OGLM_CHECK_ERR(glMultiTexCoord1hvNV, free(v);)
  free(v);
#line 46244 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord1i); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord1i)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, s");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	s = (int)SvIV(ST(1))
;
#line 22724 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord1i, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord1i, glMultiTexCoord1i)
  glMultiTexCoord1i(target, s);
  OGLM_CHECK_ERR(glMultiTexCoord1i, )
#line 46268 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord1iv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord1iv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, v");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	const GLint *	v = INT2PTR(const GLint *,SvIV(ST(1)))
;
#line 22737 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord1iv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord1iv, glMultiTexCoord1iv)
  glMultiTexCoord1iv(target, v);
  OGLM_CHECK_ERR(glMultiTexCoord1iv, )
#line 46292 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord1iv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord1iv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "target, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
#line 22749 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord1iv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord1iv, glMultiTexCoord1iv)
  GLint *v = OGLM_GET_VARARGS(v,1,GLint,IV,1);
  glMultiTexCoord1iv((GLenum )target, (const GLint *)v);
  OGLM_CHECK_ERR(glMultiTexCoord1iv, free(v);)
  free(v);
#line 46316 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord1s); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord1s)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, s");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLshort	s = (short)SvIV(ST(1))
;
#line 22764 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord1s, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord1s, glMultiTexCoord1s)
  glMultiTexCoord1s(target, s);
  OGLM_CHECK_ERR(glMultiTexCoord1s, )
#line 46340 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord1sv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord1sv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, v");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	const GLshort *	v = INT2PTR(const GLshort *,SvIV(ST(1)))
;
#line 22777 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord1sv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord1sv, glMultiTexCoord1sv)
  glMultiTexCoord1sv(target, v);
  OGLM_CHECK_ERR(glMultiTexCoord1sv, )
#line 46364 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord1sv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord1sv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "target, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
#line 22789 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord1sv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord1sv, glMultiTexCoord1sv)
  GLshort *v = OGLM_GET_VARARGS(v,1,GLshort,IV,1);
  glMultiTexCoord1sv((GLenum )target, (const GLshort *)v);
  OGLM_CHECK_ERR(glMultiTexCoord1sv, free(v);)
  free(v);
#line 46388 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord2d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord2d)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "target, s, t");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLdouble	s = (double)SvNV(ST(1))
;
	GLdouble	t = (double)SvNV(ST(2))
;
#line 22805 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord2d, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord2d, glMultiTexCoord2d)
  glMultiTexCoord2d(target, s, t);
  OGLM_CHECK_ERR(glMultiTexCoord2d, )
#line 46414 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord2dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord2dv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, v");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	const GLdouble *	v = INT2PTR(const GLdouble *,SvIV(ST(1)))
;
#line 22818 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord2dv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord2dv, glMultiTexCoord2dv)
  glMultiTexCoord2dv(target, v);
  OGLM_CHECK_ERR(glMultiTexCoord2dv, )
#line 46438 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord2dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord2dv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "target, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
#line 22830 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord2dv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord2dv, glMultiTexCoord2dv)
  GLdouble *v = OGLM_GET_VARARGS(v,1,GLdouble,NV,2);
  glMultiTexCoord2dv((GLenum )target, (const GLdouble *)v);
  OGLM_CHECK_ERR(glMultiTexCoord2dv, free(v);)
  free(v);
#line 46462 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord2f); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord2f)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "target, s, t");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLfloat	s = (float)SvNV(ST(1))
;
	GLfloat	t = (float)SvNV(ST(2))
;
#line 22846 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord2f, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord2f, glMultiTexCoord2f)
  glMultiTexCoord2f(target, s, t);
  OGLM_CHECK_ERR(glMultiTexCoord2f, )
#line 46488 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord2fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord2fv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, v");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 22859 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord2fv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord2fv, glMultiTexCoord2fv)
  glMultiTexCoord2fv(target, v);
  OGLM_CHECK_ERR(glMultiTexCoord2fv, )
#line 46512 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord2fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord2fv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "target, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
#line 22871 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord2fv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord2fv, glMultiTexCoord2fv)
  GLfloat *v = OGLM_GET_VARARGS(v,1,GLfloat,NV,2);
  glMultiTexCoord2fv((GLenum )target, (const GLfloat *)v);
  OGLM_CHECK_ERR(glMultiTexCoord2fv, free(v);)
  free(v);
#line 46536 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord2hNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord2hNV)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, s, t");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLhalf	s = (float)SvNV(ST(1))
;
	GLhalf	t = (float)SvNV(ST(2))
;
#line 22885 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord2hNV, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord2hNV, glMultiTexCoord2hNV)
  glMultiTexCoord2hNV(target, s, t);
  OGLM_CHECK_ERR(glMultiTexCoord2hNV, )
#line 46561 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord2hvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord2hvNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, v");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	const GLhalf*	v = INT2PTR(const GLhalf *,SvIV(ST(1)))
;
#line 22896 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord2hvNV, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord2hvNV, glMultiTexCoord2hvNV)
  glMultiTexCoord2hvNV(target, v);
  OGLM_CHECK_ERR(glMultiTexCoord2hvNV, )
#line 46584 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord2hvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord2hvNV_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "target, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
#line 22906 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord2hvNV, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord2hvNV, glMultiTexCoord2hvNV)
  GLhalf* v = OGLM_GET_VARARGS(v,1,GLhalf,NV,2);
  glMultiTexCoord2hvNV((GLenum )target, (const GLhalf* )v);
  OGLM_CHECK_ERR(glMultiTexCoord2hvNV, free(v);)
  free(v);
#line 46607 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord2i); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord2i)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "target, s, t");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	s = (int)SvIV(ST(1))
;
	GLint	t = (int)SvIV(ST(2))
;
#line 22922 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord2i, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord2i, glMultiTexCoord2i)
  glMultiTexCoord2i(target, s, t);
  OGLM_CHECK_ERR(glMultiTexCoord2i, )
#line 46633 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord2iv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord2iv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, v");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	const GLint *	v = INT2PTR(const GLint *,SvIV(ST(1)))
;
#line 22935 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord2iv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord2iv, glMultiTexCoord2iv)
  glMultiTexCoord2iv(target, v);
  OGLM_CHECK_ERR(glMultiTexCoord2iv, )
#line 46657 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord2iv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord2iv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "target, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
#line 22947 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord2iv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord2iv, glMultiTexCoord2iv)
  GLint *v = OGLM_GET_VARARGS(v,1,GLint,IV,2);
  glMultiTexCoord2iv((GLenum )target, (const GLint *)v);
  OGLM_CHECK_ERR(glMultiTexCoord2iv, free(v);)
  free(v);
#line 46681 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord2s); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord2s)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "target, s, t");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLshort	s = (short)SvIV(ST(1))
;
	GLshort	t = (short)SvIV(ST(2))
;
#line 22963 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord2s, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord2s, glMultiTexCoord2s)
  glMultiTexCoord2s(target, s, t);
  OGLM_CHECK_ERR(glMultiTexCoord2s, )
#line 46707 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord2sv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord2sv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, v");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	const GLshort *	v = INT2PTR(const GLshort *,SvIV(ST(1)))
;
#line 22976 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord2sv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord2sv, glMultiTexCoord2sv)
  glMultiTexCoord2sv(target, v);
  OGLM_CHECK_ERR(glMultiTexCoord2sv, )
#line 46731 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord2sv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord2sv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "target, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
#line 22988 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord2sv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord2sv, glMultiTexCoord2sv)
  GLshort *v = OGLM_GET_VARARGS(v,1,GLshort,IV,2);
  glMultiTexCoord2sv((GLenum )target, (const GLshort *)v);
  OGLM_CHECK_ERR(glMultiTexCoord2sv, free(v);)
  free(v);
#line 46755 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord3d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord3d)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "target, s, t, r");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLdouble	s = (double)SvNV(ST(1))
;
	GLdouble	t = (double)SvNV(ST(2))
;
	GLdouble	r = (double)SvNV(ST(3))
;
#line 23005 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord3d, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord3d, glMultiTexCoord3d)
  glMultiTexCoord3d(target, s, t, r);
  OGLM_CHECK_ERR(glMultiTexCoord3d, )
#line 46783 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord3dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord3dv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, v");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	const GLdouble *	v = INT2PTR(const GLdouble *,SvIV(ST(1)))
;
#line 23018 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord3dv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord3dv, glMultiTexCoord3dv)
  glMultiTexCoord3dv(target, v);
  OGLM_CHECK_ERR(glMultiTexCoord3dv, )
#line 46807 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord3dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord3dv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "target, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
#line 23030 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord3dv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord3dv, glMultiTexCoord3dv)
  GLdouble *v = OGLM_GET_VARARGS(v,1,GLdouble,NV,3);
  glMultiTexCoord3dv((GLenum )target, (const GLdouble *)v);
  OGLM_CHECK_ERR(glMultiTexCoord3dv, free(v);)
  free(v);
#line 46831 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord3f); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord3f)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "target, s, t, r");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLfloat	s = (float)SvNV(ST(1))
;
	GLfloat	t = (float)SvNV(ST(2))
;
	GLfloat	r = (float)SvNV(ST(3))
;
#line 23047 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord3f, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord3f, glMultiTexCoord3f)
  glMultiTexCoord3f(target, s, t, r);
  OGLM_CHECK_ERR(glMultiTexCoord3f, )
#line 46859 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord3fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord3fv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, v");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 23060 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord3fv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord3fv, glMultiTexCoord3fv)
  glMultiTexCoord3fv(target, v);
  OGLM_CHECK_ERR(glMultiTexCoord3fv, )
#line 46883 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord3fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord3fv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "target, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
#line 23072 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord3fv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord3fv, glMultiTexCoord3fv)
  GLfloat *v = OGLM_GET_VARARGS(v,1,GLfloat,NV,3);
  glMultiTexCoord3fv((GLenum )target, (const GLfloat *)v);
  OGLM_CHECK_ERR(glMultiTexCoord3fv, free(v);)
  free(v);
#line 46907 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord3hNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord3hNV)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, s, t, r");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLhalf	s = (float)SvNV(ST(1))
;
	GLhalf	t = (float)SvNV(ST(2))
;
	GLhalf	r = (float)SvNV(ST(3))
;
#line 23087 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord3hNV, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord3hNV, glMultiTexCoord3hNV)
  glMultiTexCoord3hNV(target, s, t, r);
  OGLM_CHECK_ERR(glMultiTexCoord3hNV, )
#line 46934 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord3hvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord3hvNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, v");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	const GLhalf*	v = INT2PTR(const GLhalf *,SvIV(ST(1)))
;
#line 23098 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord3hvNV, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord3hvNV, glMultiTexCoord3hvNV)
  glMultiTexCoord3hvNV(target, v);
  OGLM_CHECK_ERR(glMultiTexCoord3hvNV, )
#line 46957 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord3hvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord3hvNV_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "target, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
#line 23108 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord3hvNV, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord3hvNV, glMultiTexCoord3hvNV)
  GLhalf* v = OGLM_GET_VARARGS(v,1,GLhalf,NV,3);
  glMultiTexCoord3hvNV((GLenum )target, (const GLhalf* )v);
  OGLM_CHECK_ERR(glMultiTexCoord3hvNV, free(v);)
  free(v);
#line 46980 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord3i); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord3i)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "target, s, t, r");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	s = (int)SvIV(ST(1))
;
	GLint	t = (int)SvIV(ST(2))
;
	GLint	r = (int)SvIV(ST(3))
;
#line 23125 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord3i, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord3i, glMultiTexCoord3i)
  glMultiTexCoord3i(target, s, t, r);
  OGLM_CHECK_ERR(glMultiTexCoord3i, )
#line 47008 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord3iv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord3iv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, v");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	const GLint *	v = INT2PTR(const GLint *,SvIV(ST(1)))
;
#line 23138 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord3iv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord3iv, glMultiTexCoord3iv)
  glMultiTexCoord3iv(target, v);
  OGLM_CHECK_ERR(glMultiTexCoord3iv, )
#line 47032 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord3iv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord3iv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "target, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
#line 23150 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord3iv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord3iv, glMultiTexCoord3iv)
  GLint *v = OGLM_GET_VARARGS(v,1,GLint,IV,3);
  glMultiTexCoord3iv((GLenum )target, (const GLint *)v);
  OGLM_CHECK_ERR(glMultiTexCoord3iv, free(v);)
  free(v);
#line 47056 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord3s); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord3s)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "target, s, t, r");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLshort	s = (short)SvIV(ST(1))
;
	GLshort	t = (short)SvIV(ST(2))
;
	GLshort	r = (short)SvIV(ST(3))
;
#line 23167 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord3s, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord3s, glMultiTexCoord3s)
  glMultiTexCoord3s(target, s, t, r);
  OGLM_CHECK_ERR(glMultiTexCoord3s, )
#line 47084 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord3sv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord3sv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, v");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	const GLshort *	v = INT2PTR(const GLshort *,SvIV(ST(1)))
;
#line 23180 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord3sv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord3sv, glMultiTexCoord3sv)
  glMultiTexCoord3sv(target, v);
  OGLM_CHECK_ERR(glMultiTexCoord3sv, )
#line 47108 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord3sv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord3sv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "target, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
#line 23192 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord3sv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord3sv, glMultiTexCoord3sv)
  GLshort *v = OGLM_GET_VARARGS(v,1,GLshort,IV,3);
  glMultiTexCoord3sv((GLenum )target, (const GLshort *)v);
  OGLM_CHECK_ERR(glMultiTexCoord3sv, free(v);)
  free(v);
#line 47132 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord4d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord4d)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "target, s, t, r, q");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLdouble	s = (double)SvNV(ST(1))
;
	GLdouble	t = (double)SvNV(ST(2))
;
	GLdouble	r = (double)SvNV(ST(3))
;
	GLdouble	q = (double)SvNV(ST(4))
;
#line 23210 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord4d, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord4d, glMultiTexCoord4d)
  glMultiTexCoord4d(target, s, t, r, q);
  OGLM_CHECK_ERR(glMultiTexCoord4d, )
#line 47162 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord4dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord4dv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, v");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	const GLdouble *	v = INT2PTR(const GLdouble *,SvIV(ST(1)))
;
#line 23223 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord4dv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord4dv, glMultiTexCoord4dv)
  glMultiTexCoord4dv(target, v);
  OGLM_CHECK_ERR(glMultiTexCoord4dv, )
#line 47186 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord4dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord4dv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "target, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
#line 23235 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord4dv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord4dv, glMultiTexCoord4dv)
  GLdouble *v = OGLM_GET_VARARGS(v,1,GLdouble,NV,4);
  glMultiTexCoord4dv((GLenum )target, (const GLdouble *)v);
  OGLM_CHECK_ERR(glMultiTexCoord4dv, free(v);)
  free(v);
#line 47210 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord4f); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord4f)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "target, s, t, r, q");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLfloat	s = (float)SvNV(ST(1))
;
	GLfloat	t = (float)SvNV(ST(2))
;
	GLfloat	r = (float)SvNV(ST(3))
;
	GLfloat	q = (float)SvNV(ST(4))
;
#line 23253 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord4f, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord4f, glMultiTexCoord4f)
  glMultiTexCoord4f(target, s, t, r, q);
  OGLM_CHECK_ERR(glMultiTexCoord4f, )
#line 47240 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord4fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord4fv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, v");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 23266 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord4fv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord4fv, glMultiTexCoord4fv)
  glMultiTexCoord4fv(target, v);
  OGLM_CHECK_ERR(glMultiTexCoord4fv, )
#line 47264 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord4fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord4fv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "target, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
#line 23278 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord4fv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord4fv, glMultiTexCoord4fv)
  GLfloat *v = OGLM_GET_VARARGS(v,1,GLfloat,NV,4);
  glMultiTexCoord4fv((GLenum )target, (const GLfloat *)v);
  OGLM_CHECK_ERR(glMultiTexCoord4fv, free(v);)
  free(v);
#line 47288 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord4hNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord4hNV)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "target, s, t, r, q");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLhalf	s = (float)SvNV(ST(1))
;
	GLhalf	t = (float)SvNV(ST(2))
;
	GLhalf	r = (float)SvNV(ST(3))
;
	GLhalf	q = (float)SvNV(ST(4))
;
#line 23294 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord4hNV, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord4hNV, glMultiTexCoord4hNV)
  glMultiTexCoord4hNV(target, s, t, r, q);
  OGLM_CHECK_ERR(glMultiTexCoord4hNV, )
#line 47317 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord4hvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord4hvNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, v");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	const GLhalf*	v = INT2PTR(const GLhalf *,SvIV(ST(1)))
;
#line 23305 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord4hvNV, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord4hvNV, glMultiTexCoord4hvNV)
  glMultiTexCoord4hvNV(target, v);
  OGLM_CHECK_ERR(glMultiTexCoord4hvNV, )
#line 47340 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord4hvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord4hvNV_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "target, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
#line 23315 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord4hvNV, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord4hvNV, glMultiTexCoord4hvNV)
  GLhalf* v = OGLM_GET_VARARGS(v,1,GLhalf,NV,4);
  glMultiTexCoord4hvNV((GLenum )target, (const GLhalf* )v);
  OGLM_CHECK_ERR(glMultiTexCoord4hvNV, free(v);)
  free(v);
#line 47363 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord4i); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord4i)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "target, s, t, r, q");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	s = (int)SvIV(ST(1))
;
	GLint	t = (int)SvIV(ST(2))
;
	GLint	r = (int)SvIV(ST(3))
;
	GLint	q = (int)SvIV(ST(4))
;
#line 23333 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord4i, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord4i, glMultiTexCoord4i)
  glMultiTexCoord4i(target, s, t, r, q);
  OGLM_CHECK_ERR(glMultiTexCoord4i, )
#line 47393 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord4iv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord4iv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, v");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	const GLint *	v = INT2PTR(const GLint *,SvIV(ST(1)))
;
#line 23346 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord4iv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord4iv, glMultiTexCoord4iv)
  glMultiTexCoord4iv(target, v);
  OGLM_CHECK_ERR(glMultiTexCoord4iv, )
#line 47417 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord4iv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord4iv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "target, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
#line 23358 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord4iv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord4iv, glMultiTexCoord4iv)
  GLint *v = OGLM_GET_VARARGS(v,1,GLint,IV,4);
  glMultiTexCoord4iv((GLenum )target, (const GLint *)v);
  OGLM_CHECK_ERR(glMultiTexCoord4iv, free(v);)
  free(v);
#line 47441 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord4s); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord4s)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "target, s, t, r, q");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLshort	s = (short)SvIV(ST(1))
;
	GLshort	t = (short)SvIV(ST(2))
;
	GLshort	r = (short)SvIV(ST(3))
;
	GLshort	q = (short)SvIV(ST(4))
;
#line 23376 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord4s, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord4s, glMultiTexCoord4s)
  glMultiTexCoord4s(target, s, t, r, q);
  OGLM_CHECK_ERR(glMultiTexCoord4s, )
#line 47471 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord4sv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord4sv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "target, v");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	const GLshort *	v = INT2PTR(const GLshort *,SvIV(ST(1)))
;
#line 23389 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord4sv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord4sv, glMultiTexCoord4sv)
  glMultiTexCoord4sv(target, v);
  OGLM_CHECK_ERR(glMultiTexCoord4sv, )
#line 47495 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord4sv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord4sv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "target, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
#line 23401 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord4sv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord4sv, glMultiTexCoord4sv)
  GLshort *v = OGLM_GET_VARARGS(v,1,GLshort,IV,4);
  glMultiTexCoord4sv((GLenum )target, (const GLshort *)v);
  OGLM_CHECK_ERR(glMultiTexCoord4sv, free(v);)
  free(v);
#line 47519 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord4x); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoord4x)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "texture, s, t, r, q");
    {
	GLenum	texture = (int)SvIV(ST(0))
;
	GLfixed	s = (int)SvIV(ST(1))
;
	GLfixed	t = (int)SvIV(ST(2))
;
	GLfixed	r = (int)SvIV(ST(3))
;
	GLfixed	q = (int)SvIV(ST(4))
;
#line 23417 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoord4x, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoord4x, glMultiTexCoord4x)
  glMultiTexCoord4x(texture, s, t, r, q);
  OGLM_CHECK_ERR(glMultiTexCoord4x, )
#line 47548 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoordP1ui); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoordP1ui)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texture, type, coords");
    {
	GLenum	texture = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLuint	coords = (unsigned int)SvUV(ST(2))
;
#line 23429 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoordP1ui, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoordP1ui, glMultiTexCoordP1ui)
  glMultiTexCoordP1ui(texture, type, coords);
  OGLM_CHECK_ERR(glMultiTexCoordP1ui, )
#line 47573 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoordP1uiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoordP1uiv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texture, type, coords");
    {
	GLenum	texture = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	const GLuint*	coords = INT2PTR(const GLuint *,SvIV(ST(2)))
;
#line 23441 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoordP1uiv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoordP1uiv, glMultiTexCoordP1uiv)
  glMultiTexCoordP1uiv(texture, type, coords);
  OGLM_CHECK_ERR(glMultiTexCoordP1uiv, )
#line 47598 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoordP1uiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoordP1uiv_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "texture, type, ...");
    {
	GLenum	texture = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
#line 23452 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoordP1uiv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoordP1uiv, glMultiTexCoordP1uiv)
  GLuint* coords = OGLM_GET_VARARGS(coords,2,GLuint,UV,1);
  glMultiTexCoordP1uiv((GLenum )texture, (GLenum )type, (const GLuint* )coords);
  OGLM_CHECK_ERR(glMultiTexCoordP1uiv, free(coords);)
  free(coords);
#line 47623 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoordP2ui); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoordP2ui)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texture, type, coords");
    {
	GLenum	texture = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLuint	coords = (unsigned int)SvUV(ST(2))
;
#line 23466 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoordP2ui, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoordP2ui, glMultiTexCoordP2ui)
  glMultiTexCoordP2ui(texture, type, coords);
  OGLM_CHECK_ERR(glMultiTexCoordP2ui, )
#line 47648 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoordP2uiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoordP2uiv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texture, type, coords");
    {
	GLenum	texture = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	const GLuint*	coords = INT2PTR(const GLuint *,SvIV(ST(2)))
;
#line 23478 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoordP2uiv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoordP2uiv, glMultiTexCoordP2uiv)
  glMultiTexCoordP2uiv(texture, type, coords);
  OGLM_CHECK_ERR(glMultiTexCoordP2uiv, )
#line 47673 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoordP2uiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoordP2uiv_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "texture, type, ...");
    {
	GLenum	texture = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
#line 23489 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoordP2uiv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoordP2uiv, glMultiTexCoordP2uiv)
  GLuint* coords = OGLM_GET_VARARGS(coords,2,GLuint,UV,1);
  glMultiTexCoordP2uiv((GLenum )texture, (GLenum )type, (const GLuint* )coords);
  OGLM_CHECK_ERR(glMultiTexCoordP2uiv, free(coords);)
  free(coords);
#line 47698 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoordP3ui); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoordP3ui)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texture, type, coords");
    {
	GLenum	texture = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLuint	coords = (unsigned int)SvUV(ST(2))
;
#line 23503 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoordP3ui, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoordP3ui, glMultiTexCoordP3ui)
  glMultiTexCoordP3ui(texture, type, coords);
  OGLM_CHECK_ERR(glMultiTexCoordP3ui, )
#line 47723 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoordP3uiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoordP3uiv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texture, type, coords");
    {
	GLenum	texture = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	const GLuint*	coords = INT2PTR(const GLuint *,SvIV(ST(2)))
;
#line 23515 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoordP3uiv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoordP3uiv, glMultiTexCoordP3uiv)
  glMultiTexCoordP3uiv(texture, type, coords);
  OGLM_CHECK_ERR(glMultiTexCoordP3uiv, )
#line 47748 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoordP3uiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoordP3uiv_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "texture, type, ...");
    {
	GLenum	texture = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
#line 23526 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoordP3uiv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoordP3uiv, glMultiTexCoordP3uiv)
  GLuint* coords = OGLM_GET_VARARGS(coords,2,GLuint,UV,1);
  glMultiTexCoordP3uiv((GLenum )texture, (GLenum )type, (const GLuint* )coords);
  OGLM_CHECK_ERR(glMultiTexCoordP3uiv, free(coords);)
  free(coords);
#line 47773 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoordP4ui); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoordP4ui)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texture, type, coords");
    {
	GLenum	texture = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLuint	coords = (unsigned int)SvUV(ST(2))
;
#line 23540 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoordP4ui, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoordP4ui, glMultiTexCoordP4ui)
  glMultiTexCoordP4ui(texture, type, coords);
  OGLM_CHECK_ERR(glMultiTexCoordP4ui, )
#line 47798 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoordP4uiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoordP4uiv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texture, type, coords");
    {
	GLenum	texture = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	const GLuint*	coords = INT2PTR(const GLuint *,SvIV(ST(2)))
;
#line 23552 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoordP4uiv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoordP4uiv, glMultiTexCoordP4uiv)
  glMultiTexCoordP4uiv(texture, type, coords);
  OGLM_CHECK_ERR(glMultiTexCoordP4uiv, )
#line 47823 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoordP4uiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoordP4uiv_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "texture, type, ...");
    {
	GLenum	texture = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
#line 23563 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoordP4uiv, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoordP4uiv, glMultiTexCoordP4uiv)
  GLuint* coords = OGLM_GET_VARARGS(coords,2,GLuint,UV,1);
  glMultiTexCoordP4uiv((GLenum )texture, (GLenum )type, (const GLuint* )coords);
  OGLM_CHECK_ERR(glMultiTexCoordP4uiv, free(coords);)
  free(coords);
#line 47848 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoordPointerEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexCoordPointerEXT_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "texunit, size, type, stride, pointer");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLint	size = (int)SvIV(ST(1))
;
	GLenum	type = (int)SvIV(ST(2))
;
	GLsizei	stride = (int)SvIV(ST(3))
;
	const void *	pointer = INT2PTR(const void *,SvIV(ST(4)))
;
#line 23579 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexCoordPointerEXT, )
  OGLM_AVAIL_CHECK(__glewMultiTexCoordPointerEXT, glMultiTexCoordPointerEXT)
  glMultiTexCoordPointerEXT(texunit, size, type, stride, pointer);
  OGLM_CHECK_ERR(glMultiTexCoordPointerEXT, )
#line 47877 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexEnvfEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexEnvfEXT)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texunit, target, pname, param");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLfloat	param = (float)SvNV(ST(3))
;
#line 23592 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexEnvfEXT, )
  OGLM_AVAIL_CHECK(__glewMultiTexEnvfEXT, glMultiTexEnvfEXT)
  glMultiTexEnvfEXT(texunit, target, pname, param);
  OGLM_CHECK_ERR(glMultiTexEnvfEXT, )
#line 47904 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexEnvfvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexEnvfvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texunit, target, pname, params");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	const GLfloat*	params = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 23605 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexEnvfvEXT, )
  OGLM_AVAIL_CHECK(__glewMultiTexEnvfvEXT, glMultiTexEnvfvEXT)
  glMultiTexEnvfvEXT(texunit, target, pname, params);
  OGLM_CHECK_ERR(glMultiTexEnvfvEXT, )
#line 47931 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexEnvfvEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexEnvfvEXT_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "texunit, target, pname, ...");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
#line 23617 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexEnvfvEXT, )
  OGLM_AVAIL_CHECK(__glewMultiTexEnvfvEXT, glMultiTexEnvfvEXT)
  OGLM_SIZE_ENUM(TextureEnvParameter,pname,1)
  GLfloat* params = OGLM_GET_VARARGS(params,3,GLfloat,NV,pname_count);
  glMultiTexEnvfvEXT((GLenum )texunit, (GLenum )target, (GLenum )pname, (const GLfloat* )params);
  OGLM_CHECK_ERR(glMultiTexEnvfvEXT, free(params);)
  free(params);
#line 47959 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexEnviEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexEnviEXT)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texunit, target, pname, param");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLint	param = (int)SvIV(ST(3))
;
#line 23633 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexEnviEXT, )
  OGLM_AVAIL_CHECK(__glewMultiTexEnviEXT, glMultiTexEnviEXT)
  glMultiTexEnviEXT(texunit, target, pname, param);
  OGLM_CHECK_ERR(glMultiTexEnviEXT, )
#line 47986 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexEnvivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexEnvivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texunit, target, pname, params");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	const GLint*	params = INT2PTR(const GLint *,SvIV(ST(3)))
;
#line 23646 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexEnvivEXT, )
  OGLM_AVAIL_CHECK(__glewMultiTexEnvivEXT, glMultiTexEnvivEXT)
  glMultiTexEnvivEXT(texunit, target, pname, params);
  OGLM_CHECK_ERR(glMultiTexEnvivEXT, )
#line 48013 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexEnvivEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexEnvivEXT_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "texunit, target, pname, ...");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
#line 23658 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexEnvivEXT, )
  OGLM_AVAIL_CHECK(__glewMultiTexEnvivEXT, glMultiTexEnvivEXT)
  OGLM_SIZE_ENUM(TextureEnvParameter,pname,1)
  GLint* params = OGLM_GET_VARARGS(params,3,GLint,IV,pname_count);
  glMultiTexEnvivEXT((GLenum )texunit, (GLenum )target, (GLenum )pname, (const GLint* )params);
  OGLM_CHECK_ERR(glMultiTexEnvivEXT, free(params);)
  free(params);
#line 48041 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexGendEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexGendEXT)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texunit, coord, pname, param");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	coord = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLdouble	param = (double)SvNV(ST(3))
;
#line 23674 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexGendEXT, )
  OGLM_AVAIL_CHECK(__glewMultiTexGendEXT, glMultiTexGendEXT)
  glMultiTexGendEXT(texunit, coord, pname, param);
  OGLM_CHECK_ERR(glMultiTexGendEXT, )
#line 48068 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexGendvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexGendvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texunit, coord, pname, params");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	coord = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	const GLdouble*	params = INT2PTR(const GLdouble *,SvIV(ST(3)))
;
#line 23687 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexGendvEXT, )
  OGLM_AVAIL_CHECK(__glewMultiTexGendvEXT, glMultiTexGendvEXT)
  glMultiTexGendvEXT(texunit, coord, pname, params);
  OGLM_CHECK_ERR(glMultiTexGendvEXT, )
#line 48095 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexGendvEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexGendvEXT_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "texunit, coord, pname, ...");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	coord = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
#line 23699 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexGendvEXT, )
  OGLM_AVAIL_CHECK(__glewMultiTexGendvEXT, glMultiTexGendvEXT)
  OGLM_SIZE_ENUM(TextureGenParameter,pname,1)
  GLdouble* params = OGLM_GET_VARARGS(params,3,GLdouble,NV,pname_count);
  glMultiTexGendvEXT((GLenum )texunit, (GLenum )coord, (GLenum )pname, (const GLdouble* )params);
  OGLM_CHECK_ERR(glMultiTexGendvEXT, free(params);)
  free(params);
#line 48123 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexGenfEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexGenfEXT)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texunit, coord, pname, param");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	coord = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLfloat	param = (float)SvNV(ST(3))
;
#line 23715 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexGenfEXT, )
  OGLM_AVAIL_CHECK(__glewMultiTexGenfEXT, glMultiTexGenfEXT)
  glMultiTexGenfEXT(texunit, coord, pname, param);
  OGLM_CHECK_ERR(glMultiTexGenfEXT, )
#line 48150 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexGenfvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexGenfvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texunit, coord, pname, params");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	coord = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	const GLfloat*	params = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 23728 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexGenfvEXT, )
  OGLM_AVAIL_CHECK(__glewMultiTexGenfvEXT, glMultiTexGenfvEXT)
  glMultiTexGenfvEXT(texunit, coord, pname, params);
  OGLM_CHECK_ERR(glMultiTexGenfvEXT, )
#line 48177 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexGenfvEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexGenfvEXT_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "texunit, coord, pname, ...");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	coord = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
#line 23740 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexGenfvEXT, )
  OGLM_AVAIL_CHECK(__glewMultiTexGenfvEXT, glMultiTexGenfvEXT)
  OGLM_SIZE_ENUM(TextureGenParameter,pname,1)
  GLfloat* params = OGLM_GET_VARARGS(params,3,GLfloat,NV,pname_count);
  glMultiTexGenfvEXT((GLenum )texunit, (GLenum )coord, (GLenum )pname, (const GLfloat* )params);
  OGLM_CHECK_ERR(glMultiTexGenfvEXT, free(params);)
  free(params);
#line 48205 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexGeniEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexGeniEXT)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texunit, coord, pname, param");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	coord = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLint	param = (int)SvIV(ST(3))
;
#line 23756 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexGeniEXT, )
  OGLM_AVAIL_CHECK(__glewMultiTexGeniEXT, glMultiTexGeniEXT)
  glMultiTexGeniEXT(texunit, coord, pname, param);
  OGLM_CHECK_ERR(glMultiTexGeniEXT, )
#line 48232 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexGenivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexGenivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texunit, coord, pname, params");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	coord = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	const GLint*	params = INT2PTR(const GLint *,SvIV(ST(3)))
;
#line 23769 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexGenivEXT, )
  OGLM_AVAIL_CHECK(__glewMultiTexGenivEXT, glMultiTexGenivEXT)
  glMultiTexGenivEXT(texunit, coord, pname, params);
  OGLM_CHECK_ERR(glMultiTexGenivEXT, )
#line 48259 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexGenivEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexGenivEXT_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "texunit, coord, pname, ...");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	coord = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
#line 23781 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexGenivEXT, )
  OGLM_AVAIL_CHECK(__glewMultiTexGenivEXT, glMultiTexGenivEXT)
  OGLM_SIZE_ENUM(TextureGenParameter,pname,1)
  GLint* params = OGLM_GET_VARARGS(params,3,GLint,IV,pname_count);
  glMultiTexGenivEXT((GLenum )texunit, (GLenum )coord, (GLenum )pname, (const GLint* )params);
  OGLM_CHECK_ERR(glMultiTexGenivEXT, free(params);)
  free(params);
#line 48287 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexImage1DEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexImage1DEXT_c)
{
    dVAR; dXSARGS;
    if (items != 9)
       croak_xs_usage(cv,  "texunit, target, level, internalformat, width, border, format, type, pixels");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLint	internalformat = (int)SvIV(ST(3))
;
	GLsizei	width = (int)SvIV(ST(4))
;
	GLint	border = (int)SvIV(ST(5))
;
	GLenum	format = (int)SvIV(ST(6))
;
	GLenum	type = (int)SvIV(ST(7))
;
	const void *	pixels = INT2PTR(const void *,SvIV(ST(8)))
;
#line 23802 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexImage1DEXT, )
  OGLM_AVAIL_CHECK(__glewMultiTexImage1DEXT, glMultiTexImage1DEXT)
  glMultiTexImage1DEXT(texunit, target, level, internalformat, width, border, format, type, pixels);
  OGLM_CHECK_ERR(glMultiTexImage1DEXT, )
#line 48324 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexImage2DEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexImage2DEXT_c)
{
    dVAR; dXSARGS;
    if (items != 10)
       croak_xs_usage(cv,  "texunit, target, level, internalformat, width, height, border, format, type, pixels");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLint	internalformat = (int)SvIV(ST(3))
;
	GLsizei	width = (int)SvIV(ST(4))
;
	GLsizei	height = (int)SvIV(ST(5))
;
	GLint	border = (int)SvIV(ST(6))
;
	GLenum	format = (int)SvIV(ST(7))
;
	GLenum	type = (int)SvIV(ST(8))
;
	const void *	pixels = INT2PTR(const void *,SvIV(ST(9)))
;
#line 23821 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexImage2DEXT, )
  OGLM_AVAIL_CHECK(__glewMultiTexImage2DEXT, glMultiTexImage2DEXT)
  glMultiTexImage2DEXT(texunit, target, level, internalformat, width, height, border, format, type, pixels);
  OGLM_CHECK_ERR(glMultiTexImage2DEXT, )
#line 48363 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexImage3DEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexImage3DEXT_c)
{
    dVAR; dXSARGS;
    if (items != 11)
       croak_xs_usage(cv,  "texunit, target, level, internalformat, width, height, depth, border, format, type, pixels");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLint	internalformat = (int)SvIV(ST(3))
;
	GLsizei	width = (int)SvIV(ST(4))
;
	GLsizei	height = (int)SvIV(ST(5))
;
	GLsizei	depth = (int)SvIV(ST(6))
;
	GLint	border = (int)SvIV(ST(7))
;
	GLenum	format = (int)SvIV(ST(8))
;
	GLenum	type = (int)SvIV(ST(9))
;
	const void *	pixels = INT2PTR(const void *,SvIV(ST(10)))
;
#line 23841 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexImage3DEXT, )
  OGLM_AVAIL_CHECK(__glewMultiTexImage3DEXT, glMultiTexImage3DEXT)
  glMultiTexImage3DEXT(texunit, target, level, internalformat, width, height, depth, border, format, type, pixels);
  OGLM_CHECK_ERR(glMultiTexImage3DEXT, )
#line 48404 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexParameterIivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexParameterIivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texunit, target, pname, params");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	const GLint*	params = INT2PTR(const GLint *,SvIV(ST(3)))
;
#line 23854 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexParameterIivEXT, )
  OGLM_AVAIL_CHECK(__glewMultiTexParameterIivEXT, glMultiTexParameterIivEXT)
  glMultiTexParameterIivEXT(texunit, target, pname, params);
  OGLM_CHECK_ERR(glMultiTexParameterIivEXT, )
#line 48431 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexParameterIivEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexParameterIivEXT_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "texunit, target, pname, ...");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
#line 23866 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexParameterIivEXT, )
  OGLM_AVAIL_CHECK(__glewMultiTexParameterIivEXT, glMultiTexParameterIivEXT)
  OGLM_SIZE_ENUM(TextureParameterName,pname,1)
  GLint* params = OGLM_GET_VARARGS(params,3,GLint,IV,pname_count);
  glMultiTexParameterIivEXT((GLenum )texunit, (GLenum )target, (GLenum )pname, (const GLint* )params);
  OGLM_CHECK_ERR(glMultiTexParameterIivEXT, free(params);)
  free(params);
#line 48459 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexParameterIuivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexParameterIuivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texunit, target, pname, params");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	const GLuint*	params = INT2PTR(const GLuint *,SvIV(ST(3)))
;
#line 23882 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexParameterIuivEXT, )
  OGLM_AVAIL_CHECK(__glewMultiTexParameterIuivEXT, glMultiTexParameterIuivEXT)
  glMultiTexParameterIuivEXT(texunit, target, pname, params);
  OGLM_CHECK_ERR(glMultiTexParameterIuivEXT, )
#line 48486 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexParameterIuivEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexParameterIuivEXT_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "texunit, target, pname, ...");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
#line 23894 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexParameterIuivEXT, )
  OGLM_AVAIL_CHECK(__glewMultiTexParameterIuivEXT, glMultiTexParameterIuivEXT)
  OGLM_SIZE_ENUM(TextureParameterName,pname,1)
  GLuint* params = OGLM_GET_VARARGS(params,3,GLuint,UV,pname_count);
  glMultiTexParameterIuivEXT((GLenum )texunit, (GLenum )target, (GLenum )pname, (const GLuint* )params);
  OGLM_CHECK_ERR(glMultiTexParameterIuivEXT, free(params);)
  free(params);
#line 48514 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexParameterfEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexParameterfEXT)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texunit, target, pname, param");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLfloat	param = (float)SvNV(ST(3))
;
#line 23910 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexParameterfEXT, )
  OGLM_AVAIL_CHECK(__glewMultiTexParameterfEXT, glMultiTexParameterfEXT)
  glMultiTexParameterfEXT(texunit, target, pname, param);
  OGLM_CHECK_ERR(glMultiTexParameterfEXT, )
#line 48541 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexParameterfvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexParameterfvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texunit, target, pname, params");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	const GLfloat*	params = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 23923 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexParameterfvEXT, )
  OGLM_AVAIL_CHECK(__glewMultiTexParameterfvEXT, glMultiTexParameterfvEXT)
  glMultiTexParameterfvEXT(texunit, target, pname, params);
  OGLM_CHECK_ERR(glMultiTexParameterfvEXT, )
#line 48568 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexParameterfvEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexParameterfvEXT_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "texunit, target, pname, ...");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
#line 23935 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexParameterfvEXT, )
  OGLM_AVAIL_CHECK(__glewMultiTexParameterfvEXT, glMultiTexParameterfvEXT)
  OGLM_SIZE_ENUM(TextureParameterName,pname,1)
  GLfloat* params = OGLM_GET_VARARGS(params,3,GLfloat,NV,pname_count);
  glMultiTexParameterfvEXT((GLenum )texunit, (GLenum )target, (GLenum )pname, (const GLfloat* )params);
  OGLM_CHECK_ERR(glMultiTexParameterfvEXT, free(params);)
  free(params);
#line 48596 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexParameteriEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexParameteriEXT)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texunit, target, pname, param");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLint	param = (int)SvIV(ST(3))
;
#line 23951 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexParameteriEXT, )
  OGLM_AVAIL_CHECK(__glewMultiTexParameteriEXT, glMultiTexParameteriEXT)
  glMultiTexParameteriEXT(texunit, target, pname, param);
  OGLM_CHECK_ERR(glMultiTexParameteriEXT, )
#line 48623 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexParameterivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexParameterivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texunit, target, pname, params");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	const GLint*	params = INT2PTR(const GLint *,SvIV(ST(3)))
;
#line 23964 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexParameterivEXT, )
  OGLM_AVAIL_CHECK(__glewMultiTexParameterivEXT, glMultiTexParameterivEXT)
  glMultiTexParameterivEXT(texunit, target, pname, params);
  OGLM_CHECK_ERR(glMultiTexParameterivEXT, )
#line 48650 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexParameterivEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexParameterivEXT_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "texunit, target, pname, ...");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
#line 23976 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexParameterivEXT, )
  OGLM_AVAIL_CHECK(__glewMultiTexParameterivEXT, glMultiTexParameterivEXT)
  OGLM_SIZE_ENUM(TextureParameterName,pname,1)
  GLint* params = OGLM_GET_VARARGS(params,3,GLint,IV,pname_count);
  glMultiTexParameterivEXT((GLenum )texunit, (GLenum )target, (GLenum )pname, (const GLint* )params);
  OGLM_CHECK_ERR(glMultiTexParameterivEXT, free(params);)
  free(params);
#line 48678 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexRenderbufferEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexRenderbufferEXT)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texunit, target, renderbuffer");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLuint	renderbuffer = (unsigned int)SvUV(ST(2))
;
#line 23991 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexRenderbufferEXT, )
  OGLM_AVAIL_CHECK(__glewMultiTexRenderbufferEXT, glMultiTexRenderbufferEXT)
  glMultiTexRenderbufferEXT(texunit, target, renderbuffer);
  OGLM_CHECK_ERR(glMultiTexRenderbufferEXT, )
#line 48703 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexSubImage1DEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexSubImage1DEXT_c)
{
    dVAR; dXSARGS;
    if (items != 8)
       croak_xs_usage(cv,  "texunit, target, level, xoffset, width, format, type, pixels");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLint	xoffset = (int)SvIV(ST(3))
;
	GLsizei	width = (int)SvIV(ST(4))
;
	GLenum	format = (int)SvIV(ST(5))
;
	GLenum	type = (int)SvIV(ST(6))
;
	const void *	pixels = INT2PTR(const void *,SvIV(ST(7)))
;
#line 24008 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexSubImage1DEXT, )
  OGLM_AVAIL_CHECK(__glewMultiTexSubImage1DEXT, glMultiTexSubImage1DEXT)
  glMultiTexSubImage1DEXT(texunit, target, level, xoffset, width, format, type, pixels);
  OGLM_CHECK_ERR(glMultiTexSubImage1DEXT, )
#line 48738 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexSubImage2DEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexSubImage2DEXT_c)
{
    dVAR; dXSARGS;
    if (items != 10)
       croak_xs_usage(cv,  "texunit, target, level, xoffset, yoffset, width, height, format, type, pixels");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLint	xoffset = (int)SvIV(ST(3))
;
	GLint	yoffset = (int)SvIV(ST(4))
;
	GLsizei	width = (int)SvIV(ST(5))
;
	GLsizei	height = (int)SvIV(ST(6))
;
	GLenum	format = (int)SvIV(ST(7))
;
	GLenum	type = (int)SvIV(ST(8))
;
	const void *	pixels = INT2PTR(const void *,SvIV(ST(9)))
;
#line 24027 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexSubImage2DEXT, )
  OGLM_AVAIL_CHECK(__glewMultiTexSubImage2DEXT, glMultiTexSubImage2DEXT)
  glMultiTexSubImage2DEXT(texunit, target, level, xoffset, yoffset, width, height, format, type, pixels);
  OGLM_CHECK_ERR(glMultiTexSubImage2DEXT, )
#line 48777 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultiTexSubImage3DEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultiTexSubImage3DEXT_c)
{
    dVAR; dXSARGS;
    if (items != 12)
       croak_xs_usage(cv,  "texunit, target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels");
    {
	GLenum	texunit = (int)SvIV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLint	xoffset = (int)SvIV(ST(3))
;
	GLint	yoffset = (int)SvIV(ST(4))
;
	GLint	zoffset = (int)SvIV(ST(5))
;
	GLsizei	width = (int)SvIV(ST(6))
;
	GLsizei	height = (int)SvIV(ST(7))
;
	GLsizei	depth = (int)SvIV(ST(8))
;
	GLenum	format = (int)SvIV(ST(9))
;
	GLenum	type = (int)SvIV(ST(10))
;
	const void *	pixels = INT2PTR(const void *,SvIV(ST(11)))
;
#line 24048 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultiTexSubImage3DEXT, )
  OGLM_AVAIL_CHECK(__glewMultiTexSubImage3DEXT, glMultiTexSubImage3DEXT)
  glMultiTexSubImage3DEXT(texunit, target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
  OGLM_CHECK_ERR(glMultiTexSubImage3DEXT, )
#line 48820 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMulticastBarrierNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMulticastBarrierNV)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 24057 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMulticastBarrierNV, )
  OGLM_AVAIL_CHECK(__glewMulticastBarrierNV, glMulticastBarrierNV)
  glMulticastBarrierNV();
  OGLM_CHECK_ERR(glMulticastBarrierNV, )
#line 48839 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMulticastBlitFramebufferNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMulticastBlitFramebufferNV)
{
    dVAR; dXSARGS;
    if (items != 12)
       croak_xs_usage(cv,  "srcGpu, dstGpu, srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter");
    {
	GLuint	srcGpu = (unsigned int)SvUV(ST(0))
;
	GLuint	dstGpu = (unsigned int)SvUV(ST(1))
;
	GLint	srcX0 = (int)SvIV(ST(2))
;
	GLint	srcY0 = (int)SvIV(ST(3))
;
	GLint	srcX1 = (int)SvIV(ST(4))
;
	GLint	srcY1 = (int)SvIV(ST(5))
;
	GLint	dstX0 = (int)SvIV(ST(6))
;
	GLint	dstY0 = (int)SvIV(ST(7))
;
	GLint	dstX1 = (int)SvIV(ST(8))
;
	GLint	dstY1 = (int)SvIV(ST(9))
;
	GLbitfield	mask = (int)SvIV(ST(10))
;
	GLenum	filter = (int)SvIV(ST(11))
;
#line 24078 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMulticastBlitFramebufferNV, )
  OGLM_AVAIL_CHECK(__glewMulticastBlitFramebufferNV, glMulticastBlitFramebufferNV)
  glMulticastBlitFramebufferNV(srcGpu, dstGpu, srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter);
  OGLM_CHECK_ERR(glMulticastBlitFramebufferNV, )
#line 48882 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMulticastBufferSubDataNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMulticastBufferSubDataNV_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "gpuMask, buffer, offset, size, data");
    {
	GLbitfield	gpuMask = (int)SvIV(ST(0))
;
	GLuint	buffer = (unsigned int)SvUV(ST(1))
;
	GLintptr	offset = (unsigned int)SvUV(ST(2))
;
	GLsizeiptr	size = (unsigned int)SvUV(ST(3))
;
	const void *	data = INT2PTR(const void *,SvIV(ST(4)))
;
#line 24092 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMulticastBufferSubDataNV, )
  OGLM_AVAIL_CHECK(__glewMulticastBufferSubDataNV, glMulticastBufferSubDataNV)
  glMulticastBufferSubDataNV(gpuMask, buffer, offset, size, data);
  OGLM_CHECK_ERR(glMulticastBufferSubDataNV, )
#line 48911 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMulticastCopyBufferSubDataNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMulticastCopyBufferSubDataNV)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "readGpu, writeGpuMask, readBuffer, writeBuffer, readOffset, writeOffset, size");
    {
	GLuint	readGpu = (unsigned int)SvUV(ST(0))
;
	GLbitfield	writeGpuMask = (int)SvIV(ST(1))
;
	GLuint	readBuffer = (unsigned int)SvUV(ST(2))
;
	GLuint	writeBuffer = (unsigned int)SvUV(ST(3))
;
	GLintptr	readOffset = (unsigned int)SvUV(ST(4))
;
	GLintptr	writeOffset = (unsigned int)SvUV(ST(5))
;
	GLsizeiptr	size = (unsigned int)SvUV(ST(6))
;
#line 24108 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMulticastCopyBufferSubDataNV, )
  OGLM_AVAIL_CHECK(__glewMulticastCopyBufferSubDataNV, glMulticastCopyBufferSubDataNV)
  glMulticastCopyBufferSubDataNV(readGpu, writeGpuMask, readBuffer, writeBuffer, readOffset, writeOffset, size);
  OGLM_CHECK_ERR(glMulticastCopyBufferSubDataNV, )
#line 48944 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMulticastCopyImageSubDataNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMulticastCopyImageSubDataNV)
{
    dVAR; dXSARGS;
    if (items != 17)
       croak_xs_usage(cv,  "srcGpu, dstGpuMask, srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, srcWidth, srcHeight, srcDepth");
    {
	GLuint	srcGpu = (unsigned int)SvUV(ST(0))
;
	GLbitfield	dstGpuMask = (int)SvIV(ST(1))
;
	GLuint	srcName = (unsigned int)SvUV(ST(2))
;
	GLenum	srcTarget = (int)SvIV(ST(3))
;
	GLint	srcLevel = (int)SvIV(ST(4))
;
	GLint	srcX = (int)SvIV(ST(5))
;
	GLint	srcY = (int)SvIV(ST(6))
;
	GLint	srcZ = (int)SvIV(ST(7))
;
	GLuint	dstName = (unsigned int)SvUV(ST(8))
;
	GLenum	dstTarget = (int)SvIV(ST(9))
;
	GLint	dstLevel = (int)SvIV(ST(10))
;
	GLint	dstX = (int)SvIV(ST(11))
;
	GLint	dstY = (int)SvIV(ST(12))
;
	GLint	dstZ = (int)SvIV(ST(13))
;
	GLsizei	srcWidth = (int)SvIV(ST(14))
;
	GLsizei	srcHeight = (int)SvIV(ST(15))
;
	GLsizei	srcDepth = (int)SvIV(ST(16))
;
#line 24134 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMulticastCopyImageSubDataNV, )
  OGLM_AVAIL_CHECK(__glewMulticastCopyImageSubDataNV, glMulticastCopyImageSubDataNV)
  glMulticastCopyImageSubDataNV(srcGpu, dstGpuMask, srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, srcWidth, srcHeight, srcDepth);
  OGLM_CHECK_ERR(glMulticastCopyImageSubDataNV, )
#line 48997 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMulticastFramebufferSampleLocationsfvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMulticastFramebufferSampleLocationsfvNV_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "gpu, framebuffer, start, count, v");
    {
	GLuint	gpu = (unsigned int)SvUV(ST(0))
;
	GLuint	framebuffer = (unsigned int)SvUV(ST(1))
;
	GLuint	start = (unsigned int)SvUV(ST(2))
;
	GLsizei	count = (int)SvIV(ST(3))
;
	const GLfloat*	v = INT2PTR(const GLfloat *,SvIV(ST(4)))
;
#line 24148 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMulticastFramebufferSampleLocationsfvNV, )
  OGLM_AVAIL_CHECK(__glewMulticastFramebufferSampleLocationsfvNV, glMulticastFramebufferSampleLocationsfvNV)
  glMulticastFramebufferSampleLocationsfvNV(gpu, framebuffer, start, count, v);
  OGLM_CHECK_ERR(glMulticastFramebufferSampleLocationsfvNV, )
#line 49026 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMulticastGetQueryObjecti64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMulticastGetQueryObjecti64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "gpu, id, pname, params");
    {
	GLuint	gpu = (unsigned int)SvUV(ST(0))
;
	GLuint	id = (unsigned int)SvUV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLint64*	params = INT2PTR(GLint64 *,SvIV(ST(3)))
;
#line 24161 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMulticastGetQueryObjecti64vNV, )
  OGLM_AVAIL_CHECK(__glewMulticastGetQueryObjecti64vNV, glMulticastGetQueryObjecti64vNV)
  glMulticastGetQueryObjecti64vNV(gpu, id, pname, params);
  OGLM_CHECK_ERR(glMulticastGetQueryObjecti64vNV, )
#line 49053 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMulticastGetQueryObjectivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMulticastGetQueryObjectivNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "gpu, id, pname, params");
    {
	GLuint	gpu = (unsigned int)SvUV(ST(0))
;
	GLuint	id = (unsigned int)SvUV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(3)))
;
#line 24174 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMulticastGetQueryObjectivNV, )
  OGLM_AVAIL_CHECK(__glewMulticastGetQueryObjectivNV, glMulticastGetQueryObjectivNV)
  glMulticastGetQueryObjectivNV(gpu, id, pname, params);
  OGLM_CHECK_ERR(glMulticastGetQueryObjectivNV, )
#line 49080 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMulticastGetQueryObjectui64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMulticastGetQueryObjectui64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "gpu, id, pname, params");
    {
	GLuint	gpu = (unsigned int)SvUV(ST(0))
;
	GLuint	id = (unsigned int)SvUV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLuint64*	params = INT2PTR(GLuint64 *,SvIV(ST(3)))
;
#line 24187 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMulticastGetQueryObjectui64vNV, )
  OGLM_AVAIL_CHECK(__glewMulticastGetQueryObjectui64vNV, glMulticastGetQueryObjectui64vNV)
  glMulticastGetQueryObjectui64vNV(gpu, id, pname, params);
  OGLM_CHECK_ERR(glMulticastGetQueryObjectui64vNV, )
#line 49107 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMulticastGetQueryObjectuivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMulticastGetQueryObjectuivNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "gpu, id, pname, params");
    {
	GLuint	gpu = (unsigned int)SvUV(ST(0))
;
	GLuint	id = (unsigned int)SvUV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLuint*	params = INT2PTR(GLuint *,SvIV(ST(3)))
;
#line 24200 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMulticastGetQueryObjectuivNV, )
  OGLM_AVAIL_CHECK(__glewMulticastGetQueryObjectuivNV, glMulticastGetQueryObjectuivNV)
  glMulticastGetQueryObjectuivNV(gpu, id, pname, params);
  OGLM_CHECK_ERR(glMulticastGetQueryObjectuivNV, )
#line 49134 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMulticastScissorArrayvNVX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMulticastScissorArrayvNVX_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "gpu, first, count, v");
    {
	GLuint	gpu = (unsigned int)SvUV(ST(0))
;
	GLuint	first = (unsigned int)SvUV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLint*	v = INT2PTR(const GLint *,SvIV(ST(3)))
;
#line 24213 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMulticastScissorArrayvNVX, )
  OGLM_AVAIL_CHECK(__glewMulticastScissorArrayvNVX, glMulticastScissorArrayvNVX)
  glMulticastScissorArrayvNVX(gpu, first, count, v);
  OGLM_CHECK_ERR(glMulticastScissorArrayvNVX, )
#line 49161 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMulticastScissorArrayvNVX_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMulticastScissorArrayvNVX_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "gpu, first, ...");
    {
	GLuint	gpu = (unsigned int)SvUV(ST(0))
;
	GLuint	first = (unsigned int)SvUV(ST(1))
;
#line 24224 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMulticastScissorArrayvNVX, )
  OGLM_AVAIL_CHECK(__glewMulticastScissorArrayvNVX, glMulticastScissorArrayvNVX)
  GLsizei count = items-2;
  GLint* v = OGLM_GET_VARARGS(v,2,GLint,IV,count);
  glMulticastScissorArrayvNVX((GLuint )gpu, (GLuint )first, (GLsizei )count, (const GLint* )v);
  OGLM_CHECK_ERR(glMulticastScissorArrayvNVX, free(v);)
  free(v);
#line 49187 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMulticastViewportArrayvNVX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMulticastViewportArrayvNVX_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "gpu, first, count, v");
    {
	GLuint	gpu = (unsigned int)SvUV(ST(0))
;
	GLuint	first = (unsigned int)SvUV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLfloat*	v = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 24240 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMulticastViewportArrayvNVX, )
  OGLM_AVAIL_CHECK(__glewMulticastViewportArrayvNVX, glMulticastViewportArrayvNVX)
  glMulticastViewportArrayvNVX(gpu, first, count, v);
  OGLM_CHECK_ERR(glMulticastViewportArrayvNVX, )
#line 49214 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMulticastViewportArrayvNVX_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMulticastViewportArrayvNVX_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "gpu, first, ...");
    {
	GLuint	gpu = (unsigned int)SvUV(ST(0))
;
	GLuint	first = (unsigned int)SvUV(ST(1))
;
#line 24251 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMulticastViewportArrayvNVX, )
  OGLM_AVAIL_CHECK(__glewMulticastViewportArrayvNVX, glMulticastViewportArrayvNVX)
  GLsizei count = items-2;
  GLfloat* v = OGLM_GET_VARARGS(v,2,GLfloat,NV,count);
  glMulticastViewportArrayvNVX((GLuint )gpu, (GLuint )first, (GLsizei )count, (const GLfloat* )v);
  OGLM_CHECK_ERR(glMulticastViewportArrayvNVX, free(v);)
  free(v);
#line 49240 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMulticastViewportPositionWScaleNVX); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMulticastViewportPositionWScaleNVX)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "gpu, index, xcoeff, ycoeff");
    {
	GLuint	gpu = (unsigned int)SvUV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLfloat	xcoeff = (float)SvNV(ST(2))
;
	GLfloat	ycoeff = (float)SvNV(ST(3))
;
#line 24267 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMulticastViewportPositionWScaleNVX, )
  OGLM_AVAIL_CHECK(__glewMulticastViewportPositionWScaleNVX, glMulticastViewportPositionWScaleNVX)
  glMulticastViewportPositionWScaleNVX(gpu, index, xcoeff, ycoeff);
  OGLM_CHECK_ERR(glMulticastViewportPositionWScaleNVX, )
#line 49267 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMulticastWaitSyncNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMulticastWaitSyncNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "signalGpu, waitGpuMask");
    {
	GLuint	signalGpu = (unsigned int)SvUV(ST(0))
;
	GLbitfield	waitGpuMask = (int)SvIV(ST(1))
;
#line 24278 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMulticastWaitSyncNV, )
  OGLM_AVAIL_CHECK(__glewMulticastWaitSyncNV, glMulticastWaitSyncNV)
  glMulticastWaitSyncNV(signalGpu, waitGpuMask);
  OGLM_CHECK_ERR(glMulticastWaitSyncNV, )
#line 49290 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glMultisampleSubRectPosSGIS); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glMultisampleSubRectPosSGIS)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "x, y");
    {
	GLint	x = (int)SvIV(ST(0))
;
	GLint	y = (int)SvIV(ST(1))
;
#line 24289 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glMultisampleSubRectPosSGIS, )
  OGLM_AVAIL_CHECK(__glewMultisampleSubRectPosSGIS, glMultisampleSubRectPosSGIS)
  glMultisampleSubRectPosSGIS(x, y);
  OGLM_CHECK_ERR(glMultisampleSubRectPosSGIS, )
#line 49313 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedBufferAttachMemoryNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedBufferAttachMemoryNV)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "buffer, memory, offset");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLuint	memory = (unsigned int)SvUV(ST(1))
;
	GLuint64	offset = (unsigned int)SvUV(ST(2))
;
#line 24301 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedBufferAttachMemoryNV, )
  OGLM_AVAIL_CHECK(__glewNamedBufferAttachMemoryNV, glNamedBufferAttachMemoryNV)
  glNamedBufferAttachMemoryNV(buffer, memory, offset);
  OGLM_CHECK_ERR(glNamedBufferAttachMemoryNV, )
#line 49338 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedBufferData_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedBufferData_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "buffer, size, data, usage");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLsizeiptr	size = (unsigned int)SvUV(ST(1))
;
	const void *	data = INT2PTR(const void *,SvIV(ST(2)))
;
	GLenum	usage = (int)SvIV(ST(3))
;
#line 24314 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedBufferData, )
  OGLM_AVAIL_CHECK(__glewNamedBufferData, glNamedBufferData)
  glNamedBufferData(buffer, size, data, usage);
  OGLM_CHECK_ERR(glNamedBufferData, )
#line 49365 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedBufferDataEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedBufferDataEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "buffer, size, data, usage");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLsizeiptr	size = (unsigned int)SvUV(ST(1))
;
	const void *	data = INT2PTR(const void *,SvIV(ST(2)))
;
	GLenum	usage = (int)SvIV(ST(3))
;
#line 24327 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedBufferDataEXT, )
  OGLM_AVAIL_CHECK(__glewNamedBufferDataEXT, glNamedBufferDataEXT)
  glNamedBufferDataEXT(buffer, size, data, usage);
  OGLM_CHECK_ERR(glNamedBufferDataEXT, )
#line 49392 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedBufferPageCommitmentMemNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedBufferPageCommitmentMemNV)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "buffer, offset, size, memory, memOffset, commit");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLintptr	offset = (unsigned int)SvUV(ST(1))
;
	GLsizeiptr	size = (unsigned int)SvUV(ST(2))
;
	GLuint	memory = (unsigned int)SvUV(ST(3))
;
	GLuint64	memOffset = (unsigned int)SvUV(ST(4))
;
	GLboolean	commit = (int)SvIV(ST(5))
;
#line 24342 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedBufferPageCommitmentMemNV, )
  OGLM_AVAIL_CHECK(__glewNamedBufferPageCommitmentMemNV, glNamedBufferPageCommitmentMemNV)
  glNamedBufferPageCommitmentMemNV(buffer, offset, size, memory, memOffset, commit);
  OGLM_CHECK_ERR(glNamedBufferPageCommitmentMemNV, )
#line 49423 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedBufferStorage_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedBufferStorage_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "buffer, size, data, flags");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLsizeiptr	size = (unsigned int)SvUV(ST(1))
;
	const void *	data = INT2PTR(const void *,SvIV(ST(2)))
;
	GLbitfield	flags = (int)SvIV(ST(3))
;
#line 24357 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedBufferStorage, )
  OGLM_AVAIL_CHECK(__glewNamedBufferStorage, glNamedBufferStorage)
  glNamedBufferStorage(buffer, size, data, flags);
  OGLM_CHECK_ERR(glNamedBufferStorage, )
#line 49451 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedBufferStorageExternalEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedBufferStorageExternalEXT)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "buffer, offset, size, clientBuffer, flags");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLintptr	offset = (unsigned int)SvUV(ST(1))
;
	GLsizeiptr	size = (unsigned int)SvUV(ST(2))
;
	GLeglClientBufferEXT	clientBuffer = INT2PTR(GLeglClientBufferEXT,SvIV(ST(3)))
;
	GLbitfield	flags = (int)SvIV(ST(4))
;
#line 24371 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedBufferStorageExternalEXT, )
  OGLM_AVAIL_CHECK(__glewNamedBufferStorageExternalEXT, glNamedBufferStorageExternalEXT)
  glNamedBufferStorageExternalEXT(buffer, offset, size, clientBuffer, flags);
  OGLM_CHECK_ERR(glNamedBufferStorageExternalEXT, )
#line 49480 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedBufferStorageMemEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedBufferStorageMemEXT)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "buffer, size, memory, offset");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLsizeiptr	size = (unsigned int)SvUV(ST(1))
;
	GLuint	memory = (unsigned int)SvUV(ST(2))
;
	GLuint64	offset = (unsigned int)SvUV(ST(3))
;
#line 24384 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedBufferStorageMemEXT, )
  OGLM_AVAIL_CHECK(__glewNamedBufferStorageMemEXT, glNamedBufferStorageMemEXT)
  glNamedBufferStorageMemEXT(buffer, size, memory, offset);
  OGLM_CHECK_ERR(glNamedBufferStorageMemEXT, )
#line 49507 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedBufferSubData_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedBufferSubData_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "buffer, offset, size, data");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLintptr	offset = (unsigned int)SvUV(ST(1))
;
	GLsizeiptr	size = (unsigned int)SvUV(ST(2))
;
	const void *	data = INT2PTR(const void *,SvIV(ST(3)))
;
#line 24399 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedBufferSubData, )
  OGLM_AVAIL_CHECK(__glewNamedBufferSubData, glNamedBufferSubData)
  glNamedBufferSubData(buffer, offset, size, data);
  OGLM_CHECK_ERR(glNamedBufferSubData, )
#line 49535 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedCopyBufferSubDataEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedCopyBufferSubDataEXT)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "readBuffer, writeBuffer, readOffset, writeOffset, size");
    {
	GLuint	readBuffer = (unsigned int)SvUV(ST(0))
;
	GLuint	writeBuffer = (unsigned int)SvUV(ST(1))
;
	GLintptr	readOffset = (unsigned int)SvUV(ST(2))
;
	GLintptr	writeOffset = (unsigned int)SvUV(ST(3))
;
	GLsizeiptr	size = (unsigned int)SvUV(ST(4))
;
#line 24413 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedCopyBufferSubDataEXT, )
  OGLM_AVAIL_CHECK(__glewNamedCopyBufferSubDataEXT, glNamedCopyBufferSubDataEXT)
  glNamedCopyBufferSubDataEXT(readBuffer, writeBuffer, readOffset, writeOffset, size);
  OGLM_CHECK_ERR(glNamedCopyBufferSubDataEXT, )
#line 49564 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferDrawBuffer); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferDrawBuffer)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "framebuffer, buf");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	buf = (int)SvIV(ST(1))
;
#line 24424 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedFramebufferDrawBuffer, )
  OGLM_AVAIL_CHECK(__glewNamedFramebufferDrawBuffer, glNamedFramebufferDrawBuffer)
  glNamedFramebufferDrawBuffer(framebuffer, buf);
  OGLM_CHECK_ERR(glNamedFramebufferDrawBuffer, )
#line 49587 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferDrawBuffers_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferDrawBuffers_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "framebuffer, n, bufs");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLsizei	n = (int)SvIV(ST(1))
;
	const GLenum*	bufs = INT2PTR(const GLenum *,SvIV(ST(2)))
;
#line 24436 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedFramebufferDrawBuffers, )
  OGLM_AVAIL_CHECK(__glewNamedFramebufferDrawBuffers, glNamedFramebufferDrawBuffers)
  glNamedFramebufferDrawBuffers(framebuffer, n, bufs);
  OGLM_CHECK_ERR(glNamedFramebufferDrawBuffers, )
#line 49612 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferDrawBuffers_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferDrawBuffers_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "framebuffer, ...");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
#line 24446 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedFramebufferDrawBuffers, )
  OGLM_AVAIL_CHECK(__glewNamedFramebufferDrawBuffers, glNamedFramebufferDrawBuffers)
  GLsizei n = items-1;
  GLenum* bufs = OGLM_GET_VARARGS(bufs,1,GLenum,IV,n);
  glNamedFramebufferDrawBuffers((GLuint )framebuffer, (GLsizei )n, (const GLenum* )bufs);
  OGLM_CHECK_ERR(glNamedFramebufferDrawBuffers, free(bufs);)
  free(bufs);
#line 49636 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferParameteri); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferParameteri)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "framebuffer, pname, param");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint	param = (int)SvIV(ST(2))
;
#line 24461 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedFramebufferParameteri, )
  OGLM_AVAIL_CHECK(__glewNamedFramebufferParameteri, glNamedFramebufferParameteri)
  glNamedFramebufferParameteri(framebuffer, pname, param);
  OGLM_CHECK_ERR(glNamedFramebufferParameteri, )
#line 49661 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferParameteriEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferParameteriEXT)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "framebuffer, pname, param");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint	param = (int)SvIV(ST(2))
;
#line 24473 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedFramebufferParameteriEXT, )
  OGLM_AVAIL_CHECK(__glewNamedFramebufferParameteriEXT, glNamedFramebufferParameteriEXT)
  glNamedFramebufferParameteriEXT(framebuffer, pname, param);
  OGLM_CHECK_ERR(glNamedFramebufferParameteriEXT, )
#line 49686 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferReadBuffer); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferReadBuffer)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "framebuffer, src");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	src = (int)SvIV(ST(1))
;
#line 24484 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedFramebufferReadBuffer, )
  OGLM_AVAIL_CHECK(__glewNamedFramebufferReadBuffer, glNamedFramebufferReadBuffer)
  glNamedFramebufferReadBuffer(framebuffer, src);
  OGLM_CHECK_ERR(glNamedFramebufferReadBuffer, )
#line 49709 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferRenderbuffer); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferRenderbuffer)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "framebuffer, attachment, renderbuffertarget, renderbuffer");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	attachment = (int)SvIV(ST(1))
;
	GLenum	renderbuffertarget = (int)SvIV(ST(2))
;
	GLuint	renderbuffer = (unsigned int)SvUV(ST(3))
;
#line 24497 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedFramebufferRenderbuffer, )
  OGLM_AVAIL_CHECK(__glewNamedFramebufferRenderbuffer, glNamedFramebufferRenderbuffer)
  glNamedFramebufferRenderbuffer(framebuffer, attachment, renderbuffertarget, renderbuffer);
  OGLM_CHECK_ERR(glNamedFramebufferRenderbuffer, )
#line 49736 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferRenderbufferEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferRenderbufferEXT)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "framebuffer, attachment, renderbuffertarget, renderbuffer");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	attachment = (int)SvIV(ST(1))
;
	GLenum	renderbuffertarget = (int)SvIV(ST(2))
;
	GLuint	renderbuffer = (unsigned int)SvUV(ST(3))
;
#line 24510 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedFramebufferRenderbufferEXT, )
  OGLM_AVAIL_CHECK(__glewNamedFramebufferRenderbufferEXT, glNamedFramebufferRenderbufferEXT)
  glNamedFramebufferRenderbufferEXT(framebuffer, attachment, renderbuffertarget, renderbuffer);
  OGLM_CHECK_ERR(glNamedFramebufferRenderbufferEXT, )
#line 49763 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferSampleLocationsfvARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferSampleLocationsfvARB_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "framebuffer, start, count, v");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLuint	start = (unsigned int)SvUV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLfloat*	v = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 24523 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedFramebufferSampleLocationsfvARB, )
  OGLM_AVAIL_CHECK(__glewNamedFramebufferSampleLocationsfvARB, glNamedFramebufferSampleLocationsfvARB)
  glNamedFramebufferSampleLocationsfvARB(framebuffer, start, count, v);
  OGLM_CHECK_ERR(glNamedFramebufferSampleLocationsfvARB, )
#line 49790 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferSampleLocationsfvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferSampleLocationsfvNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "framebuffer, start, count, v");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLuint	start = (unsigned int)SvUV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLfloat*	v = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 24536 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedFramebufferSampleLocationsfvNV, )
  OGLM_AVAIL_CHECK(__glewNamedFramebufferSampleLocationsfvNV, glNamedFramebufferSampleLocationsfvNV)
  glNamedFramebufferSampleLocationsfvNV(framebuffer, start, count, v);
  OGLM_CHECK_ERR(glNamedFramebufferSampleLocationsfvNV, )
#line 49817 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferSamplePositionsfvAMD_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferSamplePositionsfvAMD_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "framebuffer, numsamples, pixelindex, values");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLuint	numsamples = (unsigned int)SvUV(ST(1))
;
	GLuint	pixelindex = (unsigned int)SvUV(ST(2))
;
	const GLfloat*	values = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 24549 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedFramebufferSamplePositionsfvAMD, )
  OGLM_AVAIL_CHECK(__glewNamedFramebufferSamplePositionsfvAMD, glNamedFramebufferSamplePositionsfvAMD)
  glNamedFramebufferSamplePositionsfvAMD(framebuffer, numsamples, pixelindex, values);
  OGLM_CHECK_ERR(glNamedFramebufferSamplePositionsfvAMD, )
#line 49844 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferTexture); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferTexture)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "framebuffer, attachment, texture, level");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	attachment = (int)SvIV(ST(1))
;
	GLuint	texture = (unsigned int)SvUV(ST(2))
;
	GLint	level = (int)SvIV(ST(3))
;
#line 24562 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedFramebufferTexture, )
  OGLM_AVAIL_CHECK(__glewNamedFramebufferTexture, glNamedFramebufferTexture)
  glNamedFramebufferTexture(framebuffer, attachment, texture, level);
  OGLM_CHECK_ERR(glNamedFramebufferTexture, )
#line 49871 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferTexture1DEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferTexture1DEXT)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "framebuffer, attachment, textarget, texture, level");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	attachment = (int)SvIV(ST(1))
;
	GLenum	textarget = (int)SvIV(ST(2))
;
	GLuint	texture = (unsigned int)SvUV(ST(3))
;
	GLint	level = (int)SvIV(ST(4))
;
#line 24576 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedFramebufferTexture1DEXT, )
  OGLM_AVAIL_CHECK(__glewNamedFramebufferTexture1DEXT, glNamedFramebufferTexture1DEXT)
  glNamedFramebufferTexture1DEXT(framebuffer, attachment, textarget, texture, level);
  OGLM_CHECK_ERR(glNamedFramebufferTexture1DEXT, )
#line 49900 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferTexture2DEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferTexture2DEXT)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "framebuffer, attachment, textarget, texture, level");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	attachment = (int)SvIV(ST(1))
;
	GLenum	textarget = (int)SvIV(ST(2))
;
	GLuint	texture = (unsigned int)SvUV(ST(3))
;
	GLint	level = (int)SvIV(ST(4))
;
#line 24590 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedFramebufferTexture2DEXT, )
  OGLM_AVAIL_CHECK(__glewNamedFramebufferTexture2DEXT, glNamedFramebufferTexture2DEXT)
  glNamedFramebufferTexture2DEXT(framebuffer, attachment, textarget, texture, level);
  OGLM_CHECK_ERR(glNamedFramebufferTexture2DEXT, )
#line 49929 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferTexture3DEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferTexture3DEXT)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "framebuffer, attachment, textarget, texture, level, zoffset");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	attachment = (int)SvIV(ST(1))
;
	GLenum	textarget = (int)SvIV(ST(2))
;
	GLuint	texture = (unsigned int)SvUV(ST(3))
;
	GLint	level = (int)SvIV(ST(4))
;
	GLint	zoffset = (int)SvIV(ST(5))
;
#line 24605 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedFramebufferTexture3DEXT, )
  OGLM_AVAIL_CHECK(__glewNamedFramebufferTexture3DEXT, glNamedFramebufferTexture3DEXT)
  glNamedFramebufferTexture3DEXT(framebuffer, attachment, textarget, texture, level, zoffset);
  OGLM_CHECK_ERR(glNamedFramebufferTexture3DEXT, )
#line 49960 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferTextureEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferTextureEXT)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "framebuffer, attachment, texture, level");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	attachment = (int)SvIV(ST(1))
;
	GLuint	texture = (unsigned int)SvUV(ST(2))
;
	GLint	level = (int)SvIV(ST(3))
;
#line 24618 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedFramebufferTextureEXT, )
  OGLM_AVAIL_CHECK(__glewNamedFramebufferTextureEXT, glNamedFramebufferTextureEXT)
  glNamedFramebufferTextureEXT(framebuffer, attachment, texture, level);
  OGLM_CHECK_ERR(glNamedFramebufferTextureEXT, )
#line 49987 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferTextureFaceEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferTextureFaceEXT)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "framebuffer, attachment, texture, level, face");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	attachment = (int)SvIV(ST(1))
;
	GLuint	texture = (unsigned int)SvUV(ST(2))
;
	GLint	level = (int)SvIV(ST(3))
;
	GLenum	face = (int)SvIV(ST(4))
;
#line 24632 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedFramebufferTextureFaceEXT, )
  OGLM_AVAIL_CHECK(__glewNamedFramebufferTextureFaceEXT, glNamedFramebufferTextureFaceEXT)
  glNamedFramebufferTextureFaceEXT(framebuffer, attachment, texture, level, face);
  OGLM_CHECK_ERR(glNamedFramebufferTextureFaceEXT, )
#line 50016 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferTextureLayer); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferTextureLayer)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "framebuffer, attachment, texture, level, layer");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	attachment = (int)SvIV(ST(1))
;
	GLuint	texture = (unsigned int)SvUV(ST(2))
;
	GLint	level = (int)SvIV(ST(3))
;
	GLint	layer = (int)SvIV(ST(4))
;
#line 24646 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedFramebufferTextureLayer, )
  OGLM_AVAIL_CHECK(__glewNamedFramebufferTextureLayer, glNamedFramebufferTextureLayer)
  glNamedFramebufferTextureLayer(framebuffer, attachment, texture, level, layer);
  OGLM_CHECK_ERR(glNamedFramebufferTextureLayer, )
#line 50045 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferTextureLayerEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferTextureLayerEXT)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "framebuffer, attachment, texture, level, layer");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	attachment = (int)SvIV(ST(1))
;
	GLuint	texture = (unsigned int)SvUV(ST(2))
;
	GLint	level = (int)SvIV(ST(3))
;
	GLint	layer = (int)SvIV(ST(4))
;
#line 24660 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedFramebufferTextureLayerEXT, )
  OGLM_AVAIL_CHECK(__glewNamedFramebufferTextureLayerEXT, glNamedFramebufferTextureLayerEXT)
  glNamedFramebufferTextureLayerEXT(framebuffer, attachment, texture, level, layer);
  OGLM_CHECK_ERR(glNamedFramebufferTextureLayerEXT, )
#line 50074 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferTextureMultiviewOVR); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedFramebufferTextureMultiviewOVR)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "framebuffer, attachment, texture, level, baseViewIndex, numViews");
    {
	GLuint	framebuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	attachment = (int)SvIV(ST(1))
;
	GLuint	texture = (unsigned int)SvUV(ST(2))
;
	GLint	level = (int)SvIV(ST(3))
;
	GLint	baseViewIndex = (int)SvIV(ST(4))
;
	GLsizei	numViews = (int)SvIV(ST(5))
;
#line 24675 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedFramebufferTextureMultiviewOVR, )
  OGLM_AVAIL_CHECK(__glewNamedFramebufferTextureMultiviewOVR, glNamedFramebufferTextureMultiviewOVR)
  glNamedFramebufferTextureMultiviewOVR(framebuffer, attachment, texture, level, baseViewIndex, numViews);
  OGLM_CHECK_ERR(glNamedFramebufferTextureMultiviewOVR, )
#line 50105 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedProgramLocalParameter4dEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedProgramLocalParameter4dEXT)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "program, target, index, x, y, z, w");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
	GLdouble	x = (double)SvNV(ST(3))
;
	GLdouble	y = (double)SvNV(ST(4))
;
	GLdouble	z = (double)SvNV(ST(5))
;
	GLdouble	w = (double)SvNV(ST(6))
;
#line 24691 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedProgramLocalParameter4dEXT, )
  OGLM_AVAIL_CHECK(__glewNamedProgramLocalParameter4dEXT, glNamedProgramLocalParameter4dEXT)
  glNamedProgramLocalParameter4dEXT(program, target, index, x, y, z, w);
  OGLM_CHECK_ERR(glNamedProgramLocalParameter4dEXT, )
#line 50138 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedProgramLocalParameter4dvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedProgramLocalParameter4dvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, target, index, params");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
	const GLdouble*	params = INT2PTR(const GLdouble *,SvIV(ST(3)))
;
#line 24704 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedProgramLocalParameter4dvEXT, )
  OGLM_AVAIL_CHECK(__glewNamedProgramLocalParameter4dvEXT, glNamedProgramLocalParameter4dvEXT)
  glNamedProgramLocalParameter4dvEXT(program, target, index, params);
  OGLM_CHECK_ERR(glNamedProgramLocalParameter4dvEXT, )
#line 50165 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedProgramLocalParameter4dvEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedProgramLocalParameter4dvEXT_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "program, target, index, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
#line 24716 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedProgramLocalParameter4dvEXT, )
  OGLM_AVAIL_CHECK(__glewNamedProgramLocalParameter4dvEXT, glNamedProgramLocalParameter4dvEXT)
  GLdouble* params = OGLM_GET_VARARGS(params,3,GLdouble,NV,4);
  glNamedProgramLocalParameter4dvEXT((GLuint )program, (GLenum )target, (GLuint )index, (const GLdouble* )params);
  OGLM_CHECK_ERR(glNamedProgramLocalParameter4dvEXT, free(params);)
  free(params);
#line 50192 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedProgramLocalParameter4fEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedProgramLocalParameter4fEXT)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "program, target, index, x, y, z, w");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
	GLfloat	x = (float)SvNV(ST(3))
;
	GLfloat	y = (float)SvNV(ST(4))
;
	GLfloat	z = (float)SvNV(ST(5))
;
	GLfloat	w = (float)SvNV(ST(6))
;
#line 24734 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedProgramLocalParameter4fEXT, )
  OGLM_AVAIL_CHECK(__glewNamedProgramLocalParameter4fEXT, glNamedProgramLocalParameter4fEXT)
  glNamedProgramLocalParameter4fEXT(program, target, index, x, y, z, w);
  OGLM_CHECK_ERR(glNamedProgramLocalParameter4fEXT, )
#line 50225 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedProgramLocalParameter4fvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedProgramLocalParameter4fvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, target, index, params");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
	const GLfloat*	params = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 24747 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedProgramLocalParameter4fvEXT, )
  OGLM_AVAIL_CHECK(__glewNamedProgramLocalParameter4fvEXT, glNamedProgramLocalParameter4fvEXT)
  glNamedProgramLocalParameter4fvEXT(program, target, index, params);
  OGLM_CHECK_ERR(glNamedProgramLocalParameter4fvEXT, )
#line 50252 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedProgramLocalParameter4fvEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedProgramLocalParameter4fvEXT_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "program, target, index, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
#line 24759 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedProgramLocalParameter4fvEXT, )
  OGLM_AVAIL_CHECK(__glewNamedProgramLocalParameter4fvEXT, glNamedProgramLocalParameter4fvEXT)
  GLfloat* params = OGLM_GET_VARARGS(params,3,GLfloat,NV,4);
  glNamedProgramLocalParameter4fvEXT((GLuint )program, (GLenum )target, (GLuint )index, (const GLfloat* )params);
  OGLM_CHECK_ERR(glNamedProgramLocalParameter4fvEXT, free(params);)
  free(params);
#line 50279 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedProgramLocalParameterI4iEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedProgramLocalParameterI4iEXT)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "program, target, index, x, y, z, w");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
	GLint	x = (int)SvIV(ST(3))
;
	GLint	y = (int)SvIV(ST(4))
;
	GLint	z = (int)SvIV(ST(5))
;
	GLint	w = (int)SvIV(ST(6))
;
#line 24777 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedProgramLocalParameterI4iEXT, )
  OGLM_AVAIL_CHECK(__glewNamedProgramLocalParameterI4iEXT, glNamedProgramLocalParameterI4iEXT)
  glNamedProgramLocalParameterI4iEXT(program, target, index, x, y, z, w);
  OGLM_CHECK_ERR(glNamedProgramLocalParameterI4iEXT, )
#line 50312 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedProgramLocalParameterI4ivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedProgramLocalParameterI4ivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, target, index, params");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
	const GLint*	params = INT2PTR(const GLint *,SvIV(ST(3)))
;
#line 24790 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedProgramLocalParameterI4ivEXT, )
  OGLM_AVAIL_CHECK(__glewNamedProgramLocalParameterI4ivEXT, glNamedProgramLocalParameterI4ivEXT)
  glNamedProgramLocalParameterI4ivEXT(program, target, index, params);
  OGLM_CHECK_ERR(glNamedProgramLocalParameterI4ivEXT, )
#line 50339 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedProgramLocalParameterI4ivEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedProgramLocalParameterI4ivEXT_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "program, target, index, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
#line 24802 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedProgramLocalParameterI4ivEXT, )
  OGLM_AVAIL_CHECK(__glewNamedProgramLocalParameterI4ivEXT, glNamedProgramLocalParameterI4ivEXT)
  GLint* params = OGLM_GET_VARARGS(params,3,GLint,IV,4);
  glNamedProgramLocalParameterI4ivEXT((GLuint )program, (GLenum )target, (GLuint )index, (const GLint* )params);
  OGLM_CHECK_ERR(glNamedProgramLocalParameterI4ivEXT, free(params);)
  free(params);
#line 50366 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedProgramLocalParameterI4uiEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedProgramLocalParameterI4uiEXT)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "program, target, index, x, y, z, w");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
	GLuint	x = (unsigned int)SvUV(ST(3))
;
	GLuint	y = (unsigned int)SvUV(ST(4))
;
	GLuint	z = (unsigned int)SvUV(ST(5))
;
	GLuint	w = (unsigned int)SvUV(ST(6))
;
#line 24820 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedProgramLocalParameterI4uiEXT, )
  OGLM_AVAIL_CHECK(__glewNamedProgramLocalParameterI4uiEXT, glNamedProgramLocalParameterI4uiEXT)
  glNamedProgramLocalParameterI4uiEXT(program, target, index, x, y, z, w);
  OGLM_CHECK_ERR(glNamedProgramLocalParameterI4uiEXT, )
#line 50399 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedProgramLocalParameterI4uivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedProgramLocalParameterI4uivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, target, index, params");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
	const GLuint*	params = INT2PTR(const GLuint *,SvIV(ST(3)))
;
#line 24833 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedProgramLocalParameterI4uivEXT, )
  OGLM_AVAIL_CHECK(__glewNamedProgramLocalParameterI4uivEXT, glNamedProgramLocalParameterI4uivEXT)
  glNamedProgramLocalParameterI4uivEXT(program, target, index, params);
  OGLM_CHECK_ERR(glNamedProgramLocalParameterI4uivEXT, )
#line 50426 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedProgramLocalParameterI4uivEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedProgramLocalParameterI4uivEXT_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "program, target, index, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
#line 24845 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedProgramLocalParameterI4uivEXT, )
  OGLM_AVAIL_CHECK(__glewNamedProgramLocalParameterI4uivEXT, glNamedProgramLocalParameterI4uivEXT)
  GLuint* params = OGLM_GET_VARARGS(params,3,GLuint,UV,4);
  glNamedProgramLocalParameterI4uivEXT((GLuint )program, (GLenum )target, (GLuint )index, (const GLuint* )params);
  OGLM_CHECK_ERR(glNamedProgramLocalParameterI4uivEXT, free(params);)
  free(params);
#line 50453 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedProgramLocalParameters4fvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedProgramLocalParameters4fvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "program, target, index, count, params");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
	GLsizei	count = (int)SvIV(ST(3))
;
	const GLfloat*	params = INT2PTR(const GLfloat *,SvIV(ST(4)))
;
#line 24861 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedProgramLocalParameters4fvEXT, )
  OGLM_AVAIL_CHECK(__glewNamedProgramLocalParameters4fvEXT, glNamedProgramLocalParameters4fvEXT)
  glNamedProgramLocalParameters4fvEXT(program, target, index, count, params);
  OGLM_CHECK_ERR(glNamedProgramLocalParameters4fvEXT, )
#line 50482 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedProgramLocalParameters4fvEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedProgramLocalParameters4fvEXT_p)
{
    dVAR; dXSARGS;
    if (items < 4)
       croak_xs_usage(cv,  "program, target, index, count, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
	GLsizei	count = (int)SvIV(ST(3))
;
#line 24874 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedProgramLocalParameters4fvEXT, )
  OGLM_AVAIL_CHECK(__glewNamedProgramLocalParameters4fvEXT, glNamedProgramLocalParameters4fvEXT)
  GLfloat* params = OGLM_GET_VARARGS(params,4,GLfloat,NV,count*4);
  glNamedProgramLocalParameters4fvEXT((GLuint )program, (GLenum )target, (GLuint )index, (GLsizei )count, (const GLfloat* )params);
  OGLM_CHECK_ERR(glNamedProgramLocalParameters4fvEXT, free(params);)
  free(params);
#line 50511 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedProgramLocalParametersI4ivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedProgramLocalParametersI4ivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "program, target, index, count, params");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
	GLsizei	count = (int)SvIV(ST(3))
;
	const GLint*	params = INT2PTR(const GLint *,SvIV(ST(4)))
;
#line 24890 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedProgramLocalParametersI4ivEXT, )
  OGLM_AVAIL_CHECK(__glewNamedProgramLocalParametersI4ivEXT, glNamedProgramLocalParametersI4ivEXT)
  glNamedProgramLocalParametersI4ivEXT(program, target, index, count, params);
  OGLM_CHECK_ERR(glNamedProgramLocalParametersI4ivEXT, )
#line 50540 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedProgramLocalParametersI4ivEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedProgramLocalParametersI4ivEXT_p)
{
    dVAR; dXSARGS;
    if (items < 4)
       croak_xs_usage(cv,  "program, target, index, count, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
	GLsizei	count = (int)SvIV(ST(3))
;
#line 24903 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedProgramLocalParametersI4ivEXT, )
  OGLM_AVAIL_CHECK(__glewNamedProgramLocalParametersI4ivEXT, glNamedProgramLocalParametersI4ivEXT)
  GLint* params = OGLM_GET_VARARGS(params,4,GLint,IV,count*4);
  glNamedProgramLocalParametersI4ivEXT((GLuint )program, (GLenum )target, (GLuint )index, (GLsizei )count, (const GLint* )params);
  OGLM_CHECK_ERR(glNamedProgramLocalParametersI4ivEXT, free(params);)
  free(params);
#line 50569 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedProgramLocalParametersI4uivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedProgramLocalParametersI4uivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "program, target, index, count, params");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
	GLsizei	count = (int)SvIV(ST(3))
;
	const GLuint*	params = INT2PTR(const GLuint *,SvIV(ST(4)))
;
#line 24919 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedProgramLocalParametersI4uivEXT, )
  OGLM_AVAIL_CHECK(__glewNamedProgramLocalParametersI4uivEXT, glNamedProgramLocalParametersI4uivEXT)
  glNamedProgramLocalParametersI4uivEXT(program, target, index, count, params);
  OGLM_CHECK_ERR(glNamedProgramLocalParametersI4uivEXT, )
#line 50598 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedProgramLocalParametersI4uivEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedProgramLocalParametersI4uivEXT_p)
{
    dVAR; dXSARGS;
    if (items < 4)
       croak_xs_usage(cv,  "program, target, index, count, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
	GLsizei	count = (int)SvIV(ST(3))
;
#line 24932 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedProgramLocalParametersI4uivEXT, )
  OGLM_AVAIL_CHECK(__glewNamedProgramLocalParametersI4uivEXT, glNamedProgramLocalParametersI4uivEXT)
  GLuint* params = OGLM_GET_VARARGS(params,4,GLuint,UV,count*4);
  glNamedProgramLocalParametersI4uivEXT((GLuint )program, (GLenum )target, (GLuint )index, (GLsizei )count, (const GLuint* )params);
  OGLM_CHECK_ERR(glNamedProgramLocalParametersI4uivEXT, free(params);)
  free(params);
#line 50627 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedProgramStringEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedProgramStringEXT_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "program, target, format, len, string");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	format = (int)SvIV(ST(2))
;
	GLsizei	len = (int)SvIV(ST(3))
;
	const void *	string = INT2PTR(const void *,SvIV(ST(4)))
;
#line 24948 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedProgramStringEXT, )
  OGLM_AVAIL_CHECK(__glewNamedProgramStringEXT, glNamedProgramStringEXT)
  glNamedProgramStringEXT(program, target, format, len, string);
  OGLM_CHECK_ERR(glNamedProgramStringEXT, )
#line 50656 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedRenderbufferStorage); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedRenderbufferStorage)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "renderbuffer, internalformat, width, height");
    {
	GLuint	renderbuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	internalformat = (int)SvIV(ST(1))
;
	GLsizei	width = (int)SvIV(ST(2))
;
	GLsizei	height = (int)SvIV(ST(3))
;
#line 24961 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedRenderbufferStorage, )
  OGLM_AVAIL_CHECK(__glewNamedRenderbufferStorage, glNamedRenderbufferStorage)
  glNamedRenderbufferStorage(renderbuffer, internalformat, width, height);
  OGLM_CHECK_ERR(glNamedRenderbufferStorage, )
#line 50683 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedRenderbufferStorageEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedRenderbufferStorageEXT)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "renderbuffer, internalformat, width, height");
    {
	GLuint	renderbuffer = (unsigned int)SvUV(ST(0))
;
	GLenum	internalformat = (int)SvIV(ST(1))
;
	GLsizei	width = (int)SvIV(ST(2))
;
	GLsizei	height = (int)SvIV(ST(3))
;
#line 24974 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedRenderbufferStorageEXT, )
  OGLM_AVAIL_CHECK(__glewNamedRenderbufferStorageEXT, glNamedRenderbufferStorageEXT)
  glNamedRenderbufferStorageEXT(renderbuffer, internalformat, width, height);
  OGLM_CHECK_ERR(glNamedRenderbufferStorageEXT, )
#line 50710 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedRenderbufferStorageMultisample); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedRenderbufferStorageMultisample)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "renderbuffer, samples, internalformat, width, height");
    {
	GLuint	renderbuffer = (unsigned int)SvUV(ST(0))
;
	GLsizei	samples = (int)SvIV(ST(1))
;
	GLenum	internalformat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
#line 24988 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedRenderbufferStorageMultisample, )
  OGLM_AVAIL_CHECK(__glewNamedRenderbufferStorageMultisample, glNamedRenderbufferStorageMultisample)
  glNamedRenderbufferStorageMultisample(renderbuffer, samples, internalformat, width, height);
  OGLM_CHECK_ERR(glNamedRenderbufferStorageMultisample, )
#line 50739 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedRenderbufferStorageMultisampleAdvancedAMD); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedRenderbufferStorageMultisampleAdvancedAMD)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "renderbuffer, samples, storageSamples, internalformat, width, height");
    {
	GLuint	renderbuffer = (unsigned int)SvUV(ST(0))
;
	GLsizei	samples = (int)SvIV(ST(1))
;
	GLsizei	storageSamples = (int)SvIV(ST(2))
;
	GLenum	internalformat = (int)SvIV(ST(3))
;
	GLsizei	width = (int)SvIV(ST(4))
;
	GLsizei	height = (int)SvIV(ST(5))
;
#line 25003 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedRenderbufferStorageMultisampleAdvancedAMD, )
  OGLM_AVAIL_CHECK(__glewNamedRenderbufferStorageMultisampleAdvancedAMD, glNamedRenderbufferStorageMultisampleAdvancedAMD)
  glNamedRenderbufferStorageMultisampleAdvancedAMD(renderbuffer, samples, storageSamples, internalformat, width, height);
  OGLM_CHECK_ERR(glNamedRenderbufferStorageMultisampleAdvancedAMD, )
#line 50770 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedRenderbufferStorageMultisampleCoverageEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedRenderbufferStorageMultisampleCoverageEXT)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "renderbuffer, coverageSamples, colorSamples, internalformat, width, height");
    {
	GLuint	renderbuffer = (unsigned int)SvUV(ST(0))
;
	GLsizei	coverageSamples = (int)SvIV(ST(1))
;
	GLsizei	colorSamples = (int)SvIV(ST(2))
;
	GLenum	internalformat = (int)SvIV(ST(3))
;
	GLsizei	width = (int)SvIV(ST(4))
;
	GLsizei	height = (int)SvIV(ST(5))
;
#line 25018 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedRenderbufferStorageMultisampleCoverageEXT, )
  OGLM_AVAIL_CHECK(__glewNamedRenderbufferStorageMultisampleCoverageEXT, glNamedRenderbufferStorageMultisampleCoverageEXT)
  glNamedRenderbufferStorageMultisampleCoverageEXT(renderbuffer, coverageSamples, colorSamples, internalformat, width, height);
  OGLM_CHECK_ERR(glNamedRenderbufferStorageMultisampleCoverageEXT, )
#line 50801 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedRenderbufferStorageMultisampleEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedRenderbufferStorageMultisampleEXT)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "renderbuffer, samples, internalformat, width, height");
    {
	GLuint	renderbuffer = (unsigned int)SvUV(ST(0))
;
	GLsizei	samples = (int)SvIV(ST(1))
;
	GLenum	internalformat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
#line 25032 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedRenderbufferStorageMultisampleEXT, )
  OGLM_AVAIL_CHECK(__glewNamedRenderbufferStorageMultisampleEXT, glNamedRenderbufferStorageMultisampleEXT)
  glNamedRenderbufferStorageMultisampleEXT(renderbuffer, samples, internalformat, width, height);
  OGLM_CHECK_ERR(glNamedRenderbufferStorageMultisampleEXT, )
#line 50830 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNamedStringARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNamedStringARB)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "type, namelen, name, stringlen, string");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	GLint	namelen = (int)SvIV(ST(1))
;
	const GLchar*	name = (const GLchar *)SvPV_nolen(ST(2))
;
	GLint	stringlen = (int)SvIV(ST(3))
;
	const GLchar *	string = (const GLchar *)SvPV_nolen(ST(4))
;
#line 25046 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNamedStringARB, )
  OGLM_AVAIL_CHECK(__glewNamedStringARB, glNamedStringARB)
  glNamedStringARB(type, namelen, name, stringlen, string);
  OGLM_CHECK_ERR(glNamedStringARB, )
#line 50859 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNewBufferRegion); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNewBufferRegion)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "region");
    {
	GLenum	region = (int)SvIV(ST(0))
;
	GLuint	RETVAL;
	dXSTARG;
#line 25056 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNewBufferRegion, )
  OGLM_AVAIL_CHECK(__glewNewBufferRegion, glNewBufferRegion)
  RETVAL = glNewBufferRegion(region);
  OGLM_CHECK_ERR(glNewBufferRegion, )
#line 50882 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glNewList); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNewList)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "list, mode");
    {
	GLuint	list = (unsigned int)SvUV(ST(0))
;
	GLenum	mode = (int)SvIV(ST(1))
;
#line 25069 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNewList, )
  glNewList(list, mode);
  OGLM_CHECK_ERR(glNewList, )
#line 50906 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNewObjectBufferATI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNewObjectBufferATI_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "size, pointer, usage");
    {
	GLsizei	size = (int)SvIV(ST(0))
;
	const void *	pointer = INT2PTR(const void *,SvIV(ST(1)))
;
	GLenum	usage = (int)SvIV(ST(2))
;
	GLuint	RETVAL;
	dXSTARG;
#line 25080 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNewObjectBufferATI, )
  OGLM_AVAIL_CHECK(__glewNewObjectBufferATI, glNewObjectBufferATI)
  RETVAL = glNewObjectBufferATI(size, pointer, usage);
  OGLM_CHECK_ERR(glNewObjectBufferATI, )
#line 50933 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHu((UV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glNonlinLightfvSGIX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNonlinLightfvSGIX_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "light, pname, terms, params");
    {
	GLenum	light = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint	terms = (int)SvIV(ST(2))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(3)))
;
#line 25095 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNonlinLightfvSGIX, )
  OGLM_AVAIL_CHECK(__glewNonlinLightfvSGIX, glNonlinLightfvSGIX)
  glNonlinLightfvSGIX(light, pname, terms, params);
  OGLM_CHECK_ERR(glNonlinLightfvSGIX, )
#line 50962 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNonlinMaterialfvSGIX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNonlinMaterialfvSGIX_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "face, pname, terms, params");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint	terms = (int)SvIV(ST(2))
;
	const GLfloat*	params = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 25108 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNonlinMaterialfvSGIX, )
  OGLM_AVAIL_CHECK(__glewNonlinMaterialfvSGIX, glNonlinMaterialfvSGIX)
  glNonlinMaterialfvSGIX(face, pname, terms, params);
  OGLM_CHECK_ERR(glNonlinMaterialfvSGIX, )
#line 50989 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormal3b); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormal3b)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "nx, ny, nz");
    {
	GLbyte	nx = (int)SvIV(ST(0))
;
	GLbyte	ny = (int)SvIV(ST(1))
;
	GLbyte	nz = (int)SvIV(ST(2))
;
#line 25120 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormal3b, )
  glNormal3b(nx, ny, nz);
  OGLM_CHECK_ERR(glNormal3b, )
#line 51013 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormal3bv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormal3bv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLbyte *	v = INT2PTR(const GLbyte *,SvIV(ST(0)))
;
#line 25129 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormal3bv, )
  glNormal3bv(v);
  OGLM_CHECK_ERR(glNormal3bv, )
#line 51033 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormal3bv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormal3bv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 25137 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormal3bv, )
  GLbyte *v = OGLM_GET_VARARGS(v,0,GLbyte,IV,3);
  glNormal3bv((const GLbyte *)v);
  OGLM_CHECK_ERR(glNormal3bv, free(v);)
  free(v);
#line 51053 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormal3d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormal3d)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "nx, ny, nz");
    {
	GLdouble	nx = (double)SvNV(ST(0))
;
	GLdouble	ny = (double)SvNV(ST(1))
;
	GLdouble	nz = (double)SvNV(ST(2))
;
#line 25150 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormal3d, )
  glNormal3d(nx, ny, nz);
  OGLM_CHECK_ERR(glNormal3d, )
#line 51077 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormal3dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormal3dv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLdouble *	v = INT2PTR(const GLdouble *,SvIV(ST(0)))
;
#line 25159 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormal3dv, )
  glNormal3dv(v);
  OGLM_CHECK_ERR(glNormal3dv, )
#line 51097 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormal3dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormal3dv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 25167 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormal3dv, )
  GLdouble *v = OGLM_GET_VARARGS(v,0,GLdouble,NV,3);
  glNormal3dv((const GLdouble *)v);
  OGLM_CHECK_ERR(glNormal3dv, free(v);)
  free(v);
#line 51117 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormal3f); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormal3f)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "nx, ny, nz");
    {
	GLfloat	nx = (float)SvNV(ST(0))
;
	GLfloat	ny = (float)SvNV(ST(1))
;
	GLfloat	nz = (float)SvNV(ST(2))
;
#line 25180 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormal3f, )
  glNormal3f(nx, ny, nz);
  OGLM_CHECK_ERR(glNormal3f, )
#line 51141 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormal3fVertex3fSUN); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormal3fVertex3fSUN)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "nx, ny, nz, x, y, z");
    {
	GLfloat	nx = (float)SvNV(ST(0))
;
	GLfloat	ny = (float)SvNV(ST(1))
;
	GLfloat	nz = (float)SvNV(ST(2))
;
	GLfloat	x = (float)SvNV(ST(3))
;
	GLfloat	y = (float)SvNV(ST(4))
;
	GLfloat	z = (float)SvNV(ST(5))
;
#line 25194 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormal3fVertex3fSUN, )
  OGLM_AVAIL_CHECK(__glewNormal3fVertex3fSUN, glNormal3fVertex3fSUN)
  glNormal3fVertex3fSUN(nx, ny, nz, x, y, z);
  OGLM_CHECK_ERR(glNormal3fVertex3fSUN, )
#line 51172 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormal3fVertex3fvSUN_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormal3fVertex3fvSUN_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, v");
    {
	const GLfloat*	n = INT2PTR(const GLfloat *,SvIV(ST(0)))
;
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 25205 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormal3fVertex3fvSUN, )
  OGLM_AVAIL_CHECK(__glewNormal3fVertex3fvSUN, glNormal3fVertex3fvSUN)
  glNormal3fVertex3fvSUN(n, v);
  OGLM_CHECK_ERR(glNormal3fVertex3fvSUN, )
#line 51195 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormal3fVertex3fvSUN_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormal3fVertex3fvSUN_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "nSV, vSV");
    {
	SV *	nSV = ST(0)
;
	SV *	vSV = ST(1)
;
#line 25216 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormal3fVertex3fvSUN, )
  OGLM_AVAIL_CHECK(__glewNormal3fVertex3fvSUN, glNormal3fVertex3fvSUN)
  GLfloat* n = OGLM_GET_ARRAY(n, GLfloat, NV, 3);
  GLfloat *v = OGLM_GET_ARRAY(v, GLfloat, NV, 3);
  glNormal3fVertex3fvSUN((const GLfloat* )n, (const GLfloat *)v);
  OGLM_CHECK_ERR(glNormal3fVertex3fvSUN, free(n);free(v);)
  free(n);free(v);
#line 51221 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormal3fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormal3fv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(0)))
;
#line 25229 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormal3fv, )
  glNormal3fv(v);
  OGLM_CHECK_ERR(glNormal3fv, )
#line 51241 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormal3fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormal3fv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 25237 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormal3fv, )
  GLfloat *v = OGLM_GET_VARARGS(v,0,GLfloat,NV,3);
  glNormal3fv((const GLfloat *)v);
  OGLM_CHECK_ERR(glNormal3fv, free(v);)
  free(v);
#line 51261 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormal3hNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormal3hNV)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "nx, ny, nz");
    {
	GLhalf	nx = (float)SvNV(ST(0))
;
	GLhalf	ny = (float)SvNV(ST(1))
;
	GLhalf	nz = (float)SvNV(ST(2))
;
#line 25250 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormal3hNV, )
  OGLM_AVAIL_CHECK(__glewNormal3hNV, glNormal3hNV)
  glNormal3hNV(nx, ny, nz);
  OGLM_CHECK_ERR(glNormal3hNV, )
#line 51286 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormal3hvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormal3hvNV_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLhalf*	v = INT2PTR(const GLhalf *,SvIV(ST(0)))
;
#line 25260 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormal3hvNV, )
  OGLM_AVAIL_CHECK(__glewNormal3hvNV, glNormal3hvNV)
  glNormal3hvNV(v);
  OGLM_CHECK_ERR(glNormal3hvNV, )
#line 51307 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormal3hvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormal3hvNV_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 25269 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormal3hvNV, )
  OGLM_AVAIL_CHECK(__glewNormal3hvNV, glNormal3hvNV)
  GLhalf* v = OGLM_GET_VARARGS(v,0,GLhalf,NV,3);
  glNormal3hvNV((const GLhalf* )v);
  OGLM_CHECK_ERR(glNormal3hvNV, free(v);)
  free(v);
#line 51328 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormal3i); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormal3i)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "nx, ny, nz");
    {
	GLint	nx = (int)SvIV(ST(0))
;
	GLint	ny = (int)SvIV(ST(1))
;
	GLint	nz = (int)SvIV(ST(2))
;
#line 25283 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormal3i, )
  glNormal3i(nx, ny, nz);
  OGLM_CHECK_ERR(glNormal3i, )
#line 51352 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormal3iv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormal3iv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLint *	v = INT2PTR(const GLint *,SvIV(ST(0)))
;
#line 25292 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormal3iv, )
  glNormal3iv(v);
  OGLM_CHECK_ERR(glNormal3iv, )
#line 51372 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormal3iv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormal3iv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 25300 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormal3iv, )
  GLint *v = OGLM_GET_VARARGS(v,0,GLint,IV,3);
  glNormal3iv((const GLint *)v);
  OGLM_CHECK_ERR(glNormal3iv, free(v);)
  free(v);
#line 51392 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormal3s); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormal3s)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "nx, ny, nz");
    {
	GLshort	nx = (short)SvIV(ST(0))
;
	GLshort	ny = (short)SvIV(ST(1))
;
	GLshort	nz = (short)SvIV(ST(2))
;
#line 25313 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormal3s, )
  glNormal3s(nx, ny, nz);
  OGLM_CHECK_ERR(glNormal3s, )
#line 51416 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormal3sv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormal3sv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLshort *	v = INT2PTR(const GLshort *,SvIV(ST(0)))
;
#line 25322 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormal3sv, )
  glNormal3sv(v);
  OGLM_CHECK_ERR(glNormal3sv, )
#line 51436 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormal3sv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormal3sv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 25330 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormal3sv, )
  GLshort *v = OGLM_GET_VARARGS(v,0,GLshort,IV,3);
  glNormal3sv((const GLshort *)v);
  OGLM_CHECK_ERR(glNormal3sv, free(v);)
  free(v);
#line 51456 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormal3x); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormal3x)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "nx, ny, nz");
    {
	GLfixed	nx = (int)SvIV(ST(0))
;
	GLfixed	ny = (int)SvIV(ST(1))
;
	GLfixed	nz = (int)SvIV(ST(2))
;
#line 25343 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormal3x, )
  OGLM_AVAIL_CHECK(__glewNormal3x, glNormal3x)
  glNormal3x(nx, ny, nz);
  OGLM_CHECK_ERR(glNormal3x, )
#line 51481 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormalFormatNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormalFormatNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "type, stride");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	GLsizei	stride = (int)SvIV(ST(1))
;
#line 25354 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormalFormatNV, )
  OGLM_AVAIL_CHECK(__glewNormalFormatNV, glNormalFormatNV)
  glNormalFormatNV(type, stride);
  OGLM_CHECK_ERR(glNormalFormatNV, )
#line 51504 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormalP3ui); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormalP3ui)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "type, coords");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	GLuint	coords = (unsigned int)SvUV(ST(1))
;
#line 25365 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormalP3ui, )
  OGLM_AVAIL_CHECK(__glewNormalP3ui, glNormalP3ui)
  glNormalP3ui(type, coords);
  OGLM_CHECK_ERR(glNormalP3ui, )
#line 51527 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormalP3uiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormalP3uiv_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "type, coords");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	const GLuint*	coords = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 25376 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormalP3uiv, )
  OGLM_AVAIL_CHECK(__glewNormalP3uiv, glNormalP3uiv)
  glNormalP3uiv(type, coords);
  OGLM_CHECK_ERR(glNormalP3uiv, )
#line 51550 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormalP3uiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormalP3uiv_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "type, ...");
    {
	GLenum	type = (int)SvIV(ST(0))
;
#line 25386 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormalP3uiv, )
  OGLM_AVAIL_CHECK(__glewNormalP3uiv, glNormalP3uiv)
  GLuint* coords = OGLM_GET_VARARGS(coords,1,GLuint,UV,1);
  glNormalP3uiv((GLenum )type, (const GLuint* )coords);
  OGLM_CHECK_ERR(glNormalP3uiv, free(coords);)
  free(coords);
#line 51573 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormalPointer_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormalPointer_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "type, stride, pointer");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	GLsizei	stride = (int)SvIV(ST(1))
;
	const void *	pointer = INT2PTR(const void *,SvIV(ST(2)))
;
#line 25400 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormalPointer, )
  glNormalPointer(type, stride, pointer);
  OGLM_CHECK_ERR(glNormalPointer, )
#line 51597 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormalPointerEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormalPointerEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "type, stride, count, pointer");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	GLsizei	stride = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const void *	pointer = INT2PTR(const void *,SvIV(ST(3)))
;
#line 25412 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormalPointerEXT, )
  OGLM_AVAIL_CHECK(__glewNormalPointerEXT, glNormalPointerEXT)
  glNormalPointerEXT(type, stride, count, pointer);
  OGLM_CHECK_ERR(glNormalPointerEXT, )
#line 51624 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormalPointerListIBM_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormalPointerListIBM_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "type, stride, pointer, ptrstride");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	GLint	stride = (int)SvIV(ST(1))
;
	const void**	pointer = INT2PTR(const void **,SvIV(ST(2)))
;
	GLint	ptrstride = (int)SvIV(ST(3))
;
#line 25425 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormalPointerListIBM, )
  OGLM_AVAIL_CHECK(__glewNormalPointerListIBM, glNormalPointerListIBM)
  glNormalPointerListIBM(type, stride, pointer, ptrstride);
  OGLM_CHECK_ERR(glNormalPointerListIBM, )
#line 51651 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormalPointervINTEL_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormalPointervINTEL_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "type, pointer");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	const void**	pointer = INT2PTR(const void **,SvIV(ST(1)))
;
#line 25436 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormalPointervINTEL, )
  OGLM_AVAIL_CHECK(__glewNormalPointervINTEL, glNormalPointervINTEL)
  glNormalPointervINTEL(type, pointer);
  OGLM_CHECK_ERR(glNormalPointervINTEL, )
#line 51674 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormalStream3bATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormalStream3bATI)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "stream, nx, ny, nz");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	GLbyte	nx = (int)SvIV(ST(1))
;
	GLbyte	ny = (int)SvIV(ST(2))
;
	GLbyte	nz = (int)SvIV(ST(3))
;
#line 25449 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormalStream3bATI, )
  OGLM_AVAIL_CHECK(__glewNormalStream3bATI, glNormalStream3bATI)
  glNormalStream3bATI(stream, nx, ny, nz);
  OGLM_CHECK_ERR(glNormalStream3bATI, )
#line 51701 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormalStream3bvATI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormalStream3bvATI_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "stream, coords");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	const GLbyte *	coords = INT2PTR(const GLbyte *,SvIV(ST(1)))
;
#line 25460 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormalStream3bvATI, )
  OGLM_AVAIL_CHECK(__glewNormalStream3bvATI, glNormalStream3bvATI)
  glNormalStream3bvATI(stream, coords);
  OGLM_CHECK_ERR(glNormalStream3bvATI, )
#line 51724 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormalStream3bvATI_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormalStream3bvATI_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "stream, ...");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
#line 25470 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormalStream3bvATI, )
  OGLM_AVAIL_CHECK(__glewNormalStream3bvATI, glNormalStream3bvATI)
  GLbyte *coords = OGLM_GET_VARARGS(coords,1,GLbyte,IV,3);
  glNormalStream3bvATI((GLenum )stream, (const GLbyte *)coords);
  OGLM_CHECK_ERR(glNormalStream3bvATI, free(coords);)
  free(coords);
#line 51747 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormalStream3dATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormalStream3dATI)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "stream, nx, ny, nz");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	GLdouble	nx = (double)SvNV(ST(1))
;
	GLdouble	ny = (double)SvNV(ST(2))
;
	GLdouble	nz = (double)SvNV(ST(3))
;
#line 25485 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormalStream3dATI, )
  OGLM_AVAIL_CHECK(__glewNormalStream3dATI, glNormalStream3dATI)
  glNormalStream3dATI(stream, nx, ny, nz);
  OGLM_CHECK_ERR(glNormalStream3dATI, )
#line 51774 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormalStream3dvATI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormalStream3dvATI_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "stream, coords");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	const GLdouble *	coords = INT2PTR(const GLdouble *,SvIV(ST(1)))
;
#line 25496 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormalStream3dvATI, )
  OGLM_AVAIL_CHECK(__glewNormalStream3dvATI, glNormalStream3dvATI)
  glNormalStream3dvATI(stream, coords);
  OGLM_CHECK_ERR(glNormalStream3dvATI, )
#line 51797 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormalStream3dvATI_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormalStream3dvATI_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "stream, ...");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
#line 25506 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormalStream3dvATI, )
  OGLM_AVAIL_CHECK(__glewNormalStream3dvATI, glNormalStream3dvATI)
  GLdouble *coords = OGLM_GET_VARARGS(coords,1,GLdouble,NV,3);
  glNormalStream3dvATI((GLenum )stream, (const GLdouble *)coords);
  OGLM_CHECK_ERR(glNormalStream3dvATI, free(coords);)
  free(coords);
#line 51820 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormalStream3fATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormalStream3fATI)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "stream, nx, ny, nz");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	GLfloat	nx = (float)SvNV(ST(1))
;
	GLfloat	ny = (float)SvNV(ST(2))
;
	GLfloat	nz = (float)SvNV(ST(3))
;
#line 25521 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormalStream3fATI, )
  OGLM_AVAIL_CHECK(__glewNormalStream3fATI, glNormalStream3fATI)
  glNormalStream3fATI(stream, nx, ny, nz);
  OGLM_CHECK_ERR(glNormalStream3fATI, )
#line 51847 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormalStream3fvATI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormalStream3fvATI_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "stream, coords");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	const GLfloat *	coords = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 25532 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormalStream3fvATI, )
  OGLM_AVAIL_CHECK(__glewNormalStream3fvATI, glNormalStream3fvATI)
  glNormalStream3fvATI(stream, coords);
  OGLM_CHECK_ERR(glNormalStream3fvATI, )
#line 51870 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormalStream3fvATI_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormalStream3fvATI_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "stream, ...");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
#line 25542 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormalStream3fvATI, )
  OGLM_AVAIL_CHECK(__glewNormalStream3fvATI, glNormalStream3fvATI)
  GLfloat *coords = OGLM_GET_VARARGS(coords,1,GLfloat,NV,3);
  glNormalStream3fvATI((GLenum )stream, (const GLfloat *)coords);
  OGLM_CHECK_ERR(glNormalStream3fvATI, free(coords);)
  free(coords);
#line 51893 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormalStream3iATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormalStream3iATI)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "stream, nx, ny, nz");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	GLint	nx = (int)SvIV(ST(1))
;
	GLint	ny = (int)SvIV(ST(2))
;
	GLint	nz = (int)SvIV(ST(3))
;
#line 25557 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormalStream3iATI, )
  OGLM_AVAIL_CHECK(__glewNormalStream3iATI, glNormalStream3iATI)
  glNormalStream3iATI(stream, nx, ny, nz);
  OGLM_CHECK_ERR(glNormalStream3iATI, )
#line 51920 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormalStream3ivATI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormalStream3ivATI_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "stream, coords");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	const GLint *	coords = INT2PTR(const GLint *,SvIV(ST(1)))
;
#line 25568 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormalStream3ivATI, )
  OGLM_AVAIL_CHECK(__glewNormalStream3ivATI, glNormalStream3ivATI)
  glNormalStream3ivATI(stream, coords);
  OGLM_CHECK_ERR(glNormalStream3ivATI, )
#line 51943 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormalStream3ivATI_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormalStream3ivATI_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "stream, ...");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
#line 25578 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormalStream3ivATI, )
  OGLM_AVAIL_CHECK(__glewNormalStream3ivATI, glNormalStream3ivATI)
  GLint *coords = OGLM_GET_VARARGS(coords,1,GLint,IV,3);
  glNormalStream3ivATI((GLenum )stream, (const GLint *)coords);
  OGLM_CHECK_ERR(glNormalStream3ivATI, free(coords);)
  free(coords);
#line 51966 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormalStream3sATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormalStream3sATI)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "stream, nx, ny, nz");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	GLshort	nx = (short)SvIV(ST(1))
;
	GLshort	ny = (short)SvIV(ST(2))
;
	GLshort	nz = (short)SvIV(ST(3))
;
#line 25593 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormalStream3sATI, )
  OGLM_AVAIL_CHECK(__glewNormalStream3sATI, glNormalStream3sATI)
  glNormalStream3sATI(stream, nx, ny, nz);
  OGLM_CHECK_ERR(glNormalStream3sATI, )
#line 51993 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormalStream3svATI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormalStream3svATI_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "stream, coords");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	const GLshort *	coords = INT2PTR(const GLshort *,SvIV(ST(1)))
;
#line 25604 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormalStream3svATI, )
  OGLM_AVAIL_CHECK(__glewNormalStream3svATI, glNormalStream3svATI)
  glNormalStream3svATI(stream, coords);
  OGLM_CHECK_ERR(glNormalStream3svATI, )
#line 52016 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glNormalStream3svATI_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glNormalStream3svATI_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "stream, ...");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
#line 25614 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glNormalStream3svATI, )
  OGLM_AVAIL_CHECK(__glewNormalStream3svATI, glNormalStream3svATI)
  GLshort *coords = OGLM_GET_VARARGS(coords,1,GLshort,IV,3);
  glNormalStream3svATI((GLenum )stream, (const GLshort *)coords);
  OGLM_CHECK_ERR(glNormalStream3svATI, free(coords);)
  free(coords);
#line 52039 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glObjectLabel); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glObjectLabel)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "identifier, name, length, label");
    {
	GLenum	identifier = (int)SvIV(ST(0))
;
	GLuint	name = (unsigned int)SvUV(ST(1))
;
	GLsizei	length = (int)SvIV(ST(2))
;
	const GLchar*	label = (const GLchar *)SvPV_nolen(ST(3))
;
#line 25631 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glObjectLabel, )
  OGLM_AVAIL_CHECK(__glewObjectLabel, glObjectLabel)
  glObjectLabel(identifier, name, length, label);
  OGLM_CHECK_ERR(glObjectLabel, )
#line 52067 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glObjectPtrLabel_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glObjectPtrLabel_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "ptr, length, label");
    {
	void*	ptr = INT2PTR(void *,SvIV(ST(0)))
;
	GLsizei	length = (int)SvIV(ST(1))
;
	const GLchar*	label = (const GLchar *)SvPV_nolen(ST(2))
;
#line 25645 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glObjectPtrLabel, )
  OGLM_AVAIL_CHECK(__glewObjectPtrLabel, glObjectPtrLabel)
  glObjectPtrLabel(ptr, length, label);
  OGLM_CHECK_ERR(glObjectPtrLabel, )
#line 52093 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glObjectPurgeableAPPLE); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glObjectPurgeableAPPLE)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "objectType, name, option");
    {
	GLenum	objectType = (int)SvIV(ST(0))
;
	GLuint	name = (unsigned int)SvUV(ST(1))
;
	GLenum	option = (int)SvIV(ST(2))
;
	GLenum	RETVAL;
	dXSTARG;
#line 25657 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glObjectPurgeableAPPLE, )
  OGLM_AVAIL_CHECK(__glewObjectPurgeableAPPLE, glObjectPurgeableAPPLE)
  RETVAL = glObjectPurgeableAPPLE(objectType, name, option);
  OGLM_CHECK_ERR(glObjectPurgeableAPPLE, )
#line 52120 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glObjectUnpurgeableAPPLE); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glObjectUnpurgeableAPPLE)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "objectType, name, option");
    {
	GLenum	objectType = (int)SvIV(ST(0))
;
	GLuint	name = (unsigned int)SvUV(ST(1))
;
	GLenum	option = (int)SvIV(ST(2))
;
	GLenum	RETVAL;
	dXSTARG;
#line 25671 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glObjectUnpurgeableAPPLE, )
  OGLM_AVAIL_CHECK(__glewObjectUnpurgeableAPPLE, glObjectUnpurgeableAPPLE)
  RETVAL = glObjectUnpurgeableAPPLE(objectType, name, option);
  OGLM_CHECK_ERR(glObjectUnpurgeableAPPLE, )
#line 52149 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glOrtho); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glOrtho)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "left, right, bottom, top, zNear, zFar");
    {
	GLdouble	left = (double)SvNV(ST(0))
;
	GLdouble	right = (double)SvNV(ST(1))
;
	GLdouble	bottom = (double)SvNV(ST(2))
;
	GLdouble	top = (double)SvNV(ST(3))
;
	GLdouble	zNear = (double)SvNV(ST(4))
;
	GLdouble	zFar = (double)SvNV(ST(5))
;
#line 25688 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glOrtho, )
  glOrtho(left, right, bottom, top, zNear, zFar);
  OGLM_CHECK_ERR(glOrtho, )
#line 52181 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glOrthof); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glOrthof)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "left, right, bottom, top, zNear, zFar");
    {
	GLfloat	left = (float)SvNV(ST(0))
;
	GLfloat	right = (float)SvNV(ST(1))
;
	GLfloat	bottom = (float)SvNV(ST(2))
;
	GLfloat	top = (float)SvNV(ST(3))
;
	GLfloat	zNear = (float)SvNV(ST(4))
;
	GLfloat	zFar = (float)SvNV(ST(5))
;
#line 25702 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glOrthof, )
  OGLM_AVAIL_CHECK(__glewOrthof, glOrthof)
  glOrthof(left, right, bottom, top, zNear, zFar);
  OGLM_CHECK_ERR(glOrthof, )
#line 52212 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glOrthofOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glOrthofOES)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "l, r, b, t, n, f");
    {
	GLfloat	l = (float)SvNV(ST(0))
;
	GLfloat	r = (float)SvNV(ST(1))
;
	GLfloat	b = (float)SvNV(ST(2))
;
	GLfloat	t = (float)SvNV(ST(3))
;
	GLfloat	n = (float)SvNV(ST(4))
;
	GLfloat	f = (float)SvNV(ST(5))
;
#line 25717 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glOrthofOES, )
  OGLM_AVAIL_CHECK(__glewOrthofOES, glOrthofOES)
  glOrthofOES(l, r, b, t, n, f);
  OGLM_CHECK_ERR(glOrthofOES, )
#line 52243 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glOrthox); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glOrthox)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "left, right, bottom, top, zNear, zFar");
    {
	GLfixed	left = (int)SvIV(ST(0))
;
	GLfixed	right = (int)SvIV(ST(1))
;
	GLfixed	bottom = (int)SvIV(ST(2))
;
	GLfixed	top = (int)SvIV(ST(3))
;
	GLfixed	zNear = (int)SvIV(ST(4))
;
	GLfixed	zFar = (int)SvIV(ST(5))
;
#line 25732 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glOrthox, )
  OGLM_AVAIL_CHECK(__glewOrthox, glOrthox)
  glOrthox(left, right, bottom, top, zNear, zFar);
  OGLM_CHECK_ERR(glOrthox, )
#line 52274 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPNTrianglesfATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPNTrianglesfATI)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, param");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLfloat	param = (float)SvNV(ST(1))
;
#line 25743 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPNTrianglesfATI, )
  OGLM_AVAIL_CHECK(__glewPNTrianglesfATI, glPNTrianglesfATI)
  glPNTrianglesfATI(pname, param);
  OGLM_CHECK_ERR(glPNTrianglesfATI, )
#line 52297 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPNTrianglesiATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPNTrianglesiATI)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, param");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLint	param = (int)SvIV(ST(1))
;
#line 25754 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPNTrianglesiATI, )
  OGLM_AVAIL_CHECK(__glewPNTrianglesiATI, glPNTrianglesiATI)
  glPNTrianglesiATI(pname, param);
  OGLM_CHECK_ERR(glPNTrianglesiATI, )
#line 52320 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPassTexCoordATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPassTexCoordATI)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "dst, coord, swizzle");
    {
	GLuint	dst = (unsigned int)SvUV(ST(0))
;
	GLuint	coord = (unsigned int)SvUV(ST(1))
;
	GLenum	swizzle = (int)SvIV(ST(2))
;
#line 25766 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPassTexCoordATI, )
  OGLM_AVAIL_CHECK(__glewPassTexCoordATI, glPassTexCoordATI)
  glPassTexCoordATI(dst, coord, swizzle);
  OGLM_CHECK_ERR(glPassTexCoordATI, )
#line 52345 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPassThrough); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPassThrough)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "token");
    {
	GLfloat	token = (float)SvNV(ST(0))
;
#line 25776 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPassThrough, )
  glPassThrough(token);
  OGLM_CHECK_ERR(glPassThrough, )
#line 52365 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPatchParameterfv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPatchParameterfv_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, values");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	const GLfloat*	values = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 25786 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPatchParameterfv, )
  OGLM_AVAIL_CHECK(__glewPatchParameterfv, glPatchParameterfv)
  glPatchParameterfv(pname, values);
  OGLM_CHECK_ERR(glPatchParameterfv, )
#line 52388 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPatchParameterfv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPatchParameterfv_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "pname, ...");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
#line 25796 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPatchParameterfv, )
  OGLM_AVAIL_CHECK(__glewPatchParameterfv, glPatchParameterfv)
  OGLM_SIZE_ENUM(PatchParameterName,pname,1)
  GLfloat* values = OGLM_GET_VARARGS(values,1,GLfloat,NV,pname_count);
  glPatchParameterfv((GLenum )pname, (const GLfloat* )values);
  OGLM_CHECK_ERR(glPatchParameterfv, free(values);)
  free(values);
#line 52412 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPatchParameteri); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPatchParameteri)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "pname, value");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLint	value = (int)SvIV(ST(1))
;
#line 25812 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPatchParameteri, )
  OGLM_AVAIL_CHECK(__glewPatchParameteri, glPatchParameteri)
  glPatchParameteri(pname, value);
  OGLM_CHECK_ERR(glPatchParameteri, )
#line 52436 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPathColorGenNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPathColorGenNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "color, genMode, colorFormat, coeffs");
    {
	GLenum	color = (int)SvIV(ST(0))
;
	GLenum	genMode = (int)SvIV(ST(1))
;
	GLenum	colorFormat = (int)SvIV(ST(2))
;
	const GLfloat*	coeffs = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 25825 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPathColorGenNV, )
  OGLM_AVAIL_CHECK(__glewPathColorGenNV, glPathColorGenNV)
  glPathColorGenNV(color, genMode, colorFormat, coeffs);
  OGLM_CHECK_ERR(glPathColorGenNV, )
#line 52463 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPathCommandsNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPathCommandsNV_c)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "path, numCommands, commands, numCoords, coordType, coords");
    {
	GLuint	path = (unsigned int)SvUV(ST(0))
;
	GLsizei	numCommands = (int)SvIV(ST(1))
;
	const GLubyte*        commands = (const GLubyte *)SvPV_nolen(ST(2))
;
	GLsizei	numCoords = (int)SvIV(ST(3))
;
	GLenum	coordType = (int)SvIV(ST(4))
;
	const void*	coords = INT2PTR(const void *,SvIV(ST(5)))
;
#line 25840 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPathCommandsNV, )
  OGLM_AVAIL_CHECK(__glewPathCommandsNV, glPathCommandsNV)
  glPathCommandsNV(path, numCommands, commands, numCoords, coordType, coords);
  OGLM_CHECK_ERR(glPathCommandsNV, )
#line 52494 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPathCoordsNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPathCoordsNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "path, numCoords, coordType, coords");
    {
	GLuint	path = (unsigned int)SvUV(ST(0))
;
	GLsizei	numCoords = (int)SvIV(ST(1))
;
	GLenum	coordType = (int)SvIV(ST(2))
;
	const void *	coords = INT2PTR(const void *,SvIV(ST(3)))
;
#line 25853 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPathCoordsNV, )
  OGLM_AVAIL_CHECK(__glewPathCoordsNV, glPathCoordsNV)
  glPathCoordsNV(path, numCoords, coordType, coords);
  OGLM_CHECK_ERR(glPathCoordsNV, )
#line 52521 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPathCoverDepthFuncNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPathCoverDepthFuncNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "func");
    {
	GLenum	func = (int)SvIV(ST(0))
;
#line 25863 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPathCoverDepthFuncNV, )
  OGLM_AVAIL_CHECK(__glewPathCoverDepthFuncNV, glPathCoverDepthFuncNV)
  glPathCoverDepthFuncNV(func);
  OGLM_CHECK_ERR(glPathCoverDepthFuncNV, )
#line 52542 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPathDashArrayNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPathDashArrayNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "path, dashCount, dashArray");
    {
	GLuint	path = (unsigned int)SvUV(ST(0))
;
	GLsizei	dashCount = (int)SvIV(ST(1))
;
	const GLfloat*	dashArray = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 25875 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPathDashArrayNV, )
  OGLM_AVAIL_CHECK(__glewPathDashArrayNV, glPathDashArrayNV)
  glPathDashArrayNV(path, dashCount, dashArray);
  OGLM_CHECK_ERR(glPathDashArrayNV, )
#line 52567 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPathDashArrayNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPathDashArrayNV_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "path, ...");
    {
	GLuint	path = (unsigned int)SvUV(ST(0))
;
#line 25885 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPathDashArrayNV, )
  OGLM_AVAIL_CHECK(__glewPathDashArrayNV, glPathDashArrayNV)
  GLsizei dashCount = items-1;
  GLfloat* dashArray = OGLM_GET_VARARGS(dashArray,1,GLfloat,NV,dashCount);
  glPathDashArrayNV((GLuint )path, (GLsizei )dashCount, (const GLfloat* )dashArray);
  OGLM_CHECK_ERR(glPathDashArrayNV, free(dashArray);)
  free(dashArray);
#line 52591 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPathFogGenNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPathFogGenNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "genMode");
    {
	GLenum	genMode = (int)SvIV(ST(0))
;
#line 25898 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPathFogGenNV, )
  OGLM_AVAIL_CHECK(__glewPathFogGenNV, glPathFogGenNV)
  glPathFogGenNV(genMode);
  OGLM_CHECK_ERR(glPathFogGenNV, )
#line 52612 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPathGlyphIndexArrayNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPathGlyphIndexArrayNV_c)
{
    dVAR; dXSARGS;
    if (items != 8)
       croak_xs_usage(cv,  "firstPathName, fontTarget, fontName, fontStyle, firstGlyphIndex, numGlyphs, pathParameterTemplate, emScale");
    {
	GLuint	firstPathName = (unsigned int)SvUV(ST(0))
;
	GLenum	fontTarget = (int)SvIV(ST(1))
;
	const void *	fontName = INT2PTR(const void *,SvIV(ST(2)))
;
	GLbitfield	fontStyle = (int)SvIV(ST(3))
;
	GLuint	firstGlyphIndex = (unsigned int)SvUV(ST(4))
;
	GLsizei	numGlyphs = (int)SvIV(ST(5))
;
	GLuint	pathParameterTemplate = (unsigned int)SvUV(ST(6))
;
	GLfloat	emScale = (float)SvNV(ST(7))
;
	GLenum	RETVAL;
	dXSTARG;
#line 25915 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPathGlyphIndexArrayNV, )
  OGLM_AVAIL_CHECK(__glewPathGlyphIndexArrayNV, glPathGlyphIndexArrayNV)
  RETVAL = glPathGlyphIndexArrayNV(firstPathName, fontTarget, fontName, fontStyle, firstGlyphIndex, numGlyphs, pathParameterTemplate, emScale);
  OGLM_CHECK_ERR(glPathGlyphIndexArrayNV, )
#line 52649 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glPathGlyphIndexRangeNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPathGlyphIndexRangeNV_c)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "fontTarget, fontName, fontStyle, pathParameterTemplate, emScale, baseAndCount");
    {
	GLenum	fontTarget = (int)SvIV(ST(0))
;
	const void *	fontName = INT2PTR(const void *,SvIV(ST(1)))
;
	GLbitfield	fontStyle = (int)SvIV(ST(2))
;
	GLuint	pathParameterTemplate = (unsigned int)SvUV(ST(3))
;
	GLfloat	emScale = (float)SvNV(ST(4))
;
	GLuint*	baseAndCount = INT2PTR(GLuint *,SvIV(ST(5)))
;
	GLenum	RETVAL;
	dXSTARG;
#line 25932 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPathGlyphIndexRangeNV, )
  OGLM_AVAIL_CHECK(__glewPathGlyphIndexRangeNV, glPathGlyphIndexRangeNV)
  RETVAL = glPathGlyphIndexRangeNV(fontTarget, fontName, fontStyle, pathParameterTemplate, emScale, baseAndCount);
  OGLM_CHECK_ERR(glPathGlyphIndexRangeNV, )
#line 52684 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glPathGlyphIndexRangeNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPathGlyphIndexRangeNV_p)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "fontTarget, fontName, fontStyle, pathParameterTemplate, emScale");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLenum	fontTarget = (int)SvIV(ST(0))
;
	const void *	fontName = INT2PTR(const void *,SvIV(ST(1)))
;
	GLbitfield	fontStyle = (int)SvIV(ST(2))
;
	GLuint	pathParameterTemplate = (unsigned int)SvUV(ST(3))
;
	GLfloat	emScale = (float)SvNV(ST(4))
;
	GLenum	RETVAL;
	dXSTARG;
#line 25948 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPathGlyphIndexRangeNV, )
  OGLM_AVAIL_CHECK(__glewPathGlyphIndexRangeNV, glPathGlyphIndexRangeNV)
  GLuint* baseAndCount = OGLM_ALLOC(2,GLuint,baseAndCount);
  RETVAL = glPathGlyphIndexRangeNV(fontTarget, fontName, fontStyle, pathParameterTemplate, emScale, baseAndCount);
  OGLM_CHECK_ERR(glPathGlyphIndexRangeNV, free(baseAndCount);)
  EXTEND(sp, 2);
  mPUSHs(newSViv(RETVAL));
  OGLM_PUSH_ARRAY(glPathGlyphIndexRangeNV, newSVuv, baseAndCount, 2)
  free(baseAndCount);
#line 52724 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glPathGlyphRangeNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPathGlyphRangeNV_c)
{
    dVAR; dXSARGS;
    if (items != 9)
       croak_xs_usage(cv,  "firstPathName, fontTarget, fontName, fontStyle, firstGlyph, numGlyphs, handleMissingGlyphs, pathParameterTemplate, emScale");
    {
	GLuint	firstPathName = (unsigned int)SvUV(ST(0))
;
	GLenum	fontTarget = (int)SvIV(ST(1))
;
	const void *	fontName = INT2PTR(const void *,SvIV(ST(2)))
;
	GLbitfield	fontStyle = (int)SvIV(ST(3))
;
	GLuint	firstGlyph = (unsigned int)SvUV(ST(4))
;
	GLsizei	numGlyphs = (int)SvIV(ST(5))
;
	GLenum	handleMissingGlyphs = (int)SvIV(ST(6))
;
	GLuint	pathParameterTemplate = (unsigned int)SvUV(ST(7))
;
	GLfloat	emScale = (float)SvNV(ST(8))
;
#line 25971 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPathGlyphRangeNV, )
  OGLM_AVAIL_CHECK(__glewPathGlyphRangeNV, glPathGlyphRangeNV)
  glPathGlyphRangeNV(firstPathName, fontTarget, fontName, fontStyle, firstGlyph, numGlyphs, handleMissingGlyphs, pathParameterTemplate, emScale);
  OGLM_CHECK_ERR(glPathGlyphRangeNV, )
#line 52762 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPathGlyphsNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPathGlyphsNV_c)
{
    dVAR; dXSARGS;
    if (items != 10)
       croak_xs_usage(cv,  "firstPathName, fontTarget, fontName, fontStyle, numGlyphs, type, charcodes, handleMissingGlyphs, pathParameterTemplate, emScale");
    {
	GLuint	firstPathName = (unsigned int)SvUV(ST(0))
;
	GLenum	fontTarget = (int)SvIV(ST(1))
;
	const void *	fontName = INT2PTR(const void *,SvIV(ST(2)))
;
	GLbitfield	fontStyle = (int)SvIV(ST(3))
;
	GLsizei	numGlyphs = (int)SvIV(ST(4))
;
	GLenum	type = (int)SvIV(ST(5))
;
	const void*	charcodes = INT2PTR(const void *,SvIV(ST(6)))
;
	GLenum	handleMissingGlyphs = (int)SvIV(ST(7))
;
	GLuint	pathParameterTemplate = (unsigned int)SvUV(ST(8))
;
	GLfloat	emScale = (float)SvNV(ST(9))
;
#line 25990 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPathGlyphsNV, )
  OGLM_AVAIL_CHECK(__glewPathGlyphsNV, glPathGlyphsNV)
  glPathGlyphsNV(firstPathName, fontTarget, fontName, fontStyle, numGlyphs, type, charcodes, handleMissingGlyphs, pathParameterTemplate, emScale);
  OGLM_CHECK_ERR(glPathGlyphsNV, )
#line 52801 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPathMemoryGlyphIndexArrayNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPathMemoryGlyphIndexArrayNV_c)
{
    dVAR; dXSARGS;
    if (items != 9)
       croak_xs_usage(cv,  "firstPathName, fontTarget, fontSize, fontData, faceIndex, firstGlyphIndex, numGlyphs, pathParameterTemplate, emScale");
    {
	GLuint	firstPathName = (unsigned int)SvUV(ST(0))
;
	GLenum	fontTarget = (int)SvIV(ST(1))
;
	GLsizeiptr	fontSize = (unsigned int)SvUV(ST(2))
;
	const void *	fontData = INT2PTR(const void *,SvIV(ST(3)))
;
	GLsizei	faceIndex = (int)SvIV(ST(4))
;
	GLuint	firstGlyphIndex = (unsigned int)SvUV(ST(5))
;
	GLsizei	numGlyphs = (int)SvIV(ST(6))
;
	GLuint	pathParameterTemplate = (unsigned int)SvUV(ST(7))
;
	GLfloat	emScale = (float)SvNV(ST(8))
;
	GLenum	RETVAL;
	dXSTARG;
#line 26008 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPathMemoryGlyphIndexArrayNV, )
  OGLM_AVAIL_CHECK(__glewPathMemoryGlyphIndexArrayNV, glPathMemoryGlyphIndexArrayNV)
  RETVAL = glPathMemoryGlyphIndexArrayNV(firstPathName, fontTarget, fontSize, fontData, faceIndex, firstGlyphIndex, numGlyphs, pathParameterTemplate, emScale);
  OGLM_CHECK_ERR(glPathMemoryGlyphIndexArrayNV, )
#line 52840 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glPathParameterfNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPathParameterfNV)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "path, pname, value");
    {
	GLuint	path = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat	value = (float)SvNV(ST(2))
;
#line 26022 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPathParameterfNV, )
  OGLM_AVAIL_CHECK(__glewPathParameterfNV, glPathParameterfNV)
  glPathParameterfNV(path, pname, value);
  OGLM_CHECK_ERR(glPathParameterfNV, )
#line 52867 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPathParameterfvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPathParameterfvNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "path, pname, value");
    {
	GLuint	path = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLfloat*	value = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 26034 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPathParameterfvNV, )
  OGLM_AVAIL_CHECK(__glewPathParameterfvNV, glPathParameterfvNV)
  glPathParameterfvNV(path, pname, value);
  OGLM_CHECK_ERR(glPathParameterfvNV, )
#line 52892 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPathParameteriNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPathParameteriNV)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "path, pname, value");
    {
	GLuint	path = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint	value = (int)SvIV(ST(2))
;
#line 26046 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPathParameteriNV, )
  OGLM_AVAIL_CHECK(__glewPathParameteriNV, glPathParameteriNV)
  glPathParameteriNV(path, pname, value);
  OGLM_CHECK_ERR(glPathParameteriNV, )
#line 52917 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPathParameterivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPathParameterivNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "path, pname, value");
    {
	GLuint	path = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLint*	value = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 26058 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPathParameterivNV, )
  OGLM_AVAIL_CHECK(__glewPathParameterivNV, glPathParameterivNV)
  glPathParameterivNV(path, pname, value);
  OGLM_CHECK_ERR(glPathParameterivNV, )
#line 52942 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPathStencilDepthOffsetNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPathStencilDepthOffsetNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "factor, units");
    {
	GLfloat	factor = (float)SvNV(ST(0))
;
	GLfloat	units = (float)SvNV(ST(1))
;
#line 26069 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPathStencilDepthOffsetNV, )
  OGLM_AVAIL_CHECK(__glewPathStencilDepthOffsetNV, glPathStencilDepthOffsetNV)
  glPathStencilDepthOffsetNV(factor, units);
  OGLM_CHECK_ERR(glPathStencilDepthOffsetNV, )
#line 52965 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPathStencilFuncNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPathStencilFuncNV)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "func, ref, mask");
    {
	GLenum	func = (int)SvIV(ST(0))
;
	GLint	ref = (int)SvIV(ST(1))
;
	GLuint	mask = (unsigned int)SvUV(ST(2))
;
#line 26081 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPathStencilFuncNV, )
  OGLM_AVAIL_CHECK(__glewPathStencilFuncNV, glPathStencilFuncNV)
  glPathStencilFuncNV(func, ref, mask);
  OGLM_CHECK_ERR(glPathStencilFuncNV, )
#line 52990 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPathStringNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPathStringNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "path, format, length, pathString");
    {
	GLuint	path = (unsigned int)SvUV(ST(0))
;
	GLenum	format = (int)SvIV(ST(1))
;
	GLsizei	length = (int)SvIV(ST(2))
;
	const void *	pathString = INT2PTR(const void *,SvIV(ST(3)))
;
#line 26094 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPathStringNV, )
  OGLM_AVAIL_CHECK(__glewPathStringNV, glPathStringNV)
  glPathStringNV(path, format, length, pathString);
  OGLM_CHECK_ERR(glPathStringNV, )
#line 53017 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPathSubCommandsNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPathSubCommandsNV_c)
{
    dVAR; dXSARGS;
    if (items != 8)
       croak_xs_usage(cv,  "path, commandStart, commandsToDelete, numCommands, commands, numCoords, coordType, coords");
    {
	GLuint	path = (unsigned int)SvUV(ST(0))
;
	GLsizei	commandStart = (int)SvIV(ST(1))
;
	GLsizei	commandsToDelete = (int)SvIV(ST(2))
;
	GLsizei	numCommands = (int)SvIV(ST(3))
;
	const GLubyte*        commands = (const GLubyte *)SvPV_nolen(ST(4))
;
	GLsizei	numCoords = (int)SvIV(ST(5))
;
	GLenum	coordType = (int)SvIV(ST(6))
;
	const void*	coords = INT2PTR(const void *,SvIV(ST(7)))
;
#line 26111 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPathSubCommandsNV, )
  OGLM_AVAIL_CHECK(__glewPathSubCommandsNV, glPathSubCommandsNV)
  glPathSubCommandsNV(path, commandStart, commandsToDelete, numCommands, commands, numCoords, coordType, coords);
  OGLM_CHECK_ERR(glPathSubCommandsNV, )
#line 53052 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPathSubCoordsNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPathSubCoordsNV_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "path, coordStart, numCoords, coordType, coords");
    {
	GLuint	path = (unsigned int)SvUV(ST(0))
;
	GLsizei	coordStart = (int)SvIV(ST(1))
;
	GLsizei	numCoords = (int)SvIV(ST(2))
;
	GLenum	coordType = (int)SvIV(ST(3))
;
	const void *	coords = INT2PTR(const void *,SvIV(ST(4)))
;
#line 26125 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPathSubCoordsNV, )
  OGLM_AVAIL_CHECK(__glewPathSubCoordsNV, glPathSubCoordsNV)
  glPathSubCoordsNV(path, coordStart, numCoords, coordType, coords);
  OGLM_CHECK_ERR(glPathSubCoordsNV, )
#line 53081 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPathTexGenNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPathTexGenNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texCoordSet, genMode, components, coeffs");
    {
	GLenum	texCoordSet = (int)SvIV(ST(0))
;
	GLenum	genMode = (int)SvIV(ST(1))
;
	GLint	components = (int)SvIV(ST(2))
;
	const GLfloat*	coeffs = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 26138 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPathTexGenNV, )
  OGLM_AVAIL_CHECK(__glewPathTexGenNV, glPathTexGenNV)
  glPathTexGenNV(texCoordSet, genMode, components, coeffs);
  OGLM_CHECK_ERR(glPathTexGenNV, )
#line 53108 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPauseTransformFeedback); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPauseTransformFeedback)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 26149 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPauseTransformFeedback, )
  OGLM_AVAIL_CHECK(__glewPauseTransformFeedback, glPauseTransformFeedback)
  glPauseTransformFeedback();
  OGLM_CHECK_ERR(glPauseTransformFeedback, )
#line 53128 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPixelDataRangeNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPixelDataRangeNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, length, pointer");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	length = (int)SvIV(ST(1))
;
	void *	pointer = INT2PTR(void *,SvIV(ST(2)))
;
#line 26161 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPixelDataRangeNV, )
  OGLM_AVAIL_CHECK(__glewPixelDataRangeNV, glPixelDataRangeNV)
  glPixelDataRangeNV(target, length, pointer);
  OGLM_CHECK_ERR(glPixelDataRangeNV, )
#line 53153 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPixelMapfv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPixelMapfv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "map, mapsize, values");
    {
	GLenum	map = (int)SvIV(ST(0))
;
	GLsizei	mapsize = (int)SvIV(ST(1))
;
	const GLfloat *	values = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 26173 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPixelMapfv, )
  glPixelMapfv(map, mapsize, values);
  OGLM_CHECK_ERR(glPixelMapfv, )
#line 53177 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPixelMapfv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPixelMapfv_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "map, ...");
    {
	GLenum	map = (int)SvIV(ST(0))
;
#line 26182 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPixelMapfv, )
  GLsizei mapsize = items-1;
  GLfloat *values = OGLM_GET_VARARGS(values,1,GLfloat,NV,mapsize);
  glPixelMapfv((GLenum )map, (GLsizei )mapsize, (const GLfloat *)values);
  OGLM_CHECK_ERR(glPixelMapfv, free(values);)
  free(values);
#line 53200 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPixelMapuiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPixelMapuiv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "map, mapsize, values");
    {
	GLenum	map = (int)SvIV(ST(0))
;
	GLsizei	mapsize = (int)SvIV(ST(1))
;
	const GLuint *	values = INT2PTR(const GLuint *,SvIV(ST(2)))
;
#line 26196 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPixelMapuiv, )
  glPixelMapuiv(map, mapsize, values);
  OGLM_CHECK_ERR(glPixelMapuiv, )
#line 53224 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPixelMapuiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPixelMapuiv_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "map, ...");
    {
	GLenum	map = (int)SvIV(ST(0))
;
#line 26205 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPixelMapuiv, )
  GLsizei mapsize = items-1;
  GLuint *values = OGLM_GET_VARARGS(values,1,GLuint,UV,mapsize);
  glPixelMapuiv((GLenum )map, (GLsizei )mapsize, (const GLuint *)values);
  OGLM_CHECK_ERR(glPixelMapuiv, free(values);)
  free(values);
#line 53247 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPixelMapusv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPixelMapusv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "map, mapsize, values");
    {
	GLenum	map = (int)SvIV(ST(0))
;
	GLsizei	mapsize = (int)SvIV(ST(1))
;
	const GLushort *	values = INT2PTR(const GLushort *,SvIV(ST(2)))
;
#line 26219 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPixelMapusv, )
  glPixelMapusv(map, mapsize, values);
  OGLM_CHECK_ERR(glPixelMapusv, )
#line 53271 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPixelMapusv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPixelMapusv_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "map, ...");
    {
	GLenum	map = (int)SvIV(ST(0))
;
#line 26228 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPixelMapusv, )
  GLsizei mapsize = items-1;
  GLushort *values = OGLM_GET_VARARGS(values,1,GLushort,UV,mapsize);
  glPixelMapusv((GLenum )map, (GLsizei )mapsize, (const GLushort *)values);
  OGLM_CHECK_ERR(glPixelMapusv, free(values);)
  free(values);
#line 53294 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPixelStoref); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPixelStoref)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, param");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLfloat	param = (float)SvNV(ST(1))
;
#line 26241 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPixelStoref, )
  glPixelStoref(pname, param);
  OGLM_CHECK_ERR(glPixelStoref, )
#line 53316 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPixelStorei); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPixelStorei)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, param");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLint	param = (int)SvIV(ST(1))
;
#line 26251 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPixelStorei, )
  glPixelStorei(pname, param);
  OGLM_CHECK_ERR(glPixelStorei, )
#line 53338 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPixelTexGenSGIX); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPixelTexGenSGIX)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "mode");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
#line 26260 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPixelTexGenSGIX, )
  OGLM_AVAIL_CHECK(__glewPixelTexGenSGIX, glPixelTexGenSGIX)
  glPixelTexGenSGIX(mode);
  OGLM_CHECK_ERR(glPixelTexGenSGIX, )
#line 53359 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPixelTransferf); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPixelTransferf)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, param");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLfloat	param = (float)SvNV(ST(1))
;
#line 26271 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPixelTransferf, )
  glPixelTransferf(pname, param);
  OGLM_CHECK_ERR(glPixelTransferf, )
#line 53381 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPixelTransferi); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPixelTransferi)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, param");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLint	param = (int)SvIV(ST(1))
;
#line 26281 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPixelTransferi, )
  glPixelTransferi(pname, param);
  OGLM_CHECK_ERR(glPixelTransferi, )
#line 53403 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPixelTransformParameterfEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPixelTransformParameterfEXT)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, param");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLfloat	param = (float)SvNV(ST(2))
;
#line 26292 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPixelTransformParameterfEXT, )
  OGLM_AVAIL_CHECK(__glewPixelTransformParameterfEXT, glPixelTransformParameterfEXT)
  glPixelTransformParameterfEXT(target, pname, param);
  OGLM_CHECK_ERR(glPixelTransformParameterfEXT, )
#line 53428 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPixelTransformParameterfSGI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPixelTransformParameterfSGI)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, param");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat	param = (float)SvNV(ST(2))
;
#line 26304 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPixelTransformParameterfSGI, )
  OGLM_AVAIL_CHECK(__glewPixelTransformParameterfSGI, glPixelTransformParameterfSGI)
  glPixelTransformParameterfSGI(target, pname, param);
  OGLM_CHECK_ERR(glPixelTransformParameterfSGI, )
#line 53453 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPixelTransformParameterfvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPixelTransformParameterfvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLfloat*	params = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 26316 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPixelTransformParameterfvEXT, )
  OGLM_AVAIL_CHECK(__glewPixelTransformParameterfvEXT, glPixelTransformParameterfvEXT)
  glPixelTransformParameterfvEXT(target, pname, params);
  OGLM_CHECK_ERR(glPixelTransformParameterfvEXT, )
#line 53478 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPixelTransformParameterfvEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPixelTransformParameterfvEXT_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "target, pname, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 26327 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPixelTransformParameterfvEXT, )
  OGLM_AVAIL_CHECK(__glewPixelTransformParameterfvEXT, glPixelTransformParameterfvEXT)
  GLfloat* params = OGLM_GET_VARARGS(params,2,GLfloat,NV,1);
  glPixelTransformParameterfvEXT((GLenum )target, (GLenum )pname, (const GLfloat* )params);
  OGLM_CHECK_ERR(glPixelTransformParameterfvEXT, free(params);)
  free(params);
#line 53503 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPixelTransformParameterfvSGI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPixelTransformParameterfvSGI_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLfloat*	params = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 26341 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPixelTransformParameterfvSGI, )
  OGLM_AVAIL_CHECK(__glewPixelTransformParameterfvSGI, glPixelTransformParameterfvSGI)
  glPixelTransformParameterfvSGI(target, pname, params);
  OGLM_CHECK_ERR(glPixelTransformParameterfvSGI, )
#line 53528 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPixelTransformParameteriEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPixelTransformParameteriEXT)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, param");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLint	param = (int)SvIV(ST(2))
;
#line 26353 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPixelTransformParameteriEXT, )
  OGLM_AVAIL_CHECK(__glewPixelTransformParameteriEXT, glPixelTransformParameteriEXT)
  glPixelTransformParameteriEXT(target, pname, param);
  OGLM_CHECK_ERR(glPixelTransformParameteriEXT, )
#line 53553 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPixelTransformParameteriSGI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPixelTransformParameteriSGI)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, param");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint	param = (int)SvIV(ST(2))
;
#line 26365 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPixelTransformParameteriSGI, )
  OGLM_AVAIL_CHECK(__glewPixelTransformParameteriSGI, glPixelTransformParameteriSGI)
  glPixelTransformParameteriSGI(target, pname, param);
  OGLM_CHECK_ERR(glPixelTransformParameteriSGI, )
#line 53578 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPixelTransformParameterivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPixelTransformParameterivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLint*	params = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 26377 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPixelTransformParameterivEXT, )
  OGLM_AVAIL_CHECK(__glewPixelTransformParameterivEXT, glPixelTransformParameterivEXT)
  glPixelTransformParameterivEXT(target, pname, params);
  OGLM_CHECK_ERR(glPixelTransformParameterivEXT, )
#line 53603 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPixelTransformParameterivEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPixelTransformParameterivEXT_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "target, pname, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 26388 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPixelTransformParameterivEXT, )
  OGLM_AVAIL_CHECK(__glewPixelTransformParameterivEXT, glPixelTransformParameterivEXT)
  GLint* params = OGLM_GET_VARARGS(params,2,GLint,IV,1);
  glPixelTransformParameterivEXT((GLenum )target, (GLenum )pname, (const GLint* )params);
  OGLM_CHECK_ERR(glPixelTransformParameterivEXT, free(params);)
  free(params);
#line 53628 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPixelTransformParameterivSGI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPixelTransformParameterivSGI_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLint*	params = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 26402 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPixelTransformParameterivSGI, )
  OGLM_AVAIL_CHECK(__glewPixelTransformParameterivSGI, glPixelTransformParameterivSGI)
  glPixelTransformParameterivSGI(target, pname, params);
  OGLM_CHECK_ERR(glPixelTransformParameterivSGI, )
#line 53653 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPixelTransformSGI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPixelTransformSGI)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "target");
    {
	GLenum	target = (int)SvIV(ST(0))
;
#line 26412 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPixelTransformSGI, )
  OGLM_AVAIL_CHECK(__glewPixelTransformSGI, glPixelTransformSGI)
  glPixelTransformSGI(target);
  OGLM_CHECK_ERR(glPixelTransformSGI, )
#line 53674 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPixelZoom); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPixelZoom)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "xfactor, yfactor");
    {
	GLfloat	xfactor = (float)SvNV(ST(0))
;
	GLfloat	yfactor = (float)SvNV(ST(1))
;
#line 26423 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPixelZoom, )
  glPixelZoom(xfactor, yfactor);
  OGLM_CHECK_ERR(glPixelZoom, )
#line 53696 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPointAlongPathNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPointAlongPathNV_c)
{
    dVAR; dXSARGS;
    if (items != 8)
       croak_xs_usage(cv,  "path, startSegment, numSegments, distance, x, y, tangentX, tangentY");
    {
	GLuint	path = (unsigned int)SvUV(ST(0))
;
	GLsizei	startSegment = (int)SvIV(ST(1))
;
	GLsizei	numSegments = (int)SvIV(ST(2))
;
	GLfloat	distance = (float)SvNV(ST(3))
;
	GLfloat*	x = INT2PTR(GLfloat *,SvIV(ST(4)))
;
	GLfloat *	y = INT2PTR(GLfloat *,SvIV(ST(5)))
;
	GLfloat *	tangentX = INT2PTR(GLfloat *,SvIV(ST(6)))
;
	GLfloat *	tangentY = INT2PTR(GLfloat *,SvIV(ST(7)))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 26439 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPointAlongPathNV, )
  OGLM_AVAIL_CHECK(__glewPointAlongPathNV, glPointAlongPathNV)
  RETVAL = glPointAlongPathNV(path, startSegment, numSegments, distance, x, y, tangentX, tangentY);
  OGLM_CHECK_ERR(glPointAlongPathNV, )
#line 53733 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glPointAlongPathNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPointAlongPathNV_p)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "path, startSegment, numSegments, distance");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	path = (unsigned int)SvUV(ST(0))
;
	GLsizei	startSegment = (int)SvIV(ST(1))
;
	GLsizei	numSegments = (int)SvIV(ST(2))
;
	GLfloat	distance = (float)SvNV(ST(3))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 26454 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPointAlongPathNV, )
  OGLM_AVAIL_CHECK(__glewPointAlongPathNV, glPointAlongPathNV)
  GLfloat tangentX[1];
  GLfloat tangentY[1];
  GLfloat x[1];
  GLfloat y[1];
  RETVAL = glPointAlongPathNV(path, startSegment, numSegments, distance, x, y, tangentX, tangentY);
  OGLM_CHECK_ERR(glPointAlongPathNV, )
  EXTEND(sp, 5);
  mPUSHs(newSViv(RETVAL));
  mPUSHs(newSVnv(x[0]));
  mPUSHs(newSVnv(y[0]));
  mPUSHs(newSVnv(tangentX[0]));
  mPUSHs(newSVnv(tangentY[0]));
#line 53776 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glPointParameterf); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPointParameterf)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "pname, param");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLfloat	param = (float)SvNV(ST(1))
;
#line 26479 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPointParameterf, )
  OGLM_AVAIL_CHECK(__glewPointParameterf, glPointParameterf)
  glPointParameterf(pname, param);
  OGLM_CHECK_ERR(glPointParameterf, )
#line 53801 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPointParameterfv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPointParameterfv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "pname, params");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	const GLfloat *	params = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 26494 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPointParameterfv, )
  OGLM_AVAIL_CHECK(__glewPointParameterfv, glPointParameterfv)
  glPointParameterfv(pname, params);
  OGLM_CHECK_ERR(glPointParameterfv, )
#line 53825 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPointParameterfv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPointParameterfv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "pname, ...");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
#line 26508 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPointParameterfv, )
  OGLM_AVAIL_CHECK(__glewPointParameterfv, glPointParameterfv)
  OGLM_SIZE_ENUM(PointParameterNameARB,pname,1)
  GLfloat *params = OGLM_GET_VARARGS(params,1,GLfloat,NV,pname_count);
  glPointParameterfv((GLenum )pname, (const GLfloat *)params);
  OGLM_CHECK_ERR(glPointParameterfv, free(params);)
  free(params);
#line 53850 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPointParameteri); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPointParameteri)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "pname, param");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLint	param = (int)SvIV(ST(1))
;
#line 26524 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPointParameteri, )
  OGLM_AVAIL_CHECK(__glewPointParameteri, glPointParameteri)
  glPointParameteri(pname, param);
  OGLM_CHECK_ERR(glPointParameteri, )
#line 53874 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPointParameteriv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPointParameteriv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "pname, params");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	const GLint *	params = INT2PTR(const GLint *,SvIV(ST(1)))
;
#line 26537 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPointParameteriv, )
  OGLM_AVAIL_CHECK(__glewPointParameteriv, glPointParameteriv)
  glPointParameteriv(pname, params);
  OGLM_CHECK_ERR(glPointParameteriv, )
#line 53898 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPointParameteriv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPointParameteriv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "pname, ...");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
#line 26549 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPointParameteriv, )
  OGLM_AVAIL_CHECK(__glewPointParameteriv, glPointParameteriv)
  OGLM_SIZE_ENUM(PointParameterNameARB,pname,1)
  GLint *params = OGLM_GET_VARARGS(params,1,GLint,IV,pname_count);
  glPointParameteriv((GLenum )pname, (const GLint *)params);
  OGLM_CHECK_ERR(glPointParameteriv, free(params);)
  free(params);
#line 53923 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPointParameterx); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPointParameterx)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, param");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLfixed	param = (int)SvIV(ST(1))
;
#line 26563 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPointParameterx, )
  OGLM_AVAIL_CHECK(__glewPointParameterx, glPointParameterx)
  glPointParameterx(pname, param);
  OGLM_CHECK_ERR(glPointParameterx, )
#line 53946 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPointParameterxv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPointParameterxv_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, params");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	const GLfixed*	params = INT2PTR(const GLfixed *,SvIV(ST(1)))
;
#line 26574 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPointParameterxv, )
  OGLM_AVAIL_CHECK(__glewPointParameterxv, glPointParameterxv)
  glPointParameterxv(pname, params);
  OGLM_CHECK_ERR(glPointParameterxv, )
#line 53969 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPointParameterxv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPointParameterxv_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "pname, ...");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
#line 26584 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPointParameterxv, )
  OGLM_AVAIL_CHECK(__glewPointParameterxv, glPointParameterxv)
  OGLM_SIZE_ENUM(PointParameterNameARB,pname,1)
  GLfixed* params = OGLM_GET_VARARGS(params,1,GLfixed,IV,pname_count);
  glPointParameterxv((GLenum )pname, (const GLfixed* )params);
  OGLM_CHECK_ERR(glPointParameterxv, free(params);)
  free(params);
#line 53993 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPointSize); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPointSize)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "size");
    {
	GLfloat	size = (float)SvNV(ST(0))
;
#line 26597 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPointSize, )
  glPointSize(size);
  OGLM_CHECK_ERR(glPointSize, )
#line 54013 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPointSizePointerOES_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPointSizePointerOES_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "type, stride, pointer");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	GLsizei	stride = (int)SvIV(ST(1))
;
	const void *	pointer = INT2PTR(const void *,SvIV(ST(2)))
;
#line 26608 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPointSizePointerOES, )
  OGLM_AVAIL_CHECK(__glewPointSizePointerOES, glPointSizePointerOES)
  glPointSizePointerOES(type, stride, pointer);
  OGLM_CHECK_ERR(glPointSizePointerOES, )
#line 54038 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPointSizex); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPointSizex)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "size");
    {
	GLfixed	size = (int)SvIV(ST(0))
;
#line 26618 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPointSizex, )
  OGLM_AVAIL_CHECK(__glewPointSizex, glPointSizex)
  glPointSizex(size);
  OGLM_CHECK_ERR(glPointSizex, )
#line 54059 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPollAsyncSGIX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPollAsyncSGIX_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "markerp");
    {
	GLuint*	markerp = INT2PTR(GLuint *,SvIV(ST(0)))
;
	GLint	RETVAL;
	dXSTARG;
#line 26628 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPollAsyncSGIX, )
  OGLM_AVAIL_CHECK(__glewPollAsyncSGIX, glPollAsyncSGIX)
  RETVAL = glPollAsyncSGIX(markerp);
  OGLM_CHECK_ERR(glPollAsyncSGIX, )
#line 54082 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glPollAsyncSGIX_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPollAsyncSGIX_p)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLint	RETVAL;
	dXSTARG;
#line 26639 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPollAsyncSGIX, )
  OGLM_AVAIL_CHECK(__glewPollAsyncSGIX, glPollAsyncSGIX)
  GLuint markerp[1];
  RETVAL = glPollAsyncSGIX(markerp);
  OGLM_CHECK_ERR(glPollAsyncSGIX, )
  EXTEND(sp, 2);
  mPUSHs(newSViv(RETVAL));
  mPUSHs(newSVuv(markerp[0]));
#line 54111 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glPolygonMode); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPolygonMode)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "face, mode");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	mode = (int)SvIV(ST(1))
;
#line 26656 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPolygonMode, )
  glPolygonMode(face, mode);
  OGLM_CHECK_ERR(glPolygonMode, )
#line 54135 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPolygonOffset); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPolygonOffset)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "factor, units");
    {
	GLfloat	factor = (float)SvNV(ST(0))
;
	GLfloat	units = (float)SvNV(ST(1))
;
#line 26666 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPolygonOffset, )
  glPolygonOffset(factor, units);
  OGLM_CHECK_ERR(glPolygonOffset, )
#line 54157 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPolygonOffsetClamp); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPolygonOffsetClamp)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "factor, units, clamp");
    {
	GLfloat	factor = (float)SvNV(ST(0))
;
	GLfloat	units = (float)SvNV(ST(1))
;
	GLfloat	clamp = (float)SvNV(ST(2))
;
#line 26679 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPolygonOffsetClamp, )
  OGLM_AVAIL_CHECK(__glewPolygonOffsetClamp, glPolygonOffsetClamp)
  glPolygonOffsetClamp(factor, units, clamp);
  OGLM_CHECK_ERR(glPolygonOffsetClamp, )
#line 54183 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPolygonOffsetEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPolygonOffsetEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "factor, bias");
    {
	GLfloat	factor = (float)SvNV(ST(0))
;
	GLfloat	bias = (float)SvNV(ST(1))
;
#line 26690 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPolygonOffsetEXT, )
  OGLM_AVAIL_CHECK(__glewPolygonOffsetEXT, glPolygonOffsetEXT)
  glPolygonOffsetEXT(factor, bias);
  OGLM_CHECK_ERR(glPolygonOffsetEXT, )
#line 54206 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPolygonOffsetx); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPolygonOffsetx)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "factor, units");
    {
	GLfixed	factor = (int)SvIV(ST(0))
;
	GLfixed	units = (int)SvIV(ST(1))
;
#line 26701 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPolygonOffsetx, )
  OGLM_AVAIL_CHECK(__glewPolygonOffsetx, glPolygonOffsetx)
  glPolygonOffsetx(factor, units);
  OGLM_CHECK_ERR(glPolygonOffsetx, )
#line 54229 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPolygonStipple); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPolygonStipple)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "mask");
    {
	const GLubyte *        mask = (const GLubyte *)SvPV_nolen(ST(0))
;
#line 26711 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPolygonStipple, )
  glPolygonStipple(mask);
  OGLM_CHECK_ERR(glPolygonStipple, )
#line 54249 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPopAttrib); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPopAttrib)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 26719 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPopAttrib, )
  glPopAttrib();
  OGLM_CHECK_ERR(glPopAttrib, )
#line 54267 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPopClientAttrib); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPopClientAttrib)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 26727 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPopClientAttrib, )
  glPopClientAttrib();
  OGLM_CHECK_ERR(glPopClientAttrib, )
#line 54285 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPopDebugGroup); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPopDebugGroup)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 26737 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPopDebugGroup, )
  OGLM_AVAIL_CHECK(__glewPopDebugGroup, glPopDebugGroup)
  glPopDebugGroup();
  OGLM_CHECK_ERR(glPopDebugGroup, )
#line 54305 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPopGroupMarkerEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPopGroupMarkerEXT)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 26746 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPopGroupMarkerEXT, )
  OGLM_AVAIL_CHECK(__glewPopGroupMarkerEXT, glPopGroupMarkerEXT)
  glPopGroupMarkerEXT();
  OGLM_CHECK_ERR(glPopGroupMarkerEXT, )
#line 54324 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPopMatrix); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPopMatrix)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 26755 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPopMatrix, )
  glPopMatrix();
  OGLM_CHECK_ERR(glPopMatrix, )
#line 54342 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPopName); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPopName)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 26763 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPopName, )
  glPopName();
  OGLM_CHECK_ERR(glPopName, )
#line 54360 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPresentFrameDualFillNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPresentFrameDualFillNV)
{
    dVAR; dXSARGS;
    if (items != 13)
       croak_xs_usage(cv,  "video_slot, minPresentTime, beginPresentTimeId, presentDurationId, type, target0, fill0, target1, fill1, target2, fill2, target3, fill3");
    {
	GLuint	video_slot = (unsigned int)SvUV(ST(0))
;
	GLuint64EXT	minPresentTime = (unsigned int)SvUV(ST(1))
;
	GLuint	beginPresentTimeId = (unsigned int)SvUV(ST(2))
;
	GLuint	presentDurationId = (unsigned int)SvUV(ST(3))
;
	GLenum	type = (int)SvIV(ST(4))
;
	GLenum	target0 = (int)SvIV(ST(5))
;
	GLuint	fill0 = (unsigned int)SvUV(ST(6))
;
	GLenum	target1 = (int)SvIV(ST(7))
;
	GLuint	fill1 = (unsigned int)SvUV(ST(8))
;
	GLenum	target2 = (int)SvIV(ST(9))
;
	GLuint	fill2 = (unsigned int)SvUV(ST(10))
;
	GLenum	target3 = (int)SvIV(ST(11))
;
	GLuint	fill3 = (unsigned int)SvUV(ST(12))
;
#line 26784 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPresentFrameDualFillNV, )
  OGLM_AVAIL_CHECK(__glewPresentFrameDualFillNV, glPresentFrameDualFillNV)
  glPresentFrameDualFillNV(video_slot, minPresentTime, beginPresentTimeId, presentDurationId, type, target0, fill0, target1, fill1, target2, fill2, target3, fill3);
  OGLM_CHECK_ERR(glPresentFrameDualFillNV, )
#line 54405 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPresentFrameKeyedNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPresentFrameKeyedNV)
{
    dVAR; dXSARGS;
    if (items != 11)
       croak_xs_usage(cv,  "video_slot, minPresentTime, beginPresentTimeId, presentDurationId, type, target0, fill0, key0, target1, fill1, key1");
    {
	GLuint	video_slot = (unsigned int)SvUV(ST(0))
;
	GLuint64EXT	minPresentTime = (unsigned int)SvUV(ST(1))
;
	GLuint	beginPresentTimeId = (unsigned int)SvUV(ST(2))
;
	GLuint	presentDurationId = (unsigned int)SvUV(ST(3))
;
	GLenum	type = (int)SvIV(ST(4))
;
	GLenum	target0 = (int)SvIV(ST(5))
;
	GLuint	fill0 = (unsigned int)SvUV(ST(6))
;
	GLuint	key0 = (unsigned int)SvUV(ST(7))
;
	GLenum	target1 = (int)SvIV(ST(8))
;
	GLuint	fill1 = (unsigned int)SvUV(ST(9))
;
	GLuint	key1 = (unsigned int)SvUV(ST(10))
;
#line 26804 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPresentFrameKeyedNV, )
  OGLM_AVAIL_CHECK(__glewPresentFrameKeyedNV, glPresentFrameKeyedNV)
  glPresentFrameKeyedNV(video_slot, minPresentTime, beginPresentTimeId, presentDurationId, type, target0, fill0, key0, target1, fill1, key1);
  OGLM_CHECK_ERR(glPresentFrameKeyedNV, )
#line 54446 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPrimitiveBoundingBoxARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPrimitiveBoundingBoxARB)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 8)
       croak_xs_usage(cv,  "minX, minY, minZ, minW, maxX, maxY, maxZ, maxW");
    {
	GLfloat	minX = (float)SvNV(ST(0))
;
	GLfloat	minY = (float)SvNV(ST(1))
;
	GLfloat	minZ = (float)SvNV(ST(2))
;
	GLfloat	minW = (float)SvNV(ST(3))
;
	GLfloat	maxX = (float)SvNV(ST(4))
;
	GLfloat	maxY = (float)SvNV(ST(5))
;
	GLfloat	maxZ = (float)SvNV(ST(6))
;
	GLfloat	maxW = (float)SvNV(ST(7))
;
#line 26824 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPrimitiveBoundingBoxARB, )
  OGLM_AVAIL_CHECK(__glewPrimitiveBoundingBoxARB, glPrimitiveBoundingBoxARB)
  glPrimitiveBoundingBoxARB(minX, minY, minZ, minW, maxX, maxY, maxZ, maxW);
  OGLM_CHECK_ERR(glPrimitiveBoundingBoxARB, )
#line 54482 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPrimitiveRestartIndex); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPrimitiveRestartIndex)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "buffer");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
#line 26834 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPrimitiveRestartIndex, )
  OGLM_AVAIL_CHECK(__glewPrimitiveRestartIndex, glPrimitiveRestartIndex)
  glPrimitiveRestartIndex(buffer);
  OGLM_CHECK_ERR(glPrimitiveRestartIndex, )
#line 54503 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPrimitiveRestartIndexNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPrimitiveRestartIndexNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "index");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 26844 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPrimitiveRestartIndexNV, )
  OGLM_AVAIL_CHECK(__glewPrimitiveRestartIndexNV, glPrimitiveRestartIndexNV)
  glPrimitiveRestartIndexNV(index);
  OGLM_CHECK_ERR(glPrimitiveRestartIndexNV, )
#line 54524 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPrimitiveRestartNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPrimitiveRestartNV)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 26853 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPrimitiveRestartNV, )
  OGLM_AVAIL_CHECK(__glewPrimitiveRestartNV, glPrimitiveRestartNV)
  glPrimitiveRestartNV();
  OGLM_CHECK_ERR(glPrimitiveRestartNV, )
#line 54543 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPrioritizeTextures_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPrioritizeTextures_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "n, textures, priorities");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	const GLuint *	textures = INT2PTR(const GLuint *,SvIV(ST(1)))
;
	const GLclampf *	priorities = INT2PTR(const GLclampf *,SvIV(ST(2)))
;
#line 26867 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPrioritizeTextures, )
  glPrioritizeTextures(n, textures, priorities);
  OGLM_CHECK_ERR(glPrioritizeTextures, )
#line 54568 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPrioritizeTextures_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPrioritizeTextures_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "texturesSV, prioritiesSV");
    {
	SV *	texturesSV = ST(0)
;
	SV *	prioritiesSV = ST(1)
;
#line 26879 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPrioritizeTextures, )
  GLsizei n = OGLM_LEN_ARRAY(n, textures);
  GLclampf *priorities = OGLM_GET_ARRAY(priorities, GLclampf, NV, n);
  GLuint *textures = OGLM_GET_ARRAY(textures, GLuint, UV, n);
  glPrioritizeTextures((GLsizei )n, (const GLuint *)textures, (const GLclampf *)priorities);
  OGLM_CHECK_ERR(glPrioritizeTextures, free(priorities);free(textures);)
  free(priorities);free(textures);
#line 54595 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPrioritizeVertexArraysSGIX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPrioritizeVertexArraysSGIX_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "n, arrays, priorities");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	const GLuint*	arrays = INT2PTR(const GLuint *,SvIV(ST(1)))
;
	const GLclampf*	priorities = INT2PTR(const GLclampf *,SvIV(ST(2)))
;
#line 26894 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPrioritizeVertexArraysSGIX, )
  OGLM_AVAIL_CHECK(__glewPrioritizeVertexArraysSGIX, glPrioritizeVertexArraysSGIX)
  glPrioritizeVertexArraysSGIX(n, arrays, priorities);
  OGLM_CHECK_ERR(glPrioritizeVertexArraysSGIX, )
#line 54620 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramBinary_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramBinary_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, binaryFormat, binary, length");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	binaryFormat = (int)SvIV(ST(1))
;
	const void *	binary = INT2PTR(const void *,SvIV(ST(2)))
;
	GLsizei	length = (int)SvIV(ST(3))
;
#line 26907 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramBinary, )
  OGLM_AVAIL_CHECK(__glewProgramBinary, glProgramBinary)
  glProgramBinary(program, binaryFormat, binary, length);
  OGLM_CHECK_ERR(glProgramBinary, )
#line 54647 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramBinaryOES_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramBinaryOES_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, binaryFormat, binary, length");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	binaryFormat = (int)SvIV(ST(1))
;
	const void *	binary = INT2PTR(const void *,SvIV(ST(2)))
;
	GLint	length = (int)SvIV(ST(3))
;
#line 26920 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramBinaryOES, )
  OGLM_AVAIL_CHECK(__glewProgramBinaryOES, glProgramBinaryOES)
  glProgramBinaryOES(program, binaryFormat, binary, length);
  OGLM_CHECK_ERR(glProgramBinaryOES, )
#line 54674 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramBufferParametersIivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramBufferParametersIivNV_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "target, bindingIndex, wordIndex, count, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	bindingIndex = (unsigned int)SvUV(ST(1))
;
	GLuint	wordIndex = (unsigned int)SvUV(ST(2))
;
	GLsizei	count = (int)SvIV(ST(3))
;
	const GLint *	params = INT2PTR(const GLint *,SvIV(ST(4)))
;
#line 26934 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramBufferParametersIivNV, )
  OGLM_AVAIL_CHECK(__glewProgramBufferParametersIivNV, glProgramBufferParametersIivNV)
  glProgramBufferParametersIivNV(target, bindingIndex, wordIndex, count, params);
  OGLM_CHECK_ERR(glProgramBufferParametersIivNV, )
#line 54703 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramBufferParametersIivNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramBufferParametersIivNV_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "target, bindingIndex, wordIndex, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	bindingIndex = (unsigned int)SvUV(ST(1))
;
	GLuint	wordIndex = (unsigned int)SvUV(ST(2))
;
#line 26946 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramBufferParametersIivNV, )
  OGLM_AVAIL_CHECK(__glewProgramBufferParametersIivNV, glProgramBufferParametersIivNV)
  GLsizei count = items-3;
  GLint *params = OGLM_GET_VARARGS(params,3,GLint,IV,count);
  glProgramBufferParametersIivNV((GLenum )target, (GLuint )bindingIndex, (GLuint )wordIndex, (GLsizei )count, (const GLint *)params);
  OGLM_CHECK_ERR(glProgramBufferParametersIivNV, free(params);)
  free(params);
#line 54731 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramBufferParametersIuivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramBufferParametersIuivNV_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "target, bindingIndex, wordIndex, count, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	bindingIndex = (unsigned int)SvUV(ST(1))
;
	GLuint	wordIndex = (unsigned int)SvUV(ST(2))
;
	GLsizei	count = (int)SvIV(ST(3))
;
	const GLuint *	params = INT2PTR(const GLuint *,SvIV(ST(4)))
;
#line 26963 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramBufferParametersIuivNV, )
  OGLM_AVAIL_CHECK(__glewProgramBufferParametersIuivNV, glProgramBufferParametersIuivNV)
  glProgramBufferParametersIuivNV(target, bindingIndex, wordIndex, count, params);
  OGLM_CHECK_ERR(glProgramBufferParametersIuivNV, )
#line 54760 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramBufferParametersIuivNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramBufferParametersIuivNV_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "target, bindingIndex, wordIndex, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	bindingIndex = (unsigned int)SvUV(ST(1))
;
	GLuint	wordIndex = (unsigned int)SvUV(ST(2))
;
#line 26975 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramBufferParametersIuivNV, )
  OGLM_AVAIL_CHECK(__glewProgramBufferParametersIuivNV, glProgramBufferParametersIuivNV)
  GLsizei count = items-3;
  GLuint *params = OGLM_GET_VARARGS(params,3,GLuint,UV,count);
  glProgramBufferParametersIuivNV((GLenum )target, (GLuint )bindingIndex, (GLuint )wordIndex, (GLsizei )count, (const GLuint *)params);
  OGLM_CHECK_ERR(glProgramBufferParametersIuivNV, free(params);)
  free(params);
#line 54788 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramBufferParametersfvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramBufferParametersfvNV_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "target, bindingIndex, wordIndex, count, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	bindingIndex = (unsigned int)SvUV(ST(1))
;
	GLuint	wordIndex = (unsigned int)SvUV(ST(2))
;
	GLsizei	count = (int)SvIV(ST(3))
;
	const GLfloat *	params = INT2PTR(const GLfloat *,SvIV(ST(4)))
;
#line 26992 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramBufferParametersfvNV, )
  OGLM_AVAIL_CHECK(__glewProgramBufferParametersfvNV, glProgramBufferParametersfvNV)
  glProgramBufferParametersfvNV(target, bindingIndex, wordIndex, count, params);
  OGLM_CHECK_ERR(glProgramBufferParametersfvNV, )
#line 54817 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramBufferParametersfvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramBufferParametersfvNV_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "target, bindingIndex, wordIndex, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	bindingIndex = (unsigned int)SvUV(ST(1))
;
	GLuint	wordIndex = (unsigned int)SvUV(ST(2))
;
#line 27004 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramBufferParametersfvNV, )
  OGLM_AVAIL_CHECK(__glewProgramBufferParametersfvNV, glProgramBufferParametersfvNV)
  GLsizei count = items-3;
  GLfloat *params = OGLM_GET_VARARGS(params,3,GLfloat,NV,count);
  glProgramBufferParametersfvNV((GLenum )target, (GLuint )bindingIndex, (GLuint )wordIndex, (GLsizei )count, (const GLfloat *)params);
  OGLM_CHECK_ERR(glProgramBufferParametersfvNV, free(params);)
  free(params);
#line 54845 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramEnvParameter4dARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramEnvParameter4dARB)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "target, index, x, y, z, w");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLdouble	x = (double)SvNV(ST(2))
;
	GLdouble	y = (double)SvNV(ST(3))
;
	GLdouble	z = (double)SvNV(ST(4))
;
	GLdouble	w = (double)SvNV(ST(5))
;
#line 27022 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramEnvParameter4dARB, )
  OGLM_AVAIL_CHECK(__glewProgramEnvParameter4dARB, glProgramEnvParameter4dARB)
  glProgramEnvParameter4dARB(target, index, x, y, z, w);
  OGLM_CHECK_ERR(glProgramEnvParameter4dARB, )
#line 54876 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramEnvParameter4dvARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramEnvParameter4dvARB_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, index, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	const GLdouble*	params = INT2PTR(const GLdouble *,SvIV(ST(2)))
;
#line 27034 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramEnvParameter4dvARB, )
  OGLM_AVAIL_CHECK(__glewProgramEnvParameter4dvARB, glProgramEnvParameter4dvARB)
  glProgramEnvParameter4dvARB(target, index, params);
  OGLM_CHECK_ERR(glProgramEnvParameter4dvARB, )
#line 54901 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramEnvParameter4dvARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramEnvParameter4dvARB_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "target, index, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 27045 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramEnvParameter4dvARB, )
  OGLM_AVAIL_CHECK(__glewProgramEnvParameter4dvARB, glProgramEnvParameter4dvARB)
  GLdouble* params = OGLM_GET_VARARGS(params,2,GLdouble,NV,4);
  glProgramEnvParameter4dvARB((GLenum )target, (GLuint )index, (const GLdouble* )params);
  OGLM_CHECK_ERR(glProgramEnvParameter4dvARB, free(params);)
  free(params);
#line 54926 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramEnvParameter4fARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramEnvParameter4fARB)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "target, index, x, y, z, w");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLfloat	x = (float)SvNV(ST(2))
;
	GLfloat	y = (float)SvNV(ST(3))
;
	GLfloat	z = (float)SvNV(ST(4))
;
	GLfloat	w = (float)SvNV(ST(5))
;
#line 27062 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramEnvParameter4fARB, )
  OGLM_AVAIL_CHECK(__glewProgramEnvParameter4fARB, glProgramEnvParameter4fARB)
  glProgramEnvParameter4fARB(target, index, x, y, z, w);
  OGLM_CHECK_ERR(glProgramEnvParameter4fARB, )
#line 54957 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramEnvParameter4fvARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramEnvParameter4fvARB_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, index, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	const GLfloat*	params = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 27074 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramEnvParameter4fvARB, )
  OGLM_AVAIL_CHECK(__glewProgramEnvParameter4fvARB, glProgramEnvParameter4fvARB)
  glProgramEnvParameter4fvARB(target, index, params);
  OGLM_CHECK_ERR(glProgramEnvParameter4fvARB, )
#line 54982 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramEnvParameter4fvARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramEnvParameter4fvARB_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "target, index, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 27085 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramEnvParameter4fvARB, )
  OGLM_AVAIL_CHECK(__glewProgramEnvParameter4fvARB, glProgramEnvParameter4fvARB)
  GLfloat* params = OGLM_GET_VARARGS(params,2,GLfloat,NV,4);
  glProgramEnvParameter4fvARB((GLenum )target, (GLuint )index, (const GLfloat* )params);
  OGLM_CHECK_ERR(glProgramEnvParameter4fvARB, free(params);)
  free(params);
#line 55007 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramEnvParameterI4iNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramEnvParameterI4iNV)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "target, index, x, y, z, w");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLint	x = (int)SvIV(ST(2))
;
	GLint	y = (int)SvIV(ST(3))
;
	GLint	z = (int)SvIV(ST(4))
;
	GLint	w = (int)SvIV(ST(5))
;
#line 27102 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramEnvParameterI4iNV, )
  OGLM_AVAIL_CHECK(__glewProgramEnvParameterI4iNV, glProgramEnvParameterI4iNV)
  glProgramEnvParameterI4iNV(target, index, x, y, z, w);
  OGLM_CHECK_ERR(glProgramEnvParameterI4iNV, )
#line 55038 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramEnvParameterI4ivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramEnvParameterI4ivNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, index, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	const GLint *	params = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 27114 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramEnvParameterI4ivNV, )
  OGLM_AVAIL_CHECK(__glewProgramEnvParameterI4ivNV, glProgramEnvParameterI4ivNV)
  glProgramEnvParameterI4ivNV(target, index, params);
  OGLM_CHECK_ERR(glProgramEnvParameterI4ivNV, )
#line 55063 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramEnvParameterI4ivNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramEnvParameterI4ivNV_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "target, index, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 27125 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramEnvParameterI4ivNV, )
  OGLM_AVAIL_CHECK(__glewProgramEnvParameterI4ivNV, glProgramEnvParameterI4ivNV)
  GLint *params = OGLM_GET_VARARGS(params,2,GLint,IV,4);
  glProgramEnvParameterI4ivNV((GLenum )target, (GLuint )index, (const GLint *)params);
  OGLM_CHECK_ERR(glProgramEnvParameterI4ivNV, free(params);)
  free(params);
#line 55088 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramEnvParameterI4uiNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramEnvParameterI4uiNV)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "target, index, x, y, z, w");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLuint	x = (unsigned int)SvUV(ST(2))
;
	GLuint	y = (unsigned int)SvUV(ST(3))
;
	GLuint	z = (unsigned int)SvUV(ST(4))
;
	GLuint	w = (unsigned int)SvUV(ST(5))
;
#line 27142 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramEnvParameterI4uiNV, )
  OGLM_AVAIL_CHECK(__glewProgramEnvParameterI4uiNV, glProgramEnvParameterI4uiNV)
  glProgramEnvParameterI4uiNV(target, index, x, y, z, w);
  OGLM_CHECK_ERR(glProgramEnvParameterI4uiNV, )
#line 55119 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramEnvParameterI4uivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramEnvParameterI4uivNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, index, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	const GLuint *	params = INT2PTR(const GLuint *,SvIV(ST(2)))
;
#line 27154 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramEnvParameterI4uivNV, )
  OGLM_AVAIL_CHECK(__glewProgramEnvParameterI4uivNV, glProgramEnvParameterI4uivNV)
  glProgramEnvParameterI4uivNV(target, index, params);
  OGLM_CHECK_ERR(glProgramEnvParameterI4uivNV, )
#line 55144 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramEnvParameterI4uivNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramEnvParameterI4uivNV_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "target, index, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 27165 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramEnvParameterI4uivNV, )
  OGLM_AVAIL_CHECK(__glewProgramEnvParameterI4uivNV, glProgramEnvParameterI4uivNV)
  GLuint *params = OGLM_GET_VARARGS(params,2,GLuint,UV,4);
  glProgramEnvParameterI4uivNV((GLenum )target, (GLuint )index, (const GLuint *)params);
  OGLM_CHECK_ERR(glProgramEnvParameterI4uivNV, free(params);)
  free(params);
#line 55169 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramEnvParameters4fvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramEnvParameters4fvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, index, count, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLfloat*	params = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 27180 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramEnvParameters4fvEXT, )
  OGLM_AVAIL_CHECK(__glewProgramEnvParameters4fvEXT, glProgramEnvParameters4fvEXT)
  glProgramEnvParameters4fvEXT(target, index, count, params);
  OGLM_CHECK_ERR(glProgramEnvParameters4fvEXT, )
#line 55196 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramEnvParameters4fvEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramEnvParameters4fvEXT_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "target, index, count, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
#line 27192 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramEnvParameters4fvEXT, )
  OGLM_AVAIL_CHECK(__glewProgramEnvParameters4fvEXT, glProgramEnvParameters4fvEXT)
  GLfloat* params = OGLM_GET_VARARGS(params,3,GLfloat,NV,count*4);
  glProgramEnvParameters4fvEXT((GLenum )target, (GLuint )index, (GLsizei )count, (const GLfloat* )params);
  OGLM_CHECK_ERR(glProgramEnvParameters4fvEXT, free(params);)
  free(params);
#line 55223 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramEnvParametersI4ivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramEnvParametersI4ivNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, index, count, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLint *	params = INT2PTR(const GLint *,SvIV(ST(3)))
;
#line 27207 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramEnvParametersI4ivNV, )
  OGLM_AVAIL_CHECK(__glewProgramEnvParametersI4ivNV, glProgramEnvParametersI4ivNV)
  glProgramEnvParametersI4ivNV(target, index, count, params);
  OGLM_CHECK_ERR(glProgramEnvParametersI4ivNV, )
#line 55250 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramEnvParametersI4ivNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramEnvParametersI4ivNV_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "target, index, count, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
#line 27219 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramEnvParametersI4ivNV, )
  OGLM_AVAIL_CHECK(__glewProgramEnvParametersI4ivNV, glProgramEnvParametersI4ivNV)
  GLint *params = OGLM_GET_VARARGS(params,3,GLint,IV,count*4);
  glProgramEnvParametersI4ivNV((GLenum )target, (GLuint )index, (GLsizei )count, (const GLint *)params);
  OGLM_CHECK_ERR(glProgramEnvParametersI4ivNV, free(params);)
  free(params);
#line 55277 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramEnvParametersI4uivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramEnvParametersI4uivNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, index, count, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLuint *	params = INT2PTR(const GLuint *,SvIV(ST(3)))
;
#line 27234 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramEnvParametersI4uivNV, )
  OGLM_AVAIL_CHECK(__glewProgramEnvParametersI4uivNV, glProgramEnvParametersI4uivNV)
  glProgramEnvParametersI4uivNV(target, index, count, params);
  OGLM_CHECK_ERR(glProgramEnvParametersI4uivNV, )
#line 55304 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramEnvParametersI4uivNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramEnvParametersI4uivNV_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "target, index, count, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
#line 27246 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramEnvParametersI4uivNV, )
  OGLM_AVAIL_CHECK(__glewProgramEnvParametersI4uivNV, glProgramEnvParametersI4uivNV)
  GLuint *params = OGLM_GET_VARARGS(params,3,GLuint,UV,count*4);
  glProgramEnvParametersI4uivNV((GLenum )target, (GLuint )index, (GLsizei )count, (const GLuint *)params);
  OGLM_CHECK_ERR(glProgramEnvParametersI4uivNV, free(params);)
  free(params);
#line 55331 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramLocalParameter4dARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramLocalParameter4dARB)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "target, index, x, y, z, w");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLdouble	x = (double)SvNV(ST(2))
;
	GLdouble	y = (double)SvNV(ST(3))
;
	GLdouble	z = (double)SvNV(ST(4))
;
	GLdouble	w = (double)SvNV(ST(5))
;
#line 27263 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramLocalParameter4dARB, )
  OGLM_AVAIL_CHECK(__glewProgramLocalParameter4dARB, glProgramLocalParameter4dARB)
  glProgramLocalParameter4dARB(target, index, x, y, z, w);
  OGLM_CHECK_ERR(glProgramLocalParameter4dARB, )
#line 55362 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramLocalParameter4dvARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramLocalParameter4dvARB_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, index, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	const GLdouble*	params = INT2PTR(const GLdouble *,SvIV(ST(2)))
;
#line 27275 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramLocalParameter4dvARB, )
  OGLM_AVAIL_CHECK(__glewProgramLocalParameter4dvARB, glProgramLocalParameter4dvARB)
  glProgramLocalParameter4dvARB(target, index, params);
  OGLM_CHECK_ERR(glProgramLocalParameter4dvARB, )
#line 55387 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramLocalParameter4dvARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramLocalParameter4dvARB_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "target, index, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 27286 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramLocalParameter4dvARB, )
  OGLM_AVAIL_CHECK(__glewProgramLocalParameter4dvARB, glProgramLocalParameter4dvARB)
  GLdouble* params = OGLM_GET_VARARGS(params,2,GLdouble,NV,4);
  glProgramLocalParameter4dvARB((GLenum )target, (GLuint )index, (const GLdouble* )params);
  OGLM_CHECK_ERR(glProgramLocalParameter4dvARB, free(params);)
  free(params);
#line 55412 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramLocalParameter4fARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramLocalParameter4fARB)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "target, index, x, y, z, w");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLfloat	x = (float)SvNV(ST(2))
;
	GLfloat	y = (float)SvNV(ST(3))
;
	GLfloat	z = (float)SvNV(ST(4))
;
	GLfloat	w = (float)SvNV(ST(5))
;
#line 27303 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramLocalParameter4fARB, )
  OGLM_AVAIL_CHECK(__glewProgramLocalParameter4fARB, glProgramLocalParameter4fARB)
  glProgramLocalParameter4fARB(target, index, x, y, z, w);
  OGLM_CHECK_ERR(glProgramLocalParameter4fARB, )
#line 55443 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramLocalParameter4fvARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramLocalParameter4fvARB_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, index, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	const GLfloat*	params = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 27315 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramLocalParameter4fvARB, )
  OGLM_AVAIL_CHECK(__glewProgramLocalParameter4fvARB, glProgramLocalParameter4fvARB)
  glProgramLocalParameter4fvARB(target, index, params);
  OGLM_CHECK_ERR(glProgramLocalParameter4fvARB, )
#line 55468 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramLocalParameter4fvARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramLocalParameter4fvARB_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "target, index, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 27326 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramLocalParameter4fvARB, )
  OGLM_AVAIL_CHECK(__glewProgramLocalParameter4fvARB, glProgramLocalParameter4fvARB)
  GLfloat* params = OGLM_GET_VARARGS(params,2,GLfloat,NV,4);
  glProgramLocalParameter4fvARB((GLenum )target, (GLuint )index, (const GLfloat* )params);
  OGLM_CHECK_ERR(glProgramLocalParameter4fvARB, free(params);)
  free(params);
#line 55493 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramLocalParameterI4iNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramLocalParameterI4iNV)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "target, index, x, y, z, w");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLint	x = (int)SvIV(ST(2))
;
	GLint	y = (int)SvIV(ST(3))
;
	GLint	z = (int)SvIV(ST(4))
;
	GLint	w = (int)SvIV(ST(5))
;
#line 27343 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramLocalParameterI4iNV, )
  OGLM_AVAIL_CHECK(__glewProgramLocalParameterI4iNV, glProgramLocalParameterI4iNV)
  glProgramLocalParameterI4iNV(target, index, x, y, z, w);
  OGLM_CHECK_ERR(glProgramLocalParameterI4iNV, )
#line 55524 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramLocalParameterI4ivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramLocalParameterI4ivNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, index, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	const GLint *	params = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 27355 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramLocalParameterI4ivNV, )
  OGLM_AVAIL_CHECK(__glewProgramLocalParameterI4ivNV, glProgramLocalParameterI4ivNV)
  glProgramLocalParameterI4ivNV(target, index, params);
  OGLM_CHECK_ERR(glProgramLocalParameterI4ivNV, )
#line 55549 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramLocalParameterI4ivNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramLocalParameterI4ivNV_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "target, index, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 27366 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramLocalParameterI4ivNV, )
  OGLM_AVAIL_CHECK(__glewProgramLocalParameterI4ivNV, glProgramLocalParameterI4ivNV)
  GLint *params = OGLM_GET_VARARGS(params,2,GLint,IV,4);
  glProgramLocalParameterI4ivNV((GLenum )target, (GLuint )index, (const GLint *)params);
  OGLM_CHECK_ERR(glProgramLocalParameterI4ivNV, free(params);)
  free(params);
#line 55574 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramLocalParameterI4uiNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramLocalParameterI4uiNV)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "target, index, x, y, z, w");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLuint	x = (unsigned int)SvUV(ST(2))
;
	GLuint	y = (unsigned int)SvUV(ST(3))
;
	GLuint	z = (unsigned int)SvUV(ST(4))
;
	GLuint	w = (unsigned int)SvUV(ST(5))
;
#line 27383 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramLocalParameterI4uiNV, )
  OGLM_AVAIL_CHECK(__glewProgramLocalParameterI4uiNV, glProgramLocalParameterI4uiNV)
  glProgramLocalParameterI4uiNV(target, index, x, y, z, w);
  OGLM_CHECK_ERR(glProgramLocalParameterI4uiNV, )
#line 55605 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramLocalParameterI4uivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramLocalParameterI4uivNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, index, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	const GLuint *	params = INT2PTR(const GLuint *,SvIV(ST(2)))
;
#line 27395 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramLocalParameterI4uivNV, )
  OGLM_AVAIL_CHECK(__glewProgramLocalParameterI4uivNV, glProgramLocalParameterI4uivNV)
  glProgramLocalParameterI4uivNV(target, index, params);
  OGLM_CHECK_ERR(glProgramLocalParameterI4uivNV, )
#line 55630 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramLocalParameterI4uivNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramLocalParameterI4uivNV_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "target, index, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 27406 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramLocalParameterI4uivNV, )
  OGLM_AVAIL_CHECK(__glewProgramLocalParameterI4uivNV, glProgramLocalParameterI4uivNV)
  GLuint *params = OGLM_GET_VARARGS(params,2,GLuint,UV,4);
  glProgramLocalParameterI4uivNV((GLenum )target, (GLuint )index, (const GLuint *)params);
  OGLM_CHECK_ERR(glProgramLocalParameterI4uivNV, free(params);)
  free(params);
#line 55655 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramLocalParameters4fvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramLocalParameters4fvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, index, count, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLfloat*	params = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 27421 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramLocalParameters4fvEXT, )
  OGLM_AVAIL_CHECK(__glewProgramLocalParameters4fvEXT, glProgramLocalParameters4fvEXT)
  glProgramLocalParameters4fvEXT(target, index, count, params);
  OGLM_CHECK_ERR(glProgramLocalParameters4fvEXT, )
#line 55682 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramLocalParameters4fvEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramLocalParameters4fvEXT_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "target, index, count, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
#line 27433 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramLocalParameters4fvEXT, )
  OGLM_AVAIL_CHECK(__glewProgramLocalParameters4fvEXT, glProgramLocalParameters4fvEXT)
  GLfloat* params = OGLM_GET_VARARGS(params,3,GLfloat,NV,count*4);
  glProgramLocalParameters4fvEXT((GLenum )target, (GLuint )index, (GLsizei )count, (const GLfloat* )params);
  OGLM_CHECK_ERR(glProgramLocalParameters4fvEXT, free(params);)
  free(params);
#line 55709 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramLocalParametersI4ivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramLocalParametersI4ivNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, index, count, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLint *	params = INT2PTR(const GLint *,SvIV(ST(3)))
;
#line 27448 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramLocalParametersI4ivNV, )
  OGLM_AVAIL_CHECK(__glewProgramLocalParametersI4ivNV, glProgramLocalParametersI4ivNV)
  glProgramLocalParametersI4ivNV(target, index, count, params);
  OGLM_CHECK_ERR(glProgramLocalParametersI4ivNV, )
#line 55736 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramLocalParametersI4ivNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramLocalParametersI4ivNV_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "target, index, count, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
#line 27460 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramLocalParametersI4ivNV, )
  OGLM_AVAIL_CHECK(__glewProgramLocalParametersI4ivNV, glProgramLocalParametersI4ivNV)
  GLint *params = OGLM_GET_VARARGS(params,3,GLint,IV,count*4);
  glProgramLocalParametersI4ivNV((GLenum )target, (GLuint )index, (GLsizei )count, (const GLint *)params);
  OGLM_CHECK_ERR(glProgramLocalParametersI4ivNV, free(params);)
  free(params);
#line 55763 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramLocalParametersI4uivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramLocalParametersI4uivNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, index, count, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLuint *	params = INT2PTR(const GLuint *,SvIV(ST(3)))
;
#line 27475 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramLocalParametersI4uivNV, )
  OGLM_AVAIL_CHECK(__glewProgramLocalParametersI4uivNV, glProgramLocalParametersI4uivNV)
  glProgramLocalParametersI4uivNV(target, index, count, params);
  OGLM_CHECK_ERR(glProgramLocalParametersI4uivNV, )
#line 55790 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramLocalParametersI4uivNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramLocalParametersI4uivNV_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "target, index, count, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
#line 27487 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramLocalParametersI4uivNV, )
  OGLM_AVAIL_CHECK(__glewProgramLocalParametersI4uivNV, glProgramLocalParametersI4uivNV)
  GLuint *params = OGLM_GET_VARARGS(params,3,GLuint,UV,count*4);
  glProgramLocalParametersI4uivNV((GLenum )target, (GLuint )index, (GLsizei )count, (const GLuint *)params);
  OGLM_CHECK_ERR(glProgramLocalParametersI4uivNV, free(params);)
  free(params);
#line 55817 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramNamedParameter4dNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramNamedParameter4dNV)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "id, len, name, x, y, z, w");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLsizei	len = (int)SvIV(ST(1))
;
	const GLubyte*        name = (const GLubyte *)SvPV_nolen(ST(2))
;
	GLdouble	x = (double)SvNV(ST(3))
;
	GLdouble	y = (double)SvNV(ST(4))
;
	GLdouble	z = (double)SvNV(ST(5))
;
	GLdouble	w = (double)SvNV(ST(6))
;
#line 27505 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramNamedParameter4dNV, )
  OGLM_AVAIL_CHECK(__glewProgramNamedParameter4dNV, glProgramNamedParameter4dNV)
  glProgramNamedParameter4dNV(id, len, name, x, y, z, w);
  OGLM_CHECK_ERR(glProgramNamedParameter4dNV, )
#line 55850 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramNamedParameter4dvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramNamedParameter4dvNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "id, len, name, v");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLsizei	len = (int)SvIV(ST(1))
;
	const GLubyte*        name = (const GLubyte *)SvPV_nolen(ST(2))
;
	const GLdouble *	v = INT2PTR(const GLdouble *,SvIV(ST(3)))
;
#line 27518 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramNamedParameter4dvNV, )
  OGLM_AVAIL_CHECK(__glewProgramNamedParameter4dvNV, glProgramNamedParameter4dvNV)
  glProgramNamedParameter4dvNV(id, len, name, v);
  OGLM_CHECK_ERR(glProgramNamedParameter4dvNV, )
#line 55877 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramNamedParameter4dvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramNamedParameter4dvNV_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "id, len, name, ...");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLsizei	len = (int)SvIV(ST(1))
;
	const GLubyte*        name = (const GLubyte *)SvPV_nolen(ST(2))
;
#line 27530 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramNamedParameter4dvNV, )
  OGLM_AVAIL_CHECK(__glewProgramNamedParameter4dvNV, glProgramNamedParameter4dvNV)
  GLdouble * v = OGLM_GET_VARARGS(v,3,GLdouble,NV,4);
  glProgramNamedParameter4dvNV((GLuint )id, (GLsizei )len, (const GLubyte* )name, (const GLdouble * )v);
  OGLM_CHECK_ERR(glProgramNamedParameter4dvNV, free(v);)
  free(v);
#line 55904 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramNamedParameter4fNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramNamedParameter4fNV)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "id, len, name, x, y, z, w");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLsizei	len = (int)SvIV(ST(1))
;
	const GLubyte*        name = (const GLubyte *)SvPV_nolen(ST(2))
;
	GLfloat	x = (float)SvNV(ST(3))
;
	GLfloat	y = (float)SvNV(ST(4))
;
	GLfloat	z = (float)SvNV(ST(5))
;
	GLfloat	w = (float)SvNV(ST(6))
;
#line 27548 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramNamedParameter4fNV, )
  OGLM_AVAIL_CHECK(__glewProgramNamedParameter4fNV, glProgramNamedParameter4fNV)
  glProgramNamedParameter4fNV(id, len, name, x, y, z, w);
  OGLM_CHECK_ERR(glProgramNamedParameter4fNV, )
#line 55937 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramNamedParameter4fvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramNamedParameter4fvNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "id, len, name, v");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLsizei	len = (int)SvIV(ST(1))
;
	const GLubyte*        name = (const GLubyte *)SvPV_nolen(ST(2))
;
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 27561 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramNamedParameter4fvNV, )
  OGLM_AVAIL_CHECK(__glewProgramNamedParameter4fvNV, glProgramNamedParameter4fvNV)
  glProgramNamedParameter4fvNV(id, len, name, v);
  OGLM_CHECK_ERR(glProgramNamedParameter4fvNV, )
#line 55964 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramNamedParameter4fvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramNamedParameter4fvNV_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "id, len, name, ...");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLsizei	len = (int)SvIV(ST(1))
;
	const GLubyte*        name = (const GLubyte *)SvPV_nolen(ST(2))
;
#line 27573 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramNamedParameter4fvNV, )
  OGLM_AVAIL_CHECK(__glewProgramNamedParameter4fvNV, glProgramNamedParameter4fvNV)
  GLfloat * v = OGLM_GET_VARARGS(v,3,GLfloat,NV,4);
  glProgramNamedParameter4fvNV((GLuint )id, (GLsizei )len, (const GLubyte* )name, (const GLfloat * )v);
  OGLM_CHECK_ERR(glProgramNamedParameter4fvNV, free(v);)
  free(v);
#line 55991 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramParameter4dNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramParameter4dNV)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "target, index, x, y, z, w");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLdouble	x = (double)SvNV(ST(2))
;
	GLdouble	y = (double)SvNV(ST(3))
;
	GLdouble	z = (double)SvNV(ST(4))
;
	GLdouble	w = (double)SvNV(ST(5))
;
#line 27590 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramParameter4dNV, )
  OGLM_AVAIL_CHECK(__glewProgramParameter4dNV, glProgramParameter4dNV)
  glProgramParameter4dNV(target, index, x, y, z, w);
  OGLM_CHECK_ERR(glProgramParameter4dNV, )
#line 56022 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramParameter4dvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramParameter4dvNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, index, v");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	const GLdouble*	v = INT2PTR(const GLdouble *,SvIV(ST(2)))
;
#line 27602 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramParameter4dvNV, )
  OGLM_AVAIL_CHECK(__glewProgramParameter4dvNV, glProgramParameter4dvNV)
  glProgramParameter4dvNV(target, index, v);
  OGLM_CHECK_ERR(glProgramParameter4dvNV, )
#line 56047 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramParameter4dvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramParameter4dvNV_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "target, index, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 27613 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramParameter4dvNV, )
  OGLM_AVAIL_CHECK(__glewProgramParameter4dvNV, glProgramParameter4dvNV)
  GLdouble* v = OGLM_GET_VARARGS(v,2,GLdouble,NV,4);
  glProgramParameter4dvNV((GLenum )target, (GLuint )index, (const GLdouble* )v);
  OGLM_CHECK_ERR(glProgramParameter4dvNV, free(v);)
  free(v);
#line 56072 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramParameter4fNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramParameter4fNV)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "target, index, x, y, z, w");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLfloat	x = (float)SvNV(ST(2))
;
	GLfloat	y = (float)SvNV(ST(3))
;
	GLfloat	z = (float)SvNV(ST(4))
;
	GLfloat	w = (float)SvNV(ST(5))
;
#line 27630 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramParameter4fNV, )
  OGLM_AVAIL_CHECK(__glewProgramParameter4fNV, glProgramParameter4fNV)
  glProgramParameter4fNV(target, index, x, y, z, w);
  OGLM_CHECK_ERR(glProgramParameter4fNV, )
#line 56103 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramParameter4fvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramParameter4fvNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, index, v");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	const GLfloat*	v = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 27642 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramParameter4fvNV, )
  OGLM_AVAIL_CHECK(__glewProgramParameter4fvNV, glProgramParameter4fvNV)
  glProgramParameter4fvNV(target, index, v);
  OGLM_CHECK_ERR(glProgramParameter4fvNV, )
#line 56128 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramParameter4fvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramParameter4fvNV_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "target, index, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 27653 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramParameter4fvNV, )
  OGLM_AVAIL_CHECK(__glewProgramParameter4fvNV, glProgramParameter4fvNV)
  GLfloat* v = OGLM_GET_VARARGS(v,2,GLfloat,NV,4);
  glProgramParameter4fvNV((GLenum )target, (GLuint )index, (const GLfloat* )v);
  OGLM_CHECK_ERR(glProgramParameter4fvNV, free(v);)
  free(v);
#line 56153 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramParameteri); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramParameteri)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "program, pname, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint	value = (int)SvIV(ST(2))
;
#line 27670 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramParameteri, )
  OGLM_AVAIL_CHECK(__glewProgramParameteri, glProgramParameteri)
  glProgramParameteri(program, pname, value);
  OGLM_CHECK_ERR(glProgramParameteri, )
#line 56179 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramParameters4dvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramParameters4dvNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, index, count, v");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLdouble*	v = INT2PTR(const GLdouble *,SvIV(ST(3)))
;
#line 27683 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramParameters4dvNV, )
  OGLM_AVAIL_CHECK(__glewProgramParameters4dvNV, glProgramParameters4dvNV)
  glProgramParameters4dvNV(target, index, count, v);
  OGLM_CHECK_ERR(glProgramParameters4dvNV, )
#line 56206 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramParameters4dvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramParameters4dvNV_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "target, index, count, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
#line 27695 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramParameters4dvNV, )
  OGLM_AVAIL_CHECK(__glewProgramParameters4dvNV, glProgramParameters4dvNV)
  GLdouble* v = OGLM_GET_VARARGS(v,3,GLdouble,NV,count*4);
  glProgramParameters4dvNV((GLenum )target, (GLuint )index, (GLsizei )count, (const GLdouble* )v);
  OGLM_CHECK_ERR(glProgramParameters4dvNV, free(v);)
  free(v);
#line 56233 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramParameters4fvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramParameters4fvNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, index, count, v");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLfloat*	v = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 27710 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramParameters4fvNV, )
  OGLM_AVAIL_CHECK(__glewProgramParameters4fvNV, glProgramParameters4fvNV)
  glProgramParameters4fvNV(target, index, count, v);
  OGLM_CHECK_ERR(glProgramParameters4fvNV, )
#line 56260 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramParameters4fvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramParameters4fvNV_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "target, index, count, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
#line 27722 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramParameters4fvNV, )
  OGLM_AVAIL_CHECK(__glewProgramParameters4fvNV, glProgramParameters4fvNV)
  GLfloat* v = OGLM_GET_VARARGS(v,3,GLfloat,NV,count*4);
  glProgramParameters4fvNV((GLenum )target, (GLuint )index, (GLsizei )count, (const GLfloat* )v);
  OGLM_CHECK_ERR(glProgramParameters4fvNV, free(v);)
  free(v);
#line 56287 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramPathFragmentInputGenNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramPathFragmentInputGenNV_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "program, location, genMode, components, coeffs");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLenum	genMode = (int)SvIV(ST(2))
;
	GLint	components = (int)SvIV(ST(3))
;
	const GLfloat*	coeffs = INT2PTR(const GLfloat *,SvIV(ST(4)))
;
#line 27738 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramPathFragmentInputGenNV, )
  OGLM_AVAIL_CHECK(__glewProgramPathFragmentInputGenNV, glProgramPathFragmentInputGenNV)
  glProgramPathFragmentInputGenNV(program, location, genMode, components, coeffs);
  OGLM_CHECK_ERR(glProgramPathFragmentInputGenNV, )
#line 56316 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramStringARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramStringARB_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, format, len, string");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	format = (int)SvIV(ST(1))
;
	GLsizei	len = (int)SvIV(ST(2))
;
	const void *	string = INT2PTR(const void *,SvIV(ST(3)))
;
#line 27751 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramStringARB, )
  OGLM_AVAIL_CHECK(__glewProgramStringARB, glProgramStringARB)
  glProgramStringARB(target, format, len, string);
  OGLM_CHECK_ERR(glProgramStringARB, )
#line 56343 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1d)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, location, x");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLdouble	x = (double)SvNV(ST(2))
;
#line 27763 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform1d, )
  OGLM_AVAIL_CHECK(__glewProgramUniform1d, glProgramUniform1d)
  glProgramUniform1d(program, location, x);
  OGLM_CHECK_ERR(glProgramUniform1d, )
#line 56368 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1dv_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, count, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLdouble*	value = INT2PTR(const GLdouble *,SvIV(ST(3)))
;
#line 27776 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform1dv, )
  OGLM_AVAIL_CHECK(__glewProgramUniform1dv, glProgramUniform1dv)
  glProgramUniform1dv(program, location, count, value);
  OGLM_CHECK_ERR(glProgramUniform1dv, )
#line 56395 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1dv_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "program, location, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
#line 27787 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform1dv, )
  OGLM_AVAIL_CHECK(__glewProgramUniform1dv, glProgramUniform1dv)
  GLsizei count = items-2;
  GLdouble* value = OGLM_GET_VARARGS(value,2,GLdouble,NV,count);
  glProgramUniform1dv((GLuint )program, (GLint )location, (GLsizei )count, (const GLdouble* )value);
  OGLM_CHECK_ERR(glProgramUniform1dv, free(value);)
  free(value);
#line 56421 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1f); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1f)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "program, location, x");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLfloat	x = (float)SvNV(ST(2))
;
#line 27804 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform1f, )
  OGLM_AVAIL_CHECK(__glewProgramUniform1f, glProgramUniform1f)
  glProgramUniform1f(program, location, x);
  OGLM_CHECK_ERR(glProgramUniform1f, )
#line 56447 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1fv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, count, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLfloat*	value = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 27819 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform1fv, )
  OGLM_AVAIL_CHECK(__glewProgramUniform1fv, glProgramUniform1fv)
  glProgramUniform1fv(program, location, count, value);
  OGLM_CHECK_ERR(glProgramUniform1fv, )
#line 56475 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1fv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 2)
       croak_xs_usage(cv,  "program, location, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
#line 27832 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform1fv, )
  OGLM_AVAIL_CHECK(__glewProgramUniform1fv, glProgramUniform1fv)
  GLsizei count = items-2;
  GLfloat* value = OGLM_GET_VARARGS(value,2,GLfloat,NV,count);
  glProgramUniform1fv((GLuint )program, (GLint )location, (GLsizei )count, (const GLfloat* )value);
  OGLM_CHECK_ERR(glProgramUniform1fv, free(value);)
  free(value);
#line 56502 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1i); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1i)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "program, location, x");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLint	x = (int)SvIV(ST(2))
;
#line 27849 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform1i, )
  OGLM_AVAIL_CHECK(__glewProgramUniform1i, glProgramUniform1i)
  glProgramUniform1i(program, location, x);
  OGLM_CHECK_ERR(glProgramUniform1i, )
#line 56528 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1i64ARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1i64ARB)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, location, x");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLint64	x = (unsigned int)SvUV(ST(2))
;
#line 27861 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform1i64ARB, )
  OGLM_AVAIL_CHECK(__glewProgramUniform1i64ARB, glProgramUniform1i64ARB)
  glProgramUniform1i64ARB(program, location, x);
  OGLM_CHECK_ERR(glProgramUniform1i64ARB, )
#line 56553 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1i64NV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1i64NV)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, location, x");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLint64EXT	x = (unsigned int)SvUV(ST(2))
;
#line 27873 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform1i64NV, )
  OGLM_AVAIL_CHECK(__glewProgramUniform1i64NV, glProgramUniform1i64NV)
  glProgramUniform1i64NV(program, location, x);
  OGLM_CHECK_ERR(glProgramUniform1i64NV, )
#line 56578 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1i64vARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1i64vARB_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, count, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLint64*	value = INT2PTR(const GLint64 *,SvIV(ST(3)))
;
#line 27886 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform1i64vARB, )
  OGLM_AVAIL_CHECK(__glewProgramUniform1i64vARB, glProgramUniform1i64vARB)
  glProgramUniform1i64vARB(program, location, count, value);
  OGLM_CHECK_ERR(glProgramUniform1i64vARB, )
#line 56605 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1i64vARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1i64vARB_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "program, location, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
#line 27897 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform1i64vARB, )
  OGLM_AVAIL_CHECK(__glewProgramUniform1i64vARB, glProgramUniform1i64vARB)
  GLsizei count = items-2;
  GLint64* value = OGLM_GET_VARARGS(value,2,GLint64,IV,count);
  glProgramUniform1i64vARB((GLuint )program, (GLint )location, (GLsizei )count, (const GLint64* )value);
  OGLM_CHECK_ERR(glProgramUniform1i64vARB, free(value);)
  free(value);
#line 56631 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1i64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1i64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, count, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLint64EXT*	value = INT2PTR(const GLint64EXT *,SvIV(ST(3)))
;
#line 27913 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform1i64vNV, )
  OGLM_AVAIL_CHECK(__glewProgramUniform1i64vNV, glProgramUniform1i64vNV)
  glProgramUniform1i64vNV(program, location, count, value);
  OGLM_CHECK_ERR(glProgramUniform1i64vNV, )
#line 56658 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1i64vNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1i64vNV_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "program, location, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
#line 27924 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform1i64vNV, )
  OGLM_AVAIL_CHECK(__glewProgramUniform1i64vNV, glProgramUniform1i64vNV)
  GLsizei count = items-2;
  GLint64EXT* value = OGLM_GET_VARARGS(value,2,GLint64EXT,IV,count);
  glProgramUniform1i64vNV((GLuint )program, (GLint )location, (GLsizei )count, (const GLint64EXT* )value);
  OGLM_CHECK_ERR(glProgramUniform1i64vNV, free(value);)
  free(value);
#line 56684 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1iv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1iv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, count, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLint*	value = INT2PTR(const GLint *,SvIV(ST(3)))
;
#line 27942 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform1iv, )
  OGLM_AVAIL_CHECK(__glewProgramUniform1iv, glProgramUniform1iv)
  glProgramUniform1iv(program, location, count, value);
  OGLM_CHECK_ERR(glProgramUniform1iv, )
#line 56712 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1iv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1iv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 2)
       croak_xs_usage(cv,  "program, location, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
#line 27955 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform1iv, )
  OGLM_AVAIL_CHECK(__glewProgramUniform1iv, glProgramUniform1iv)
  GLsizei count = items-2;
  GLint* value = OGLM_GET_VARARGS(value,2,GLint,IV,count);
  glProgramUniform1iv((GLuint )program, (GLint )location, (GLsizei )count, (const GLint* )value);
  OGLM_CHECK_ERR(glProgramUniform1iv, free(value);)
  free(value);
#line 56739 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1ui); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1ui)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "program, location, x");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLuint	x = (unsigned int)SvUV(ST(2))
;
#line 27972 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform1ui, )
  OGLM_AVAIL_CHECK(__glewProgramUniform1ui, glProgramUniform1ui)
  glProgramUniform1ui(program, location, x);
  OGLM_CHECK_ERR(glProgramUniform1ui, )
#line 56765 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1ui64ARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1ui64ARB)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, location, x");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLuint64	x = (unsigned int)SvUV(ST(2))
;
#line 27984 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform1ui64ARB, )
  OGLM_AVAIL_CHECK(__glewProgramUniform1ui64ARB, glProgramUniform1ui64ARB)
  glProgramUniform1ui64ARB(program, location, x);
  OGLM_CHECK_ERR(glProgramUniform1ui64ARB, )
#line 56790 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1ui64NV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1ui64NV)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, location, x");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLuint64EXT	x = (unsigned int)SvUV(ST(2))
;
#line 27996 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform1ui64NV, )
  OGLM_AVAIL_CHECK(__glewProgramUniform1ui64NV, glProgramUniform1ui64NV)
  glProgramUniform1ui64NV(program, location, x);
  OGLM_CHECK_ERR(glProgramUniform1ui64NV, )
#line 56815 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1ui64vARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1ui64vARB_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, count, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLuint64*	value = INT2PTR(const GLuint64 *,SvIV(ST(3)))
;
#line 28009 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform1ui64vARB, )
  OGLM_AVAIL_CHECK(__glewProgramUniform1ui64vARB, glProgramUniform1ui64vARB)
  glProgramUniform1ui64vARB(program, location, count, value);
  OGLM_CHECK_ERR(glProgramUniform1ui64vARB, )
#line 56842 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1ui64vARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1ui64vARB_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "program, location, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
#line 28020 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform1ui64vARB, )
  OGLM_AVAIL_CHECK(__glewProgramUniform1ui64vARB, glProgramUniform1ui64vARB)
  GLsizei count = items-2;
  GLuint64* value = OGLM_GET_VARARGS(value,2,GLuint64,UV,count);
  glProgramUniform1ui64vARB((GLuint )program, (GLint )location, (GLsizei )count, (const GLuint64* )value);
  OGLM_CHECK_ERR(glProgramUniform1ui64vARB, free(value);)
  free(value);
#line 56868 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1ui64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1ui64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, count, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLuint64EXT*	value = INT2PTR(const GLuint64EXT *,SvIV(ST(3)))
;
#line 28036 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform1ui64vNV, )
  OGLM_AVAIL_CHECK(__glewProgramUniform1ui64vNV, glProgramUniform1ui64vNV)
  glProgramUniform1ui64vNV(program, location, count, value);
  OGLM_CHECK_ERR(glProgramUniform1ui64vNV, )
#line 56895 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1ui64vNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1ui64vNV_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "program, location, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
#line 28047 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform1ui64vNV, )
  OGLM_AVAIL_CHECK(__glewProgramUniform1ui64vNV, glProgramUniform1ui64vNV)
  GLsizei count = items-2;
  GLuint64EXT* value = OGLM_GET_VARARGS(value,2,GLuint64EXT,UV,count);
  glProgramUniform1ui64vNV((GLuint )program, (GLint )location, (GLsizei )count, (const GLuint64EXT* )value);
  OGLM_CHECK_ERR(glProgramUniform1ui64vNV, free(value);)
  free(value);
#line 56921 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1uiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1uiv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, count, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLuint*	value = INT2PTR(const GLuint *,SvIV(ST(3)))
;
#line 28065 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform1uiv, )
  OGLM_AVAIL_CHECK(__glewProgramUniform1uiv, glProgramUniform1uiv)
  glProgramUniform1uiv(program, location, count, value);
  OGLM_CHECK_ERR(glProgramUniform1uiv, )
#line 56949 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1uiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform1uiv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 2)
       croak_xs_usage(cv,  "program, location, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
#line 28078 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform1uiv, )
  OGLM_AVAIL_CHECK(__glewProgramUniform1uiv, glProgramUniform1uiv)
  GLsizei count = items-2;
  GLuint* value = OGLM_GET_VARARGS(value,2,GLuint,UV,count);
  glProgramUniform1uiv((GLuint )program, (GLint )location, (GLsizei )count, (const GLuint* )value);
  OGLM_CHECK_ERR(glProgramUniform1uiv, free(value);)
  free(value);
#line 56976 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2d)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, x, y");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLdouble	x = (double)SvNV(ST(2))
;
	GLdouble	y = (double)SvNV(ST(3))
;
#line 28094 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform2d, )
  OGLM_AVAIL_CHECK(__glewProgramUniform2d, glProgramUniform2d)
  glProgramUniform2d(program, location, x, y);
  OGLM_CHECK_ERR(glProgramUniform2d, )
#line 57003 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2dv_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, count, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLdouble*	value = INT2PTR(const GLdouble *,SvIV(ST(3)))
;
#line 28107 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform2dv, )
  OGLM_AVAIL_CHECK(__glewProgramUniform2dv, glProgramUniform2dv)
  glProgramUniform2dv(program, location, count, value);
  OGLM_CHECK_ERR(glProgramUniform2dv, )
#line 57030 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2dv_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "program, location, count, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
#line 28119 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform2dv, )
  OGLM_AVAIL_CHECK(__glewProgramUniform2dv, glProgramUniform2dv)
  GLdouble* value = OGLM_GET_VARARGS(value,3,GLdouble,NV,count*2);
  glProgramUniform2dv((GLuint )program, (GLint )location, (GLsizei )count, (const GLdouble* )value);
  OGLM_CHECK_ERR(glProgramUniform2dv, free(value);)
  free(value);
#line 57057 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2f); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2f)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, x, y");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLfloat	x = (float)SvNV(ST(2))
;
	GLfloat	y = (float)SvNV(ST(3))
;
#line 28136 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform2f, )
  OGLM_AVAIL_CHECK(__glewProgramUniform2f, glProgramUniform2f)
  glProgramUniform2f(program, location, x, y);
  OGLM_CHECK_ERR(glProgramUniform2f, )
#line 57085 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2fv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, count, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLfloat*	value = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 28151 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform2fv, )
  OGLM_AVAIL_CHECK(__glewProgramUniform2fv, glProgramUniform2fv)
  glProgramUniform2fv(program, location, count, value);
  OGLM_CHECK_ERR(glProgramUniform2fv, )
#line 57113 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2fv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 3)
       croak_xs_usage(cv,  "program, location, count, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
#line 28165 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform2fv, )
  OGLM_AVAIL_CHECK(__glewProgramUniform2fv, glProgramUniform2fv)
  GLfloat* value = OGLM_GET_VARARGS(value,3,GLfloat,NV,count*2);
  glProgramUniform2fv((GLuint )program, (GLint )location, (GLsizei )count, (const GLfloat* )value);
  OGLM_CHECK_ERR(glProgramUniform2fv, free(value);)
  free(value);
#line 57141 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2i); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2i)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, x, y");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLint	x = (int)SvIV(ST(2))
;
	GLint	y = (int)SvIV(ST(3))
;
#line 28182 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform2i, )
  OGLM_AVAIL_CHECK(__glewProgramUniform2i, glProgramUniform2i)
  glProgramUniform2i(program, location, x, y);
  OGLM_CHECK_ERR(glProgramUniform2i, )
#line 57169 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2i64ARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2i64ARB)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, x, y");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLint64	x = (unsigned int)SvUV(ST(2))
;
	GLint64	y = (unsigned int)SvUV(ST(3))
;
#line 28195 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform2i64ARB, )
  OGLM_AVAIL_CHECK(__glewProgramUniform2i64ARB, glProgramUniform2i64ARB)
  glProgramUniform2i64ARB(program, location, x, y);
  OGLM_CHECK_ERR(glProgramUniform2i64ARB, )
#line 57196 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2i64NV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2i64NV)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, x, y");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLint64EXT	x = (unsigned int)SvUV(ST(2))
;
	GLint64EXT	y = (unsigned int)SvUV(ST(3))
;
#line 28208 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform2i64NV, )
  OGLM_AVAIL_CHECK(__glewProgramUniform2i64NV, glProgramUniform2i64NV)
  glProgramUniform2i64NV(program, location, x, y);
  OGLM_CHECK_ERR(glProgramUniform2i64NV, )
#line 57223 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2i64vARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2i64vARB_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, count, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLint64*	value = INT2PTR(const GLint64 *,SvIV(ST(3)))
;
#line 28221 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform2i64vARB, )
  OGLM_AVAIL_CHECK(__glewProgramUniform2i64vARB, glProgramUniform2i64vARB)
  glProgramUniform2i64vARB(program, location, count, value);
  OGLM_CHECK_ERR(glProgramUniform2i64vARB, )
#line 57250 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2i64vARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2i64vARB_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "program, location, count, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
#line 28233 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform2i64vARB, )
  OGLM_AVAIL_CHECK(__glewProgramUniform2i64vARB, glProgramUniform2i64vARB)
  GLint64* value = OGLM_GET_VARARGS(value,3,GLint64,IV,count*2);
  glProgramUniform2i64vARB((GLuint )program, (GLint )location, (GLsizei )count, (const GLint64* )value);
  OGLM_CHECK_ERR(glProgramUniform2i64vARB, free(value);)
  free(value);
#line 57277 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2i64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2i64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, count, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLint64EXT*	value = INT2PTR(const GLint64EXT *,SvIV(ST(3)))
;
#line 28248 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform2i64vNV, )
  OGLM_AVAIL_CHECK(__glewProgramUniform2i64vNV, glProgramUniform2i64vNV)
  glProgramUniform2i64vNV(program, location, count, value);
  OGLM_CHECK_ERR(glProgramUniform2i64vNV, )
#line 57304 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2i64vNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2i64vNV_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "program, location, count, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
#line 28260 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform2i64vNV, )
  OGLM_AVAIL_CHECK(__glewProgramUniform2i64vNV, glProgramUniform2i64vNV)
  GLint64EXT* value = OGLM_GET_VARARGS(value,3,GLint64EXT,IV,count*2);
  glProgramUniform2i64vNV((GLuint )program, (GLint )location, (GLsizei )count, (const GLint64EXT* )value);
  OGLM_CHECK_ERR(glProgramUniform2i64vNV, free(value);)
  free(value);
#line 57331 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2iv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2iv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, count, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLint*	value = INT2PTR(const GLint *,SvIV(ST(3)))
;
#line 28277 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform2iv, )
  OGLM_AVAIL_CHECK(__glewProgramUniform2iv, glProgramUniform2iv)
  glProgramUniform2iv(program, location, count, value);
  OGLM_CHECK_ERR(glProgramUniform2iv, )
#line 57359 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2iv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2iv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 3)
       croak_xs_usage(cv,  "program, location, count, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
#line 28291 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform2iv, )
  OGLM_AVAIL_CHECK(__glewProgramUniform2iv, glProgramUniform2iv)
  GLint* value = OGLM_GET_VARARGS(value,3,GLint,IV,count*2);
  glProgramUniform2iv((GLuint )program, (GLint )location, (GLsizei )count, (const GLint* )value);
  OGLM_CHECK_ERR(glProgramUniform2iv, free(value);)
  free(value);
#line 57387 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2ui); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2ui)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, x, y");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLuint	x = (unsigned int)SvUV(ST(2))
;
	GLuint	y = (unsigned int)SvUV(ST(3))
;
#line 28308 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform2ui, )
  OGLM_AVAIL_CHECK(__glewProgramUniform2ui, glProgramUniform2ui)
  glProgramUniform2ui(program, location, x, y);
  OGLM_CHECK_ERR(glProgramUniform2ui, )
#line 57415 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2ui64ARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2ui64ARB)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, x, y");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLuint64	x = (unsigned int)SvUV(ST(2))
;
	GLuint64	y = (unsigned int)SvUV(ST(3))
;
#line 28321 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform2ui64ARB, )
  OGLM_AVAIL_CHECK(__glewProgramUniform2ui64ARB, glProgramUniform2ui64ARB)
  glProgramUniform2ui64ARB(program, location, x, y);
  OGLM_CHECK_ERR(glProgramUniform2ui64ARB, )
#line 57442 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2ui64NV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2ui64NV)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, x, y");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLuint64EXT	x = (unsigned int)SvUV(ST(2))
;
	GLuint64EXT	y = (unsigned int)SvUV(ST(3))
;
#line 28334 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform2ui64NV, )
  OGLM_AVAIL_CHECK(__glewProgramUniform2ui64NV, glProgramUniform2ui64NV)
  glProgramUniform2ui64NV(program, location, x, y);
  OGLM_CHECK_ERR(glProgramUniform2ui64NV, )
#line 57469 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2ui64vARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2ui64vARB_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, count, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLuint64*	value = INT2PTR(const GLuint64 *,SvIV(ST(3)))
;
#line 28347 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform2ui64vARB, )
  OGLM_AVAIL_CHECK(__glewProgramUniform2ui64vARB, glProgramUniform2ui64vARB)
  glProgramUniform2ui64vARB(program, location, count, value);
  OGLM_CHECK_ERR(glProgramUniform2ui64vARB, )
#line 57496 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2ui64vARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2ui64vARB_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "program, location, count, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
#line 28359 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform2ui64vARB, )
  OGLM_AVAIL_CHECK(__glewProgramUniform2ui64vARB, glProgramUniform2ui64vARB)
  GLuint64* value = OGLM_GET_VARARGS(value,3,GLuint64,UV,count*2);
  glProgramUniform2ui64vARB((GLuint )program, (GLint )location, (GLsizei )count, (const GLuint64* )value);
  OGLM_CHECK_ERR(glProgramUniform2ui64vARB, free(value);)
  free(value);
#line 57523 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2ui64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2ui64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, count, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLuint64EXT*	value = INT2PTR(const GLuint64EXT *,SvIV(ST(3)))
;
#line 28374 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform2ui64vNV, )
  OGLM_AVAIL_CHECK(__glewProgramUniform2ui64vNV, glProgramUniform2ui64vNV)
  glProgramUniform2ui64vNV(program, location, count, value);
  OGLM_CHECK_ERR(glProgramUniform2ui64vNV, )
#line 57550 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2ui64vNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2ui64vNV_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "program, location, count, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
#line 28386 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform2ui64vNV, )
  OGLM_AVAIL_CHECK(__glewProgramUniform2ui64vNV, glProgramUniform2ui64vNV)
  GLuint64EXT* value = OGLM_GET_VARARGS(value,3,GLuint64EXT,UV,count*2);
  glProgramUniform2ui64vNV((GLuint )program, (GLint )location, (GLsizei )count, (const GLuint64EXT* )value);
  OGLM_CHECK_ERR(glProgramUniform2ui64vNV, free(value);)
  free(value);
#line 57577 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2uiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2uiv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, count, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLuint*	value = INT2PTR(const GLuint *,SvIV(ST(3)))
;
#line 28403 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform2uiv, )
  OGLM_AVAIL_CHECK(__glewProgramUniform2uiv, glProgramUniform2uiv)
  glProgramUniform2uiv(program, location, count, value);
  OGLM_CHECK_ERR(glProgramUniform2uiv, )
#line 57605 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2uiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform2uiv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 3)
       croak_xs_usage(cv,  "program, location, count, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
#line 28417 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform2uiv, )
  OGLM_AVAIL_CHECK(__glewProgramUniform2uiv, glProgramUniform2uiv)
  GLuint* value = OGLM_GET_VARARGS(value,3,GLuint,UV,count*2);
  glProgramUniform2uiv((GLuint )program, (GLint )location, (GLsizei )count, (const GLuint* )value);
  OGLM_CHECK_ERR(glProgramUniform2uiv, free(value);)
  free(value);
#line 57633 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3d)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "program, location, x, y, z");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLdouble	x = (double)SvNV(ST(2))
;
	GLdouble	y = (double)SvNV(ST(3))
;
	GLdouble	z = (double)SvNV(ST(4))
;
#line 28433 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform3d, )
  OGLM_AVAIL_CHECK(__glewProgramUniform3d, glProgramUniform3d)
  glProgramUniform3d(program, location, x, y, z);
  OGLM_CHECK_ERR(glProgramUniform3d, )
#line 57662 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3dv_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, count, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLdouble*	value = INT2PTR(const GLdouble *,SvIV(ST(3)))
;
#line 28446 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform3dv, )
  OGLM_AVAIL_CHECK(__glewProgramUniform3dv, glProgramUniform3dv)
  glProgramUniform3dv(program, location, count, value);
  OGLM_CHECK_ERR(glProgramUniform3dv, )
#line 57689 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3dv_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "program, location, count, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
#line 28458 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform3dv, )
  OGLM_AVAIL_CHECK(__glewProgramUniform3dv, glProgramUniform3dv)
  GLdouble* value = OGLM_GET_VARARGS(value,3,GLdouble,NV,count*3);
  glProgramUniform3dv((GLuint )program, (GLint )location, (GLsizei )count, (const GLdouble* )value);
  OGLM_CHECK_ERR(glProgramUniform3dv, free(value);)
  free(value);
#line 57716 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3f); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3f)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "program, location, x, y, z");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLfloat	x = (float)SvNV(ST(2))
;
	GLfloat	y = (float)SvNV(ST(3))
;
	GLfloat	z = (float)SvNV(ST(4))
;
#line 28476 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform3f, )
  OGLM_AVAIL_CHECK(__glewProgramUniform3f, glProgramUniform3f)
  glProgramUniform3f(program, location, x, y, z);
  OGLM_CHECK_ERR(glProgramUniform3f, )
#line 57746 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3fv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, count, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLfloat*	value = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 28491 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform3fv, )
  OGLM_AVAIL_CHECK(__glewProgramUniform3fv, glProgramUniform3fv)
  glProgramUniform3fv(program, location, count, value);
  OGLM_CHECK_ERR(glProgramUniform3fv, )
#line 57774 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3fv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 3)
       croak_xs_usage(cv,  "program, location, count, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
#line 28505 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform3fv, )
  OGLM_AVAIL_CHECK(__glewProgramUniform3fv, glProgramUniform3fv)
  GLfloat* value = OGLM_GET_VARARGS(value,3,GLfloat,NV,count*3);
  glProgramUniform3fv((GLuint )program, (GLint )location, (GLsizei )count, (const GLfloat* )value);
  OGLM_CHECK_ERR(glProgramUniform3fv, free(value);)
  free(value);
#line 57802 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3i); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3i)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "program, location, x, y, z");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLint	x = (int)SvIV(ST(2))
;
	GLint	y = (int)SvIV(ST(3))
;
	GLint	z = (int)SvIV(ST(4))
;
#line 28523 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform3i, )
  OGLM_AVAIL_CHECK(__glewProgramUniform3i, glProgramUniform3i)
  glProgramUniform3i(program, location, x, y, z);
  OGLM_CHECK_ERR(glProgramUniform3i, )
#line 57832 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3i64ARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3i64ARB)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "program, location, x, y, z");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLint64	x = (unsigned int)SvUV(ST(2))
;
	GLint64	y = (unsigned int)SvUV(ST(3))
;
	GLint64	z = (unsigned int)SvUV(ST(4))
;
#line 28537 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform3i64ARB, )
  OGLM_AVAIL_CHECK(__glewProgramUniform3i64ARB, glProgramUniform3i64ARB)
  glProgramUniform3i64ARB(program, location, x, y, z);
  OGLM_CHECK_ERR(glProgramUniform3i64ARB, )
#line 57861 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3i64NV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3i64NV)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "program, location, x, y, z");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLint64EXT	x = (unsigned int)SvUV(ST(2))
;
	GLint64EXT	y = (unsigned int)SvUV(ST(3))
;
	GLint64EXT	z = (unsigned int)SvUV(ST(4))
;
#line 28551 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform3i64NV, )
  OGLM_AVAIL_CHECK(__glewProgramUniform3i64NV, glProgramUniform3i64NV)
  glProgramUniform3i64NV(program, location, x, y, z);
  OGLM_CHECK_ERR(glProgramUniform3i64NV, )
#line 57890 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3i64vARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3i64vARB_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, count, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLint64*	value = INT2PTR(const GLint64 *,SvIV(ST(3)))
;
#line 28564 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform3i64vARB, )
  OGLM_AVAIL_CHECK(__glewProgramUniform3i64vARB, glProgramUniform3i64vARB)
  glProgramUniform3i64vARB(program, location, count, value);
  OGLM_CHECK_ERR(glProgramUniform3i64vARB, )
#line 57917 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3i64vARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3i64vARB_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "program, location, count, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
#line 28576 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform3i64vARB, )
  OGLM_AVAIL_CHECK(__glewProgramUniform3i64vARB, glProgramUniform3i64vARB)
  GLint64* value = OGLM_GET_VARARGS(value,3,GLint64,IV,count*3);
  glProgramUniform3i64vARB((GLuint )program, (GLint )location, (GLsizei )count, (const GLint64* )value);
  OGLM_CHECK_ERR(glProgramUniform3i64vARB, free(value);)
  free(value);
#line 57944 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3i64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3i64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, count, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLint64EXT*	value = INT2PTR(const GLint64EXT *,SvIV(ST(3)))
;
#line 28591 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform3i64vNV, )
  OGLM_AVAIL_CHECK(__glewProgramUniform3i64vNV, glProgramUniform3i64vNV)
  glProgramUniform3i64vNV(program, location, count, value);
  OGLM_CHECK_ERR(glProgramUniform3i64vNV, )
#line 57971 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3i64vNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3i64vNV_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "program, location, count, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
#line 28603 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform3i64vNV, )
  OGLM_AVAIL_CHECK(__glewProgramUniform3i64vNV, glProgramUniform3i64vNV)
  GLint64EXT* value = OGLM_GET_VARARGS(value,3,GLint64EXT,IV,count*3);
  glProgramUniform3i64vNV((GLuint )program, (GLint )location, (GLsizei )count, (const GLint64EXT* )value);
  OGLM_CHECK_ERR(glProgramUniform3i64vNV, free(value);)
  free(value);
#line 57998 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3iv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3iv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, count, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLint*	value = INT2PTR(const GLint *,SvIV(ST(3)))
;
#line 28620 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform3iv, )
  OGLM_AVAIL_CHECK(__glewProgramUniform3iv, glProgramUniform3iv)
  glProgramUniform3iv(program, location, count, value);
  OGLM_CHECK_ERR(glProgramUniform3iv, )
#line 58026 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3iv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3iv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 3)
       croak_xs_usage(cv,  "program, location, count, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
#line 28634 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform3iv, )
  OGLM_AVAIL_CHECK(__glewProgramUniform3iv, glProgramUniform3iv)
  GLint* value = OGLM_GET_VARARGS(value,3,GLint,IV,count*3);
  glProgramUniform3iv((GLuint )program, (GLint )location, (GLsizei )count, (const GLint* )value);
  OGLM_CHECK_ERR(glProgramUniform3iv, free(value);)
  free(value);
#line 58054 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3ui); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3ui)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "program, location, x, y, z");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLuint	x = (unsigned int)SvUV(ST(2))
;
	GLuint	y = (unsigned int)SvUV(ST(3))
;
	GLuint	z = (unsigned int)SvUV(ST(4))
;
#line 28652 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform3ui, )
  OGLM_AVAIL_CHECK(__glewProgramUniform3ui, glProgramUniform3ui)
  glProgramUniform3ui(program, location, x, y, z);
  OGLM_CHECK_ERR(glProgramUniform3ui, )
#line 58084 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3ui64ARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3ui64ARB)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "program, location, x, y, z");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLuint64	x = (unsigned int)SvUV(ST(2))
;
	GLuint64	y = (unsigned int)SvUV(ST(3))
;
	GLuint64	z = (unsigned int)SvUV(ST(4))
;
#line 28666 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform3ui64ARB, )
  OGLM_AVAIL_CHECK(__glewProgramUniform3ui64ARB, glProgramUniform3ui64ARB)
  glProgramUniform3ui64ARB(program, location, x, y, z);
  OGLM_CHECK_ERR(glProgramUniform3ui64ARB, )
#line 58113 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3ui64NV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3ui64NV)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "program, location, x, y, z");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLuint64EXT	x = (unsigned int)SvUV(ST(2))
;
	GLuint64EXT	y = (unsigned int)SvUV(ST(3))
;
	GLuint64EXT	z = (unsigned int)SvUV(ST(4))
;
#line 28680 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform3ui64NV, )
  OGLM_AVAIL_CHECK(__glewProgramUniform3ui64NV, glProgramUniform3ui64NV)
  glProgramUniform3ui64NV(program, location, x, y, z);
  OGLM_CHECK_ERR(glProgramUniform3ui64NV, )
#line 58142 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3ui64vARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3ui64vARB_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, count, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLuint64*	value = INT2PTR(const GLuint64 *,SvIV(ST(3)))
;
#line 28693 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform3ui64vARB, )
  OGLM_AVAIL_CHECK(__glewProgramUniform3ui64vARB, glProgramUniform3ui64vARB)
  glProgramUniform3ui64vARB(program, location, count, value);
  OGLM_CHECK_ERR(glProgramUniform3ui64vARB, )
#line 58169 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3ui64vARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3ui64vARB_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "program, location, count, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
#line 28705 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform3ui64vARB, )
  OGLM_AVAIL_CHECK(__glewProgramUniform3ui64vARB, glProgramUniform3ui64vARB)
  GLuint64* value = OGLM_GET_VARARGS(value,3,GLuint64,UV,count*3);
  glProgramUniform3ui64vARB((GLuint )program, (GLint )location, (GLsizei )count, (const GLuint64* )value);
  OGLM_CHECK_ERR(glProgramUniform3ui64vARB, free(value);)
  free(value);
#line 58196 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3ui64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3ui64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, count, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLuint64EXT*	value = INT2PTR(const GLuint64EXT *,SvIV(ST(3)))
;
#line 28720 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform3ui64vNV, )
  OGLM_AVAIL_CHECK(__glewProgramUniform3ui64vNV, glProgramUniform3ui64vNV)
  glProgramUniform3ui64vNV(program, location, count, value);
  OGLM_CHECK_ERR(glProgramUniform3ui64vNV, )
#line 58223 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3ui64vNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3ui64vNV_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "program, location, count, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
#line 28732 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform3ui64vNV, )
  OGLM_AVAIL_CHECK(__glewProgramUniform3ui64vNV, glProgramUniform3ui64vNV)
  GLuint64EXT* value = OGLM_GET_VARARGS(value,3,GLuint64EXT,UV,count*3);
  glProgramUniform3ui64vNV((GLuint )program, (GLint )location, (GLsizei )count, (const GLuint64EXT* )value);
  OGLM_CHECK_ERR(glProgramUniform3ui64vNV, free(value);)
  free(value);
#line 58250 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3uiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3uiv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, count, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLuint*	value = INT2PTR(const GLuint *,SvIV(ST(3)))
;
#line 28749 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform3uiv, )
  OGLM_AVAIL_CHECK(__glewProgramUniform3uiv, glProgramUniform3uiv)
  glProgramUniform3uiv(program, location, count, value);
  OGLM_CHECK_ERR(glProgramUniform3uiv, )
#line 58278 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3uiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform3uiv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 3)
       croak_xs_usage(cv,  "program, location, count, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
#line 28763 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform3uiv, )
  OGLM_AVAIL_CHECK(__glewProgramUniform3uiv, glProgramUniform3uiv)
  GLuint* value = OGLM_GET_VARARGS(value,3,GLuint,UV,count*3);
  glProgramUniform3uiv((GLuint )program, (GLint )location, (GLsizei )count, (const GLuint* )value);
  OGLM_CHECK_ERR(glProgramUniform3uiv, free(value);)
  free(value);
#line 58306 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4d)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "program, location, x, y, z, w");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLdouble	x = (double)SvNV(ST(2))
;
	GLdouble	y = (double)SvNV(ST(3))
;
	GLdouble	z = (double)SvNV(ST(4))
;
	GLdouble	w = (double)SvNV(ST(5))
;
#line 28780 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform4d, )
  OGLM_AVAIL_CHECK(__glewProgramUniform4d, glProgramUniform4d)
  glProgramUniform4d(program, location, x, y, z, w);
  OGLM_CHECK_ERR(glProgramUniform4d, )
#line 58337 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4dv_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, count, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLdouble*	value = INT2PTR(const GLdouble *,SvIV(ST(3)))
;
#line 28793 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform4dv, )
  OGLM_AVAIL_CHECK(__glewProgramUniform4dv, glProgramUniform4dv)
  glProgramUniform4dv(program, location, count, value);
  OGLM_CHECK_ERR(glProgramUniform4dv, )
#line 58364 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4dv_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "program, location, count, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
#line 28805 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform4dv, )
  OGLM_AVAIL_CHECK(__glewProgramUniform4dv, glProgramUniform4dv)
  GLdouble* value = OGLM_GET_VARARGS(value,3,GLdouble,NV,count*4);
  glProgramUniform4dv((GLuint )program, (GLint )location, (GLsizei )count, (const GLdouble* )value);
  OGLM_CHECK_ERR(glProgramUniform4dv, free(value);)
  free(value);
#line 58391 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4f); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4f)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 6)
       croak_xs_usage(cv,  "program, location, x, y, z, w");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLfloat	x = (float)SvNV(ST(2))
;
	GLfloat	y = (float)SvNV(ST(3))
;
	GLfloat	z = (float)SvNV(ST(4))
;
	GLfloat	w = (float)SvNV(ST(5))
;
#line 28824 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform4f, )
  OGLM_AVAIL_CHECK(__glewProgramUniform4f, glProgramUniform4f)
  glProgramUniform4f(program, location, x, y, z, w);
  OGLM_CHECK_ERR(glProgramUniform4f, )
#line 58423 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4fv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, count, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLfloat*	value = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 28839 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform4fv, )
  OGLM_AVAIL_CHECK(__glewProgramUniform4fv, glProgramUniform4fv)
  glProgramUniform4fv(program, location, count, value);
  OGLM_CHECK_ERR(glProgramUniform4fv, )
#line 58451 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4fv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 3)
       croak_xs_usage(cv,  "program, location, count, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
#line 28853 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform4fv, )
  OGLM_AVAIL_CHECK(__glewProgramUniform4fv, glProgramUniform4fv)
  GLfloat* value = OGLM_GET_VARARGS(value,3,GLfloat,NV,count*4);
  glProgramUniform4fv((GLuint )program, (GLint )location, (GLsizei )count, (const GLfloat* )value);
  OGLM_CHECK_ERR(glProgramUniform4fv, free(value);)
  free(value);
#line 58479 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4i); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4i)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 6)
       croak_xs_usage(cv,  "program, location, x, y, z, w");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLint	x = (int)SvIV(ST(2))
;
	GLint	y = (int)SvIV(ST(3))
;
	GLint	z = (int)SvIV(ST(4))
;
	GLint	w = (int)SvIV(ST(5))
;
#line 28872 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform4i, )
  OGLM_AVAIL_CHECK(__glewProgramUniform4i, glProgramUniform4i)
  glProgramUniform4i(program, location, x, y, z, w);
  OGLM_CHECK_ERR(glProgramUniform4i, )
#line 58511 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4i64ARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4i64ARB)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "program, location, x, y, z, w");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLint64	x = (unsigned int)SvUV(ST(2))
;
	GLint64	y = (unsigned int)SvUV(ST(3))
;
	GLint64	z = (unsigned int)SvUV(ST(4))
;
	GLint64	w = (unsigned int)SvUV(ST(5))
;
#line 28887 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform4i64ARB, )
  OGLM_AVAIL_CHECK(__glewProgramUniform4i64ARB, glProgramUniform4i64ARB)
  glProgramUniform4i64ARB(program, location, x, y, z, w);
  OGLM_CHECK_ERR(glProgramUniform4i64ARB, )
#line 58542 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4i64NV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4i64NV)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "program, location, x, y, z, w");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLint64EXT	x = (unsigned int)SvUV(ST(2))
;
	GLint64EXT	y = (unsigned int)SvUV(ST(3))
;
	GLint64EXT	z = (unsigned int)SvUV(ST(4))
;
	GLint64EXT	w = (unsigned int)SvUV(ST(5))
;
#line 28902 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform4i64NV, )
  OGLM_AVAIL_CHECK(__glewProgramUniform4i64NV, glProgramUniform4i64NV)
  glProgramUniform4i64NV(program, location, x, y, z, w);
  OGLM_CHECK_ERR(glProgramUniform4i64NV, )
#line 58573 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4i64vARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4i64vARB_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, count, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLint64*	value = INT2PTR(const GLint64 *,SvIV(ST(3)))
;
#line 28915 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform4i64vARB, )
  OGLM_AVAIL_CHECK(__glewProgramUniform4i64vARB, glProgramUniform4i64vARB)
  glProgramUniform4i64vARB(program, location, count, value);
  OGLM_CHECK_ERR(glProgramUniform4i64vARB, )
#line 58600 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4i64vARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4i64vARB_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "program, location, count, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
#line 28927 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform4i64vARB, )
  OGLM_AVAIL_CHECK(__glewProgramUniform4i64vARB, glProgramUniform4i64vARB)
  GLint64* value = OGLM_GET_VARARGS(value,3,GLint64,IV,count*4);
  glProgramUniform4i64vARB((GLuint )program, (GLint )location, (GLsizei )count, (const GLint64* )value);
  OGLM_CHECK_ERR(glProgramUniform4i64vARB, free(value);)
  free(value);
#line 58627 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4i64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4i64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, count, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLint64EXT*	value = INT2PTR(const GLint64EXT *,SvIV(ST(3)))
;
#line 28942 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform4i64vNV, )
  OGLM_AVAIL_CHECK(__glewProgramUniform4i64vNV, glProgramUniform4i64vNV)
  glProgramUniform4i64vNV(program, location, count, value);
  OGLM_CHECK_ERR(glProgramUniform4i64vNV, )
#line 58654 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4i64vNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4i64vNV_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "program, location, count, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
#line 28954 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform4i64vNV, )
  OGLM_AVAIL_CHECK(__glewProgramUniform4i64vNV, glProgramUniform4i64vNV)
  GLint64EXT* value = OGLM_GET_VARARGS(value,3,GLint64EXT,IV,count*4);
  glProgramUniform4i64vNV((GLuint )program, (GLint )location, (GLsizei )count, (const GLint64EXT* )value);
  OGLM_CHECK_ERR(glProgramUniform4i64vNV, free(value);)
  free(value);
#line 58681 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4iv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4iv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, count, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLint*	value = INT2PTR(const GLint *,SvIV(ST(3)))
;
#line 28971 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform4iv, )
  OGLM_AVAIL_CHECK(__glewProgramUniform4iv, glProgramUniform4iv)
  glProgramUniform4iv(program, location, count, value);
  OGLM_CHECK_ERR(glProgramUniform4iv, )
#line 58709 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4iv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4iv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 3)
       croak_xs_usage(cv,  "program, location, count, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
#line 28985 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform4iv, )
  OGLM_AVAIL_CHECK(__glewProgramUniform4iv, glProgramUniform4iv)
  GLint* value = OGLM_GET_VARARGS(value,3,GLint,IV,count*4);
  glProgramUniform4iv((GLuint )program, (GLint )location, (GLsizei )count, (const GLint* )value);
  OGLM_CHECK_ERR(glProgramUniform4iv, free(value);)
  free(value);
#line 58737 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4ui); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4ui)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 6)
       croak_xs_usage(cv,  "program, location, x, y, z, w");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLuint	x = (unsigned int)SvUV(ST(2))
;
	GLuint	y = (unsigned int)SvUV(ST(3))
;
	GLuint	z = (unsigned int)SvUV(ST(4))
;
	GLuint	w = (unsigned int)SvUV(ST(5))
;
#line 29004 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform4ui, )
  OGLM_AVAIL_CHECK(__glewProgramUniform4ui, glProgramUniform4ui)
  glProgramUniform4ui(program, location, x, y, z, w);
  OGLM_CHECK_ERR(glProgramUniform4ui, )
#line 58769 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4ui64ARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4ui64ARB)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "program, location, x, y, z, w");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLuint64	x = (unsigned int)SvUV(ST(2))
;
	GLuint64	y = (unsigned int)SvUV(ST(3))
;
	GLuint64	z = (unsigned int)SvUV(ST(4))
;
	GLuint64	w = (unsigned int)SvUV(ST(5))
;
#line 29019 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform4ui64ARB, )
  OGLM_AVAIL_CHECK(__glewProgramUniform4ui64ARB, glProgramUniform4ui64ARB)
  glProgramUniform4ui64ARB(program, location, x, y, z, w);
  OGLM_CHECK_ERR(glProgramUniform4ui64ARB, )
#line 58800 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4ui64NV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4ui64NV)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "program, location, x, y, z, w");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLuint64EXT	x = (unsigned int)SvUV(ST(2))
;
	GLuint64EXT	y = (unsigned int)SvUV(ST(3))
;
	GLuint64EXT	z = (unsigned int)SvUV(ST(4))
;
	GLuint64EXT	w = (unsigned int)SvUV(ST(5))
;
#line 29034 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform4ui64NV, )
  OGLM_AVAIL_CHECK(__glewProgramUniform4ui64NV, glProgramUniform4ui64NV)
  glProgramUniform4ui64NV(program, location, x, y, z, w);
  OGLM_CHECK_ERR(glProgramUniform4ui64NV, )
#line 58831 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4ui64vARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4ui64vARB_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, count, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLuint64*	value = INT2PTR(const GLuint64 *,SvIV(ST(3)))
;
#line 29047 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform4ui64vARB, )
  OGLM_AVAIL_CHECK(__glewProgramUniform4ui64vARB, glProgramUniform4ui64vARB)
  glProgramUniform4ui64vARB(program, location, count, value);
  OGLM_CHECK_ERR(glProgramUniform4ui64vARB, )
#line 58858 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4ui64vARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4ui64vARB_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "program, location, count, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
#line 29059 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform4ui64vARB, )
  OGLM_AVAIL_CHECK(__glewProgramUniform4ui64vARB, glProgramUniform4ui64vARB)
  GLuint64* value = OGLM_GET_VARARGS(value,3,GLuint64,UV,count*4);
  glProgramUniform4ui64vARB((GLuint )program, (GLint )location, (GLsizei )count, (const GLuint64* )value);
  OGLM_CHECK_ERR(glProgramUniform4ui64vARB, free(value);)
  free(value);
#line 58885 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4ui64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4ui64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, count, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLuint64EXT*	value = INT2PTR(const GLuint64EXT *,SvIV(ST(3)))
;
#line 29074 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform4ui64vNV, )
  OGLM_AVAIL_CHECK(__glewProgramUniform4ui64vNV, glProgramUniform4ui64vNV)
  glProgramUniform4ui64vNV(program, location, count, value);
  OGLM_CHECK_ERR(glProgramUniform4ui64vNV, )
#line 58912 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4ui64vNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4ui64vNV_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "program, location, count, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
#line 29086 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform4ui64vNV, )
  OGLM_AVAIL_CHECK(__glewProgramUniform4ui64vNV, glProgramUniform4ui64vNV)
  GLuint64EXT* value = OGLM_GET_VARARGS(value,3,GLuint64EXT,UV,count*4);
  glProgramUniform4ui64vNV((GLuint )program, (GLint )location, (GLsizei )count, (const GLuint64EXT* )value);
  OGLM_CHECK_ERR(glProgramUniform4ui64vNV, free(value);)
  free(value);
#line 58939 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4uiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4uiv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, count, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLuint*	value = INT2PTR(const GLuint *,SvIV(ST(3)))
;
#line 29103 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform4uiv, )
  OGLM_AVAIL_CHECK(__glewProgramUniform4uiv, glProgramUniform4uiv)
  glProgramUniform4uiv(program, location, count, value);
  OGLM_CHECK_ERR(glProgramUniform4uiv, )
#line 58967 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4uiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniform4uiv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 3)
       croak_xs_usage(cv,  "program, location, count, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
#line 29117 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniform4uiv, )
  OGLM_AVAIL_CHECK(__glewProgramUniform4uiv, glProgramUniform4uiv)
  GLuint* value = OGLM_GET_VARARGS(value,3,GLuint,UV,count*4);
  glProgramUniform4uiv((GLuint )program, (GLint )location, (GLsizei )count, (const GLuint* )value);
  OGLM_CHECK_ERR(glProgramUniform4uiv, free(value);)
  free(value);
#line 58995 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformHandleui64ARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformHandleui64ARB)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "program, location, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLuint64	value = (unsigned int)SvUV(ST(2))
;
#line 29133 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformHandleui64ARB, )
  OGLM_AVAIL_CHECK(__glewProgramUniformHandleui64ARB, glProgramUniformHandleui64ARB)
  glProgramUniformHandleui64ARB(program, location, value);
  OGLM_CHECK_ERR(glProgramUniformHandleui64ARB, )
#line 59021 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformHandleui64NV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformHandleui64NV)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, location, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLuint64	value = (unsigned int)SvUV(ST(2))
;
#line 29145 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformHandleui64NV, )
  OGLM_AVAIL_CHECK(__glewProgramUniformHandleui64NV, glProgramUniformHandleui64NV)
  glProgramUniformHandleui64NV(program, location, value);
  OGLM_CHECK_ERR(glProgramUniformHandleui64NV, )
#line 59046 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformHandleui64vARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformHandleui64vARB_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, count, values");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLuint64*	values = INT2PTR(const GLuint64 *,SvIV(ST(3)))
;
#line 29160 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformHandleui64vARB, )
  OGLM_AVAIL_CHECK(__glewProgramUniformHandleui64vARB, glProgramUniformHandleui64vARB)
  glProgramUniformHandleui64vARB(program, location, count, values);
  OGLM_CHECK_ERR(glProgramUniformHandleui64vARB, )
#line 59074 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformHandleui64vARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformHandleui64vARB_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 2)
       croak_xs_usage(cv,  "program, location, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
#line 29173 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformHandleui64vARB, )
  OGLM_AVAIL_CHECK(__glewProgramUniformHandleui64vARB, glProgramUniformHandleui64vARB)
  GLsizei count = items-2;
  GLuint64* values = OGLM_GET_VARARGS(values,2,GLuint64,UV,count);
  glProgramUniformHandleui64vARB((GLuint )program, (GLint )location, (GLsizei )count, (const GLuint64* )values);
  OGLM_CHECK_ERR(glProgramUniformHandleui64vARB, free(values);)
  free(values);
#line 59101 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformHandleui64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformHandleui64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, count, values");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLuint64*	values = INT2PTR(const GLuint64 *,SvIV(ST(3)))
;
#line 29189 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformHandleui64vNV, )
  OGLM_AVAIL_CHECK(__glewProgramUniformHandleui64vNV, glProgramUniformHandleui64vNV)
  glProgramUniformHandleui64vNV(program, location, count, values);
  OGLM_CHECK_ERR(glProgramUniformHandleui64vNV, )
#line 59128 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformHandleui64vNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformHandleui64vNV_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "program, location, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
#line 29200 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformHandleui64vNV, )
  OGLM_AVAIL_CHECK(__glewProgramUniformHandleui64vNV, glProgramUniformHandleui64vNV)
  GLsizei count = items-2;
  GLuint64* values = OGLM_GET_VARARGS(values,2,GLuint64,UV,count);
  glProgramUniformHandleui64vNV((GLuint )program, (GLint )location, (GLsizei )count, (const GLuint64* )values);
  OGLM_CHECK_ERR(glProgramUniformHandleui64vNV, free(values);)
  free(values);
#line 59154 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix2dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix2dv_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "program, location, count, transpose, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLboolean	transpose = (int)SvIV(ST(3))
;
	const GLdouble*	value = INT2PTR(const GLdouble *,SvIV(ST(4)))
;
#line 29217 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformMatrix2dv, )
  OGLM_AVAIL_CHECK(__glewProgramUniformMatrix2dv, glProgramUniformMatrix2dv)
  glProgramUniformMatrix2dv(program, location, count, transpose, value);
  OGLM_CHECK_ERR(glProgramUniformMatrix2dv, )
#line 59183 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix2dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix2dv_p)
{
    dVAR; dXSARGS;
    if (items < 4)
       croak_xs_usage(cv,  "program, location, count, transpose, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLboolean	transpose = (int)SvIV(ST(3))
;
#line 29230 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformMatrix2dv, )
  OGLM_AVAIL_CHECK(__glewProgramUniformMatrix2dv, glProgramUniformMatrix2dv)
  GLdouble* value = OGLM_GET_VARARGS(value,4,GLdouble,NV,count*4);
  glProgramUniformMatrix2dv((GLuint )program, (GLint )location, (GLsizei )count, (GLboolean )transpose, (const GLdouble* )value);
  OGLM_CHECK_ERR(glProgramUniformMatrix2dv, free(value);)
  free(value);
#line 59212 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix2fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix2fv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "program, location, count, transpose, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLboolean	transpose = (int)SvIV(ST(3))
;
	const GLfloat*	value = INT2PTR(const GLfloat *,SvIV(ST(4)))
;
#line 29248 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformMatrix2fv, )
  OGLM_AVAIL_CHECK(__glewProgramUniformMatrix2fv, glProgramUniformMatrix2fv)
  glProgramUniformMatrix2fv(program, location, count, transpose, value);
  OGLM_CHECK_ERR(glProgramUniformMatrix2fv, )
#line 59242 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix2fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix2fv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 4)
       croak_xs_usage(cv,  "program, location, count, transpose, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLboolean	transpose = (int)SvIV(ST(3))
;
#line 29263 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformMatrix2fv, )
  OGLM_AVAIL_CHECK(__glewProgramUniformMatrix2fv, glProgramUniformMatrix2fv)
  GLfloat* value = OGLM_GET_VARARGS(value,4,GLfloat,NV,count*4);
  glProgramUniformMatrix2fv((GLuint )program, (GLint )location, (GLsizei )count, (GLboolean )transpose, (const GLfloat* )value);
  OGLM_CHECK_ERR(glProgramUniformMatrix2fv, free(value);)
  free(value);
#line 59272 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix2x3dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix2x3dv_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "program, location, count, transpose, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLboolean	transpose = (int)SvIV(ST(3))
;
	const GLdouble*	value = INT2PTR(const GLdouble *,SvIV(ST(4)))
;
#line 29279 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformMatrix2x3dv, )
  OGLM_AVAIL_CHECK(__glewProgramUniformMatrix2x3dv, glProgramUniformMatrix2x3dv)
  glProgramUniformMatrix2x3dv(program, location, count, transpose, value);
  OGLM_CHECK_ERR(glProgramUniformMatrix2x3dv, )
#line 59301 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix2x3dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix2x3dv_p)
{
    dVAR; dXSARGS;
    if (items < 4)
       croak_xs_usage(cv,  "program, location, count, transpose, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLboolean	transpose = (int)SvIV(ST(3))
;
#line 29292 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformMatrix2x3dv, )
  OGLM_AVAIL_CHECK(__glewProgramUniformMatrix2x3dv, glProgramUniformMatrix2x3dv)
  GLdouble* value = OGLM_GET_VARARGS(value,4,GLdouble,NV,count*6);
  glProgramUniformMatrix2x3dv((GLuint )program, (GLint )location, (GLsizei )count, (GLboolean )transpose, (const GLdouble* )value);
  OGLM_CHECK_ERR(glProgramUniformMatrix2x3dv, free(value);)
  free(value);
#line 59330 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix2x3fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix2x3fv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "program, location, count, transpose, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLboolean	transpose = (int)SvIV(ST(3))
;
	const GLfloat*	value = INT2PTR(const GLfloat *,SvIV(ST(4)))
;
#line 29310 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformMatrix2x3fv, )
  OGLM_AVAIL_CHECK(__glewProgramUniformMatrix2x3fv, glProgramUniformMatrix2x3fv)
  glProgramUniformMatrix2x3fv(program, location, count, transpose, value);
  OGLM_CHECK_ERR(glProgramUniformMatrix2x3fv, )
#line 59360 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix2x3fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix2x3fv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 4)
       croak_xs_usage(cv,  "program, location, count, transpose, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLboolean	transpose = (int)SvIV(ST(3))
;
#line 29325 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformMatrix2x3fv, )
  OGLM_AVAIL_CHECK(__glewProgramUniformMatrix2x3fv, glProgramUniformMatrix2x3fv)
  GLfloat* value = OGLM_GET_VARARGS(value,4,GLfloat,NV,count*6);
  glProgramUniformMatrix2x3fv((GLuint )program, (GLint )location, (GLsizei )count, (GLboolean )transpose, (const GLfloat* )value);
  OGLM_CHECK_ERR(glProgramUniformMatrix2x3fv, free(value);)
  free(value);
#line 59390 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix2x4dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix2x4dv_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "program, location, count, transpose, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLboolean	transpose = (int)SvIV(ST(3))
;
	const GLdouble*	value = INT2PTR(const GLdouble *,SvIV(ST(4)))
;
#line 29341 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformMatrix2x4dv, )
  OGLM_AVAIL_CHECK(__glewProgramUniformMatrix2x4dv, glProgramUniformMatrix2x4dv)
  glProgramUniformMatrix2x4dv(program, location, count, transpose, value);
  OGLM_CHECK_ERR(glProgramUniformMatrix2x4dv, )
#line 59419 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix2x4dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix2x4dv_p)
{
    dVAR; dXSARGS;
    if (items < 4)
       croak_xs_usage(cv,  "program, location, count, transpose, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLboolean	transpose = (int)SvIV(ST(3))
;
#line 29354 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformMatrix2x4dv, )
  OGLM_AVAIL_CHECK(__glewProgramUniformMatrix2x4dv, glProgramUniformMatrix2x4dv)
  GLdouble* value = OGLM_GET_VARARGS(value,4,GLdouble,NV,count*8);
  glProgramUniformMatrix2x4dv((GLuint )program, (GLint )location, (GLsizei )count, (GLboolean )transpose, (const GLdouble* )value);
  OGLM_CHECK_ERR(glProgramUniformMatrix2x4dv, free(value);)
  free(value);
#line 59448 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix2x4fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix2x4fv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "program, location, count, transpose, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLboolean	transpose = (int)SvIV(ST(3))
;
	const GLfloat*	value = INT2PTR(const GLfloat *,SvIV(ST(4)))
;
#line 29372 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformMatrix2x4fv, )
  OGLM_AVAIL_CHECK(__glewProgramUniformMatrix2x4fv, glProgramUniformMatrix2x4fv)
  glProgramUniformMatrix2x4fv(program, location, count, transpose, value);
  OGLM_CHECK_ERR(glProgramUniformMatrix2x4fv, )
#line 59478 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix2x4fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix2x4fv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 4)
       croak_xs_usage(cv,  "program, location, count, transpose, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLboolean	transpose = (int)SvIV(ST(3))
;
#line 29387 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformMatrix2x4fv, )
  OGLM_AVAIL_CHECK(__glewProgramUniformMatrix2x4fv, glProgramUniformMatrix2x4fv)
  GLfloat* value = OGLM_GET_VARARGS(value,4,GLfloat,NV,count*8);
  glProgramUniformMatrix2x4fv((GLuint )program, (GLint )location, (GLsizei )count, (GLboolean )transpose, (const GLfloat* )value);
  OGLM_CHECK_ERR(glProgramUniformMatrix2x4fv, free(value);)
  free(value);
#line 59508 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix3dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix3dv_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "program, location, count, transpose, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLboolean	transpose = (int)SvIV(ST(3))
;
	const GLdouble*	value = INT2PTR(const GLdouble *,SvIV(ST(4)))
;
#line 29403 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformMatrix3dv, )
  OGLM_AVAIL_CHECK(__glewProgramUniformMatrix3dv, glProgramUniformMatrix3dv)
  glProgramUniformMatrix3dv(program, location, count, transpose, value);
  OGLM_CHECK_ERR(glProgramUniformMatrix3dv, )
#line 59537 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix3dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix3dv_p)
{
    dVAR; dXSARGS;
    if (items < 4)
       croak_xs_usage(cv,  "program, location, count, transpose, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLboolean	transpose = (int)SvIV(ST(3))
;
#line 29416 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformMatrix3dv, )
  OGLM_AVAIL_CHECK(__glewProgramUniformMatrix3dv, glProgramUniformMatrix3dv)
  GLdouble* value = OGLM_GET_VARARGS(value,4,GLdouble,NV,count*9);
  glProgramUniformMatrix3dv((GLuint )program, (GLint )location, (GLsizei )count, (GLboolean )transpose, (const GLdouble* )value);
  OGLM_CHECK_ERR(glProgramUniformMatrix3dv, free(value);)
  free(value);
#line 59566 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix3fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix3fv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "program, location, count, transpose, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLboolean	transpose = (int)SvIV(ST(3))
;
	const GLfloat*	value = INT2PTR(const GLfloat *,SvIV(ST(4)))
;
#line 29434 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformMatrix3fv, )
  OGLM_AVAIL_CHECK(__glewProgramUniformMatrix3fv, glProgramUniformMatrix3fv)
  glProgramUniformMatrix3fv(program, location, count, transpose, value);
  OGLM_CHECK_ERR(glProgramUniformMatrix3fv, )
#line 59596 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix3fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix3fv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 4)
       croak_xs_usage(cv,  "program, location, count, transpose, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLboolean	transpose = (int)SvIV(ST(3))
;
#line 29449 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformMatrix3fv, )
  OGLM_AVAIL_CHECK(__glewProgramUniformMatrix3fv, glProgramUniformMatrix3fv)
  GLfloat* value = OGLM_GET_VARARGS(value,4,GLfloat,NV,count*9);
  glProgramUniformMatrix3fv((GLuint )program, (GLint )location, (GLsizei )count, (GLboolean )transpose, (const GLfloat* )value);
  OGLM_CHECK_ERR(glProgramUniformMatrix3fv, free(value);)
  free(value);
#line 59626 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix3x2dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix3x2dv_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "program, location, count, transpose, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLboolean	transpose = (int)SvIV(ST(3))
;
	const GLdouble*	value = INT2PTR(const GLdouble *,SvIV(ST(4)))
;
#line 29465 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformMatrix3x2dv, )
  OGLM_AVAIL_CHECK(__glewProgramUniformMatrix3x2dv, glProgramUniformMatrix3x2dv)
  glProgramUniformMatrix3x2dv(program, location, count, transpose, value);
  OGLM_CHECK_ERR(glProgramUniformMatrix3x2dv, )
#line 59655 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix3x2dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix3x2dv_p)
{
    dVAR; dXSARGS;
    if (items < 4)
       croak_xs_usage(cv,  "program, location, count, transpose, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLboolean	transpose = (int)SvIV(ST(3))
;
#line 29478 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformMatrix3x2dv, )
  OGLM_AVAIL_CHECK(__glewProgramUniformMatrix3x2dv, glProgramUniformMatrix3x2dv)
  GLdouble* value = OGLM_GET_VARARGS(value,4,GLdouble,NV,count*6);
  glProgramUniformMatrix3x2dv((GLuint )program, (GLint )location, (GLsizei )count, (GLboolean )transpose, (const GLdouble* )value);
  OGLM_CHECK_ERR(glProgramUniformMatrix3x2dv, free(value);)
  free(value);
#line 59684 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix3x2fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix3x2fv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "program, location, count, transpose, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLboolean	transpose = (int)SvIV(ST(3))
;
	const GLfloat*	value = INT2PTR(const GLfloat *,SvIV(ST(4)))
;
#line 29496 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformMatrix3x2fv, )
  OGLM_AVAIL_CHECK(__glewProgramUniformMatrix3x2fv, glProgramUniformMatrix3x2fv)
  glProgramUniformMatrix3x2fv(program, location, count, transpose, value);
  OGLM_CHECK_ERR(glProgramUniformMatrix3x2fv, )
#line 59714 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix3x2fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix3x2fv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 4)
       croak_xs_usage(cv,  "program, location, count, transpose, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLboolean	transpose = (int)SvIV(ST(3))
;
#line 29511 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformMatrix3x2fv, )
  OGLM_AVAIL_CHECK(__glewProgramUniformMatrix3x2fv, glProgramUniformMatrix3x2fv)
  GLfloat* value = OGLM_GET_VARARGS(value,4,GLfloat,NV,count*6);
  glProgramUniformMatrix3x2fv((GLuint )program, (GLint )location, (GLsizei )count, (GLboolean )transpose, (const GLfloat* )value);
  OGLM_CHECK_ERR(glProgramUniformMatrix3x2fv, free(value);)
  free(value);
#line 59744 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix3x4dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix3x4dv_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "program, location, count, transpose, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLboolean	transpose = (int)SvIV(ST(3))
;
	const GLdouble*	value = INT2PTR(const GLdouble *,SvIV(ST(4)))
;
#line 29527 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformMatrix3x4dv, )
  OGLM_AVAIL_CHECK(__glewProgramUniformMatrix3x4dv, glProgramUniformMatrix3x4dv)
  glProgramUniformMatrix3x4dv(program, location, count, transpose, value);
  OGLM_CHECK_ERR(glProgramUniformMatrix3x4dv, )
#line 59773 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix3x4dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix3x4dv_p)
{
    dVAR; dXSARGS;
    if (items < 4)
       croak_xs_usage(cv,  "program, location, count, transpose, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLboolean	transpose = (int)SvIV(ST(3))
;
#line 29540 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformMatrix3x4dv, )
  OGLM_AVAIL_CHECK(__glewProgramUniformMatrix3x4dv, glProgramUniformMatrix3x4dv)
  GLdouble* value = OGLM_GET_VARARGS(value,4,GLdouble,NV,count*12);
  glProgramUniformMatrix3x4dv((GLuint )program, (GLint )location, (GLsizei )count, (GLboolean )transpose, (const GLdouble* )value);
  OGLM_CHECK_ERR(glProgramUniformMatrix3x4dv, free(value);)
  free(value);
#line 59802 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix3x4fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix3x4fv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "program, location, count, transpose, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLboolean	transpose = (int)SvIV(ST(3))
;
	const GLfloat*	value = INT2PTR(const GLfloat *,SvIV(ST(4)))
;
#line 29558 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformMatrix3x4fv, )
  OGLM_AVAIL_CHECK(__glewProgramUniformMatrix3x4fv, glProgramUniformMatrix3x4fv)
  glProgramUniformMatrix3x4fv(program, location, count, transpose, value);
  OGLM_CHECK_ERR(glProgramUniformMatrix3x4fv, )
#line 59832 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix3x4fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix3x4fv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 4)
       croak_xs_usage(cv,  "program, location, count, transpose, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLboolean	transpose = (int)SvIV(ST(3))
;
#line 29573 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformMatrix3x4fv, )
  OGLM_AVAIL_CHECK(__glewProgramUniformMatrix3x4fv, glProgramUniformMatrix3x4fv)
  GLfloat* value = OGLM_GET_VARARGS(value,4,GLfloat,NV,count*12);
  glProgramUniformMatrix3x4fv((GLuint )program, (GLint )location, (GLsizei )count, (GLboolean )transpose, (const GLfloat* )value);
  OGLM_CHECK_ERR(glProgramUniformMatrix3x4fv, free(value);)
  free(value);
#line 59862 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix4dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix4dv_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "program, location, count, transpose, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLboolean	transpose = (int)SvIV(ST(3))
;
	const GLdouble*	value = INT2PTR(const GLdouble *,SvIV(ST(4)))
;
#line 29589 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformMatrix4dv, )
  OGLM_AVAIL_CHECK(__glewProgramUniformMatrix4dv, glProgramUniformMatrix4dv)
  glProgramUniformMatrix4dv(program, location, count, transpose, value);
  OGLM_CHECK_ERR(glProgramUniformMatrix4dv, )
#line 59891 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix4dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix4dv_p)
{
    dVAR; dXSARGS;
    if (items < 4)
       croak_xs_usage(cv,  "program, location, count, transpose, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLboolean	transpose = (int)SvIV(ST(3))
;
#line 29602 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformMatrix4dv, )
  OGLM_AVAIL_CHECK(__glewProgramUniformMatrix4dv, glProgramUniformMatrix4dv)
  GLdouble* value = OGLM_GET_VARARGS(value,4,GLdouble,NV,count*16);
  glProgramUniformMatrix4dv((GLuint )program, (GLint )location, (GLsizei )count, (GLboolean )transpose, (const GLdouble* )value);
  OGLM_CHECK_ERR(glProgramUniformMatrix4dv, free(value);)
  free(value);
#line 59920 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix4fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix4fv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "program, location, count, transpose, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLboolean	transpose = (int)SvIV(ST(3))
;
	const GLfloat*	value = INT2PTR(const GLfloat *,SvIV(ST(4)))
;
#line 29620 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformMatrix4fv, )
  OGLM_AVAIL_CHECK(__glewProgramUniformMatrix4fv, glProgramUniformMatrix4fv)
  glProgramUniformMatrix4fv(program, location, count, transpose, value);
  OGLM_CHECK_ERR(glProgramUniformMatrix4fv, )
#line 59950 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix4fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix4fv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 4)
       croak_xs_usage(cv,  "program, location, count, transpose, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLboolean	transpose = (int)SvIV(ST(3))
;
#line 29635 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformMatrix4fv, )
  OGLM_AVAIL_CHECK(__glewProgramUniformMatrix4fv, glProgramUniformMatrix4fv)
  GLfloat* value = OGLM_GET_VARARGS(value,4,GLfloat,NV,count*16);
  glProgramUniformMatrix4fv((GLuint )program, (GLint )location, (GLsizei )count, (GLboolean )transpose, (const GLfloat* )value);
  OGLM_CHECK_ERR(glProgramUniformMatrix4fv, free(value);)
  free(value);
#line 59980 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix4x2dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix4x2dv_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "program, location, count, transpose, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLboolean	transpose = (int)SvIV(ST(3))
;
	const GLdouble*	value = INT2PTR(const GLdouble *,SvIV(ST(4)))
;
#line 29651 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformMatrix4x2dv, )
  OGLM_AVAIL_CHECK(__glewProgramUniformMatrix4x2dv, glProgramUniformMatrix4x2dv)
  glProgramUniformMatrix4x2dv(program, location, count, transpose, value);
  OGLM_CHECK_ERR(glProgramUniformMatrix4x2dv, )
#line 60009 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix4x2dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix4x2dv_p)
{
    dVAR; dXSARGS;
    if (items < 4)
       croak_xs_usage(cv,  "program, location, count, transpose, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLboolean	transpose = (int)SvIV(ST(3))
;
#line 29664 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformMatrix4x2dv, )
  OGLM_AVAIL_CHECK(__glewProgramUniformMatrix4x2dv, glProgramUniformMatrix4x2dv)
  GLdouble* value = OGLM_GET_VARARGS(value,4,GLdouble,NV,count*8);
  glProgramUniformMatrix4x2dv((GLuint )program, (GLint )location, (GLsizei )count, (GLboolean )transpose, (const GLdouble* )value);
  OGLM_CHECK_ERR(glProgramUniformMatrix4x2dv, free(value);)
  free(value);
#line 60038 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix4x2fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix4x2fv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "program, location, count, transpose, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLboolean	transpose = (int)SvIV(ST(3))
;
	const GLfloat*	value = INT2PTR(const GLfloat *,SvIV(ST(4)))
;
#line 29682 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformMatrix4x2fv, )
  OGLM_AVAIL_CHECK(__glewProgramUniformMatrix4x2fv, glProgramUniformMatrix4x2fv)
  glProgramUniformMatrix4x2fv(program, location, count, transpose, value);
  OGLM_CHECK_ERR(glProgramUniformMatrix4x2fv, )
#line 60068 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix4x2fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix4x2fv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 4)
       croak_xs_usage(cv,  "program, location, count, transpose, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLboolean	transpose = (int)SvIV(ST(3))
;
#line 29697 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformMatrix4x2fv, )
  OGLM_AVAIL_CHECK(__glewProgramUniformMatrix4x2fv, glProgramUniformMatrix4x2fv)
  GLfloat* value = OGLM_GET_VARARGS(value,4,GLfloat,NV,count*8);
  glProgramUniformMatrix4x2fv((GLuint )program, (GLint )location, (GLsizei )count, (GLboolean )transpose, (const GLfloat* )value);
  OGLM_CHECK_ERR(glProgramUniformMatrix4x2fv, free(value);)
  free(value);
#line 60098 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix4x3dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix4x3dv_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "program, location, count, transpose, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLboolean	transpose = (int)SvIV(ST(3))
;
	const GLdouble*	value = INT2PTR(const GLdouble *,SvIV(ST(4)))
;
#line 29713 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformMatrix4x3dv, )
  OGLM_AVAIL_CHECK(__glewProgramUniformMatrix4x3dv, glProgramUniformMatrix4x3dv)
  glProgramUniformMatrix4x3dv(program, location, count, transpose, value);
  OGLM_CHECK_ERR(glProgramUniformMatrix4x3dv, )
#line 60127 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix4x3dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix4x3dv_p)
{
    dVAR; dXSARGS;
    if (items < 4)
       croak_xs_usage(cv,  "program, location, count, transpose, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLboolean	transpose = (int)SvIV(ST(3))
;
#line 29726 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformMatrix4x3dv, )
  OGLM_AVAIL_CHECK(__glewProgramUniformMatrix4x3dv, glProgramUniformMatrix4x3dv)
  GLdouble* value = OGLM_GET_VARARGS(value,4,GLdouble,NV,count*12);
  glProgramUniformMatrix4x3dv((GLuint )program, (GLint )location, (GLsizei )count, (GLboolean )transpose, (const GLdouble* )value);
  OGLM_CHECK_ERR(glProgramUniformMatrix4x3dv, free(value);)
  free(value);
#line 60156 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix4x3fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix4x3fv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "program, location, count, transpose, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLboolean	transpose = (int)SvIV(ST(3))
;
	const GLfloat*	value = INT2PTR(const GLfloat *,SvIV(ST(4)))
;
#line 29744 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformMatrix4x3fv, )
  OGLM_AVAIL_CHECK(__glewProgramUniformMatrix4x3fv, glProgramUniformMatrix4x3fv)
  glProgramUniformMatrix4x3fv(program, location, count, transpose, value);
  OGLM_CHECK_ERR(glProgramUniformMatrix4x3fv, )
#line 60186 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix4x3fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformMatrix4x3fv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 4)
       croak_xs_usage(cv,  "program, location, count, transpose, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLboolean	transpose = (int)SvIV(ST(3))
;
#line 29759 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformMatrix4x3fv, )
  OGLM_AVAIL_CHECK(__glewProgramUniformMatrix4x3fv, glProgramUniformMatrix4x3fv)
  GLfloat* value = OGLM_GET_VARARGS(value,4,GLfloat,NV,count*12);
  glProgramUniformMatrix4x3fv((GLuint )program, (GLint )location, (GLsizei )count, (GLboolean )transpose, (const GLfloat* )value);
  OGLM_CHECK_ERR(glProgramUniformMatrix4x3fv, free(value);)
  free(value);
#line 60216 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformui64NV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformui64NV)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, location, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLuint64EXT	value = (unsigned int)SvUV(ST(2))
;
#line 29773 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformui64NV, )
  OGLM_AVAIL_CHECK(__glewProgramUniformui64NV, glProgramUniformui64NV)
  glProgramUniformui64NV(program, location, value);
  OGLM_CHECK_ERR(glProgramUniformui64NV, )
#line 60241 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformui64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformui64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, location, count, value");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLuint64EXT*	value = INT2PTR(const GLuint64EXT *,SvIV(ST(3)))
;
#line 29786 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformui64vNV, )
  OGLM_AVAIL_CHECK(__glewProgramUniformui64vNV, glProgramUniformui64vNV)
  glProgramUniformui64vNV(program, location, count, value);
  OGLM_CHECK_ERR(glProgramUniformui64vNV, )
#line 60268 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramUniformui64vNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramUniformui64vNV_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "program, location, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
#line 29797 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramUniformui64vNV, )
  OGLM_AVAIL_CHECK(__glewProgramUniformui64vNV, glProgramUniformui64vNV)
  GLsizei count = items-2;
  GLuint64EXT* value = OGLM_GET_VARARGS(value,2,GLuint64EXT,UV,count);
  glProgramUniformui64vNV((GLuint )program, (GLint )location, (GLsizei )count, (const GLuint64EXT* )value);
  OGLM_CHECK_ERR(glProgramUniformui64vNV, free(value);)
  free(value);
#line 60294 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProgramVertexLimitNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProgramVertexLimitNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, limit");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	limit = (int)SvIV(ST(1))
;
#line 29811 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProgramVertexLimitNV, )
  OGLM_AVAIL_CHECK(__glewProgramVertexLimitNV, glProgramVertexLimitNV)
  glProgramVertexLimitNV(target, limit);
  OGLM_CHECK_ERR(glProgramVertexLimitNV, )
#line 60317 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glProvokingVertex); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glProvokingVertex)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "mode");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
#line 29823 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glProvokingVertex, )
  OGLM_AVAIL_CHECK(__glewProvokingVertex, glProvokingVertex)
  glProvokingVertex(mode);
  OGLM_CHECK_ERR(glProvokingVertex, )
#line 60339 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPushAttrib); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPushAttrib)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "mask");
    {
	GLbitfield	mask = (int)SvIV(ST(0))
;
#line 29833 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPushAttrib, )
  glPushAttrib(mask);
  OGLM_CHECK_ERR(glPushAttrib, )
#line 60359 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPushClientAttrib); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPushClientAttrib)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "mask");
    {
	GLbitfield	mask = (int)SvIV(ST(0))
;
#line 29842 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPushClientAttrib, )
  glPushClientAttrib(mask);
  OGLM_CHECK_ERR(glPushClientAttrib, )
#line 60379 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPushClientAttribDefaultEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPushClientAttribDefaultEXT)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "mask");
    {
	GLbitfield	mask = (int)SvIV(ST(0))
;
#line 29851 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPushClientAttribDefaultEXT, )
  OGLM_AVAIL_CHECK(__glewPushClientAttribDefaultEXT, glPushClientAttribDefaultEXT)
  glPushClientAttribDefaultEXT(mask);
  OGLM_CHECK_ERR(glPushClientAttribDefaultEXT, )
#line 60400 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPushDebugGroup); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPushDebugGroup)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "source, id, length, message");
    {
	GLenum	source = (int)SvIV(ST(0))
;
	GLuint	id = (unsigned int)SvUV(ST(1))
;
	GLsizei	length = (int)SvIV(ST(2))
;
	const GLchar *	message = (const GLchar *)SvPV_nolen(ST(3))
;
#line 29866 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPushDebugGroup, )
  OGLM_AVAIL_CHECK(__glewPushDebugGroup, glPushDebugGroup)
  glPushDebugGroup(source, id, length, message);
  OGLM_CHECK_ERR(glPushDebugGroup, )
#line 60428 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPushGroupMarkerEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPushGroupMarkerEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "length, marker");
    {
	GLsizei	length = (int)SvIV(ST(0))
;
	const GLchar*	marker = (const GLchar *)SvPV_nolen(ST(1))
;
#line 29877 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPushGroupMarkerEXT, )
  OGLM_AVAIL_CHECK(__glewPushGroupMarkerEXT, glPushGroupMarkerEXT)
  glPushGroupMarkerEXT(length, marker);
  OGLM_CHECK_ERR(glPushGroupMarkerEXT, )
#line 60451 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPushMatrix); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPushMatrix)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 29886 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPushMatrix, )
  glPushMatrix();
  OGLM_CHECK_ERR(glPushMatrix, )
#line 60469 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glPushName); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glPushName)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "name");
    {
	GLuint	name = (unsigned int)SvUV(ST(0))
;
#line 29895 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glPushName, )
  glPushName(name);
  OGLM_CHECK_ERR(glPushName, )
#line 60489 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glQueryCounter); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glQueryCounter)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "id, target");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
#line 29907 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glQueryCounter, )
  OGLM_AVAIL_CHECK(__glewQueryCounter, glQueryCounter)
  glQueryCounter(id, target);
  OGLM_CHECK_ERR(glQueryCounter, )
#line 60513 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glQueryCounterANGLE); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glQueryCounterANGLE)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "id, target");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
#line 29918 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glQueryCounterANGLE, )
  OGLM_AVAIL_CHECK(__glewQueryCounterANGLE, glQueryCounterANGLE)
  glQueryCounterANGLE(id, target);
  OGLM_CHECK_ERR(glQueryCounterANGLE, )
#line 60536 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glQueryObjectParameteruiAMD); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glQueryObjectParameteruiAMD)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, id, pname, param");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	id = (unsigned int)SvUV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLuint	param = (unsigned int)SvUV(ST(3))
;
#line 29931 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glQueryObjectParameteruiAMD, )
  OGLM_AVAIL_CHECK(__glewQueryObjectParameteruiAMD, glQueryObjectParameteruiAMD)
  glQueryObjectParameteruiAMD(target, id, pname, param);
  OGLM_CHECK_ERR(glQueryObjectParameteruiAMD, )
#line 60563 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRasterPos2d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRasterPos2d)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "x, y");
    {
	GLdouble	x = (double)SvNV(ST(0))
;
	GLdouble	y = (double)SvNV(ST(1))
;
#line 29942 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRasterPos2d, )
  glRasterPos2d(x, y);
  OGLM_CHECK_ERR(glRasterPos2d, )
#line 60585 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRasterPos2dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRasterPos2dv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLdouble *	v = INT2PTR(const GLdouble *,SvIV(ST(0)))
;
#line 29951 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRasterPos2dv, )
  glRasterPos2dv(v);
  OGLM_CHECK_ERR(glRasterPos2dv, )
#line 60605 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRasterPos2dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRasterPos2dv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 29959 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRasterPos2dv, )
  GLdouble *v = OGLM_GET_VARARGS(v,0,GLdouble,NV,2);
  glRasterPos2dv((const GLdouble *)v);
  OGLM_CHECK_ERR(glRasterPos2dv, free(v);)
  free(v);
#line 60625 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRasterPos2f); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRasterPos2f)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "x, y");
    {
	GLfloat	x = (float)SvNV(ST(0))
;
	GLfloat	y = (float)SvNV(ST(1))
;
#line 29971 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRasterPos2f, )
  glRasterPos2f(x, y);
  OGLM_CHECK_ERR(glRasterPos2f, )
#line 60647 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRasterPos2fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRasterPos2fv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(0)))
;
#line 29980 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRasterPos2fv, )
  glRasterPos2fv(v);
  OGLM_CHECK_ERR(glRasterPos2fv, )
#line 60667 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRasterPos2fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRasterPos2fv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 29988 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRasterPos2fv, )
  GLfloat *v = OGLM_GET_VARARGS(v,0,GLfloat,NV,2);
  glRasterPos2fv((const GLfloat *)v);
  OGLM_CHECK_ERR(glRasterPos2fv, free(v);)
  free(v);
#line 60687 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRasterPos2i); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRasterPos2i)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "x, y");
    {
	GLint	x = (int)SvIV(ST(0))
;
	GLint	y = (int)SvIV(ST(1))
;
#line 30000 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRasterPos2i, )
  glRasterPos2i(x, y);
  OGLM_CHECK_ERR(glRasterPos2i, )
#line 60709 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRasterPos2iv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRasterPos2iv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLint *	v = INT2PTR(const GLint *,SvIV(ST(0)))
;
#line 30009 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRasterPos2iv, )
  glRasterPos2iv(v);
  OGLM_CHECK_ERR(glRasterPos2iv, )
#line 60729 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRasterPos2iv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRasterPos2iv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 30017 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRasterPos2iv, )
  GLint *v = OGLM_GET_VARARGS(v,0,GLint,IV,2);
  glRasterPos2iv((const GLint *)v);
  OGLM_CHECK_ERR(glRasterPos2iv, free(v);)
  free(v);
#line 60749 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRasterPos2s); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRasterPos2s)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "x, y");
    {
	GLshort	x = (short)SvIV(ST(0))
;
	GLshort	y = (short)SvIV(ST(1))
;
#line 30029 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRasterPos2s, )
  glRasterPos2s(x, y);
  OGLM_CHECK_ERR(glRasterPos2s, )
#line 60771 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRasterPos2sv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRasterPos2sv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLshort *	v = INT2PTR(const GLshort *,SvIV(ST(0)))
;
#line 30038 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRasterPos2sv, )
  glRasterPos2sv(v);
  OGLM_CHECK_ERR(glRasterPos2sv, )
#line 60791 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRasterPos2sv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRasterPos2sv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 30046 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRasterPos2sv, )
  GLshort *v = OGLM_GET_VARARGS(v,0,GLshort,IV,2);
  glRasterPos2sv((const GLshort *)v);
  OGLM_CHECK_ERR(glRasterPos2sv, free(v);)
  free(v);
#line 60811 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRasterPos3d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRasterPos3d)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "x, y, z");
    {
	GLdouble	x = (double)SvNV(ST(0))
;
	GLdouble	y = (double)SvNV(ST(1))
;
	GLdouble	z = (double)SvNV(ST(2))
;
#line 30059 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRasterPos3d, )
  glRasterPos3d(x, y, z);
  OGLM_CHECK_ERR(glRasterPos3d, )
#line 60835 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRasterPos3dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRasterPos3dv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLdouble *	v = INT2PTR(const GLdouble *,SvIV(ST(0)))
;
#line 30068 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRasterPos3dv, )
  glRasterPos3dv(v);
  OGLM_CHECK_ERR(glRasterPos3dv, )
#line 60855 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRasterPos3dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRasterPos3dv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 30076 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRasterPos3dv, )
  GLdouble *v = OGLM_GET_VARARGS(v,0,GLdouble,NV,3);
  glRasterPos3dv((const GLdouble *)v);
  OGLM_CHECK_ERR(glRasterPos3dv, free(v);)
  free(v);
#line 60875 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRasterPos3f); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRasterPos3f)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "x, y, z");
    {
	GLfloat	x = (float)SvNV(ST(0))
;
	GLfloat	y = (float)SvNV(ST(1))
;
	GLfloat	z = (float)SvNV(ST(2))
;
#line 30089 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRasterPos3f, )
  glRasterPos3f(x, y, z);
  OGLM_CHECK_ERR(glRasterPos3f, )
#line 60899 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRasterPos3fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRasterPos3fv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(0)))
;
#line 30098 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRasterPos3fv, )
  glRasterPos3fv(v);
  OGLM_CHECK_ERR(glRasterPos3fv, )
#line 60919 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRasterPos3fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRasterPos3fv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 30106 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRasterPos3fv, )
  GLfloat *v = OGLM_GET_VARARGS(v,0,GLfloat,NV,3);
  glRasterPos3fv((const GLfloat *)v);
  OGLM_CHECK_ERR(glRasterPos3fv, free(v);)
  free(v);
#line 60939 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRasterPos3i); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRasterPos3i)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "x, y, z");
    {
	GLint	x = (int)SvIV(ST(0))
;
	GLint	y = (int)SvIV(ST(1))
;
	GLint	z = (int)SvIV(ST(2))
;
#line 30119 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRasterPos3i, )
  glRasterPos3i(x, y, z);
  OGLM_CHECK_ERR(glRasterPos3i, )
#line 60963 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRasterPos3iv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRasterPos3iv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLint *	v = INT2PTR(const GLint *,SvIV(ST(0)))
;
#line 30128 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRasterPos3iv, )
  glRasterPos3iv(v);
  OGLM_CHECK_ERR(glRasterPos3iv, )
#line 60983 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRasterPos3iv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRasterPos3iv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 30136 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRasterPos3iv, )
  GLint *v = OGLM_GET_VARARGS(v,0,GLint,IV,3);
  glRasterPos3iv((const GLint *)v);
  OGLM_CHECK_ERR(glRasterPos3iv, free(v);)
  free(v);
#line 61003 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRasterPos3s); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRasterPos3s)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "x, y, z");
    {
	GLshort	x = (short)SvIV(ST(0))
;
	GLshort	y = (short)SvIV(ST(1))
;
	GLshort	z = (short)SvIV(ST(2))
;
#line 30149 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRasterPos3s, )
  glRasterPos3s(x, y, z);
  OGLM_CHECK_ERR(glRasterPos3s, )
#line 61027 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRasterPos3sv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRasterPos3sv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLshort *	v = INT2PTR(const GLshort *,SvIV(ST(0)))
;
#line 30158 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRasterPos3sv, )
  glRasterPos3sv(v);
  OGLM_CHECK_ERR(glRasterPos3sv, )
#line 61047 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRasterPos3sv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRasterPos3sv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 30166 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRasterPos3sv, )
  GLshort *v = OGLM_GET_VARARGS(v,0,GLshort,IV,3);
  glRasterPos3sv((const GLshort *)v);
  OGLM_CHECK_ERR(glRasterPos3sv, free(v);)
  free(v);
#line 61067 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRasterPos4d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRasterPos4d)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "x, y, z, w");
    {
	GLdouble	x = (double)SvNV(ST(0))
;
	GLdouble	y = (double)SvNV(ST(1))
;
	GLdouble	z = (double)SvNV(ST(2))
;
	GLdouble	w = (double)SvNV(ST(3))
;
#line 30180 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRasterPos4d, )
  glRasterPos4d(x, y, z, w);
  OGLM_CHECK_ERR(glRasterPos4d, )
#line 61093 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRasterPos4dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRasterPos4dv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLdouble *	v = INT2PTR(const GLdouble *,SvIV(ST(0)))
;
#line 30189 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRasterPos4dv, )
  glRasterPos4dv(v);
  OGLM_CHECK_ERR(glRasterPos4dv, )
#line 61113 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRasterPos4dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRasterPos4dv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 30197 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRasterPos4dv, )
  GLdouble *v = OGLM_GET_VARARGS(v,0,GLdouble,NV,4);
  glRasterPos4dv((const GLdouble *)v);
  OGLM_CHECK_ERR(glRasterPos4dv, free(v);)
  free(v);
#line 61133 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRasterPos4f); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRasterPos4f)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "x, y, z, w");
    {
	GLfloat	x = (float)SvNV(ST(0))
;
	GLfloat	y = (float)SvNV(ST(1))
;
	GLfloat	z = (float)SvNV(ST(2))
;
	GLfloat	w = (float)SvNV(ST(3))
;
#line 30211 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRasterPos4f, )
  glRasterPos4f(x, y, z, w);
  OGLM_CHECK_ERR(glRasterPos4f, )
#line 61159 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRasterPos4fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRasterPos4fv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(0)))
;
#line 30220 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRasterPos4fv, )
  glRasterPos4fv(v);
  OGLM_CHECK_ERR(glRasterPos4fv, )
#line 61179 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRasterPos4fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRasterPos4fv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 30228 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRasterPos4fv, )
  GLfloat *v = OGLM_GET_VARARGS(v,0,GLfloat,NV,4);
  glRasterPos4fv((const GLfloat *)v);
  OGLM_CHECK_ERR(glRasterPos4fv, free(v);)
  free(v);
#line 61199 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRasterPos4i); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRasterPos4i)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "x, y, z, w");
    {
	GLint	x = (int)SvIV(ST(0))
;
	GLint	y = (int)SvIV(ST(1))
;
	GLint	z = (int)SvIV(ST(2))
;
	GLint	w = (int)SvIV(ST(3))
;
#line 30242 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRasterPos4i, )
  glRasterPos4i(x, y, z, w);
  OGLM_CHECK_ERR(glRasterPos4i, )
#line 61225 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRasterPos4iv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRasterPos4iv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLint *	v = INT2PTR(const GLint *,SvIV(ST(0)))
;
#line 30251 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRasterPos4iv, )
  glRasterPos4iv(v);
  OGLM_CHECK_ERR(glRasterPos4iv, )
#line 61245 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRasterPos4iv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRasterPos4iv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 30259 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRasterPos4iv, )
  GLint *v = OGLM_GET_VARARGS(v,0,GLint,IV,4);
  glRasterPos4iv((const GLint *)v);
  OGLM_CHECK_ERR(glRasterPos4iv, free(v);)
  free(v);
#line 61265 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRasterPos4s); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRasterPos4s)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "x, y, z, w");
    {
	GLshort	x = (short)SvIV(ST(0))
;
	GLshort	y = (short)SvIV(ST(1))
;
	GLshort	z = (short)SvIV(ST(2))
;
	GLshort	w = (short)SvIV(ST(3))
;
#line 30273 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRasterPos4s, )
  glRasterPos4s(x, y, z, w);
  OGLM_CHECK_ERR(glRasterPos4s, )
#line 61291 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRasterPos4sv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRasterPos4sv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLshort *	v = INT2PTR(const GLshort *,SvIV(ST(0)))
;
#line 30282 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRasterPos4sv, )
  glRasterPos4sv(v);
  OGLM_CHECK_ERR(glRasterPos4sv, )
#line 61311 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRasterPos4sv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRasterPos4sv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 30290 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRasterPos4sv, )
  GLshort *v = OGLM_GET_VARARGS(v,0,GLshort,IV,4);
  glRasterPos4sv((const GLshort *)v);
  OGLM_CHECK_ERR(glRasterPos4sv, free(v);)
  free(v);
#line 61331 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRasterSamplesEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRasterSamplesEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "samples, fixedsamplelocations");
    {
	GLuint	samples = (unsigned int)SvUV(ST(0))
;
	GLboolean	fixedsamplelocations = (int)SvIV(ST(1))
;
#line 30302 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRasterSamplesEXT, )
  OGLM_AVAIL_CHECK(__glewRasterSamplesEXT, glRasterSamplesEXT)
  glRasterSamplesEXT(samples, fixedsamplelocations);
  OGLM_CHECK_ERR(glRasterSamplesEXT, )
#line 61354 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReadBuffer); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReadBuffer)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "src");
    {
	GLenum	src = (int)SvIV(ST(0))
;
#line 30312 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReadBuffer, )
  glReadBuffer(src);
  OGLM_CHECK_ERR(glReadBuffer, )
#line 61374 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReadBufferIndexedEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReadBufferIndexedEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "src, index");
    {
	GLenum	src = (int)SvIV(ST(0))
;
	GLint	index = (int)SvIV(ST(1))
;
#line 30322 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReadBufferIndexedEXT, )
  OGLM_AVAIL_CHECK(__glewReadBufferIndexedEXT, glReadBufferIndexedEXT)
  glReadBufferIndexedEXT(src, index);
  OGLM_CHECK_ERR(glReadBufferIndexedEXT, )
#line 61397 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReadBufferNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReadBufferNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "mode");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
#line 30332 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReadBufferNV, )
  OGLM_AVAIL_CHECK(__glewReadBufferNV, glReadBufferNV)
  glReadBufferNV(mode);
  OGLM_CHECK_ERR(glReadBufferNV, )
#line 61418 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReadBufferRegion); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReadBufferRegion)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "region, x, y, width, height");
    {
	GLuint	region = (unsigned int)SvUV(ST(0))
;
	GLint	x = (int)SvIV(ST(1))
;
	GLint	y = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
#line 30346 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReadBufferRegion, )
  OGLM_AVAIL_CHECK(__glewReadBufferRegion, glReadBufferRegion)
  glReadBufferRegion(region, x, y, width, height);
  OGLM_CHECK_ERR(glReadBufferRegion, )
#line 61447 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReadPixels_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReadPixels_c)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "x, y, width, height, format, type, pixels");
    {
	GLint	x = (int)SvIV(ST(0))
;
	GLint	y = (int)SvIV(ST(1))
;
	GLsizei	width = (int)SvIV(ST(2))
;
	GLsizei	height = (int)SvIV(ST(3))
;
	GLenum	format = (int)SvIV(ST(4))
;
	GLenum	type = (int)SvIV(ST(5))
;
	void *	pixels = INT2PTR(void *,SvIV(ST(6)))
;
#line 30362 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReadPixels, )
  glReadPixels(x, y, width, height, format, type, pixels);
  OGLM_CHECK_ERR(glReadPixels, )
#line 61479 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReadVideoPixelsSUN_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReadVideoPixelsSUN_c)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "x, y, width, height, format, type, pixels");
    {
	GLint	x = (int)SvIV(ST(0))
;
	GLint	y = (int)SvIV(ST(1))
;
	GLsizei	width = (int)SvIV(ST(2))
;
	GLsizei	height = (int)SvIV(ST(3))
;
	GLenum	format = (int)SvIV(ST(4))
;
	GLenum	type = (int)SvIV(ST(5))
;
	void*	pixels = INT2PTR(void *,SvIV(ST(6)))
;
#line 30377 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReadVideoPixelsSUN, )
  OGLM_AVAIL_CHECK(__glewReadVideoPixelsSUN, glReadVideoPixelsSUN)
  glReadVideoPixelsSUN(x, y, width, height, format, type, pixels);
  OGLM_CHECK_ERR(glReadVideoPixelsSUN, )
#line 61512 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReadnPixels_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReadnPixels_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 8)
       croak_xs_usage(cv,  "x, y, width, height, format, type, bufSize, data");
    {
	GLint	x = (int)SvIV(ST(0))
;
	GLint	y = (int)SvIV(ST(1))
;
	GLsizei	width = (int)SvIV(ST(2))
;
	GLsizei	height = (int)SvIV(ST(3))
;
	GLenum	format = (int)SvIV(ST(4))
;
	GLenum	type = (int)SvIV(ST(5))
;
	GLsizei	bufSize = (int)SvIV(ST(6))
;
	void *	data = INT2PTR(void *,SvIV(ST(7)))
;
#line 30398 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReadnPixels, )
  OGLM_AVAIL_CHECK(__glewReadnPixels, glReadnPixels)
  glReadnPixels(x, y, width, height, format, type, bufSize, data);
  OGLM_CHECK_ERR(glReadnPixels, )
#line 61548 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRectd); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRectd)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "x1, y1, x2, y2");
    {
	GLdouble	x1 = (double)SvNV(ST(0))
;
	GLdouble	y1 = (double)SvNV(ST(1))
;
	GLdouble	x2 = (double)SvNV(ST(2))
;
	GLdouble	y2 = (double)SvNV(ST(3))
;
#line 30411 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRectd, )
  glRectd(x1, y1, x2, y2);
  OGLM_CHECK_ERR(glRectd, )
#line 61574 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRectdv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRectdv_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "v1, v2");
    {
	const GLdouble *	v1 = INT2PTR(const GLdouble *,SvIV(ST(0)))
;
	const GLdouble *	v2 = INT2PTR(const GLdouble *,SvIV(ST(1)))
;
#line 30421 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRectdv, )
  glRectdv(v1, v2);
  OGLM_CHECK_ERR(glRectdv, )
#line 61596 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRectdv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRectdv_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "v1SV, v2SV");
    {
	SV *	v1SV = ST(0)
;
	SV *	v2SV = ST(1)
;
#line 30431 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRectdv, )
  GLdouble *v1 = OGLM_GET_ARRAY(v1, GLdouble, NV, 2);
  GLdouble *v2 = OGLM_GET_ARRAY(v2, GLdouble, NV, 2);
  glRectdv((const GLdouble *)v1, (const GLdouble *)v2);
  OGLM_CHECK_ERR(glRectdv, free(v1);free(v2);)
  free(v1);free(v2);
#line 61621 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRectf); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRectf)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "x1, y1, x2, y2");
    {
	GLfloat	x1 = (float)SvNV(ST(0))
;
	GLfloat	y1 = (float)SvNV(ST(1))
;
	GLfloat	x2 = (float)SvNV(ST(2))
;
	GLfloat	y2 = (float)SvNV(ST(3))
;
#line 30446 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRectf, )
  glRectf(x1, y1, x2, y2);
  OGLM_CHECK_ERR(glRectf, )
#line 61647 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRectfv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRectfv_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "v1, v2");
    {
	const GLfloat *	v1 = INT2PTR(const GLfloat *,SvIV(ST(0)))
;
	const GLfloat *	v2 = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 30456 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRectfv, )
  glRectfv(v1, v2);
  OGLM_CHECK_ERR(glRectfv, )
#line 61669 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRectfv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRectfv_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "v1SV, v2SV");
    {
	SV *	v1SV = ST(0)
;
	SV *	v2SV = ST(1)
;
#line 30466 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRectfv, )
  GLfloat *v1 = OGLM_GET_ARRAY(v1, GLfloat, NV, 2);
  GLfloat *v2 = OGLM_GET_ARRAY(v2, GLfloat, NV, 2);
  glRectfv((const GLfloat *)v1, (const GLfloat *)v2);
  OGLM_CHECK_ERR(glRectfv, free(v1);free(v2);)
  free(v1);free(v2);
#line 61694 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRecti); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRecti)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "x1, y1, x2, y2");
    {
	GLint	x1 = (int)SvIV(ST(0))
;
	GLint	y1 = (int)SvIV(ST(1))
;
	GLint	x2 = (int)SvIV(ST(2))
;
	GLint	y2 = (int)SvIV(ST(3))
;
#line 30481 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRecti, )
  glRecti(x1, y1, x2, y2);
  OGLM_CHECK_ERR(glRecti, )
#line 61720 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRectiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRectiv_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "v1, v2");
    {
	const GLint *	v1 = INT2PTR(const GLint *,SvIV(ST(0)))
;
	const GLint *	v2 = INT2PTR(const GLint *,SvIV(ST(1)))
;
#line 30491 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRectiv, )
  glRectiv(v1, v2);
  OGLM_CHECK_ERR(glRectiv, )
#line 61742 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRectiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRectiv_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "v1SV, v2SV");
    {
	SV *	v1SV = ST(0)
;
	SV *	v2SV = ST(1)
;
#line 30501 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRectiv, )
  GLint *v1 = OGLM_GET_ARRAY(v1, GLint, IV, 2);
  GLint *v2 = OGLM_GET_ARRAY(v2, GLint, IV, 2);
  glRectiv((const GLint *)v1, (const GLint *)v2);
  OGLM_CHECK_ERR(glRectiv, free(v1);free(v2);)
  free(v1);free(v2);
#line 61767 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRects); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRects)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "x1, y1, x2, y2");
    {
	GLshort	x1 = (short)SvIV(ST(0))
;
	GLshort	y1 = (short)SvIV(ST(1))
;
	GLshort	x2 = (short)SvIV(ST(2))
;
	GLshort	y2 = (short)SvIV(ST(3))
;
#line 30516 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRects, )
  glRects(x1, y1, x2, y2);
  OGLM_CHECK_ERR(glRects, )
#line 61793 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRectsv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRectsv_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "v1, v2");
    {
	const GLshort *	v1 = INT2PTR(const GLshort *,SvIV(ST(0)))
;
	const GLshort *	v2 = INT2PTR(const GLshort *,SvIV(ST(1)))
;
#line 30526 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRectsv, )
  glRectsv(v1, v2);
  OGLM_CHECK_ERR(glRectsv, )
#line 61815 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRectsv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRectsv_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "v1SV, v2SV");
    {
	SV *	v1SV = ST(0)
;
	SV *	v2SV = ST(1)
;
#line 30536 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRectsv, )
  GLshort *v1 = OGLM_GET_ARRAY(v1, GLshort, IV, 2);
  GLshort *v2 = OGLM_GET_ARRAY(v2, GLshort, IV, 2);
  glRectsv((const GLshort *)v1, (const GLshort *)v2);
  OGLM_CHECK_ERR(glRectsv, free(v1);free(v2);)
  free(v1);free(v2);
#line 61840 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReferencePlaneSGIX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReferencePlaneSGIX_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "equation");
    {
	const GLdouble*	equation = INT2PTR(const GLdouble *,SvIV(ST(0)))
;
#line 30548 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReferencePlaneSGIX, )
  OGLM_AVAIL_CHECK(__glewReferencePlaneSGIX, glReferencePlaneSGIX)
  glReferencePlaneSGIX(equation);
  OGLM_CHECK_ERR(glReferencePlaneSGIX, )
#line 61861 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReferencePlaneSGIX_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReferencePlaneSGIX_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 30557 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReferencePlaneSGIX, )
  OGLM_AVAIL_CHECK(__glewReferencePlaneSGIX, glReferencePlaneSGIX)
  GLdouble* equation = OGLM_GET_VARARGS(equation,0,GLdouble,NV,4);
  glReferencePlaneSGIX((const GLdouble* )equation);
  OGLM_CHECK_ERR(glReferencePlaneSGIX, free(equation);)
  free(equation);
#line 61882 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReleaseKeyedMutexWin32EXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReleaseKeyedMutexWin32EXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "memory, key");
    {
	GLuint	memory = (unsigned int)SvUV(ST(0))
;
	GLuint64	key = (unsigned int)SvUV(ST(1))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 30570 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReleaseKeyedMutexWin32EXT, )
  OGLM_AVAIL_CHECK(__glewReleaseKeyedMutexWin32EXT, glReleaseKeyedMutexWin32EXT)
  RETVAL = glReleaseKeyedMutexWin32EXT(memory, key);
  OGLM_CHECK_ERR(glReleaseKeyedMutexWin32EXT, )
#line 61907 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glReleaseShaderCompiler); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReleaseShaderCompiler)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 30581 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReleaseShaderCompiler, )
  OGLM_AVAIL_CHECK(__glewReleaseShaderCompiler, glReleaseShaderCompiler)
  glReleaseShaderCompiler();
  OGLM_CHECK_ERR(glReleaseShaderCompiler, )
#line 61928 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRenderGpuMaskNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRenderGpuMaskNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "mask");
    {
	GLbitfield	mask = (int)SvIV(ST(0))
;
#line 30591 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRenderGpuMaskNV, )
  OGLM_AVAIL_CHECK(__glewRenderGpuMaskNV, glRenderGpuMaskNV)
  glRenderGpuMaskNV(mask);
  OGLM_CHECK_ERR(glRenderGpuMaskNV, )
#line 61949 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRenderMode); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRenderMode)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "mode");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	GLint	RETVAL;
	dXSTARG;
#line 30601 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRenderMode, )
  RETVAL = glRenderMode(mode);
  OGLM_CHECK_ERR(glRenderMode, )
#line 61971 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glRenderbufferStorage); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRenderbufferStorage)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "target, internalformat, width, height");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	internalformat = (int)SvIV(ST(1))
;
	GLsizei	width = (int)SvIV(ST(2))
;
	GLsizei	height = (int)SvIV(ST(3))
;
#line 30617 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRenderbufferStorage, )
  OGLM_AVAIL_CHECK(__glewRenderbufferStorage, glRenderbufferStorage)
  glRenderbufferStorage(target, internalformat, width, height);
  OGLM_CHECK_ERR(glRenderbufferStorage, )
#line 62001 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRenderbufferStorageMultisample); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRenderbufferStorageMultisample)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "target, samples, internalformat, width, height");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	samples = (int)SvIV(ST(1))
;
	GLenum	internalformat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
#line 30634 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRenderbufferStorageMultisample, )
  OGLM_AVAIL_CHECK(__glewRenderbufferStorageMultisample, glRenderbufferStorageMultisample)
  glRenderbufferStorageMultisample(target, samples, internalformat, width, height);
  OGLM_CHECK_ERR(glRenderbufferStorageMultisample, )
#line 62031 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRenderbufferStorageMultisampleANGLE); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRenderbufferStorageMultisampleANGLE)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "target, samples, internalformat, width, height");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	samples = (int)SvIV(ST(1))
;
	GLenum	internalformat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
#line 30648 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRenderbufferStorageMultisampleANGLE, )
  OGLM_AVAIL_CHECK(__glewRenderbufferStorageMultisampleANGLE, glRenderbufferStorageMultisampleANGLE)
  glRenderbufferStorageMultisampleANGLE(target, samples, internalformat, width, height);
  OGLM_CHECK_ERR(glRenderbufferStorageMultisampleANGLE, )
#line 62060 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRenderbufferStorageMultisampleAPPLE); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRenderbufferStorageMultisampleAPPLE)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "target, samples, internalformat, width, height");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	samples = (int)SvIV(ST(1))
;
	GLenum	internalformat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
#line 30662 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRenderbufferStorageMultisampleAPPLE, )
  OGLM_AVAIL_CHECK(__glewRenderbufferStorageMultisampleAPPLE, glRenderbufferStorageMultisampleAPPLE)
  glRenderbufferStorageMultisampleAPPLE(target, samples, internalformat, width, height);
  OGLM_CHECK_ERR(glRenderbufferStorageMultisampleAPPLE, )
#line 62089 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRenderbufferStorageMultisampleAdvancedAMD); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRenderbufferStorageMultisampleAdvancedAMD)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "target, samples, storageSamples, internalformat, width, height");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	samples = (int)SvIV(ST(1))
;
	GLsizei	storageSamples = (int)SvIV(ST(2))
;
	GLenum	internalformat = (int)SvIV(ST(3))
;
	GLsizei	width = (int)SvIV(ST(4))
;
	GLsizei	height = (int)SvIV(ST(5))
;
#line 30677 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRenderbufferStorageMultisampleAdvancedAMD, )
  OGLM_AVAIL_CHECK(__glewRenderbufferStorageMultisampleAdvancedAMD, glRenderbufferStorageMultisampleAdvancedAMD)
  glRenderbufferStorageMultisampleAdvancedAMD(target, samples, storageSamples, internalformat, width, height);
  OGLM_CHECK_ERR(glRenderbufferStorageMultisampleAdvancedAMD, )
#line 62120 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRenderbufferStorageMultisampleCoverageNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRenderbufferStorageMultisampleCoverageNV)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "target, coverageSamples, colorSamples, internalformat, width, height");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	coverageSamples = (int)SvIV(ST(1))
;
	GLsizei	colorSamples = (int)SvIV(ST(2))
;
	GLenum	internalformat = (int)SvIV(ST(3))
;
	GLsizei	width = (int)SvIV(ST(4))
;
	GLsizei	height = (int)SvIV(ST(5))
;
#line 30692 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRenderbufferStorageMultisampleCoverageNV, )
  OGLM_AVAIL_CHECK(__glewRenderbufferStorageMultisampleCoverageNV, glRenderbufferStorageMultisampleCoverageNV)
  glRenderbufferStorageMultisampleCoverageNV(target, coverageSamples, colorSamples, internalformat, width, height);
  OGLM_CHECK_ERR(glRenderbufferStorageMultisampleCoverageNV, )
#line 62151 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRenderbufferStorageMultisampleIMG); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRenderbufferStorageMultisampleIMG)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "target, samples, internalformat, width, height");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	samples = (int)SvIV(ST(1))
;
	GLenum	internalformat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
#line 30706 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRenderbufferStorageMultisampleIMG, )
  OGLM_AVAIL_CHECK(__glewRenderbufferStorageMultisampleIMG, glRenderbufferStorageMultisampleIMG)
  glRenderbufferStorageMultisampleIMG(target, samples, internalformat, width, height);
  OGLM_CHECK_ERR(glRenderbufferStorageMultisampleIMG, )
#line 62180 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRenderbufferStorageOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRenderbufferStorageOES)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, internalformat, width, height");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	internalformat = (int)SvIV(ST(1))
;
	GLsizei	width = (int)SvIV(ST(2))
;
	GLsizei	height = (int)SvIV(ST(3))
;
#line 30719 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRenderbufferStorageOES, )
  OGLM_AVAIL_CHECK(__glewRenderbufferStorageOES, glRenderbufferStorageOES)
  glRenderbufferStorageOES(target, internalformat, width, height);
  OGLM_CHECK_ERR(glRenderbufferStorageOES, )
#line 62207 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReplacementCodePointerSUN_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReplacementCodePointerSUN_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "type, stride, pointer");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	GLsizei	stride = (int)SvIV(ST(1))
;
	const void *	pointer = INT2PTR(const void *,SvIV(ST(2)))
;
#line 30731 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReplacementCodePointerSUN, )
  OGLM_AVAIL_CHECK(__glewReplacementCodePointerSUN, glReplacementCodePointerSUN)
  glReplacementCodePointerSUN(type, stride, pointer);
  OGLM_CHECK_ERR(glReplacementCodePointerSUN, )
#line 62232 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeubSUN); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeubSUN)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "code");
    {
	GLubyte	code = (unsigned int)SvUV(ST(0))
;
#line 30741 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReplacementCodeubSUN, )
  OGLM_AVAIL_CHECK(__glewReplacementCodeubSUN, glReplacementCodeubSUN)
  glReplacementCodeubSUN(code);
  OGLM_CHECK_ERR(glReplacementCodeubSUN, )
#line 62253 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeubvSUN_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeubvSUN_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "code");
    {
	const GLubyte*        code = (const GLubyte *)SvPV_nolen(ST(0))
;
#line 30751 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReplacementCodeubvSUN, )
  OGLM_AVAIL_CHECK(__glewReplacementCodeubvSUN, glReplacementCodeubvSUN)
  glReplacementCodeubvSUN(code);
  OGLM_CHECK_ERR(glReplacementCodeubvSUN, )
#line 62274 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiColor3fVertex3fSUN); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiColor3fVertex3fSUN)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "rc, r, g, b, x, y, z");
    {
	GLuint	rc = (unsigned int)SvUV(ST(0))
;
	GLfloat	r = (float)SvNV(ST(1))
;
	GLfloat	g = (float)SvNV(ST(2))
;
	GLfloat	b = (float)SvNV(ST(3))
;
	GLfloat	x = (float)SvNV(ST(4))
;
	GLfloat	y = (float)SvNV(ST(5))
;
	GLfloat	z = (float)SvNV(ST(6))
;
#line 30767 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReplacementCodeuiColor3fVertex3fSUN, )
  OGLM_AVAIL_CHECK(__glewReplacementCodeuiColor3fVertex3fSUN, glReplacementCodeuiColor3fVertex3fSUN)
  glReplacementCodeuiColor3fVertex3fSUN(rc, r, g, b, x, y, z);
  OGLM_CHECK_ERR(glReplacementCodeuiColor3fVertex3fSUN, )
#line 62307 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiColor3fVertex3fvSUN_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiColor3fVertex3fvSUN_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "rc, c, v");
    {
	const GLuint*	rc = INT2PTR(const GLuint *,SvIV(ST(0)))
;
	const GLfloat *	c = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 30779 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReplacementCodeuiColor3fVertex3fvSUN, )
  OGLM_AVAIL_CHECK(__glewReplacementCodeuiColor3fVertex3fvSUN, glReplacementCodeuiColor3fVertex3fvSUN)
  glReplacementCodeuiColor3fVertex3fvSUN(rc, c, v);
  OGLM_CHECK_ERR(glReplacementCodeuiColor3fVertex3fvSUN, )
#line 62332 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiColor3fVertex3fvSUN_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiColor3fVertex3fvSUN_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "rcSV, cSV, vSV");
    {
	SV *	rcSV = ST(0)
;
	SV *	cSV = ST(1)
;
	SV *	vSV = ST(2)
;
#line 30791 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReplacementCodeuiColor3fVertex3fvSUN, )
  OGLM_AVAIL_CHECK(__glewReplacementCodeuiColor3fVertex3fvSUN, glReplacementCodeuiColor3fVertex3fvSUN)
  GLfloat *c = OGLM_GET_ARRAY(c, GLfloat, NV, 3);
  GLuint* rc = OGLM_GET_ARRAY(rc, GLuint, UV, 1);
  GLfloat *v = OGLM_GET_ARRAY(v, GLfloat, NV, 3);
  glReplacementCodeuiColor3fVertex3fvSUN((const GLuint* )rc, (const GLfloat *)c, (const GLfloat *)v);
  OGLM_CHECK_ERR(glReplacementCodeuiColor3fVertex3fvSUN, free(c);free(rc);free(v);)
  free(c);free(rc);free(v);
#line 62361 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiColor4fNormal3fVertex3fSUN); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiColor4fNormal3fVertex3fSUN)
{
    dVAR; dXSARGS;
    if (items != 11)
       croak_xs_usage(cv,  "rc, r, g, b, a, nx, ny, nz, x, y, z");
    {
	GLuint	rc = (unsigned int)SvUV(ST(0))
;
	GLfloat	r = (float)SvNV(ST(1))
;
	GLfloat	g = (float)SvNV(ST(2))
;
	GLfloat	b = (float)SvNV(ST(3))
;
	GLfloat	a = (float)SvNV(ST(4))
;
	GLfloat	nx = (float)SvNV(ST(5))
;
	GLfloat	ny = (float)SvNV(ST(6))
;
	GLfloat	nz = (float)SvNV(ST(7))
;
	GLfloat	x = (float)SvNV(ST(8))
;
	GLfloat	y = (float)SvNV(ST(9))
;
	GLfloat	z = (float)SvNV(ST(10))
;
#line 30815 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReplacementCodeuiColor4fNormal3fVertex3fSUN, )
  OGLM_AVAIL_CHECK(__glewReplacementCodeuiColor4fNormal3fVertex3fSUN, glReplacementCodeuiColor4fNormal3fVertex3fSUN)
  glReplacementCodeuiColor4fNormal3fVertex3fSUN(rc, r, g, b, a, nx, ny, nz, x, y, z);
  OGLM_CHECK_ERR(glReplacementCodeuiColor4fNormal3fVertex3fSUN, )
#line 62402 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiColor4fNormal3fVertex3fvSUN_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiColor4fNormal3fVertex3fvSUN_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "rc, c, n, v");
    {
	const GLuint*	rc = INT2PTR(const GLuint *,SvIV(ST(0)))
;
	const GLfloat *	c = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
	const GLfloat *	n = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 30828 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReplacementCodeuiColor4fNormal3fVertex3fvSUN, )
  OGLM_AVAIL_CHECK(__glewReplacementCodeuiColor4fNormal3fVertex3fvSUN, glReplacementCodeuiColor4fNormal3fVertex3fvSUN)
  glReplacementCodeuiColor4fNormal3fVertex3fvSUN(rc, c, n, v);
  OGLM_CHECK_ERR(glReplacementCodeuiColor4fNormal3fVertex3fvSUN, )
#line 62429 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiColor4fNormal3fVertex3fvSUN_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiColor4fNormal3fVertex3fvSUN_p)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "rcSV, cSV, nSV, vSV");
    {
	SV *	rcSV = ST(0)
;
	SV *	cSV = ST(1)
;
	SV *	nSV = ST(2)
;
	SV *	vSV = ST(3)
;
#line 30841 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReplacementCodeuiColor4fNormal3fVertex3fvSUN, )
  OGLM_AVAIL_CHECK(__glewReplacementCodeuiColor4fNormal3fVertex3fvSUN, glReplacementCodeuiColor4fNormal3fVertex3fvSUN)
  GLfloat *c = OGLM_GET_ARRAY(c, GLfloat, NV, 4);
  GLfloat *n = OGLM_GET_ARRAY(n, GLfloat, NV, 3);
  GLuint* rc = OGLM_GET_ARRAY(rc, GLuint, UV, 1);
  GLfloat *v = OGLM_GET_ARRAY(v, GLfloat, NV, 3);
  glReplacementCodeuiColor4fNormal3fVertex3fvSUN((const GLuint* )rc, (const GLfloat *)c, (const GLfloat *)n, (const GLfloat *)v);
  OGLM_CHECK_ERR(glReplacementCodeuiColor4fNormal3fVertex3fvSUN, free(c);free(n);free(rc);free(v);)
  free(c);free(n);free(rc);free(v);
#line 62461 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiColor4ubVertex3fSUN); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiColor4ubVertex3fSUN)
{
    dVAR; dXSARGS;
    if (items != 8)
       croak_xs_usage(cv,  "rc, r, g, b, a, x, y, z");
    {
	GLuint	rc = (unsigned int)SvUV(ST(0))
;
	GLubyte	r = (unsigned int)SvUV(ST(1))
;
	GLubyte	g = (unsigned int)SvUV(ST(2))
;
	GLubyte	b = (unsigned int)SvUV(ST(3))
;
	GLubyte	a = (unsigned int)SvUV(ST(4))
;
	GLfloat	x = (float)SvNV(ST(5))
;
	GLfloat	y = (float)SvNV(ST(6))
;
	GLfloat	z = (float)SvNV(ST(7))
;
#line 30863 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReplacementCodeuiColor4ubVertex3fSUN, )
  OGLM_AVAIL_CHECK(__glewReplacementCodeuiColor4ubVertex3fSUN, glReplacementCodeuiColor4ubVertex3fSUN)
  glReplacementCodeuiColor4ubVertex3fSUN(rc, r, g, b, a, x, y, z);
  OGLM_CHECK_ERR(glReplacementCodeuiColor4ubVertex3fSUN, )
#line 62496 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiColor4ubVertex3fvSUN_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiColor4ubVertex3fvSUN_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "rc, c, v");
    {
	const GLuint*	rc = INT2PTR(const GLuint *,SvIV(ST(0)))
;
	const GLubyte *        c = (const GLubyte *)SvPV_nolen(ST(1))
;
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 30875 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReplacementCodeuiColor4ubVertex3fvSUN, )
  OGLM_AVAIL_CHECK(__glewReplacementCodeuiColor4ubVertex3fvSUN, glReplacementCodeuiColor4ubVertex3fvSUN)
  glReplacementCodeuiColor4ubVertex3fvSUN(rc, c, v);
  OGLM_CHECK_ERR(glReplacementCodeuiColor4ubVertex3fvSUN, )
#line 62521 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiColor4ubVertex3fvSUN_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiColor4ubVertex3fvSUN_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "rcSV, cSV, vSV");
    {
	SV *	rcSV = ST(0)
;
	SV *	cSV = ST(1)
;
	SV *	vSV = ST(2)
;
#line 30887 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReplacementCodeuiColor4ubVertex3fvSUN, )
  OGLM_AVAIL_CHECK(__glewReplacementCodeuiColor4ubVertex3fvSUN, glReplacementCodeuiColor4ubVertex3fvSUN)
  GLubyte *c = OGLM_GET_ARRAY(c, GLubyte, UV, 4);
  GLuint* rc = OGLM_GET_ARRAY(rc, GLuint, UV, 1);
  GLfloat *v = OGLM_GET_ARRAY(v, GLfloat, NV, 3);
  glReplacementCodeuiColor4ubVertex3fvSUN((const GLuint* )rc, (const GLubyte *)c, (const GLfloat *)v);
  OGLM_CHECK_ERR(glReplacementCodeuiColor4ubVertex3fvSUN, free(c);free(rc);free(v);)
  free(c);free(rc);free(v);
#line 62550 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiNormal3fVertex3fSUN); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiNormal3fVertex3fSUN)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "rc, nx, ny, nz, x, y, z");
    {
	GLuint	rc = (unsigned int)SvUV(ST(0))
;
	GLfloat	nx = (float)SvNV(ST(1))
;
	GLfloat	ny = (float)SvNV(ST(2))
;
	GLfloat	nz = (float)SvNV(ST(3))
;
	GLfloat	x = (float)SvNV(ST(4))
;
	GLfloat	y = (float)SvNV(ST(5))
;
	GLfloat	z = (float)SvNV(ST(6))
;
#line 30907 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReplacementCodeuiNormal3fVertex3fSUN, )
  OGLM_AVAIL_CHECK(__glewReplacementCodeuiNormal3fVertex3fSUN, glReplacementCodeuiNormal3fVertex3fSUN)
  glReplacementCodeuiNormal3fVertex3fSUN(rc, nx, ny, nz, x, y, z);
  OGLM_CHECK_ERR(glReplacementCodeuiNormal3fVertex3fSUN, )
#line 62583 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiNormal3fVertex3fvSUN_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiNormal3fVertex3fvSUN_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "rc, n, v");
    {
	const GLuint*	rc = INT2PTR(const GLuint *,SvIV(ST(0)))
;
	const GLfloat *	n = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 30919 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReplacementCodeuiNormal3fVertex3fvSUN, )
  OGLM_AVAIL_CHECK(__glewReplacementCodeuiNormal3fVertex3fvSUN, glReplacementCodeuiNormal3fVertex3fvSUN)
  glReplacementCodeuiNormal3fVertex3fvSUN(rc, n, v);
  OGLM_CHECK_ERR(glReplacementCodeuiNormal3fVertex3fvSUN, )
#line 62608 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiNormal3fVertex3fvSUN_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiNormal3fVertex3fvSUN_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "rcSV, nSV, vSV");
    {
	SV *	rcSV = ST(0)
;
	SV *	nSV = ST(1)
;
	SV *	vSV = ST(2)
;
#line 30931 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReplacementCodeuiNormal3fVertex3fvSUN, )
  OGLM_AVAIL_CHECK(__glewReplacementCodeuiNormal3fVertex3fvSUN, glReplacementCodeuiNormal3fVertex3fvSUN)
  GLfloat *n = OGLM_GET_ARRAY(n, GLfloat, NV, 3);
  GLuint* rc = OGLM_GET_ARRAY(rc, GLuint, UV, 1);
  GLfloat *v = OGLM_GET_ARRAY(v, GLfloat, NV, 3);
  glReplacementCodeuiNormal3fVertex3fvSUN((const GLuint* )rc, (const GLfloat *)n, (const GLfloat *)v);
  OGLM_CHECK_ERR(glReplacementCodeuiNormal3fVertex3fvSUN, free(n);free(rc);free(v);)
  free(n);free(rc);free(v);
#line 62637 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiSUN); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiSUN)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "code");
    {
	GLuint	code = (unsigned int)SvUV(ST(0))
;
#line 30945 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReplacementCodeuiSUN, )
  OGLM_AVAIL_CHECK(__glewReplacementCodeuiSUN, glReplacementCodeuiSUN)
  glReplacementCodeuiSUN(code);
  OGLM_CHECK_ERR(glReplacementCodeuiSUN, )
#line 62658 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN)
{
    dVAR; dXSARGS;
    if (items != 13)
       croak_xs_usage(cv,  "rc, s, t, r, g, b, a, nx, ny, nz, x, y, z");
    {
	GLuint	rc = (unsigned int)SvUV(ST(0))
;
	GLfloat	s = (float)SvNV(ST(1))
;
	GLfloat	t = (float)SvNV(ST(2))
;
	GLfloat	r = (float)SvNV(ST(3))
;
	GLfloat	g = (float)SvNV(ST(4))
;
	GLfloat	b = (float)SvNV(ST(5))
;
	GLfloat	a = (float)SvNV(ST(6))
;
	GLfloat	nx = (float)SvNV(ST(7))
;
	GLfloat	ny = (float)SvNV(ST(8))
;
	GLfloat	nz = (float)SvNV(ST(9))
;
	GLfloat	x = (float)SvNV(ST(10))
;
	GLfloat	y = (float)SvNV(ST(11))
;
	GLfloat	z = (float)SvNV(ST(12))
;
#line 30967 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN, )
  OGLM_AVAIL_CHECK(__glewReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN)
  glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN(rc, s, t, r, g, b, a, nx, ny, nz, x, y, z);
  OGLM_CHECK_ERR(glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN, )
#line 62703 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "rc, tc, c, n, v");
    {
	const GLuint*	rc = INT2PTR(const GLuint *,SvIV(ST(0)))
;
	const GLfloat *	tc = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
	const GLfloat *	c = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
	const GLfloat *	n = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(4)))
;
#line 30981 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN, )
  OGLM_AVAIL_CHECK(__glewReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN)
  glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN(rc, tc, c, n, v);
  OGLM_CHECK_ERR(glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN, )
#line 62732 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN_p)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "rcSV, tcSV, cSV, nSV, vSV");
    {
	SV *	rcSV = ST(0)
;
	SV *	tcSV = ST(1)
;
	SV *	cSV = ST(2)
;
	SV *	nSV = ST(3)
;
	SV *	vSV = ST(4)
;
#line 30995 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN, )
  OGLM_AVAIL_CHECK(__glewReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN)
  GLfloat *c = OGLM_GET_ARRAY(c, GLfloat, NV, 4);
  GLfloat *n = OGLM_GET_ARRAY(n, GLfloat, NV, 3);
  GLuint* rc = OGLM_GET_ARRAY(rc, GLuint, UV, 1);
  GLfloat *tc = OGLM_GET_ARRAY(tc, GLfloat, NV, 2);
  GLfloat *v = OGLM_GET_ARRAY(v, GLfloat, NV, 3);
  glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN((const GLuint* )rc, (const GLfloat *)tc, (const GLfloat *)c, (const GLfloat *)n, (const GLfloat *)v);
  OGLM_CHECK_ERR(glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN, free(c);free(n);free(rc);free(tc);free(v);)
  free(c);free(n);free(rc);free(tc);free(v);
#line 62767 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN)
{
    dVAR; dXSARGS;
    if (items != 9)
       croak_xs_usage(cv,  "rc, s, t, nx, ny, nz, x, y, z");
    {
	GLuint	rc = (unsigned int)SvUV(ST(0))
;
	GLfloat	s = (float)SvNV(ST(1))
;
	GLfloat	t = (float)SvNV(ST(2))
;
	GLfloat	nx = (float)SvNV(ST(3))
;
	GLfloat	ny = (float)SvNV(ST(4))
;
	GLfloat	nz = (float)SvNV(ST(5))
;
	GLfloat	x = (float)SvNV(ST(6))
;
	GLfloat	y = (float)SvNV(ST(7))
;
	GLfloat	z = (float)SvNV(ST(8))
;
#line 31019 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN, )
  OGLM_AVAIL_CHECK(__glewReplacementCodeuiTexCoord2fNormal3fVertex3fSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN)
  glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN(rc, s, t, nx, ny, nz, x, y, z);
  OGLM_CHECK_ERR(glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN, )
#line 62804 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "rc, tc, n, v");
    {
	const GLuint*	rc = INT2PTR(const GLuint *,SvIV(ST(0)))
;
	const GLfloat *	tc = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
	const GLfloat *	n = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 31032 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN, )
  OGLM_AVAIL_CHECK(__glewReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN)
  glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN(rc, tc, n, v);
  OGLM_CHECK_ERR(glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN, )
#line 62831 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN_p)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "rcSV, tcSV, nSV, vSV");
    {
	SV *	rcSV = ST(0)
;
	SV *	tcSV = ST(1)
;
	SV *	nSV = ST(2)
;
	SV *	vSV = ST(3)
;
#line 31045 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN, )
  OGLM_AVAIL_CHECK(__glewReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN, glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN)
  GLfloat *n = OGLM_GET_ARRAY(n, GLfloat, NV, 3);
  GLuint* rc = OGLM_GET_ARRAY(rc, GLuint, UV, 1);
  GLfloat *tc = OGLM_GET_ARRAY(tc, GLfloat, NV, 2);
  GLfloat *v = OGLM_GET_ARRAY(v, GLfloat, NV, 3);
  glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN((const GLuint* )rc, (const GLfloat *)tc, (const GLfloat *)n, (const GLfloat *)v);
  OGLM_CHECK_ERR(glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN, free(n);free(rc);free(tc);free(v);)
  free(n);free(rc);free(tc);free(v);
#line 62863 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiTexCoord2fVertex3fSUN); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiTexCoord2fVertex3fSUN)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "rc, s, t, x, y, z");
    {
	GLuint	rc = (unsigned int)SvUV(ST(0))
;
	GLfloat	s = (float)SvNV(ST(1))
;
	GLfloat	t = (float)SvNV(ST(2))
;
	GLfloat	x = (float)SvNV(ST(3))
;
	GLfloat	y = (float)SvNV(ST(4))
;
	GLfloat	z = (float)SvNV(ST(5))
;
#line 31065 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReplacementCodeuiTexCoord2fVertex3fSUN, )
  OGLM_AVAIL_CHECK(__glewReplacementCodeuiTexCoord2fVertex3fSUN, glReplacementCodeuiTexCoord2fVertex3fSUN)
  glReplacementCodeuiTexCoord2fVertex3fSUN(rc, s, t, x, y, z);
  OGLM_CHECK_ERR(glReplacementCodeuiTexCoord2fVertex3fSUN, )
#line 62894 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiTexCoord2fVertex3fvSUN_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiTexCoord2fVertex3fvSUN_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "rc, tc, v");
    {
	const GLuint*	rc = INT2PTR(const GLuint *,SvIV(ST(0)))
;
	const GLfloat *	tc = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 31077 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReplacementCodeuiTexCoord2fVertex3fvSUN, )
  OGLM_AVAIL_CHECK(__glewReplacementCodeuiTexCoord2fVertex3fvSUN, glReplacementCodeuiTexCoord2fVertex3fvSUN)
  glReplacementCodeuiTexCoord2fVertex3fvSUN(rc, tc, v);
  OGLM_CHECK_ERR(glReplacementCodeuiTexCoord2fVertex3fvSUN, )
#line 62919 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiTexCoord2fVertex3fvSUN_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiTexCoord2fVertex3fvSUN_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "rcSV, tcSV, vSV");
    {
	SV *	rcSV = ST(0)
;
	SV *	tcSV = ST(1)
;
	SV *	vSV = ST(2)
;
#line 31089 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReplacementCodeuiTexCoord2fVertex3fvSUN, )
  OGLM_AVAIL_CHECK(__glewReplacementCodeuiTexCoord2fVertex3fvSUN, glReplacementCodeuiTexCoord2fVertex3fvSUN)
  GLuint* rc = OGLM_GET_ARRAY(rc, GLuint, UV, 1);
  GLfloat *tc = OGLM_GET_ARRAY(tc, GLfloat, NV, 2);
  GLfloat *v = OGLM_GET_ARRAY(v, GLfloat, NV, 3);
  glReplacementCodeuiTexCoord2fVertex3fvSUN((const GLuint* )rc, (const GLfloat *)tc, (const GLfloat *)v);
  OGLM_CHECK_ERR(glReplacementCodeuiTexCoord2fVertex3fvSUN, free(rc);free(tc);free(v);)
  free(rc);free(tc);free(v);
#line 62948 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiVertex3fSUN); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiVertex3fSUN)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "rc, x, y, z");
    {
	GLuint	rc = (unsigned int)SvUV(ST(0))
;
	GLfloat	x = (float)SvNV(ST(1))
;
	GLfloat	y = (float)SvNV(ST(2))
;
	GLfloat	z = (float)SvNV(ST(3))
;
#line 31106 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReplacementCodeuiVertex3fSUN, )
  OGLM_AVAIL_CHECK(__glewReplacementCodeuiVertex3fSUN, glReplacementCodeuiVertex3fSUN)
  glReplacementCodeuiVertex3fSUN(rc, x, y, z);
  OGLM_CHECK_ERR(glReplacementCodeuiVertex3fSUN, )
#line 62975 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiVertex3fvSUN_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiVertex3fvSUN_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "rc, v");
    {
	const GLuint*	rc = INT2PTR(const GLuint *,SvIV(ST(0)))
;
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 31117 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReplacementCodeuiVertex3fvSUN, )
  OGLM_AVAIL_CHECK(__glewReplacementCodeuiVertex3fvSUN, glReplacementCodeuiVertex3fvSUN)
  glReplacementCodeuiVertex3fvSUN(rc, v);
  OGLM_CHECK_ERR(glReplacementCodeuiVertex3fvSUN, )
#line 62998 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiVertex3fvSUN_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuiVertex3fvSUN_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "rcSV, vSV");
    {
	SV *	rcSV = ST(0)
;
	SV *	vSV = ST(1)
;
#line 31128 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReplacementCodeuiVertex3fvSUN, )
  OGLM_AVAIL_CHECK(__glewReplacementCodeuiVertex3fvSUN, glReplacementCodeuiVertex3fvSUN)
  GLuint* rc = OGLM_GET_ARRAY(rc, GLuint, UV, 1);
  GLfloat *v = OGLM_GET_ARRAY(v, GLfloat, NV, 3);
  glReplacementCodeuiVertex3fvSUN((const GLuint* )rc, (const GLfloat *)v);
  OGLM_CHECK_ERR(glReplacementCodeuiVertex3fvSUN, free(rc);free(v);)
  free(rc);free(v);
#line 63024 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuivSUN_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeuivSUN_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "code");
    {
	const GLuint*	code = INT2PTR(const GLuint *,SvIV(ST(0)))
;
#line 31141 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReplacementCodeuivSUN, )
  OGLM_AVAIL_CHECK(__glewReplacementCodeuivSUN, glReplacementCodeuivSUN)
  glReplacementCodeuivSUN(code);
  OGLM_CHECK_ERR(glReplacementCodeuivSUN, )
#line 63045 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeusSUN); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeusSUN)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "code");
    {
	GLushort	code = (unsigned short)SvUV(ST(0))
;
#line 31151 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReplacementCodeusSUN, )
  OGLM_AVAIL_CHECK(__glewReplacementCodeusSUN, glReplacementCodeusSUN)
  glReplacementCodeusSUN(code);
  OGLM_CHECK_ERR(glReplacementCodeusSUN, )
#line 63066 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeusvSUN_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glReplacementCodeusvSUN_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "code");
    {
	const GLushort*	code = INT2PTR(const GLushort *,SvIV(ST(0)))
;
#line 31161 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glReplacementCodeusvSUN, )
  OGLM_AVAIL_CHECK(__glewReplacementCodeusvSUN, glReplacementCodeusvSUN)
  glReplacementCodeusvSUN(code);
  OGLM_CHECK_ERR(glReplacementCodeusvSUN, )
#line 63087 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRequestResidentProgramsNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRequestResidentProgramsNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "n, programs");
    {
	GLsizei	n = (int)SvIV(ST(0))
;
	GLuint*	programs = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 31172 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRequestResidentProgramsNV, )
  OGLM_AVAIL_CHECK(__glewRequestResidentProgramsNV, glRequestResidentProgramsNV)
  glRequestResidentProgramsNV(n, programs);
  OGLM_CHECK_ERR(glRequestResidentProgramsNV, )
#line 63110 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRequestResidentProgramsNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRequestResidentProgramsNV_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "n");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLsizei	n = (int)SvIV(ST(0))
;
#line 31182 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRequestResidentProgramsNV, )
  OGLM_AVAIL_CHECK(__glewRequestResidentProgramsNV, glRequestResidentProgramsNV)
  GLuint* programs = OGLM_ALLOC(n,GLuint,programs);
  glRequestResidentProgramsNV(n, programs);
  OGLM_CHECK_ERR(glRequestResidentProgramsNV, free(programs);)
  OGLM_OUT_FINISH(programs,n,newSVuv)
  free(programs);
#line 63136 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glResetHistogram); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glResetHistogram)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "target");
    {
	GLenum	target = (int)SvIV(ST(0))
;
#line 31197 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glResetHistogram, )
  OGLM_AVAIL_CHECK(__glewResetHistogram, glResetHistogram)
  glResetHistogram(target);
  OGLM_CHECK_ERR(glResetHistogram, )
#line 63159 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glResetMemoryObjectParameterNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glResetMemoryObjectParameterNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "memory, pname");
    {
	GLuint	memory = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 31208 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glResetMemoryObjectParameterNV, )
  OGLM_AVAIL_CHECK(__glewResetMemoryObjectParameterNV, glResetMemoryObjectParameterNV)
  glResetMemoryObjectParameterNV(memory, pname);
  OGLM_CHECK_ERR(glResetMemoryObjectParameterNV, )
#line 63182 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glResetMinmax); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glResetMinmax)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "target");
    {
	GLenum	target = (int)SvIV(ST(0))
;
#line 31220 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glResetMinmax, )
  OGLM_AVAIL_CHECK(__glewResetMinmax, glResetMinmax)
  glResetMinmax(target);
  OGLM_CHECK_ERR(glResetMinmax, )
#line 63204 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glResizeBuffersMESA); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glResizeBuffersMESA)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 31229 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glResizeBuffersMESA, )
  OGLM_AVAIL_CHECK(__glewResizeBuffersMESA, glResizeBuffersMESA)
  glResizeBuffersMESA();
  OGLM_CHECK_ERR(glResizeBuffersMESA, )
#line 63223 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glResolveDepthValuesNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glResolveDepthValuesNV)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 31238 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glResolveDepthValuesNV, )
  OGLM_AVAIL_CHECK(__glewResolveDepthValuesNV, glResolveDepthValuesNV)
  glResolveDepthValuesNV();
  OGLM_CHECK_ERR(glResolveDepthValuesNV, )
#line 63242 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glResolveMultisampleFramebufferAPPLE); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glResolveMultisampleFramebufferAPPLE)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 31247 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glResolveMultisampleFramebufferAPPLE, )
  OGLM_AVAIL_CHECK(__glewResolveMultisampleFramebufferAPPLE, glResolveMultisampleFramebufferAPPLE)
  glResolveMultisampleFramebufferAPPLE();
  OGLM_CHECK_ERR(glResolveMultisampleFramebufferAPPLE, )
#line 63261 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glResumeTransformFeedback); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glResumeTransformFeedback)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 31258 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glResumeTransformFeedback, )
  OGLM_AVAIL_CHECK(__glewResumeTransformFeedback, glResumeTransformFeedback)
  glResumeTransformFeedback();
  OGLM_CHECK_ERR(glResumeTransformFeedback, )
#line 63281 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRotated); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRotated)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "angle, x, y, z");
    {
	GLdouble	angle = (double)SvNV(ST(0))
;
	GLdouble	x = (double)SvNV(ST(1))
;
	GLdouble	y = (double)SvNV(ST(2))
;
	GLdouble	z = (double)SvNV(ST(3))
;
#line 31271 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRotated, )
  glRotated(angle, x, y, z);
  OGLM_CHECK_ERR(glRotated, )
#line 63307 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRotatef); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRotatef)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "angle, x, y, z");
    {
	GLfloat	angle = (float)SvNV(ST(0))
;
	GLfloat	x = (float)SvNV(ST(1))
;
	GLfloat	y = (float)SvNV(ST(2))
;
	GLfloat	z = (float)SvNV(ST(3))
;
#line 31283 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRotatef, )
  glRotatef(angle, x, y, z);
  OGLM_CHECK_ERR(glRotatef, )
#line 63333 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glRotatex); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glRotatex)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "angle, x, y, z");
    {
	GLfixed	angle = (int)SvIV(ST(0))
;
	GLfixed	x = (int)SvIV(ST(1))
;
	GLfixed	y = (int)SvIV(ST(2))
;
	GLfixed	z = (int)SvIV(ST(3))
;
#line 31295 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glRotatex, )
  OGLM_AVAIL_CHECK(__glewRotatex, glRotatex)
  glRotatex(angle, x, y, z);
  OGLM_CHECK_ERR(glRotatex, )
#line 63360 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSampleCoverage); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSampleCoverage)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "value, invert");
    {
	GLclampf	value = (float)SvNV(ST(0))
;
	GLboolean	invert = (int)SvIV(ST(1))
;
#line 31308 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSampleCoverage, )
  OGLM_AVAIL_CHECK(__glewSampleCoverage, glSampleCoverage)
  glSampleCoverage(value, invert);
  OGLM_CHECK_ERR(glSampleCoverage, )
#line 63384 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSampleCoveragex); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSampleCoveragex)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "value, invert");
    {
	GLclampx	value = (int)SvIV(ST(0))
;
	GLboolean	invert = (int)SvIV(ST(1))
;
#line 31319 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSampleCoveragex, )
  OGLM_AVAIL_CHECK(__glewSampleCoveragex, glSampleCoveragex)
  glSampleCoveragex(value, invert);
  OGLM_CHECK_ERR(glSampleCoveragex, )
#line 63407 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSampleMapATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSampleMapATI)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "dst, interp, swizzle");
    {
	GLuint	dst = (unsigned int)SvUV(ST(0))
;
	GLuint	interp = (unsigned int)SvUV(ST(1))
;
	GLenum	swizzle = (int)SvIV(ST(2))
;
#line 31331 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSampleMapATI, )
  OGLM_AVAIL_CHECK(__glewSampleMapATI, glSampleMapATI)
  glSampleMapATI(dst, interp, swizzle);
  OGLM_CHECK_ERR(glSampleMapATI, )
#line 63432 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSampleMaskEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSampleMaskEXT)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "value, invert");
    {
	GLclampf	value = (float)SvNV(ST(0))
;
	GLboolean	invert = (int)SvIV(ST(1))
;
#line 31344 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSampleMaskEXT, )
  OGLM_AVAIL_CHECK(__glewSampleMaskEXT, glSampleMaskEXT)
  glSampleMaskEXT(value, invert);
  OGLM_CHECK_ERR(glSampleMaskEXT, )
#line 63456 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSampleMaskIndexedNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSampleMaskIndexedNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "index, mask");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLbitfield	mask = (int)SvIV(ST(1))
;
#line 31355 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSampleMaskIndexedNV, )
  OGLM_AVAIL_CHECK(__glewSampleMaskIndexedNV, glSampleMaskIndexedNV)
  glSampleMaskIndexedNV(index, mask);
  OGLM_CHECK_ERR(glSampleMaskIndexedNV, )
#line 63479 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSampleMaski); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSampleMaski)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "index, mask");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLbitfield	mask = (int)SvIV(ST(1))
;
#line 31366 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSampleMaski, )
  OGLM_AVAIL_CHECK(__glewSampleMaski, glSampleMaski)
  glSampleMaski(index, mask);
  OGLM_CHECK_ERR(glSampleMaski, )
#line 63502 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSamplePatternEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSamplePatternEXT)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "pattern");
    {
	GLenum	pattern = (int)SvIV(ST(0))
;
#line 31378 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSamplePatternEXT, )
  OGLM_AVAIL_CHECK(__glewSamplePatternEXT, glSamplePatternEXT)
  glSamplePatternEXT(pattern);
  OGLM_CHECK_ERR(glSamplePatternEXT, )
#line 63524 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSamplerParameterIiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSamplerParameterIiv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "sampler, pname, param");
    {
	GLuint	sampler = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLint*	param = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 31392 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSamplerParameterIiv, )
  OGLM_AVAIL_CHECK(__glewSamplerParameterIiv, glSamplerParameterIiv)
  glSamplerParameterIiv(sampler, pname, param);
  OGLM_CHECK_ERR(glSamplerParameterIiv, )
#line 63550 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSamplerParameterIiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSamplerParameterIiv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 2)
       croak_xs_usage(cv,  "sampler, pname, ...");
    {
	GLuint	sampler = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 31405 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSamplerParameterIiv, )
  OGLM_AVAIL_CHECK(__glewSamplerParameterIiv, glSamplerParameterIiv)
  OGLM_SIZE_ENUM(SamplerParameterI,pname,1)
  GLint* param = OGLM_GET_VARARGS(param,2,GLint,IV,pname_count);
  glSamplerParameterIiv((GLuint )sampler, (GLenum )pname, (const GLint* )param);
  OGLM_CHECK_ERR(glSamplerParameterIiv, free(param);)
  free(param);
#line 63577 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSamplerParameterIivOES_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSamplerParameterIivOES_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "sampler, pname, params");
    {
	GLuint	sampler = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLint*	params = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 31420 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSamplerParameterIivOES, )
  OGLM_AVAIL_CHECK(__glewSamplerParameterIivOES, glSamplerParameterIivOES)
  glSamplerParameterIivOES(sampler, pname, params);
  OGLM_CHECK_ERR(glSamplerParameterIivOES, )
#line 63602 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSamplerParameterIuiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSamplerParameterIuiv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "sampler, pname, param");
    {
	GLuint	sampler = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLuint*	param = INT2PTR(const GLuint *,SvIV(ST(2)))
;
#line 31434 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSamplerParameterIuiv, )
  OGLM_AVAIL_CHECK(__glewSamplerParameterIuiv, glSamplerParameterIuiv)
  glSamplerParameterIuiv(sampler, pname, param);
  OGLM_CHECK_ERR(glSamplerParameterIuiv, )
#line 63628 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSamplerParameterIuiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSamplerParameterIuiv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 2)
       croak_xs_usage(cv,  "sampler, pname, ...");
    {
	GLuint	sampler = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 31447 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSamplerParameterIuiv, )
  OGLM_AVAIL_CHECK(__glewSamplerParameterIuiv, glSamplerParameterIuiv)
  OGLM_SIZE_ENUM(SamplerParameterI,pname,1)
  GLuint* param = OGLM_GET_VARARGS(param,2,GLuint,UV,pname_count);
  glSamplerParameterIuiv((GLuint )sampler, (GLenum )pname, (const GLuint* )param);
  OGLM_CHECK_ERR(glSamplerParameterIuiv, free(param);)
  free(param);
#line 63655 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSamplerParameterIuivOES_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSamplerParameterIuivOES_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "sampler, pname, params");
    {
	GLuint	sampler = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLuint*	params = INT2PTR(const GLuint *,SvIV(ST(2)))
;
#line 31462 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSamplerParameterIuivOES, )
  OGLM_AVAIL_CHECK(__glewSamplerParameterIuivOES, glSamplerParameterIuivOES)
  glSamplerParameterIuivOES(sampler, pname, params);
  OGLM_CHECK_ERR(glSamplerParameterIuivOES, )
#line 63680 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSamplerParameterf); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSamplerParameterf)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "sampler, pname, param");
    {
	GLuint	sampler = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat	param = (float)SvNV(ST(2))
;
#line 31474 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSamplerParameterf, )
  OGLM_AVAIL_CHECK(__glewSamplerParameterf, glSamplerParameterf)
  glSamplerParameterf(sampler, pname, param);
  OGLM_CHECK_ERR(glSamplerParameterf, )
#line 63705 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSamplerParameterfv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSamplerParameterfv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "sampler, pname, param");
    {
	GLuint	sampler = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLfloat*	param = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 31486 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSamplerParameterfv, )
  OGLM_AVAIL_CHECK(__glewSamplerParameterfv, glSamplerParameterfv)
  glSamplerParameterfv(sampler, pname, param);
  OGLM_CHECK_ERR(glSamplerParameterfv, )
#line 63730 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSamplerParameterfv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSamplerParameterfv_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "sampler, pname, ...");
    {
	GLuint	sampler = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 31497 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSamplerParameterfv, )
  OGLM_AVAIL_CHECK(__glewSamplerParameterfv, glSamplerParameterfv)
  OGLM_SIZE_ENUM(SamplerParameterF,pname,1)
  GLfloat* param = OGLM_GET_VARARGS(param,2,GLfloat,NV,pname_count);
  glSamplerParameterfv((GLuint )sampler, (GLenum )pname, (const GLfloat* )param);
  OGLM_CHECK_ERR(glSamplerParameterfv, free(param);)
  free(param);
#line 63756 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSamplerParameteri); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSamplerParameteri)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "sampler, pname, param");
    {
	GLuint	sampler = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint	param = (int)SvIV(ST(2))
;
#line 31512 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSamplerParameteri, )
  OGLM_AVAIL_CHECK(__glewSamplerParameteri, glSamplerParameteri)
  glSamplerParameteri(sampler, pname, param);
  OGLM_CHECK_ERR(glSamplerParameteri, )
#line 63781 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSamplerParameteriv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSamplerParameteriv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "sampler, pname, param");
    {
	GLuint	sampler = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLint*	param = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 31524 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSamplerParameteriv, )
  OGLM_AVAIL_CHECK(__glewSamplerParameteriv, glSamplerParameteriv)
  glSamplerParameteriv(sampler, pname, param);
  OGLM_CHECK_ERR(glSamplerParameteriv, )
#line 63806 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSamplerParameteriv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSamplerParameteriv_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "sampler, pname, ...");
    {
	GLuint	sampler = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 31535 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSamplerParameteriv, )
  OGLM_AVAIL_CHECK(__glewSamplerParameteriv, glSamplerParameteriv)
  OGLM_SIZE_ENUM(SamplerParameterI,pname,1)
  GLint* param = OGLM_GET_VARARGS(param,2,GLint,IV,pname_count);
  glSamplerParameteriv((GLuint )sampler, (GLenum )pname, (const GLint* )param);
  OGLM_CHECK_ERR(glSamplerParameteriv, free(param);)
  free(param);
#line 63832 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glScaled); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glScaled)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "x, y, z");
    {
	GLdouble	x = (double)SvNV(ST(0))
;
	GLdouble	y = (double)SvNV(ST(1))
;
	GLdouble	z = (double)SvNV(ST(2))
;
#line 31550 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glScaled, )
  glScaled(x, y, z);
  OGLM_CHECK_ERR(glScaled, )
#line 63856 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glScalef); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glScalef)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "x, y, z");
    {
	GLfloat	x = (float)SvNV(ST(0))
;
	GLfloat	y = (float)SvNV(ST(1))
;
	GLfloat	z = (float)SvNV(ST(2))
;
#line 31561 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glScalef, )
  glScalef(x, y, z);
  OGLM_CHECK_ERR(glScalef, )
#line 63880 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glScalex); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glScalex)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "x, y, z");
    {
	GLfixed	x = (int)SvIV(ST(0))
;
	GLfixed	y = (int)SvIV(ST(1))
;
	GLfixed	z = (int)SvIV(ST(2))
;
#line 31572 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glScalex, )
  OGLM_AVAIL_CHECK(__glewScalex, glScalex)
  glScalex(x, y, z);
  OGLM_CHECK_ERR(glScalex, )
#line 63905 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glScissor); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glScissor)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "x, y, width, height");
    {
	GLint	x = (int)SvIV(ST(0))
;
	GLint	y = (int)SvIV(ST(1))
;
	GLsizei	width = (int)SvIV(ST(2))
;
	GLsizei	height = (int)SvIV(ST(3))
;
#line 31585 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glScissor, )
  glScissor(x, y, width, height);
  OGLM_CHECK_ERR(glScissor, )
#line 63931 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glScissorArrayv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glScissorArrayv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "first, count, v");
    {
	GLuint	first = (unsigned int)SvUV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLint *	v = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 31598 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glScissorArrayv, )
  OGLM_AVAIL_CHECK(__glewScissorArrayv, glScissorArrayv)
  glScissorArrayv(first, count, v);
  OGLM_CHECK_ERR(glScissorArrayv, )
#line 63957 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glScissorArrayv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glScissorArrayv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "first, ...");
    {
	GLuint	first = (unsigned int)SvUV(ST(0))
;
#line 31610 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glScissorArrayv, )
  OGLM_AVAIL_CHECK(__glewScissorArrayv, glScissorArrayv)
  GLsizei count = items-1;
  GLint * v = OGLM_GET_VARARGS(v,1,GLint,IV,count);
  glScissorArrayv((GLuint )first, (GLsizei )count, (const GLint * )v);
  OGLM_CHECK_ERR(glScissorArrayv, free(v);)
  free(v);
#line 63982 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glScissorExclusiveArrayvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glScissorExclusiveArrayvNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "first, count, v");
    {
	GLuint	first = (unsigned int)SvUV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLint*	v = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 31625 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glScissorExclusiveArrayvNV, )
  OGLM_AVAIL_CHECK(__glewScissorExclusiveArrayvNV, glScissorExclusiveArrayvNV)
  glScissorExclusiveArrayvNV(first, count, v);
  OGLM_CHECK_ERR(glScissorExclusiveArrayvNV, )
#line 64007 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glScissorExclusiveArrayvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glScissorExclusiveArrayvNV_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "first, ...");
    {
	GLuint	first = (unsigned int)SvUV(ST(0))
;
#line 31635 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glScissorExclusiveArrayvNV, )
  OGLM_AVAIL_CHECK(__glewScissorExclusiveArrayvNV, glScissorExclusiveArrayvNV)
  GLsizei count = items-1;
  GLint* v = OGLM_GET_VARARGS(v,1,GLint,IV,count);
  glScissorExclusiveArrayvNV((GLuint )first, (GLsizei )count, (const GLint* )v);
  OGLM_CHECK_ERR(glScissorExclusiveArrayvNV, free(v);)
  free(v);
#line 64031 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glScissorExclusiveNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glScissorExclusiveNV)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "x, y, width, height");
    {
	GLint	x = (int)SvIV(ST(0))
;
	GLint	y = (int)SvIV(ST(1))
;
	GLsizei	width = (int)SvIV(ST(2))
;
	GLsizei	height = (int)SvIV(ST(3))
;
#line 31651 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glScissorExclusiveNV, )
  OGLM_AVAIL_CHECK(__glewScissorExclusiveNV, glScissorExclusiveNV)
  glScissorExclusiveNV(x, y, width, height);
  OGLM_CHECK_ERR(glScissorExclusiveNV, )
#line 64058 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glScissorIndexed); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glScissorIndexed)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "index, left, bottom, width, height");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLint	left = (int)SvIV(ST(1))
;
	GLint	bottom = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
#line 31667 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glScissorIndexed, )
  OGLM_AVAIL_CHECK(__glewScissorIndexed, glScissorIndexed)
  glScissorIndexed(index, left, bottom, width, height);
  OGLM_CHECK_ERR(glScissorIndexed, )
#line 64088 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glScissorIndexedv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glScissorIndexedv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLint *	v = INT2PTR(const GLint *,SvIV(ST(1)))
;
#line 31680 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glScissorIndexedv, )
  OGLM_AVAIL_CHECK(__glewScissorIndexedv, glScissorIndexedv)
  glScissorIndexedv(index, v);
  OGLM_CHECK_ERR(glScissorIndexedv, )
#line 64112 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glScissorIndexedv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glScissorIndexedv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 31692 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glScissorIndexedv, )
  OGLM_AVAIL_CHECK(__glewScissorIndexedv, glScissorIndexedv)
  GLint * v = OGLM_GET_VARARGS(v,1,GLint,IV,4);
  glScissorIndexedv((GLuint )index, (const GLint * )v);
  OGLM_CHECK_ERR(glScissorIndexedv, free(v);)
  free(v);
#line 64136 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3b); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3b)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "red, green, blue");
    {
	GLbyte	red = (int)SvIV(ST(0))
;
	GLbyte	green = (int)SvIV(ST(1))
;
	GLbyte	blue = (int)SvIV(ST(2))
;
#line 31708 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSecondaryColor3b, )
  OGLM_AVAIL_CHECK(__glewSecondaryColor3b, glSecondaryColor3b)
  glSecondaryColor3b(red, green, blue);
  OGLM_CHECK_ERR(glSecondaryColor3b, )
#line 64162 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3bv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3bv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLbyte *	v = INT2PTR(const GLbyte *,SvIV(ST(0)))
;
#line 31720 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSecondaryColor3bv, )
  OGLM_AVAIL_CHECK(__glewSecondaryColor3bv, glSecondaryColor3bv)
  glSecondaryColor3bv(v);
  OGLM_CHECK_ERR(glSecondaryColor3bv, )
#line 64184 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3bv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3bv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 31731 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSecondaryColor3bv, )
  OGLM_AVAIL_CHECK(__glewSecondaryColor3bv, glSecondaryColor3bv)
  GLbyte *v = OGLM_GET_VARARGS(v,0,GLbyte,IV,3);
  glSecondaryColor3bv((const GLbyte *)v);
  OGLM_CHECK_ERR(glSecondaryColor3bv, free(v);)
  free(v);
#line 64206 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3d)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "red, green, blue");
    {
	GLdouble	red = (double)SvNV(ST(0))
;
	GLdouble	green = (double)SvNV(ST(1))
;
	GLdouble	blue = (double)SvNV(ST(2))
;
#line 31747 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSecondaryColor3d, )
  OGLM_AVAIL_CHECK(__glewSecondaryColor3d, glSecondaryColor3d)
  glSecondaryColor3d(red, green, blue);
  OGLM_CHECK_ERR(glSecondaryColor3d, )
#line 64232 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3dv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLdouble *	v = INT2PTR(const GLdouble *,SvIV(ST(0)))
;
#line 31759 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSecondaryColor3dv, )
  OGLM_AVAIL_CHECK(__glewSecondaryColor3dv, glSecondaryColor3dv)
  glSecondaryColor3dv(v);
  OGLM_CHECK_ERR(glSecondaryColor3dv, )
#line 64254 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3dv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 31770 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSecondaryColor3dv, )
  OGLM_AVAIL_CHECK(__glewSecondaryColor3dv, glSecondaryColor3dv)
  GLdouble *v = OGLM_GET_VARARGS(v,0,GLdouble,NV,3);
  glSecondaryColor3dv((const GLdouble *)v);
  OGLM_CHECK_ERR(glSecondaryColor3dv, free(v);)
  free(v);
#line 64276 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3f); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3f)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "red, green, blue");
    {
	GLfloat	red = (float)SvNV(ST(0))
;
	GLfloat	green = (float)SvNV(ST(1))
;
	GLfloat	blue = (float)SvNV(ST(2))
;
#line 31786 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSecondaryColor3f, )
  OGLM_AVAIL_CHECK(__glewSecondaryColor3f, glSecondaryColor3f)
  glSecondaryColor3f(red, green, blue);
  OGLM_CHECK_ERR(glSecondaryColor3f, )
#line 64302 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3fv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(0)))
;
#line 31798 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSecondaryColor3fv, )
  OGLM_AVAIL_CHECK(__glewSecondaryColor3fv, glSecondaryColor3fv)
  glSecondaryColor3fv(v);
  OGLM_CHECK_ERR(glSecondaryColor3fv, )
#line 64324 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3fv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 31809 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSecondaryColor3fv, )
  OGLM_AVAIL_CHECK(__glewSecondaryColor3fv, glSecondaryColor3fv)
  GLfloat *v = OGLM_GET_VARARGS(v,0,GLfloat,NV,3);
  glSecondaryColor3fv((const GLfloat *)v);
  OGLM_CHECK_ERR(glSecondaryColor3fv, free(v);)
  free(v);
#line 64346 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3hNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3hNV)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "red, green, blue");
    {
	GLhalf	red = (float)SvNV(ST(0))
;
	GLhalf	green = (float)SvNV(ST(1))
;
	GLhalf	blue = (float)SvNV(ST(2))
;
#line 31823 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSecondaryColor3hNV, )
  OGLM_AVAIL_CHECK(__glewSecondaryColor3hNV, glSecondaryColor3hNV)
  glSecondaryColor3hNV(red, green, blue);
  OGLM_CHECK_ERR(glSecondaryColor3hNV, )
#line 64371 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3hvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3hvNV_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLhalf*	v = INT2PTR(const GLhalf *,SvIV(ST(0)))
;
#line 31833 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSecondaryColor3hvNV, )
  OGLM_AVAIL_CHECK(__glewSecondaryColor3hvNV, glSecondaryColor3hvNV)
  glSecondaryColor3hvNV(v);
  OGLM_CHECK_ERR(glSecondaryColor3hvNV, )
#line 64392 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3hvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3hvNV_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 31842 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSecondaryColor3hvNV, )
  OGLM_AVAIL_CHECK(__glewSecondaryColor3hvNV, glSecondaryColor3hvNV)
  GLhalf* v = OGLM_GET_VARARGS(v,0,GLhalf,NV,3);
  glSecondaryColor3hvNV((const GLhalf* )v);
  OGLM_CHECK_ERR(glSecondaryColor3hvNV, free(v);)
  free(v);
#line 64413 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3i); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3i)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "red, green, blue");
    {
	GLint	red = (int)SvIV(ST(0))
;
	GLint	green = (int)SvIV(ST(1))
;
	GLint	blue = (int)SvIV(ST(2))
;
#line 31858 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSecondaryColor3i, )
  OGLM_AVAIL_CHECK(__glewSecondaryColor3i, glSecondaryColor3i)
  glSecondaryColor3i(red, green, blue);
  OGLM_CHECK_ERR(glSecondaryColor3i, )
#line 64439 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3iv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3iv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLint *	v = INT2PTR(const GLint *,SvIV(ST(0)))
;
#line 31870 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSecondaryColor3iv, )
  OGLM_AVAIL_CHECK(__glewSecondaryColor3iv, glSecondaryColor3iv)
  glSecondaryColor3iv(v);
  OGLM_CHECK_ERR(glSecondaryColor3iv, )
#line 64461 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3iv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3iv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 31881 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSecondaryColor3iv, )
  OGLM_AVAIL_CHECK(__glewSecondaryColor3iv, glSecondaryColor3iv)
  GLint *v = OGLM_GET_VARARGS(v,0,GLint,IV,3);
  glSecondaryColor3iv((const GLint *)v);
  OGLM_CHECK_ERR(glSecondaryColor3iv, free(v);)
  free(v);
#line 64483 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3s); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3s)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "red, green, blue");
    {
	GLshort	red = (short)SvIV(ST(0))
;
	GLshort	green = (short)SvIV(ST(1))
;
	GLshort	blue = (short)SvIV(ST(2))
;
#line 31897 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSecondaryColor3s, )
  OGLM_AVAIL_CHECK(__glewSecondaryColor3s, glSecondaryColor3s)
  glSecondaryColor3s(red, green, blue);
  OGLM_CHECK_ERR(glSecondaryColor3s, )
#line 64509 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3sv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3sv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLshort *	v = INT2PTR(const GLshort *,SvIV(ST(0)))
;
#line 31909 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSecondaryColor3sv, )
  OGLM_AVAIL_CHECK(__glewSecondaryColor3sv, glSecondaryColor3sv)
  glSecondaryColor3sv(v);
  OGLM_CHECK_ERR(glSecondaryColor3sv, )
#line 64531 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3sv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3sv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 31920 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSecondaryColor3sv, )
  OGLM_AVAIL_CHECK(__glewSecondaryColor3sv, glSecondaryColor3sv)
  GLshort *v = OGLM_GET_VARARGS(v,0,GLshort,IV,3);
  glSecondaryColor3sv((const GLshort *)v);
  OGLM_CHECK_ERR(glSecondaryColor3sv, free(v);)
  free(v);
#line 64553 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3ub); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3ub)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "red, green, blue");
    {
	GLubyte	red = (unsigned int)SvUV(ST(0))
;
	GLubyte	green = (unsigned int)SvUV(ST(1))
;
	GLubyte	blue = (unsigned int)SvUV(ST(2))
;
#line 31936 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSecondaryColor3ub, )
  OGLM_AVAIL_CHECK(__glewSecondaryColor3ub, glSecondaryColor3ub)
  glSecondaryColor3ub(red, green, blue);
  OGLM_CHECK_ERR(glSecondaryColor3ub, )
#line 64579 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3ubv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3ubv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLubyte *        v = (const GLubyte *)SvPV_nolen(ST(0))
;
#line 31948 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSecondaryColor3ubv, )
  OGLM_AVAIL_CHECK(__glewSecondaryColor3ubv, glSecondaryColor3ubv)
  glSecondaryColor3ubv(v);
  OGLM_CHECK_ERR(glSecondaryColor3ubv, )
#line 64601 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3ubv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3ubv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 31959 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSecondaryColor3ubv, )
  OGLM_AVAIL_CHECK(__glewSecondaryColor3ubv, glSecondaryColor3ubv)
  GLubyte *v = OGLM_GET_VARARGS(v,0,GLubyte,UV,3);
  glSecondaryColor3ubv((const GLubyte *)v);
  OGLM_CHECK_ERR(glSecondaryColor3ubv, free(v);)
  free(v);
#line 64623 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3ui); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3ui)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "red, green, blue");
    {
	GLuint	red = (unsigned int)SvUV(ST(0))
;
	GLuint	green = (unsigned int)SvUV(ST(1))
;
	GLuint	blue = (unsigned int)SvUV(ST(2))
;
#line 31975 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSecondaryColor3ui, )
  OGLM_AVAIL_CHECK(__glewSecondaryColor3ui, glSecondaryColor3ui)
  glSecondaryColor3ui(red, green, blue);
  OGLM_CHECK_ERR(glSecondaryColor3ui, )
#line 64649 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3uiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3uiv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLuint *	v = INT2PTR(const GLuint *,SvIV(ST(0)))
;
#line 31987 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSecondaryColor3uiv, )
  OGLM_AVAIL_CHECK(__glewSecondaryColor3uiv, glSecondaryColor3uiv)
  glSecondaryColor3uiv(v);
  OGLM_CHECK_ERR(glSecondaryColor3uiv, )
#line 64671 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3uiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3uiv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 31998 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSecondaryColor3uiv, )
  OGLM_AVAIL_CHECK(__glewSecondaryColor3uiv, glSecondaryColor3uiv)
  GLuint *v = OGLM_GET_VARARGS(v,0,GLuint,UV,3);
  glSecondaryColor3uiv((const GLuint *)v);
  OGLM_CHECK_ERR(glSecondaryColor3uiv, free(v);)
  free(v);
#line 64693 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3us); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3us)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "red, green, blue");
    {
	GLushort	red = (unsigned short)SvUV(ST(0))
;
	GLushort	green = (unsigned short)SvUV(ST(1))
;
	GLushort	blue = (unsigned short)SvUV(ST(2))
;
#line 32014 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSecondaryColor3us, )
  OGLM_AVAIL_CHECK(__glewSecondaryColor3us, glSecondaryColor3us)
  glSecondaryColor3us(red, green, blue);
  OGLM_CHECK_ERR(glSecondaryColor3us, )
#line 64719 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3usv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3usv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLushort *	v = INT2PTR(const GLushort *,SvIV(ST(0)))
;
#line 32026 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSecondaryColor3usv, )
  OGLM_AVAIL_CHECK(__glewSecondaryColor3usv, glSecondaryColor3usv)
  glSecondaryColor3usv(v);
  OGLM_CHECK_ERR(glSecondaryColor3usv, )
#line 64741 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3usv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSecondaryColor3usv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 32037 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSecondaryColor3usv, )
  OGLM_AVAIL_CHECK(__glewSecondaryColor3usv, glSecondaryColor3usv)
  GLushort *v = OGLM_GET_VARARGS(v,0,GLushort,UV,3);
  glSecondaryColor3usv((const GLushort *)v);
  OGLM_CHECK_ERR(glSecondaryColor3usv, free(v);)
  free(v);
#line 64763 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSecondaryColorFormatNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSecondaryColorFormatNV)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "size, type, stride");
    {
	GLint	size = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLsizei	stride = (int)SvIV(ST(2))
;
#line 32051 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSecondaryColorFormatNV, )
  OGLM_AVAIL_CHECK(__glewSecondaryColorFormatNV, glSecondaryColorFormatNV)
  glSecondaryColorFormatNV(size, type, stride);
  OGLM_CHECK_ERR(glSecondaryColorFormatNV, )
#line 64788 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSecondaryColorP3ui); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSecondaryColorP3ui)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "type, color");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	GLuint	color = (unsigned int)SvUV(ST(1))
;
#line 32062 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSecondaryColorP3ui, )
  OGLM_AVAIL_CHECK(__glewSecondaryColorP3ui, glSecondaryColorP3ui)
  glSecondaryColorP3ui(type, color);
  OGLM_CHECK_ERR(glSecondaryColorP3ui, )
#line 64811 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSecondaryColorP3uiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSecondaryColorP3uiv_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "type, color");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	const GLuint*	color = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 32073 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSecondaryColorP3uiv, )
  OGLM_AVAIL_CHECK(__glewSecondaryColorP3uiv, glSecondaryColorP3uiv)
  glSecondaryColorP3uiv(type, color);
  OGLM_CHECK_ERR(glSecondaryColorP3uiv, )
#line 64834 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSecondaryColorP3uiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSecondaryColorP3uiv_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "type, ...");
    {
	GLenum	type = (int)SvIV(ST(0))
;
#line 32083 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSecondaryColorP3uiv, )
  OGLM_AVAIL_CHECK(__glewSecondaryColorP3uiv, glSecondaryColorP3uiv)
  GLuint* color = OGLM_GET_VARARGS(color,1,GLuint,UV,1);
  glSecondaryColorP3uiv((GLenum )type, (const GLuint* )color);
  OGLM_CHECK_ERR(glSecondaryColorP3uiv, free(color);)
  free(color);
#line 64857 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSecondaryColorPointer_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSecondaryColorPointer_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "size, type, stride, pointer");
    {
	GLint	size = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLsizei	stride = (int)SvIV(ST(2))
;
	const void *	pointer = INT2PTR(const void *,SvIV(ST(3)))
;
#line 32100 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSecondaryColorPointer, )
  OGLM_AVAIL_CHECK(__glewSecondaryColorPointer, glSecondaryColorPointer)
  glSecondaryColorPointer(size, type, stride, pointer);
  OGLM_CHECK_ERR(glSecondaryColorPointer, )
#line 64885 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSecondaryColorPointerListIBM_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSecondaryColorPointerListIBM_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "size, type, stride, pointer, ptrstride");
    {
	GLint	size = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLint	stride = (int)SvIV(ST(2))
;
	const void**	pointer = INT2PTR(const void **,SvIV(ST(3)))
;
	GLint	ptrstride = (int)SvIV(ST(4))
;
#line 32114 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSecondaryColorPointerListIBM, )
  OGLM_AVAIL_CHECK(__glewSecondaryColorPointerListIBM, glSecondaryColorPointerListIBM)
  glSecondaryColorPointerListIBM(size, type, stride, pointer, ptrstride);
  OGLM_CHECK_ERR(glSecondaryColorPointerListIBM, )
#line 64914 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSelectBuffer_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSelectBuffer_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "size, buffer");
    {
	GLsizei	size = (int)SvIV(ST(0))
;
	GLuint *	buffer = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 32125 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSelectBuffer, )
  glSelectBuffer(size, buffer);
  OGLM_CHECK_ERR(glSelectBuffer, )
#line 64936 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSelectBuffer_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSelectBuffer_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "size");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLsizei	size = (int)SvIV(ST(0))
;
#line 32134 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSelectBuffer, )
  GLuint *buffer = OGLM_ALLOC(size,GLuint,buffer);
  glSelectBuffer(size, buffer);
  OGLM_CHECK_ERR(glSelectBuffer, free(buffer);)
  OGLM_OUT_FINISH(buffer,size,newSVuv)
  free(buffer);
#line 64961 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glSelectPerfMonitorCountersAMD_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSelectPerfMonitorCountersAMD_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "monitor, enable, group, numCounters, counterList");
    {
	GLuint	monitor = (unsigned int)SvUV(ST(0))
;
	GLboolean	enable = (int)SvIV(ST(1))
;
	GLuint	group = (unsigned int)SvUV(ST(2))
;
	GLint	numCounters = (int)SvIV(ST(3))
;
	GLuint*	counterList = INT2PTR(GLuint *,SvIV(ST(4)))
;
#line 32150 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSelectPerfMonitorCountersAMD, )
  OGLM_AVAIL_CHECK(__glewSelectPerfMonitorCountersAMD, glSelectPerfMonitorCountersAMD)
  glSelectPerfMonitorCountersAMD(monitor, enable, group, numCounters, counterList);
  OGLM_CHECK_ERR(glSelectPerfMonitorCountersAMD, )
#line 64991 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSelectPerfMonitorCountersAMD_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSelectPerfMonitorCountersAMD_p)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "monitor, enable, group, numCounters");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLuint	monitor = (unsigned int)SvUV(ST(0))
;
	GLboolean	enable = (int)SvIV(ST(1))
;
	GLuint	group = (unsigned int)SvUV(ST(2))
;
	GLint	numCounters = (int)SvIV(ST(3))
;
#line 32163 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSelectPerfMonitorCountersAMD, )
  OGLM_AVAIL_CHECK(__glewSelectPerfMonitorCountersAMD, glSelectPerfMonitorCountersAMD)
  GLuint* counterList = OGLM_ALLOC(numCounters,GLuint,counterList);
  glSelectPerfMonitorCountersAMD(monitor, enable, group, numCounters, counterList);
  OGLM_CHECK_ERR(glSelectPerfMonitorCountersAMD, free(counterList);)
  OGLM_OUT_FINISH(counterList,numCounters,newSVuv)
  free(counterList);
#line 65023 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glSelectTextureCoordSetSGIS); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSelectTextureCoordSetSGIS)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "target");
    {
	GLenum	target = (int)SvIV(ST(0))
;
#line 32176 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSelectTextureCoordSetSGIS, )
  OGLM_AVAIL_CHECK(__glewSelectTextureCoordSetSGIS, glSelectTextureCoordSetSGIS)
  glSelectTextureCoordSetSGIS(target);
  OGLM_CHECK_ERR(glSelectTextureCoordSetSGIS, )
#line 65045 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSelectTextureSGIS); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSelectTextureSGIS)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "target");
    {
	GLenum	target = (int)SvIV(ST(0))
;
#line 32186 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSelectTextureSGIS, )
  OGLM_AVAIL_CHECK(__glewSelectTextureSGIS, glSelectTextureSGIS)
  glSelectTextureSGIS(target);
  OGLM_CHECK_ERR(glSelectTextureSGIS, )
#line 65066 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSelectTextureTransformSGIS); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSelectTextureTransformSGIS)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "target");
    {
	GLenum	target = (int)SvIV(ST(0))
;
#line 32196 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSelectTextureTransformSGIS, )
  OGLM_AVAIL_CHECK(__glewSelectTextureTransformSGIS, glSelectTextureTransformSGIS)
  glSelectTextureTransformSGIS(target);
  OGLM_CHECK_ERR(glSelectTextureTransformSGIS, )
#line 65087 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSemaphoreParameterivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSemaphoreParameterivNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "semaphore, pname, params");
    {
	GLuint	semaphore = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLint*	params = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 32208 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSemaphoreParameterivNV, )
  OGLM_AVAIL_CHECK(__glewSemaphoreParameterivNV, glSemaphoreParameterivNV)
  glSemaphoreParameterivNV(semaphore, pname, params);
  OGLM_CHECK_ERR(glSemaphoreParameterivNV, )
#line 65112 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSemaphoreParameterui64vEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSemaphoreParameterui64vEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "semaphore, pname, params");
    {
	GLuint	semaphore = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLuint64*	params = INT2PTR(const GLuint64 *,SvIV(ST(2)))
;
#line 32220 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSemaphoreParameterui64vEXT, )
  OGLM_AVAIL_CHECK(__glewSemaphoreParameterui64vEXT, glSemaphoreParameterui64vEXT)
  glSemaphoreParameterui64vEXT(semaphore, pname, params);
  OGLM_CHECK_ERR(glSemaphoreParameterui64vEXT, )
#line 65137 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSeparableFilter2D_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSeparableFilter2D_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 8)
       croak_xs_usage(cv,  "target, internalformat, width, height, format, type, row, column");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	internalformat = (int)SvIV(ST(1))
;
	GLsizei	width = (int)SvIV(ST(2))
;
	GLsizei	height = (int)SvIV(ST(3))
;
	GLenum	format = (int)SvIV(ST(4))
;
	GLenum	type = (int)SvIV(ST(5))
;
	const void *	row = INT2PTR(const void *,SvIV(ST(6)))
;
	const void *	column = INT2PTR(const void *,SvIV(ST(7)))
;
#line 32239 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSeparableFilter2D, )
  OGLM_AVAIL_CHECK(__glewSeparableFilter2D, glSeparableFilter2D)
  glSeparableFilter2D(target, internalformat, width, height, format, type, row, column);
  OGLM_CHECK_ERR(glSeparableFilter2D, )
#line 65173 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSetFenceAPPLE); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSetFenceAPPLE)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "fence");
    {
	GLuint	fence = (unsigned int)SvUV(ST(0))
;
#line 32249 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSetFenceAPPLE, )
  OGLM_AVAIL_CHECK(__glewSetFenceAPPLE, glSetFenceAPPLE)
  glSetFenceAPPLE(fence);
  OGLM_CHECK_ERR(glSetFenceAPPLE, )
#line 65194 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSetFenceNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSetFenceNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "fence, condition");
    {
	GLuint	fence = (unsigned int)SvUV(ST(0))
;
	GLenum	condition = (int)SvIV(ST(1))
;
#line 32260 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSetFenceNV, )
  OGLM_AVAIL_CHECK(__glewSetFenceNV, glSetFenceNV)
  glSetFenceNV(fence, condition);
  OGLM_CHECK_ERR(glSetFenceNV, )
#line 65217 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSetFragmentShaderConstantATI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSetFragmentShaderConstantATI_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "dst, value");
    {
	GLuint	dst = (unsigned int)SvUV(ST(0))
;
	const GLfloat*	value = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 32271 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSetFragmentShaderConstantATI, )
  OGLM_AVAIL_CHECK(__glewSetFragmentShaderConstantATI, glSetFragmentShaderConstantATI)
  glSetFragmentShaderConstantATI(dst, value);
  OGLM_CHECK_ERR(glSetFragmentShaderConstantATI, )
#line 65240 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSetFragmentShaderConstantATI_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSetFragmentShaderConstantATI_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "dst, ...");
    {
	GLuint	dst = (unsigned int)SvUV(ST(0))
;
#line 32281 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSetFragmentShaderConstantATI, )
  OGLM_AVAIL_CHECK(__glewSetFragmentShaderConstantATI, glSetFragmentShaderConstantATI)
  GLfloat* value = OGLM_GET_VARARGS(value,1,GLfloat,NV,4);
  glSetFragmentShaderConstantATI((GLuint )dst, (const GLfloat* )value);
  OGLM_CHECK_ERR(glSetFragmentShaderConstantATI, free(value);)
  free(value);
#line 65263 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSetInvariantEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSetInvariantEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "id, type, addr");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	void *	addr = INT2PTR(void *,SvIV(ST(2)))
;
#line 32295 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSetInvariantEXT, )
  OGLM_AVAIL_CHECK(__glewSetInvariantEXT, glSetInvariantEXT)
  glSetInvariantEXT(id, type, addr);
  OGLM_CHECK_ERR(glSetInvariantEXT, )
#line 65288 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSetLocalConstantEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSetLocalConstantEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "id, type, addr");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	void *	addr = INT2PTR(void *,SvIV(ST(2)))
;
#line 32307 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSetLocalConstantEXT, )
  OGLM_AVAIL_CHECK(__glewSetLocalConstantEXT, glSetLocalConstantEXT)
  glSetLocalConstantEXT(id, type, addr);
  OGLM_CHECK_ERR(glSetLocalConstantEXT, )
#line 65313 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSetMultisamplefvAMD_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSetMultisamplefvAMD_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "pname, index, val");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	const GLfloat*	val = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 32319 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSetMultisamplefvAMD, )
  OGLM_AVAIL_CHECK(__glewSetMultisamplefvAMD, glSetMultisamplefvAMD)
  glSetMultisamplefvAMD(pname, index, val);
  OGLM_CHECK_ERR(glSetMultisamplefvAMD, )
#line 65338 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSetMultisamplefvAMD_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSetMultisamplefvAMD_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "pname, index, ...");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
#line 32330 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSetMultisamplefvAMD, )
  OGLM_AVAIL_CHECK(__glewSetMultisamplefvAMD, glSetMultisamplefvAMD)
  GLfloat* val = OGLM_GET_VARARGS(val,2,GLfloat,NV,2);
  glSetMultisamplefvAMD((GLenum )pname, (GLuint )index, (const GLfloat* )val);
  OGLM_CHECK_ERR(glSetMultisamplefvAMD, free(val);)
  free(val);
#line 65363 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glShadeModel); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glShadeModel)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "mode");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
#line 32342 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glShadeModel, )
  glShadeModel(mode);
  OGLM_CHECK_ERR(glShadeModel, )
#line 65383 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glShaderBinary_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glShaderBinary_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "count, shaders, binaryFormat, binary, length");
    {
	GLsizei	count = (int)SvIV(ST(0))
;
	const GLuint*	shaders = INT2PTR(const GLuint *,SvIV(ST(1)))
;
	GLenum	binaryFormat = (int)SvIV(ST(2))
;
	const void*	binary = INT2PTR(const void *,SvIV(ST(3)))
;
	GLsizei	length = (int)SvIV(ST(4))
;
#line 32355 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glShaderBinary, )
  OGLM_AVAIL_CHECK(__glewShaderBinary, glShaderBinary)
  glShaderBinary(count, shaders, binaryFormat, binary, length);
  OGLM_CHECK_ERR(glShaderBinary, )
#line 65412 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glShaderOp1EXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glShaderOp1EXT)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "op, res, arg1");
    {
	GLenum	op = (int)SvIV(ST(0))
;
	GLuint	res = (unsigned int)SvUV(ST(1))
;
	GLuint	arg1 = (unsigned int)SvUV(ST(2))
;
#line 32367 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glShaderOp1EXT, )
  OGLM_AVAIL_CHECK(__glewShaderOp1EXT, glShaderOp1EXT)
  glShaderOp1EXT(op, res, arg1);
  OGLM_CHECK_ERR(glShaderOp1EXT, )
#line 65437 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glShaderOp2EXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glShaderOp2EXT)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "op, res, arg1, arg2");
    {
	GLenum	op = (int)SvIV(ST(0))
;
	GLuint	res = (unsigned int)SvUV(ST(1))
;
	GLuint	arg1 = (unsigned int)SvUV(ST(2))
;
	GLuint	arg2 = (unsigned int)SvUV(ST(3))
;
#line 32380 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glShaderOp2EXT, )
  OGLM_AVAIL_CHECK(__glewShaderOp2EXT, glShaderOp2EXT)
  glShaderOp2EXT(op, res, arg1, arg2);
  OGLM_CHECK_ERR(glShaderOp2EXT, )
#line 65464 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glShaderOp3EXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glShaderOp3EXT)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "op, res, arg1, arg2, arg3");
    {
	GLenum	op = (int)SvIV(ST(0))
;
	GLuint	res = (unsigned int)SvUV(ST(1))
;
	GLuint	arg1 = (unsigned int)SvUV(ST(2))
;
	GLuint	arg2 = (unsigned int)SvUV(ST(3))
;
	GLuint	arg3 = (unsigned int)SvUV(ST(4))
;
#line 32394 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glShaderOp3EXT, )
  OGLM_AVAIL_CHECK(__glewShaderOp3EXT, glShaderOp3EXT)
  glShaderOp3EXT(op, res, arg1, arg2, arg3);
  OGLM_CHECK_ERR(glShaderOp3EXT, )
#line 65493 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glShaderSource_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glShaderSource_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "shader, count, string, length");
    {
	GLuint	shader = (unsigned int)SvUV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLchar *const*	string = (const GLchar * const *)SvPV_nolen(ST(2))
;
	const GLint*	length = INT2PTR(const GLint *,SvIV(ST(3)))
;
#line 32407 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glShaderSource, )
  OGLM_AVAIL_CHECK(__glewShaderSource, glShaderSource)
  glShaderSource(shader, count, string, length);
  OGLM_CHECK_ERR(glShaderSource, )
#line 65520 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glShaderSource_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glShaderSource_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "shader, ...");
    {
	GLuint	shader = (unsigned int)SvUV(ST(0))
;
#line 32417 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glShaderSource, )
  OGLM_AVAIL_CHECK(__glewShaderSource, glShaderSource)
  GLsizei count = items-1;
  GLint* length = NULL;
  GLchar ** string = OGLM_GET_VARARGS(string,1,GLchar*,PV_nolen,count);
  glShaderSource((GLuint )shader, (GLsizei )count, (const GLchar *const* )string, (const GLint* )length);
  OGLM_CHECK_ERR(glShaderSource, free(string);)
  free(string);
#line 65545 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glShaderSourceARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glShaderSourceARB_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "shader, count, string, length");
    {
	GLhandleARB	shader = (unsigned int)SvUV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLcharARB **	string = (const GLcharARB **)SvPV_nolen(ST(2))
;
	const GLint *	length = INT2PTR(const GLint *,SvIV(ST(3)))
;
#line 32434 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glShaderSourceARB, )
  OGLM_AVAIL_CHECK(__glewShaderSourceARB, glShaderSourceARB)
  glShaderSourceARB(shader, count, string, length);
  OGLM_CHECK_ERR(glShaderSourceARB, )
#line 65572 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glShaderSourceARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glShaderSourceARB_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "shader, ...");
    {
	GLhandleARB	shader = (unsigned int)SvUV(ST(0))
;
#line 32444 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glShaderSourceARB, )
  OGLM_AVAIL_CHECK(__glewShaderSourceARB, glShaderSourceARB)
  GLsizei count = items-1;
  GLint *length = NULL;
  GLcharARB ** string = OGLM_GET_VARARGS(string,1,GLcharARB*,PV_nolen,count);
  glShaderSourceARB((GLhandleARB )shader, (GLsizei )count, (const GLcharARB ** )string, (const GLint *)length);
  OGLM_CHECK_ERR(glShaderSourceARB, free(string);)
  free(string);
#line 65597 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glShaderStorageBlockBinding); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glShaderStorageBlockBinding)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, storageBlockIndex, storageBlockBinding");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLuint	storageBlockIndex = (unsigned int)SvUV(ST(1))
;
	GLuint	storageBlockBinding = (unsigned int)SvUV(ST(2))
;
#line 32460 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glShaderStorageBlockBinding, )
  OGLM_AVAIL_CHECK(__glewShaderStorageBlockBinding, glShaderStorageBlockBinding)
  glShaderStorageBlockBinding(program, storageBlockIndex, storageBlockBinding);
  OGLM_CHECK_ERR(glShaderStorageBlockBinding, )
#line 65622 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glShadingRateCombinerOpsEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glShadingRateCombinerOpsEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "combinerOp0, combinerOp1");
    {
	GLenum	combinerOp0 = (int)SvIV(ST(0))
;
	GLenum	combinerOp1 = (int)SvIV(ST(1))
;
#line 32471 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glShadingRateCombinerOpsEXT, )
  OGLM_AVAIL_CHECK(__glewShadingRateCombinerOpsEXT, glShadingRateCombinerOpsEXT)
  glShadingRateCombinerOpsEXT(combinerOp0, combinerOp1);
  OGLM_CHECK_ERR(glShadingRateCombinerOpsEXT, )
#line 65645 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glShadingRateEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glShadingRateEXT)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "rate");
    {
	GLenum	rate = (int)SvIV(ST(0))
;
#line 32481 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glShadingRateEXT, )
  OGLM_AVAIL_CHECK(__glewShadingRateEXT, glShadingRateEXT)
  glShadingRateEXT(rate);
  OGLM_CHECK_ERR(glShadingRateEXT, )
#line 65666 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glShadingRateImageBarrierNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glShadingRateImageBarrierNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "synchronize");
    {
	GLboolean	synchronize = (int)SvIV(ST(0))
;
#line 32491 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glShadingRateImageBarrierNV, )
  OGLM_AVAIL_CHECK(__glewShadingRateImageBarrierNV, glShadingRateImageBarrierNV)
  glShadingRateImageBarrierNV(synchronize);
  OGLM_CHECK_ERR(glShadingRateImageBarrierNV, )
#line 65687 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glShadingRateImagePaletteNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glShadingRateImagePaletteNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "viewport, first, count, rates");
    {
	GLuint	viewport = (unsigned int)SvUV(ST(0))
;
	GLuint	first = (unsigned int)SvUV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLenum*	rates = INT2PTR(const GLenum *,SvIV(ST(3)))
;
#line 32504 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glShadingRateImagePaletteNV, )
  OGLM_AVAIL_CHECK(__glewShadingRateImagePaletteNV, glShadingRateImagePaletteNV)
  glShadingRateImagePaletteNV(viewport, first, count, rates);
  OGLM_CHECK_ERR(glShadingRateImagePaletteNV, )
#line 65714 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glShadingRateImagePaletteNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glShadingRateImagePaletteNV_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "viewport, first, ...");
    {
	GLuint	viewport = (unsigned int)SvUV(ST(0))
;
	GLuint	first = (unsigned int)SvUV(ST(1))
;
#line 32515 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glShadingRateImagePaletteNV, )
  OGLM_AVAIL_CHECK(__glewShadingRateImagePaletteNV, glShadingRateImagePaletteNV)
  GLsizei count = items-2;
  GLenum* rates = OGLM_GET_VARARGS(rates,2,GLenum,IV,count);
  glShadingRateImagePaletteNV((GLuint )viewport, (GLuint )first, (GLsizei )count, (const GLenum* )rates);
  OGLM_CHECK_ERR(glShadingRateImagePaletteNV, free(rates);)
  free(rates);
#line 65740 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glShadingRateQCOM); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glShadingRateQCOM)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "rate");
    {
	GLenum	rate = (int)SvIV(ST(0))
;
#line 32528 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glShadingRateQCOM, )
  OGLM_AVAIL_CHECK(__glewShadingRateQCOM, glShadingRateQCOM)
  glShadingRateQCOM(rate);
  OGLM_CHECK_ERR(glShadingRateQCOM, )
#line 65761 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glShadingRateSampleOrderCustomNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glShadingRateSampleOrderCustomNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "rate, samples, locations");
    {
	GLenum	rate = (int)SvIV(ST(0))
;
	GLuint	samples = (unsigned int)SvUV(ST(1))
;
	const GLint*	locations = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 32540 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glShadingRateSampleOrderCustomNV, )
  OGLM_AVAIL_CHECK(__glewShadingRateSampleOrderCustomNV, glShadingRateSampleOrderCustomNV)
  glShadingRateSampleOrderCustomNV(rate, samples, locations);
  OGLM_CHECK_ERR(glShadingRateSampleOrderCustomNV, )
#line 65786 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glShadingRateSampleOrderNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glShadingRateSampleOrderNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "order");
    {
	GLenum	order = (int)SvIV(ST(0))
;
#line 32550 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glShadingRateSampleOrderNV, )
  OGLM_AVAIL_CHECK(__glewShadingRateSampleOrderNV, glShadingRateSampleOrderNV)
  glShadingRateSampleOrderNV(order);
  OGLM_CHECK_ERR(glShadingRateSampleOrderNV, )
#line 65807 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSharpenTexFuncSGIS_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSharpenTexFuncSGIS_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, n, points");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	n = (int)SvIV(ST(1))
;
	const GLfloat*	points = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 32562 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSharpenTexFuncSGIS, )
  OGLM_AVAIL_CHECK(__glewSharpenTexFuncSGIS, glSharpenTexFuncSGIS)
  glSharpenTexFuncSGIS(target, n, points);
  OGLM_CHECK_ERR(glSharpenTexFuncSGIS, )
#line 65832 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSharpenTexFuncSGIS_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSharpenTexFuncSGIS_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "target, n, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	n = (int)SvIV(ST(1))
;
#line 32573 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSharpenTexFuncSGIS, )
  OGLM_AVAIL_CHECK(__glewSharpenTexFuncSGIS, glSharpenTexFuncSGIS)
  GLfloat* points = OGLM_GET_VARARGS(points,2,GLfloat,NV,n*2);
  glSharpenTexFuncSGIS((GLenum )target, (GLsizei )n, (const GLfloat* )points);
  OGLM_CHECK_ERR(glSharpenTexFuncSGIS, free(points);)
  free(points);
#line 65857 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSignalSemaphoreEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSignalSemaphoreEXT_c)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "semaphore, numBufferBarriers, buffers, numTextureBarriers, textures, dstLayouts");
    {
	GLuint	semaphore = (unsigned int)SvUV(ST(0))
;
	GLuint	numBufferBarriers = (unsigned int)SvUV(ST(1))
;
	const GLuint*	buffers = INT2PTR(const GLuint *,SvIV(ST(2)))
;
	GLuint	numTextureBarriers = (unsigned int)SvUV(ST(3))
;
	const GLuint *	textures = INT2PTR(const GLuint *,SvIV(ST(4)))
;
	const GLenum *	dstLayouts = INT2PTR(const GLenum *,SvIV(ST(5)))
;
#line 32590 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSignalSemaphoreEXT, )
  OGLM_AVAIL_CHECK(__glewSignalSemaphoreEXT, glSignalSemaphoreEXT)
  glSignalSemaphoreEXT(semaphore, numBufferBarriers, buffers, numTextureBarriers, textures, dstLayouts);
  OGLM_CHECK_ERR(glSignalSemaphoreEXT, )
#line 65888 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSignalSemaphoreui64NVX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSignalSemaphoreui64NVX_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "signalGpu, fenceObjectCount, semaphoreArray, fenceValueArray");
    {
	GLuint	signalGpu = (unsigned int)SvUV(ST(0))
;
	GLsizei	fenceObjectCount = (int)SvIV(ST(1))
;
	const GLuint*	semaphoreArray = INT2PTR(const GLuint *,SvIV(ST(2)))
;
	const GLuint64 *	fenceValueArray = INT2PTR(const GLuint64 *,SvIV(ST(3)))
;
#line 32603 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSignalSemaphoreui64NVX, )
  OGLM_AVAIL_CHECK(__glewSignalSemaphoreui64NVX, glSignalSemaphoreui64NVX)
  glSignalSemaphoreui64NVX(signalGpu, fenceObjectCount, semaphoreArray, fenceValueArray);
  OGLM_CHECK_ERR(glSignalSemaphoreui64NVX, )
#line 65915 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSignalSemaphoreui64NVX_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSignalSemaphoreui64NVX_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "signalGpu, semaphoreArraySV, fenceValueArraySV");
    {
	GLuint	signalGpu = (unsigned int)SvUV(ST(0))
;
	SV *	semaphoreArraySV = ST(1)
;
	SV *	fenceValueArraySV = ST(2)
;
#line 32615 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSignalSemaphoreui64NVX, )
  OGLM_AVAIL_CHECK(__glewSignalSemaphoreui64NVX, glSignalSemaphoreui64NVX)
  GLsizei fenceObjectCount = OGLM_LEN_ARRAY(fenceObjectCount, semaphoreArray);
  GLuint64 *fenceValueArray = OGLM_GET_ARRAY(fenceValueArray, GLuint64, UV, fenceObjectCount);
  GLuint* semaphoreArray = OGLM_GET_ARRAY(semaphoreArray, GLuint, UV, fenceObjectCount);
  glSignalSemaphoreui64NVX((GLuint )signalGpu, (GLsizei )fenceObjectCount, (const GLuint* )semaphoreArray, (const GLuint64 *)fenceValueArray);
  OGLM_CHECK_ERR(glSignalSemaphoreui64NVX, free(fenceValueArray);free(semaphoreArray);)
  free(fenceValueArray);free(semaphoreArray);
#line 65944 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSignalVkFenceNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSignalVkFenceNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "vkFence");
    {
	GLuint64	vkFence = (unsigned int)SvUV(ST(0))
;
#line 32629 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSignalVkFenceNV, )
  OGLM_AVAIL_CHECK(__glewSignalVkFenceNV, glSignalVkFenceNV)
  glSignalVkFenceNV(vkFence);
  OGLM_CHECK_ERR(glSignalVkFenceNV, )
#line 65965 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSignalVkSemaphoreNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSignalVkSemaphoreNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "vkSemaphore");
    {
	GLuint64	vkSemaphore = (unsigned int)SvUV(ST(0))
;
#line 32639 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSignalVkSemaphoreNV, )
  OGLM_AVAIL_CHECK(__glewSignalVkSemaphoreNV, glSignalVkSemaphoreNV)
  glSignalVkSemaphoreNV(vkSemaphore);
  OGLM_CHECK_ERR(glSignalVkSemaphoreNV, )
#line 65986 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSpecializeShader_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSpecializeShader_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "shader, pEntryPoint, numSpecializationConstants, pConstantIndex, pConstantValue");
    {
	GLuint	shader = (unsigned int)SvUV(ST(0))
;
	const GLchar *	pEntryPoint = (const GLchar *)SvPV_nolen(ST(1))
;
	GLuint	numSpecializationConstants = (unsigned int)SvUV(ST(2))
;
	const GLuint *	pConstantIndex = INT2PTR(const GLuint *,SvIV(ST(3)))
;
	const GLuint *	pConstantValue = INT2PTR(const GLuint *,SvIV(ST(4)))
;
#line 32655 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSpecializeShader, )
  OGLM_AVAIL_CHECK(__glewSpecializeShader, glSpecializeShader)
  glSpecializeShader(shader, pEntryPoint, numSpecializationConstants, pConstantIndex, pConstantValue);
  OGLM_CHECK_ERR(glSpecializeShader, )
#line 66016 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSpecializeShader_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSpecializeShader_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "shader, pEntryPoint, pConstantIndexSV, pConstantValueSV");
    {
	GLuint	shader = (unsigned int)SvUV(ST(0))
;
	const GLchar *	pEntryPoint = (const GLchar *)SvPV_nolen(ST(1))
;
	SV *	pConstantIndexSV = ST(2)
;
	SV *	pConstantValueSV = ST(3)
;
#line 32670 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSpecializeShader, )
  OGLM_AVAIL_CHECK(__glewSpecializeShader, glSpecializeShader)
  GLuint numSpecializationConstants = OGLM_LEN_ARRAY(numSpecializationConstants, pConstantIndex);
  GLuint *pConstantIndex = OGLM_GET_ARRAY(pConstantIndex, GLuint, UV, numSpecializationConstants);
  GLuint *pConstantValue = OGLM_GET_ARRAY(pConstantValue, GLuint, UV, numSpecializationConstants);
  glSpecializeShader((GLuint )shader, (const GLchar *)pEntryPoint, (GLuint )numSpecializationConstants, (const GLuint *)pConstantIndex, (const GLuint *)pConstantValue);
  OGLM_CHECK_ERR(glSpecializeShader, free(pConstantIndex);free(pConstantValue);)
  free(pConstantIndex);free(pConstantValue);
#line 66048 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSpriteParameterfSGIX); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSpriteParameterfSGIX)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, param");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLfloat	param = (float)SvNV(ST(1))
;
#line 32685 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSpriteParameterfSGIX, )
  OGLM_AVAIL_CHECK(__glewSpriteParameterfSGIX, glSpriteParameterfSGIX)
  glSpriteParameterfSGIX(pname, param);
  OGLM_CHECK_ERR(glSpriteParameterfSGIX, )
#line 66071 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSpriteParameterfvSGIX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSpriteParameterfvSGIX_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, params");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLfloat*	params = INT2PTR(GLfloat *,SvIV(ST(1)))
;
#line 32696 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSpriteParameterfvSGIX, )
  OGLM_AVAIL_CHECK(__glewSpriteParameterfvSGIX, glSpriteParameterfvSGIX)
  glSpriteParameterfvSGIX(pname, params);
  OGLM_CHECK_ERR(glSpriteParameterfvSGIX, )
#line 66094 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSpriteParameteriSGIX); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSpriteParameteriSGIX)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, param");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLint	param = (int)SvIV(ST(1))
;
#line 32707 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSpriteParameteriSGIX, )
  OGLM_AVAIL_CHECK(__glewSpriteParameteriSGIX, glSpriteParameteriSGIX)
  glSpriteParameteriSGIX(pname, param);
  OGLM_CHECK_ERR(glSpriteParameteriSGIX, )
#line 66117 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSpriteParameterivSGIX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSpriteParameterivSGIX_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, params");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLint*	params = INT2PTR(GLint *,SvIV(ST(1)))
;
#line 32718 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSpriteParameterivSGIX, )
  OGLM_AVAIL_CHECK(__glewSpriteParameterivSGIX, glSpriteParameterivSGIX)
  glSpriteParameterivSGIX(pname, params);
  OGLM_CHECK_ERR(glSpriteParameterivSGIX, )
#line 66140 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glStartTilingQCOM); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glStartTilingQCOM)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "x, y, width, height, preserveMask");
    {
	GLuint	x = (unsigned int)SvUV(ST(0))
;
	GLuint	y = (unsigned int)SvUV(ST(1))
;
	GLuint	width = (unsigned int)SvUV(ST(2))
;
	GLuint	height = (unsigned int)SvUV(ST(3))
;
	GLbitfield	preserveMask = (int)SvIV(ST(4))
;
#line 32732 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glStartTilingQCOM, )
  OGLM_AVAIL_CHECK(__glewStartTilingQCOM, glStartTilingQCOM)
  glStartTilingQCOM(x, y, width, height, preserveMask);
  OGLM_CHECK_ERR(glStartTilingQCOM, )
#line 66169 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glStateCaptureNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glStateCaptureNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "state, mode");
    {
	GLuint	state = (unsigned int)SvUV(ST(0))
;
	GLenum	mode = (int)SvIV(ST(1))
;
#line 32743 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glStateCaptureNV, )
  OGLM_AVAIL_CHECK(__glewStateCaptureNV, glStateCaptureNV)
  glStateCaptureNV(state, mode);
  OGLM_CHECK_ERR(glStateCaptureNV, )
#line 66192 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glStencilFillPathInstancedNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glStencilFillPathInstancedNV_c)
{
    dVAR; dXSARGS;
    if (items != 8)
       croak_xs_usage(cv,  "numPaths, pathNameType, paths, pathBase, fillMode, mask, transformType, transformValues");
    {
	GLsizei	numPaths = (int)SvIV(ST(0))
;
	GLenum	pathNameType = (int)SvIV(ST(1))
;
	const void *	paths = INT2PTR(const void *,SvIV(ST(2)))
;
	GLuint	pathBase = (unsigned int)SvUV(ST(3))
;
	GLenum	fillMode = (int)SvIV(ST(4))
;
	GLuint	mask = (unsigned int)SvUV(ST(5))
;
	GLenum	transformType = (int)SvIV(ST(6))
;
	const GLfloat *	transformValues = INT2PTR(const GLfloat *,SvIV(ST(7)))
;
#line 32760 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glStencilFillPathInstancedNV, )
  OGLM_AVAIL_CHECK(__glewStencilFillPathInstancedNV, glStencilFillPathInstancedNV)
  glStencilFillPathInstancedNV(numPaths, pathNameType, paths, pathBase, fillMode, mask, transformType, transformValues);
  OGLM_CHECK_ERR(glStencilFillPathInstancedNV, )
#line 66227 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glStencilFillPathNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glStencilFillPathNV)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "path, fillMode, mask");
    {
	GLuint	path = (unsigned int)SvUV(ST(0))
;
	GLenum	fillMode = (int)SvIV(ST(1))
;
	GLuint	mask = (unsigned int)SvUV(ST(2))
;
#line 32772 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glStencilFillPathNV, )
  OGLM_AVAIL_CHECK(__glewStencilFillPathNV, glStencilFillPathNV)
  glStencilFillPathNV(path, fillMode, mask);
  OGLM_CHECK_ERR(glStencilFillPathNV, )
#line 66252 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glStencilFunc); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glStencilFunc)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "func, ref, mask");
    {
	GLenum	func = (int)SvIV(ST(0))
;
	GLint	ref = (int)SvIV(ST(1))
;
	GLuint	mask = (unsigned int)SvUV(ST(2))
;
#line 32784 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glStencilFunc, )
  glStencilFunc(func, ref, mask);
  OGLM_CHECK_ERR(glStencilFunc, )
#line 66276 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glStencilFuncSeparate); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glStencilFuncSeparate)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "face, func, ref, mask");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	func = (int)SvIV(ST(1))
;
	GLint	ref = (int)SvIV(ST(2))
;
	GLuint	mask = (unsigned int)SvUV(ST(3))
;
#line 32796 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glStencilFuncSeparate, )
  OGLM_AVAIL_CHECK(__glewStencilFuncSeparate, glStencilFuncSeparate)
  glStencilFuncSeparate(face, func, ref, mask);
  OGLM_CHECK_ERR(glStencilFuncSeparate, )
#line 66303 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glStencilFuncSeparateATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glStencilFuncSeparateATI)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "frontfunc, backfunc, ref, mask");
    {
	GLenum	frontfunc = (int)SvIV(ST(0))
;
	GLenum	backfunc = (int)SvIV(ST(1))
;
	GLint	ref = (int)SvIV(ST(2))
;
	GLuint	mask = (unsigned int)SvUV(ST(3))
;
#line 32809 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glStencilFuncSeparateATI, )
  OGLM_AVAIL_CHECK(__glewStencilFuncSeparateATI, glStencilFuncSeparateATI)
  glStencilFuncSeparateATI(frontfunc, backfunc, ref, mask);
  OGLM_CHECK_ERR(glStencilFuncSeparateATI, )
#line 66330 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glStencilMask); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glStencilMask)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "mask");
    {
	GLuint	mask = (unsigned int)SvUV(ST(0))
;
#line 32819 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glStencilMask, )
  glStencilMask(mask);
  OGLM_CHECK_ERR(glStencilMask, )
#line 66350 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glStencilMaskSeparate); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glStencilMaskSeparate)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "face, mask");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLuint	mask = (unsigned int)SvUV(ST(1))
;
#line 32829 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glStencilMaskSeparate, )
  OGLM_AVAIL_CHECK(__glewStencilMaskSeparate, glStencilMaskSeparate)
  glStencilMaskSeparate(face, mask);
  OGLM_CHECK_ERR(glStencilMaskSeparate, )
#line 66373 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glStencilOp); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glStencilOp)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "fail, zfail, zpass");
    {
	GLenum	fail = (int)SvIV(ST(0))
;
	GLenum	zfail = (int)SvIV(ST(1))
;
	GLenum	zpass = (int)SvIV(ST(2))
;
#line 32841 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glStencilOp, )
  glStencilOp(fail, zfail, zpass);
  OGLM_CHECK_ERR(glStencilOp, )
#line 66397 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glStencilOpSeparate); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glStencilOpSeparate)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "face, sfail, dpfail, dppass");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	sfail = (int)SvIV(ST(1))
;
	GLenum	dpfail = (int)SvIV(ST(2))
;
	GLenum	dppass = (int)SvIV(ST(3))
;
#line 32855 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glStencilOpSeparate, )
  OGLM_AVAIL_CHECK(__glewStencilOpSeparate, glStencilOpSeparate)
  glStencilOpSeparate(face, sfail, dpfail, dppass);
  OGLM_CHECK_ERR(glStencilOpSeparate, )
#line 66425 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glStencilOpValueAMD); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glStencilOpValueAMD)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "face, value");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLuint	value = (unsigned int)SvUV(ST(1))
;
#line 32866 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glStencilOpValueAMD, )
  OGLM_AVAIL_CHECK(__glewStencilOpValueAMD, glStencilOpValueAMD)
  glStencilOpValueAMD(face, value);
  OGLM_CHECK_ERR(glStencilOpValueAMD, )
#line 66448 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glStencilStrokePathInstancedNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glStencilStrokePathInstancedNV_c)
{
    dVAR; dXSARGS;
    if (items != 8)
       croak_xs_usage(cv,  "numPaths, pathNameType, paths, pathBase, reference, mask, transformType, transformValues");
    {
	GLsizei	numPaths = (int)SvIV(ST(0))
;
	GLenum	pathNameType = (int)SvIV(ST(1))
;
	const void *	paths = INT2PTR(const void *,SvIV(ST(2)))
;
	GLuint	pathBase = (unsigned int)SvUV(ST(3))
;
	GLint	reference = (int)SvIV(ST(4))
;
	GLuint	mask = (unsigned int)SvUV(ST(5))
;
	GLenum	transformType = (int)SvIV(ST(6))
;
	const GLfloat *	transformValues = INT2PTR(const GLfloat *,SvIV(ST(7)))
;
#line 32883 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glStencilStrokePathInstancedNV, )
  OGLM_AVAIL_CHECK(__glewStencilStrokePathInstancedNV, glStencilStrokePathInstancedNV)
  glStencilStrokePathInstancedNV(numPaths, pathNameType, paths, pathBase, reference, mask, transformType, transformValues);
  OGLM_CHECK_ERR(glStencilStrokePathInstancedNV, )
#line 66483 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glStencilStrokePathNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glStencilStrokePathNV)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "path, reference, mask");
    {
	GLuint	path = (unsigned int)SvUV(ST(0))
;
	GLint	reference = (int)SvIV(ST(1))
;
	GLuint	mask = (unsigned int)SvUV(ST(2))
;
#line 32895 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glStencilStrokePathNV, )
  OGLM_AVAIL_CHECK(__glewStencilStrokePathNV, glStencilStrokePathNV)
  glStencilStrokePathNV(path, reference, mask);
  OGLM_CHECK_ERR(glStencilStrokePathNV, )
#line 66508 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glStencilThenCoverFillPathInstancedNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glStencilThenCoverFillPathInstancedNV_c)
{
    dVAR; dXSARGS;
    if (items != 9)
       croak_xs_usage(cv,  "numPaths, pathNameType, paths, pathBase, fillMode, mask, coverMode, transformType, transformValues");
    {
	GLsizei	numPaths = (int)SvIV(ST(0))
;
	GLenum	pathNameType = (int)SvIV(ST(1))
;
	const void *	paths = INT2PTR(const void *,SvIV(ST(2)))
;
	GLuint	pathBase = (unsigned int)SvUV(ST(3))
;
	GLenum	fillMode = (int)SvIV(ST(4))
;
	GLuint	mask = (unsigned int)SvUV(ST(5))
;
	GLenum	coverMode = (int)SvIV(ST(6))
;
	GLenum	transformType = (int)SvIV(ST(7))
;
	const GLfloat *	transformValues = INT2PTR(const GLfloat *,SvIV(ST(8)))
;
#line 32913 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glStencilThenCoverFillPathInstancedNV, )
  OGLM_AVAIL_CHECK(__glewStencilThenCoverFillPathInstancedNV, glStencilThenCoverFillPathInstancedNV)
  glStencilThenCoverFillPathInstancedNV(numPaths, pathNameType, paths, pathBase, fillMode, mask, coverMode, transformType, transformValues);
  OGLM_CHECK_ERR(glStencilThenCoverFillPathInstancedNV, )
#line 66545 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glStencilThenCoverFillPathNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glStencilThenCoverFillPathNV)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "path, fillMode, mask, coverMode");
    {
	GLuint	path = (unsigned int)SvUV(ST(0))
;
	GLenum	fillMode = (int)SvIV(ST(1))
;
	GLuint	mask = (unsigned int)SvUV(ST(2))
;
	GLenum	coverMode = (int)SvIV(ST(3))
;
#line 32926 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glStencilThenCoverFillPathNV, )
  OGLM_AVAIL_CHECK(__glewStencilThenCoverFillPathNV, glStencilThenCoverFillPathNV)
  glStencilThenCoverFillPathNV(path, fillMode, mask, coverMode);
  OGLM_CHECK_ERR(glStencilThenCoverFillPathNV, )
#line 66572 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glStencilThenCoverStrokePathInstancedNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glStencilThenCoverStrokePathInstancedNV_c)
{
    dVAR; dXSARGS;
    if (items != 9)
       croak_xs_usage(cv,  "numPaths, pathNameType, paths, pathBase, reference, mask, coverMode, transformType, transformValues");
    {
	GLsizei	numPaths = (int)SvIV(ST(0))
;
	GLenum	pathNameType = (int)SvIV(ST(1))
;
	const void *	paths = INT2PTR(const void *,SvIV(ST(2)))
;
	GLuint	pathBase = (unsigned int)SvUV(ST(3))
;
	GLint	reference = (int)SvIV(ST(4))
;
	GLuint	mask = (unsigned int)SvUV(ST(5))
;
	GLenum	coverMode = (int)SvIV(ST(6))
;
	GLenum	transformType = (int)SvIV(ST(7))
;
	const GLfloat *	transformValues = INT2PTR(const GLfloat *,SvIV(ST(8)))
;
#line 32944 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glStencilThenCoverStrokePathInstancedNV, )
  OGLM_AVAIL_CHECK(__glewStencilThenCoverStrokePathInstancedNV, glStencilThenCoverStrokePathInstancedNV)
  glStencilThenCoverStrokePathInstancedNV(numPaths, pathNameType, paths, pathBase, reference, mask, coverMode, transformType, transformValues);
  OGLM_CHECK_ERR(glStencilThenCoverStrokePathInstancedNV, )
#line 66609 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glStencilThenCoverStrokePathNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glStencilThenCoverStrokePathNV)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "path, reference, mask, coverMode");
    {
	GLuint	path = (unsigned int)SvUV(ST(0))
;
	GLint	reference = (int)SvIV(ST(1))
;
	GLuint	mask = (unsigned int)SvUV(ST(2))
;
	GLenum	coverMode = (int)SvIV(ST(3))
;
#line 32957 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glStencilThenCoverStrokePathNV, )
  OGLM_AVAIL_CHECK(__glewStencilThenCoverStrokePathNV, glStencilThenCoverStrokePathNV)
  glStencilThenCoverStrokePathNV(path, reference, mask, coverMode);
  OGLM_CHECK_ERR(glStencilThenCoverStrokePathNV, )
#line 66636 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glStereoParameterfNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glStereoParameterfNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, param");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLfloat	param = (float)SvNV(ST(1))
;
#line 32968 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glStereoParameterfNV, )
  OGLM_AVAIL_CHECK(__glewStereoParameterfNV, glStereoParameterfNV)
  glStereoParameterfNV(pname, param);
  OGLM_CHECK_ERR(glStereoParameterfNV, )
#line 66659 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glStereoParameteriNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glStereoParameteriNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, param");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLint	param = (int)SvIV(ST(1))
;
#line 32979 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glStereoParameteriNV, )
  OGLM_AVAIL_CHECK(__glewStereoParameteriNV, glStereoParameteriNV)
  glStereoParameteriNV(pname, param);
  OGLM_CHECK_ERR(glStereoParameteriNV, )
#line 66682 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glStringMarkerGREMEDY_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glStringMarkerGREMEDY_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "len, string");
    {
	GLsizei	len = (int)SvIV(ST(0))
;
	const void *	string = INT2PTR(const void *,SvIV(ST(1)))
;
#line 32990 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glStringMarkerGREMEDY, )
  OGLM_AVAIL_CHECK(__glewStringMarkerGREMEDY, glStringMarkerGREMEDY)
  glStringMarkerGREMEDY(len, string);
  OGLM_CHECK_ERR(glStringMarkerGREMEDY, )
#line 66705 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSubpixelPrecisionBiasNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSubpixelPrecisionBiasNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "xbits, ybits");
    {
	GLuint	xbits = (unsigned int)SvUV(ST(0))
;
	GLuint	ybits = (unsigned int)SvUV(ST(1))
;
#line 33001 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSubpixelPrecisionBiasNV, )
  OGLM_AVAIL_CHECK(__glewSubpixelPrecisionBiasNV, glSubpixelPrecisionBiasNV)
  glSubpixelPrecisionBiasNV(xbits, ybits);
  OGLM_CHECK_ERR(glSubpixelPrecisionBiasNV, )
#line 66728 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSwapMPEGPredictorsSGIX); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSwapMPEGPredictorsSGIX)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target0, target1");
    {
	GLenum	target0 = (int)SvIV(ST(0))
;
	GLenum	target1 = (int)SvIV(ST(1))
;
#line 33012 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSwapMPEGPredictorsSGIX, )
  OGLM_AVAIL_CHECK(__glewSwapMPEGPredictorsSGIX, glSwapMPEGPredictorsSGIX)
  glSwapMPEGPredictorsSGIX(target0, target1);
  OGLM_CHECK_ERR(glSwapMPEGPredictorsSGIX, )
#line 66751 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSwizzleEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSwizzleEXT)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "res, in, outX, outY, outZ, outW");
    {
	GLuint	res = (unsigned int)SvUV(ST(0))
;
	GLuint	in = (unsigned int)SvUV(ST(1))
;
	GLenum	outX = (int)SvIV(ST(2))
;
	GLenum	outY = (int)SvIV(ST(3))
;
	GLenum	outZ = (int)SvIV(ST(4))
;
	GLenum	outW = (int)SvIV(ST(5))
;
#line 33027 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSwizzleEXT, )
  OGLM_AVAIL_CHECK(__glewSwizzleEXT, glSwizzleEXT)
  glSwizzleEXT(res, in, outX, outY, outZ, outW);
  OGLM_CHECK_ERR(glSwizzleEXT, )
#line 66782 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glSyncTextureINTEL); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glSyncTextureINTEL)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "texture");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
#line 33037 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glSyncTextureINTEL, )
  OGLM_AVAIL_CHECK(__glewSyncTextureINTEL, glSyncTextureINTEL)
  glSyncTextureINTEL(texture);
  OGLM_CHECK_ERR(glSyncTextureINTEL, )
#line 66803 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTagSampleBufferSGIX); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTagSampleBufferSGIX)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 33046 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTagSampleBufferSGIX, )
  OGLM_AVAIL_CHECK(__glewTagSampleBufferSGIX, glTagSampleBufferSGIX)
  glTagSampleBufferSGIX();
  OGLM_CHECK_ERR(glTagSampleBufferSGIX, )
#line 66822 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTangentPointerEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTangentPointerEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "type, stride, pointer");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	GLsizei	stride = (int)SvIV(ST(1))
;
	void *	pointer = INT2PTR(void *,SvIV(ST(2)))
;
#line 33058 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTangentPointerEXT, )
  OGLM_AVAIL_CHECK(__glewTangentPointerEXT, glTangentPointerEXT)
  glTangentPointerEXT(type, stride, pointer);
  OGLM_CHECK_ERR(glTangentPointerEXT, )
#line 66847 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTbufferMask3DFX); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTbufferMask3DFX)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "mask");
    {
	GLuint	mask = (unsigned int)SvUV(ST(0))
;
#line 33068 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTbufferMask3DFX, )
  OGLM_AVAIL_CHECK(__glewTbufferMask3DFX, glTbufferMask3DFX)
  glTbufferMask3DFX(mask);
  OGLM_CHECK_ERR(glTbufferMask3DFX, )
#line 66868 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTessellationFactorAMD); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTessellationFactorAMD)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "factor");
    {
	GLfloat	factor = (float)SvNV(ST(0))
;
#line 33078 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTessellationFactorAMD, )
  OGLM_AVAIL_CHECK(__glewTessellationFactorAMD, glTessellationFactorAMD)
  glTessellationFactorAMD(factor);
  OGLM_CHECK_ERR(glTessellationFactorAMD, )
#line 66889 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTessellationModeAMD); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTessellationModeAMD)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "mode");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
#line 33088 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTessellationModeAMD, )
  OGLM_AVAIL_CHECK(__glewTessellationModeAMD, glTessellationModeAMD)
  glTessellationModeAMD(mode);
  OGLM_CHECK_ERR(glTessellationModeAMD, )
#line 66910 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTestFenceAPPLE); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTestFenceAPPLE)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "fence");
    {
	GLuint	fence = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 33098 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTestFenceAPPLE, )
  OGLM_AVAIL_CHECK(__glewTestFenceAPPLE, glTestFenceAPPLE)
  RETVAL = glTestFenceAPPLE(fence);
  OGLM_CHECK_ERR(glTestFenceAPPLE, )
#line 66933 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glTestFenceNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTestFenceNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "fence");
    {
	GLuint	fence = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 33110 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTestFenceNV, )
  OGLM_AVAIL_CHECK(__glewTestFenceNV, glTestFenceNV)
  RETVAL = glTestFenceNV(fence);
  OGLM_CHECK_ERR(glTestFenceNV, )
#line 66958 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glTestObjectAPPLE); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTestObjectAPPLE)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "object, name");
    {
	GLenum	object = (int)SvIV(ST(0))
;
	GLuint	name = (unsigned int)SvUV(ST(1))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 33123 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTestObjectAPPLE, )
  OGLM_AVAIL_CHECK(__glewTestObjectAPPLE, glTestObjectAPPLE)
  RETVAL = glTestObjectAPPLE(object, name);
  OGLM_CHECK_ERR(glTestObjectAPPLE, )
#line 66985 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glTexAttachMemoryNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexAttachMemoryNV)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, memory, offset");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	memory = (unsigned int)SvUV(ST(1))
;
	GLuint64	offset = (unsigned int)SvUV(ST(2))
;
#line 33137 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexAttachMemoryNV, )
  OGLM_AVAIL_CHECK(__glewTexAttachMemoryNV, glTexAttachMemoryNV)
  glTexAttachMemoryNV(target, memory, offset);
  OGLM_CHECK_ERR(glTexAttachMemoryNV, )
#line 67012 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexBuffer); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexBuffer)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "target, internalformat, buffer");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	internalformat = (int)SvIV(ST(1))
;
	GLuint	buffer = (unsigned int)SvUV(ST(2))
;
#line 33152 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexBuffer, )
  OGLM_AVAIL_CHECK(__glewTexBuffer, glTexBuffer)
  glTexBuffer(target, internalformat, buffer);
  OGLM_CHECK_ERR(glTexBuffer, )
#line 67038 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexBufferOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexBufferOES)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, internalformat, buffer");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	internalformat = (int)SvIV(ST(1))
;
	GLuint	buffer = (unsigned int)SvUV(ST(2))
;
#line 33164 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexBufferOES, )
  OGLM_AVAIL_CHECK(__glewTexBufferOES, glTexBufferOES)
  glTexBufferOES(target, internalformat, buffer);
  OGLM_CHECK_ERR(glTexBufferOES, )
#line 67063 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexBufferRange); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexBufferRange)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "target, internalformat, buffer, offset, size");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	internalformat = (int)SvIV(ST(1))
;
	GLuint	buffer = (unsigned int)SvUV(ST(2))
;
	GLintptr	offset = (unsigned int)SvUV(ST(3))
;
	GLsizeiptr	size = (unsigned int)SvUV(ST(4))
;
#line 33180 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexBufferRange, )
  OGLM_AVAIL_CHECK(__glewTexBufferRange, glTexBufferRange)
  glTexBufferRange(target, internalformat, buffer, offset, size);
  OGLM_CHECK_ERR(glTexBufferRange, )
#line 67093 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexBufferRangeOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexBufferRangeOES)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "target, internalformat, buffer, offset, size");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	internalformat = (int)SvIV(ST(1))
;
	GLuint	buffer = (unsigned int)SvUV(ST(2))
;
	GLintptr	offset = (unsigned int)SvUV(ST(3))
;
	GLsizeiptr	size = (unsigned int)SvUV(ST(4))
;
#line 33194 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexBufferRangeOES, )
  OGLM_AVAIL_CHECK(__glewTexBufferRangeOES, glTexBufferRangeOES)
  glTexBufferRangeOES(target, internalformat, buffer, offset, size);
  OGLM_CHECK_ERR(glTexBufferRangeOES, )
#line 67122 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexBumpParameterfvATI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexBumpParameterfvATI_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, param");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLfloat *	param = INT2PTR(GLfloat *,SvIV(ST(1)))
;
#line 33205 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexBumpParameterfvATI, )
  OGLM_AVAIL_CHECK(__glewTexBumpParameterfvATI, glTexBumpParameterfvATI)
  glTexBumpParameterfvATI(pname, param);
  OGLM_CHECK_ERR(glTexBumpParameterfvATI, )
#line 67145 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexBumpParameterivATI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexBumpParameterivATI_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, param");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLint *	param = INT2PTR(GLint *,SvIV(ST(1)))
;
#line 33216 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexBumpParameterivATI, )
  OGLM_AVAIL_CHECK(__glewTexBumpParameterivATI, glTexBumpParameterivATI)
  glTexBumpParameterivATI(pname, param);
  OGLM_CHECK_ERR(glTexBumpParameterivATI, )
#line 67168 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord1d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord1d)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "s");
    {
	GLdouble	s = (double)SvNV(ST(0))
;
#line 33226 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord1d, )
  glTexCoord1d(s);
  OGLM_CHECK_ERR(glTexCoord1d, )
#line 67188 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord1dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord1dv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLdouble *	v = INT2PTR(const GLdouble *,SvIV(ST(0)))
;
#line 33235 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord1dv, )
  glTexCoord1dv(v);
  OGLM_CHECK_ERR(glTexCoord1dv, )
#line 67208 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord1dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord1dv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 33243 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord1dv, )
  GLdouble *v = OGLM_GET_VARARGS(v,0,GLdouble,NV,1);
  glTexCoord1dv((const GLdouble *)v);
  OGLM_CHECK_ERR(glTexCoord1dv, free(v);)
  free(v);
#line 67228 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord1f); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord1f)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "s");
    {
	GLfloat	s = (float)SvNV(ST(0))
;
#line 33254 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord1f, )
  glTexCoord1f(s);
  OGLM_CHECK_ERR(glTexCoord1f, )
#line 67248 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord1fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord1fv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(0)))
;
#line 33263 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord1fv, )
  glTexCoord1fv(v);
  OGLM_CHECK_ERR(glTexCoord1fv, )
#line 67268 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord1fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord1fv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 33271 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord1fv, )
  GLfloat *v = OGLM_GET_VARARGS(v,0,GLfloat,NV,1);
  glTexCoord1fv((const GLfloat *)v);
  OGLM_CHECK_ERR(glTexCoord1fv, free(v);)
  free(v);
#line 67288 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord1hNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord1hNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "s");
    {
	GLhalf	s = (float)SvNV(ST(0))
;
#line 33282 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord1hNV, )
  OGLM_AVAIL_CHECK(__glewTexCoord1hNV, glTexCoord1hNV)
  glTexCoord1hNV(s);
  OGLM_CHECK_ERR(glTexCoord1hNV, )
#line 67309 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord1hvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord1hvNV_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLhalf*	v = INT2PTR(const GLhalf *,SvIV(ST(0)))
;
#line 33292 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord1hvNV, )
  OGLM_AVAIL_CHECK(__glewTexCoord1hvNV, glTexCoord1hvNV)
  glTexCoord1hvNV(v);
  OGLM_CHECK_ERR(glTexCoord1hvNV, )
#line 67330 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord1hvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord1hvNV_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 33301 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord1hvNV, )
  OGLM_AVAIL_CHECK(__glewTexCoord1hvNV, glTexCoord1hvNV)
  GLhalf* v = OGLM_GET_VARARGS(v,0,GLhalf,NV,1);
  glTexCoord1hvNV((const GLhalf* )v);
  OGLM_CHECK_ERR(glTexCoord1hvNV, free(v);)
  free(v);
#line 67351 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord1i); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord1i)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "s");
    {
	GLint	s = (int)SvIV(ST(0))
;
#line 33313 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord1i, )
  glTexCoord1i(s);
  OGLM_CHECK_ERR(glTexCoord1i, )
#line 67371 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord1iv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord1iv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLint *	v = INT2PTR(const GLint *,SvIV(ST(0)))
;
#line 33322 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord1iv, )
  glTexCoord1iv(v);
  OGLM_CHECK_ERR(glTexCoord1iv, )
#line 67391 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord1iv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord1iv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 33330 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord1iv, )
  GLint *v = OGLM_GET_VARARGS(v,0,GLint,IV,1);
  glTexCoord1iv((const GLint *)v);
  OGLM_CHECK_ERR(glTexCoord1iv, free(v);)
  free(v);
#line 67411 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord1s); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord1s)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "s");
    {
	GLshort	s = (short)SvIV(ST(0))
;
#line 33341 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord1s, )
  glTexCoord1s(s);
  OGLM_CHECK_ERR(glTexCoord1s, )
#line 67431 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord1sv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord1sv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLshort *	v = INT2PTR(const GLshort *,SvIV(ST(0)))
;
#line 33350 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord1sv, )
  glTexCoord1sv(v);
  OGLM_CHECK_ERR(glTexCoord1sv, )
#line 67451 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord1sv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord1sv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 33358 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord1sv, )
  GLshort *v = OGLM_GET_VARARGS(v,0,GLshort,IV,1);
  glTexCoord1sv((const GLshort *)v);
  OGLM_CHECK_ERR(glTexCoord1sv, free(v);)
  free(v);
#line 67471 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord2d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord2d)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "s, t");
    {
	GLdouble	s = (double)SvNV(ST(0))
;
	GLdouble	t = (double)SvNV(ST(1))
;
#line 33370 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord2d, )
  glTexCoord2d(s, t);
  OGLM_CHECK_ERR(glTexCoord2d, )
#line 67493 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord2dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord2dv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLdouble *	v = INT2PTR(const GLdouble *,SvIV(ST(0)))
;
#line 33379 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord2dv, )
  glTexCoord2dv(v);
  OGLM_CHECK_ERR(glTexCoord2dv, )
#line 67513 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord2dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord2dv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 33387 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord2dv, )
  GLdouble *v = OGLM_GET_VARARGS(v,0,GLdouble,NV,2);
  glTexCoord2dv((const GLdouble *)v);
  OGLM_CHECK_ERR(glTexCoord2dv, free(v);)
  free(v);
#line 67533 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord2f); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord2f)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "s, t");
    {
	GLfloat	s = (float)SvNV(ST(0))
;
	GLfloat	t = (float)SvNV(ST(1))
;
#line 33399 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord2f, )
  glTexCoord2f(s, t);
  OGLM_CHECK_ERR(glTexCoord2f, )
#line 67555 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord2fColor3fVertex3fSUN); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord2fColor3fVertex3fSUN)
{
    dVAR; dXSARGS;
    if (items != 8)
       croak_xs_usage(cv,  "s, t, r, g, b, x, y, z");
    {
	GLfloat	s = (float)SvNV(ST(0))
;
	GLfloat	t = (float)SvNV(ST(1))
;
	GLfloat	r = (float)SvNV(ST(2))
;
	GLfloat	g = (float)SvNV(ST(3))
;
	GLfloat	b = (float)SvNV(ST(4))
;
	GLfloat	x = (float)SvNV(ST(5))
;
	GLfloat	y = (float)SvNV(ST(6))
;
	GLfloat	z = (float)SvNV(ST(7))
;
#line 33415 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord2fColor3fVertex3fSUN, )
  OGLM_AVAIL_CHECK(__glewTexCoord2fColor3fVertex3fSUN, glTexCoord2fColor3fVertex3fSUN)
  glTexCoord2fColor3fVertex3fSUN(s, t, r, g, b, x, y, z);
  OGLM_CHECK_ERR(glTexCoord2fColor3fVertex3fSUN, )
#line 67590 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord2fColor3fVertex3fvSUN_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord2fColor3fVertex3fvSUN_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "tc, c, v");
    {
	const GLfloat*	tc = INT2PTR(const GLfloat *,SvIV(ST(0)))
;
	const GLfloat *	c = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 33427 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord2fColor3fVertex3fvSUN, )
  OGLM_AVAIL_CHECK(__glewTexCoord2fColor3fVertex3fvSUN, glTexCoord2fColor3fVertex3fvSUN)
  glTexCoord2fColor3fVertex3fvSUN(tc, c, v);
  OGLM_CHECK_ERR(glTexCoord2fColor3fVertex3fvSUN, )
#line 67615 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord2fColor3fVertex3fvSUN_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord2fColor3fVertex3fvSUN_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "tcSV, cSV, vSV");
    {
	SV *	tcSV = ST(0)
;
	SV *	cSV = ST(1)
;
	SV *	vSV = ST(2)
;
#line 33439 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord2fColor3fVertex3fvSUN, )
  OGLM_AVAIL_CHECK(__glewTexCoord2fColor3fVertex3fvSUN, glTexCoord2fColor3fVertex3fvSUN)
  GLfloat *c = OGLM_GET_ARRAY(c, GLfloat, NV, 3);
  GLfloat* tc = OGLM_GET_ARRAY(tc, GLfloat, NV, 2);
  GLfloat *v = OGLM_GET_ARRAY(v, GLfloat, NV, 3);
  glTexCoord2fColor3fVertex3fvSUN((const GLfloat* )tc, (const GLfloat *)c, (const GLfloat *)v);
  OGLM_CHECK_ERR(glTexCoord2fColor3fVertex3fvSUN, free(c);free(tc);free(v);)
  free(c);free(tc);free(v);
#line 67644 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord2fColor4fNormal3fVertex3fSUN); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord2fColor4fNormal3fVertex3fSUN)
{
    dVAR; dXSARGS;
    if (items != 12)
       croak_xs_usage(cv,  "s, t, r, g, b, a, nx, ny, nz, x, y, z");
    {
	GLfloat	s = (float)SvNV(ST(0))
;
	GLfloat	t = (float)SvNV(ST(1))
;
	GLfloat	r = (float)SvNV(ST(2))
;
	GLfloat	g = (float)SvNV(ST(3))
;
	GLfloat	b = (float)SvNV(ST(4))
;
	GLfloat	a = (float)SvNV(ST(5))
;
	GLfloat	nx = (float)SvNV(ST(6))
;
	GLfloat	ny = (float)SvNV(ST(7))
;
	GLfloat	nz = (float)SvNV(ST(8))
;
	GLfloat	x = (float)SvNV(ST(9))
;
	GLfloat	y = (float)SvNV(ST(10))
;
	GLfloat	z = (float)SvNV(ST(11))
;
#line 33464 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord2fColor4fNormal3fVertex3fSUN, )
  OGLM_AVAIL_CHECK(__glewTexCoord2fColor4fNormal3fVertex3fSUN, glTexCoord2fColor4fNormal3fVertex3fSUN)
  glTexCoord2fColor4fNormal3fVertex3fSUN(s, t, r, g, b, a, nx, ny, nz, x, y, z);
  OGLM_CHECK_ERR(glTexCoord2fColor4fNormal3fVertex3fSUN, )
#line 67687 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord2fColor4fNormal3fVertex3fvSUN_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord2fColor4fNormal3fVertex3fvSUN_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "tc, c, n, v");
    {
	const GLfloat*	tc = INT2PTR(const GLfloat *,SvIV(ST(0)))
;
	const GLfloat *	c = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
	const GLfloat *	n = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 33477 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord2fColor4fNormal3fVertex3fvSUN, )
  OGLM_AVAIL_CHECK(__glewTexCoord2fColor4fNormal3fVertex3fvSUN, glTexCoord2fColor4fNormal3fVertex3fvSUN)
  glTexCoord2fColor4fNormal3fVertex3fvSUN(tc, c, n, v);
  OGLM_CHECK_ERR(glTexCoord2fColor4fNormal3fVertex3fvSUN, )
#line 67714 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord2fColor4fNormal3fVertex3fvSUN_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord2fColor4fNormal3fVertex3fvSUN_p)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "tcSV, cSV, nSV, vSV");
    {
	SV *	tcSV = ST(0)
;
	SV *	cSV = ST(1)
;
	SV *	nSV = ST(2)
;
	SV *	vSV = ST(3)
;
#line 33490 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord2fColor4fNormal3fVertex3fvSUN, )
  OGLM_AVAIL_CHECK(__glewTexCoord2fColor4fNormal3fVertex3fvSUN, glTexCoord2fColor4fNormal3fVertex3fvSUN)
  GLfloat *c = OGLM_GET_ARRAY(c, GLfloat, NV, 4);
  GLfloat *n = OGLM_GET_ARRAY(n, GLfloat, NV, 3);
  GLfloat* tc = OGLM_GET_ARRAY(tc, GLfloat, NV, 2);
  GLfloat *v = OGLM_GET_ARRAY(v, GLfloat, NV, 3);
  glTexCoord2fColor4fNormal3fVertex3fvSUN((const GLfloat* )tc, (const GLfloat *)c, (const GLfloat *)n, (const GLfloat *)v);
  OGLM_CHECK_ERR(glTexCoord2fColor4fNormal3fVertex3fvSUN, free(c);free(n);free(tc);free(v);)
  free(c);free(n);free(tc);free(v);
#line 67746 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord2fColor4ubVertex3fSUN); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord2fColor4ubVertex3fSUN)
{
    dVAR; dXSARGS;
    if (items != 9)
       croak_xs_usage(cv,  "s, t, r, g, b, a, x, y, z");
    {
	GLfloat	s = (float)SvNV(ST(0))
;
	GLfloat	t = (float)SvNV(ST(1))
;
	GLubyte	r = (unsigned int)SvUV(ST(2))
;
	GLubyte	g = (unsigned int)SvUV(ST(3))
;
	GLubyte	b = (unsigned int)SvUV(ST(4))
;
	GLubyte	a = (unsigned int)SvUV(ST(5))
;
	GLfloat	x = (float)SvNV(ST(6))
;
	GLfloat	y = (float)SvNV(ST(7))
;
	GLfloat	z = (float)SvNV(ST(8))
;
#line 33513 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord2fColor4ubVertex3fSUN, )
  OGLM_AVAIL_CHECK(__glewTexCoord2fColor4ubVertex3fSUN, glTexCoord2fColor4ubVertex3fSUN)
  glTexCoord2fColor4ubVertex3fSUN(s, t, r, g, b, a, x, y, z);
  OGLM_CHECK_ERR(glTexCoord2fColor4ubVertex3fSUN, )
#line 67783 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord2fColor4ubVertex3fvSUN_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord2fColor4ubVertex3fvSUN_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "tc, c, v");
    {
	const GLfloat*	tc = INT2PTR(const GLfloat *,SvIV(ST(0)))
;
	const GLubyte *        c = (const GLubyte *)SvPV_nolen(ST(1))
;
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 33525 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord2fColor4ubVertex3fvSUN, )
  OGLM_AVAIL_CHECK(__glewTexCoord2fColor4ubVertex3fvSUN, glTexCoord2fColor4ubVertex3fvSUN)
  glTexCoord2fColor4ubVertex3fvSUN(tc, c, v);
  OGLM_CHECK_ERR(glTexCoord2fColor4ubVertex3fvSUN, )
#line 67808 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord2fColor4ubVertex3fvSUN_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord2fColor4ubVertex3fvSUN_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "tcSV, cSV, vSV");
    {
	SV *	tcSV = ST(0)
;
	SV *	cSV = ST(1)
;
	SV *	vSV = ST(2)
;
#line 33537 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord2fColor4ubVertex3fvSUN, )
  OGLM_AVAIL_CHECK(__glewTexCoord2fColor4ubVertex3fvSUN, glTexCoord2fColor4ubVertex3fvSUN)
  GLubyte *c = OGLM_GET_ARRAY(c, GLubyte, UV, 4);
  GLfloat* tc = OGLM_GET_ARRAY(tc, GLfloat, NV, 2);
  GLfloat *v = OGLM_GET_ARRAY(v, GLfloat, NV, 3);
  glTexCoord2fColor4ubVertex3fvSUN((const GLfloat* )tc, (const GLubyte *)c, (const GLfloat *)v);
  OGLM_CHECK_ERR(glTexCoord2fColor4ubVertex3fvSUN, free(c);free(tc);free(v);)
  free(c);free(tc);free(v);
#line 67837 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord2fNormal3fVertex3fSUN); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord2fNormal3fVertex3fSUN)
{
    dVAR; dXSARGS;
    if (items != 8)
       croak_xs_usage(cv,  "s, t, nx, ny, nz, x, y, z");
    {
	GLfloat	s = (float)SvNV(ST(0))
;
	GLfloat	t = (float)SvNV(ST(1))
;
	GLfloat	nx = (float)SvNV(ST(2))
;
	GLfloat	ny = (float)SvNV(ST(3))
;
	GLfloat	nz = (float)SvNV(ST(4))
;
	GLfloat	x = (float)SvNV(ST(5))
;
	GLfloat	y = (float)SvNV(ST(6))
;
	GLfloat	z = (float)SvNV(ST(7))
;
#line 33558 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord2fNormal3fVertex3fSUN, )
  OGLM_AVAIL_CHECK(__glewTexCoord2fNormal3fVertex3fSUN, glTexCoord2fNormal3fVertex3fSUN)
  glTexCoord2fNormal3fVertex3fSUN(s, t, nx, ny, nz, x, y, z);
  OGLM_CHECK_ERR(glTexCoord2fNormal3fVertex3fSUN, )
#line 67872 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord2fNormal3fVertex3fvSUN_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord2fNormal3fVertex3fvSUN_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "tc, n, v");
    {
	const GLfloat*	tc = INT2PTR(const GLfloat *,SvIV(ST(0)))
;
	const GLfloat *	n = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 33570 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord2fNormal3fVertex3fvSUN, )
  OGLM_AVAIL_CHECK(__glewTexCoord2fNormal3fVertex3fvSUN, glTexCoord2fNormal3fVertex3fvSUN)
  glTexCoord2fNormal3fVertex3fvSUN(tc, n, v);
  OGLM_CHECK_ERR(glTexCoord2fNormal3fVertex3fvSUN, )
#line 67897 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord2fNormal3fVertex3fvSUN_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord2fNormal3fVertex3fvSUN_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "tcSV, nSV, vSV");
    {
	SV *	tcSV = ST(0)
;
	SV *	nSV = ST(1)
;
	SV *	vSV = ST(2)
;
#line 33582 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord2fNormal3fVertex3fvSUN, )
  OGLM_AVAIL_CHECK(__glewTexCoord2fNormal3fVertex3fvSUN, glTexCoord2fNormal3fVertex3fvSUN)
  GLfloat *n = OGLM_GET_ARRAY(n, GLfloat, NV, 3);
  GLfloat* tc = OGLM_GET_ARRAY(tc, GLfloat, NV, 2);
  GLfloat *v = OGLM_GET_ARRAY(v, GLfloat, NV, 3);
  glTexCoord2fNormal3fVertex3fvSUN((const GLfloat* )tc, (const GLfloat *)n, (const GLfloat *)v);
  OGLM_CHECK_ERR(glTexCoord2fNormal3fVertex3fvSUN, free(n);free(tc);free(v);)
  free(n);free(tc);free(v);
#line 67926 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord2fVertex3fSUN); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord2fVertex3fSUN)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "s, t, x, y, z");
    {
	GLfloat	s = (float)SvNV(ST(0))
;
	GLfloat	t = (float)SvNV(ST(1))
;
	GLfloat	x = (float)SvNV(ST(2))
;
	GLfloat	y = (float)SvNV(ST(3))
;
	GLfloat	z = (float)SvNV(ST(4))
;
#line 33600 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord2fVertex3fSUN, )
  OGLM_AVAIL_CHECK(__glewTexCoord2fVertex3fSUN, glTexCoord2fVertex3fSUN)
  glTexCoord2fVertex3fSUN(s, t, x, y, z);
  OGLM_CHECK_ERR(glTexCoord2fVertex3fSUN, )
#line 67955 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord2fVertex3fvSUN_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord2fVertex3fvSUN_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "tc, v");
    {
	const GLfloat*	tc = INT2PTR(const GLfloat *,SvIV(ST(0)))
;
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 33611 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord2fVertex3fvSUN, )
  OGLM_AVAIL_CHECK(__glewTexCoord2fVertex3fvSUN, glTexCoord2fVertex3fvSUN)
  glTexCoord2fVertex3fvSUN(tc, v);
  OGLM_CHECK_ERR(glTexCoord2fVertex3fvSUN, )
#line 67978 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord2fVertex3fvSUN_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord2fVertex3fvSUN_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "tcSV, vSV");
    {
	SV *	tcSV = ST(0)
;
	SV *	vSV = ST(1)
;
#line 33622 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord2fVertex3fvSUN, )
  OGLM_AVAIL_CHECK(__glewTexCoord2fVertex3fvSUN, glTexCoord2fVertex3fvSUN)
  GLfloat* tc = OGLM_GET_ARRAY(tc, GLfloat, NV, 2);
  GLfloat *v = OGLM_GET_ARRAY(v, GLfloat, NV, 3);
  glTexCoord2fVertex3fvSUN((const GLfloat* )tc, (const GLfloat *)v);
  OGLM_CHECK_ERR(glTexCoord2fVertex3fvSUN, free(tc);free(v);)
  free(tc);free(v);
#line 68004 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord2fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord2fv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(0)))
;
#line 33635 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord2fv, )
  glTexCoord2fv(v);
  OGLM_CHECK_ERR(glTexCoord2fv, )
#line 68024 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord2fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord2fv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 33643 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord2fv, )
  GLfloat *v = OGLM_GET_VARARGS(v,0,GLfloat,NV,2);
  glTexCoord2fv((const GLfloat *)v);
  OGLM_CHECK_ERR(glTexCoord2fv, free(v);)
  free(v);
#line 68044 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord2hNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord2hNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "s, t");
    {
	GLhalf	s = (float)SvNV(ST(0))
;
	GLhalf	t = (float)SvNV(ST(1))
;
#line 33655 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord2hNV, )
  OGLM_AVAIL_CHECK(__glewTexCoord2hNV, glTexCoord2hNV)
  glTexCoord2hNV(s, t);
  OGLM_CHECK_ERR(glTexCoord2hNV, )
#line 68067 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord2hvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord2hvNV_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLhalf*	v = INT2PTR(const GLhalf *,SvIV(ST(0)))
;
#line 33665 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord2hvNV, )
  OGLM_AVAIL_CHECK(__glewTexCoord2hvNV, glTexCoord2hvNV)
  glTexCoord2hvNV(v);
  OGLM_CHECK_ERR(glTexCoord2hvNV, )
#line 68088 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord2hvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord2hvNV_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 33674 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord2hvNV, )
  OGLM_AVAIL_CHECK(__glewTexCoord2hvNV, glTexCoord2hvNV)
  GLhalf* v = OGLM_GET_VARARGS(v,0,GLhalf,NV,2);
  glTexCoord2hvNV((const GLhalf* )v);
  OGLM_CHECK_ERR(glTexCoord2hvNV, free(v);)
  free(v);
#line 68109 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord2i); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord2i)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "s, t");
    {
	GLint	s = (int)SvIV(ST(0))
;
	GLint	t = (int)SvIV(ST(1))
;
#line 33687 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord2i, )
  glTexCoord2i(s, t);
  OGLM_CHECK_ERR(glTexCoord2i, )
#line 68131 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord2iv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord2iv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLint *	v = INT2PTR(const GLint *,SvIV(ST(0)))
;
#line 33696 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord2iv, )
  glTexCoord2iv(v);
  OGLM_CHECK_ERR(glTexCoord2iv, )
#line 68151 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord2iv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord2iv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 33704 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord2iv, )
  GLint *v = OGLM_GET_VARARGS(v,0,GLint,IV,2);
  glTexCoord2iv((const GLint *)v);
  OGLM_CHECK_ERR(glTexCoord2iv, free(v);)
  free(v);
#line 68171 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord2s); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord2s)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "s, t");
    {
	GLshort	s = (short)SvIV(ST(0))
;
	GLshort	t = (short)SvIV(ST(1))
;
#line 33716 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord2s, )
  glTexCoord2s(s, t);
  OGLM_CHECK_ERR(glTexCoord2s, )
#line 68193 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord2sv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord2sv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLshort *	v = INT2PTR(const GLshort *,SvIV(ST(0)))
;
#line 33725 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord2sv, )
  glTexCoord2sv(v);
  OGLM_CHECK_ERR(glTexCoord2sv, )
#line 68213 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord2sv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord2sv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 33733 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord2sv, )
  GLshort *v = OGLM_GET_VARARGS(v,0,GLshort,IV,2);
  glTexCoord2sv((const GLshort *)v);
  OGLM_CHECK_ERR(glTexCoord2sv, free(v);)
  free(v);
#line 68233 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord3d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord3d)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "s, t, r");
    {
	GLdouble	s = (double)SvNV(ST(0))
;
	GLdouble	t = (double)SvNV(ST(1))
;
	GLdouble	r = (double)SvNV(ST(2))
;
#line 33746 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord3d, )
  glTexCoord3d(s, t, r);
  OGLM_CHECK_ERR(glTexCoord3d, )
#line 68257 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord3dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord3dv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLdouble *	v = INT2PTR(const GLdouble *,SvIV(ST(0)))
;
#line 33755 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord3dv, )
  glTexCoord3dv(v);
  OGLM_CHECK_ERR(glTexCoord3dv, )
#line 68277 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord3dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord3dv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 33763 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord3dv, )
  GLdouble *v = OGLM_GET_VARARGS(v,0,GLdouble,NV,3);
  glTexCoord3dv((const GLdouble *)v);
  OGLM_CHECK_ERR(glTexCoord3dv, free(v);)
  free(v);
#line 68297 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord3f); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord3f)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "s, t, r");
    {
	GLfloat	s = (float)SvNV(ST(0))
;
	GLfloat	t = (float)SvNV(ST(1))
;
	GLfloat	r = (float)SvNV(ST(2))
;
#line 33776 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord3f, )
  glTexCoord3f(s, t, r);
  OGLM_CHECK_ERR(glTexCoord3f, )
#line 68321 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord3fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord3fv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(0)))
;
#line 33785 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord3fv, )
  glTexCoord3fv(v);
  OGLM_CHECK_ERR(glTexCoord3fv, )
#line 68341 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord3fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord3fv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 33793 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord3fv, )
  GLfloat *v = OGLM_GET_VARARGS(v,0,GLfloat,NV,3);
  glTexCoord3fv((const GLfloat *)v);
  OGLM_CHECK_ERR(glTexCoord3fv, free(v);)
  free(v);
#line 68361 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord3hNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord3hNV)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "s, t, r");
    {
	GLhalf	s = (float)SvNV(ST(0))
;
	GLhalf	t = (float)SvNV(ST(1))
;
	GLhalf	r = (float)SvNV(ST(2))
;
#line 33806 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord3hNV, )
  OGLM_AVAIL_CHECK(__glewTexCoord3hNV, glTexCoord3hNV)
  glTexCoord3hNV(s, t, r);
  OGLM_CHECK_ERR(glTexCoord3hNV, )
#line 68386 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord3hvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord3hvNV_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLhalf*	v = INT2PTR(const GLhalf *,SvIV(ST(0)))
;
#line 33816 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord3hvNV, )
  OGLM_AVAIL_CHECK(__glewTexCoord3hvNV, glTexCoord3hvNV)
  glTexCoord3hvNV(v);
  OGLM_CHECK_ERR(glTexCoord3hvNV, )
#line 68407 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord3hvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord3hvNV_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 33825 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord3hvNV, )
  OGLM_AVAIL_CHECK(__glewTexCoord3hvNV, glTexCoord3hvNV)
  GLhalf* v = OGLM_GET_VARARGS(v,0,GLhalf,NV,3);
  glTexCoord3hvNV((const GLhalf* )v);
  OGLM_CHECK_ERR(glTexCoord3hvNV, free(v);)
  free(v);
#line 68428 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord3i); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord3i)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "s, t, r");
    {
	GLint	s = (int)SvIV(ST(0))
;
	GLint	t = (int)SvIV(ST(1))
;
	GLint	r = (int)SvIV(ST(2))
;
#line 33839 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord3i, )
  glTexCoord3i(s, t, r);
  OGLM_CHECK_ERR(glTexCoord3i, )
#line 68452 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord3iv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord3iv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLint *	v = INT2PTR(const GLint *,SvIV(ST(0)))
;
#line 33848 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord3iv, )
  glTexCoord3iv(v);
  OGLM_CHECK_ERR(glTexCoord3iv, )
#line 68472 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord3iv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord3iv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 33856 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord3iv, )
  GLint *v = OGLM_GET_VARARGS(v,0,GLint,IV,3);
  glTexCoord3iv((const GLint *)v);
  OGLM_CHECK_ERR(glTexCoord3iv, free(v);)
  free(v);
#line 68492 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord3s); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord3s)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "s, t, r");
    {
	GLshort	s = (short)SvIV(ST(0))
;
	GLshort	t = (short)SvIV(ST(1))
;
	GLshort	r = (short)SvIV(ST(2))
;
#line 33869 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord3s, )
  glTexCoord3s(s, t, r);
  OGLM_CHECK_ERR(glTexCoord3s, )
#line 68516 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord3sv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord3sv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLshort *	v = INT2PTR(const GLshort *,SvIV(ST(0)))
;
#line 33878 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord3sv, )
  glTexCoord3sv(v);
  OGLM_CHECK_ERR(glTexCoord3sv, )
#line 68536 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord3sv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord3sv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 33886 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord3sv, )
  GLshort *v = OGLM_GET_VARARGS(v,0,GLshort,IV,3);
  glTexCoord3sv((const GLshort *)v);
  OGLM_CHECK_ERR(glTexCoord3sv, free(v);)
  free(v);
#line 68556 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord4d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord4d)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "s, t, r, q");
    {
	GLdouble	s = (double)SvNV(ST(0))
;
	GLdouble	t = (double)SvNV(ST(1))
;
	GLdouble	r = (double)SvNV(ST(2))
;
	GLdouble	q = (double)SvNV(ST(3))
;
#line 33900 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord4d, )
  glTexCoord4d(s, t, r, q);
  OGLM_CHECK_ERR(glTexCoord4d, )
#line 68582 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord4dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord4dv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLdouble *	v = INT2PTR(const GLdouble *,SvIV(ST(0)))
;
#line 33909 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord4dv, )
  glTexCoord4dv(v);
  OGLM_CHECK_ERR(glTexCoord4dv, )
#line 68602 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord4dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord4dv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 33917 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord4dv, )
  GLdouble *v = OGLM_GET_VARARGS(v,0,GLdouble,NV,4);
  glTexCoord4dv((const GLdouble *)v);
  OGLM_CHECK_ERR(glTexCoord4dv, free(v);)
  free(v);
#line 68622 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord4f); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord4f)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "s, t, r, q");
    {
	GLfloat	s = (float)SvNV(ST(0))
;
	GLfloat	t = (float)SvNV(ST(1))
;
	GLfloat	r = (float)SvNV(ST(2))
;
	GLfloat	q = (float)SvNV(ST(3))
;
#line 33931 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord4f, )
  glTexCoord4f(s, t, r, q);
  OGLM_CHECK_ERR(glTexCoord4f, )
#line 68648 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord4fColor4fNormal3fVertex4fSUN); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord4fColor4fNormal3fVertex4fSUN)
{
    dVAR; dXSARGS;
    if (items != 15)
       croak_xs_usage(cv,  "s, t, p, q, r, g, b, a, nx, ny, nz, x, y, z, w");
    {
	GLfloat	s = (float)SvNV(ST(0))
;
	GLfloat	t = (float)SvNV(ST(1))
;
	GLfloat	p = (float)SvNV(ST(2))
;
	GLfloat	q = (float)SvNV(ST(3))
;
	GLfloat	r = (float)SvNV(ST(4))
;
	GLfloat	g = (float)SvNV(ST(5))
;
	GLfloat	b = (float)SvNV(ST(6))
;
	GLfloat	a = (float)SvNV(ST(7))
;
	GLfloat	nx = (float)SvNV(ST(8))
;
	GLfloat	ny = (float)SvNV(ST(9))
;
	GLfloat	nz = (float)SvNV(ST(10))
;
	GLfloat	x = (float)SvNV(ST(11))
;
	GLfloat	y = (float)SvNV(ST(12))
;
	GLfloat	z = (float)SvNV(ST(13))
;
	GLfloat	w = (float)SvNV(ST(14))
;
#line 33954 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord4fColor4fNormal3fVertex4fSUN, )
  OGLM_AVAIL_CHECK(__glewTexCoord4fColor4fNormal3fVertex4fSUN, glTexCoord4fColor4fNormal3fVertex4fSUN)
  glTexCoord4fColor4fNormal3fVertex4fSUN(s, t, p, q, r, g, b, a, nx, ny, nz, x, y, z, w);
  OGLM_CHECK_ERR(glTexCoord4fColor4fNormal3fVertex4fSUN, )
#line 68697 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord4fColor4fNormal3fVertex4fvSUN_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord4fColor4fNormal3fVertex4fvSUN_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "tc, c, n, v");
    {
	const GLfloat*	tc = INT2PTR(const GLfloat *,SvIV(ST(0)))
;
	const GLfloat *	c = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
	const GLfloat *	n = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 33967 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord4fColor4fNormal3fVertex4fvSUN, )
  OGLM_AVAIL_CHECK(__glewTexCoord4fColor4fNormal3fVertex4fvSUN, glTexCoord4fColor4fNormal3fVertex4fvSUN)
  glTexCoord4fColor4fNormal3fVertex4fvSUN(tc, c, n, v);
  OGLM_CHECK_ERR(glTexCoord4fColor4fNormal3fVertex4fvSUN, )
#line 68724 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord4fColor4fNormal3fVertex4fvSUN_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord4fColor4fNormal3fVertex4fvSUN_p)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "tcSV, cSV, nSV, vSV");
    {
	SV *	tcSV = ST(0)
;
	SV *	cSV = ST(1)
;
	SV *	nSV = ST(2)
;
	SV *	vSV = ST(3)
;
#line 33980 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord4fColor4fNormal3fVertex4fvSUN, )
  OGLM_AVAIL_CHECK(__glewTexCoord4fColor4fNormal3fVertex4fvSUN, glTexCoord4fColor4fNormal3fVertex4fvSUN)
  GLfloat *c = OGLM_GET_ARRAY(c, GLfloat, NV, 4);
  GLfloat *n = OGLM_GET_ARRAY(n, GLfloat, NV, 3);
  GLfloat* tc = OGLM_GET_ARRAY(tc, GLfloat, NV, 4);
  GLfloat *v = OGLM_GET_ARRAY(v, GLfloat, NV, 4);
  glTexCoord4fColor4fNormal3fVertex4fvSUN((const GLfloat* )tc, (const GLfloat *)c, (const GLfloat *)n, (const GLfloat *)v);
  OGLM_CHECK_ERR(glTexCoord4fColor4fNormal3fVertex4fvSUN, free(c);free(n);free(tc);free(v);)
  free(c);free(n);free(tc);free(v);
#line 68756 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord4fVertex4fSUN); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord4fVertex4fSUN)
{
    dVAR; dXSARGS;
    if (items != 8)
       croak_xs_usage(cv,  "s, t, p, q, x, y, z, w");
    {
	GLfloat	s = (float)SvNV(ST(0))
;
	GLfloat	t = (float)SvNV(ST(1))
;
	GLfloat	p = (float)SvNV(ST(2))
;
	GLfloat	q = (float)SvNV(ST(3))
;
	GLfloat	x = (float)SvNV(ST(4))
;
	GLfloat	y = (float)SvNV(ST(5))
;
	GLfloat	z = (float)SvNV(ST(6))
;
	GLfloat	w = (float)SvNV(ST(7))
;
#line 34002 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord4fVertex4fSUN, )
  OGLM_AVAIL_CHECK(__glewTexCoord4fVertex4fSUN, glTexCoord4fVertex4fSUN)
  glTexCoord4fVertex4fSUN(s, t, p, q, x, y, z, w);
  OGLM_CHECK_ERR(glTexCoord4fVertex4fSUN, )
#line 68791 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord4fVertex4fvSUN_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord4fVertex4fvSUN_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "tc, v");
    {
	const GLfloat*	tc = INT2PTR(const GLfloat *,SvIV(ST(0)))
;
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 34013 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord4fVertex4fvSUN, )
  OGLM_AVAIL_CHECK(__glewTexCoord4fVertex4fvSUN, glTexCoord4fVertex4fvSUN)
  glTexCoord4fVertex4fvSUN(tc, v);
  OGLM_CHECK_ERR(glTexCoord4fVertex4fvSUN, )
#line 68814 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord4fVertex4fvSUN_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord4fVertex4fvSUN_p)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "tcSV, vSV");
    {
	SV *	tcSV = ST(0)
;
	SV *	vSV = ST(1)
;
#line 34024 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord4fVertex4fvSUN, )
  OGLM_AVAIL_CHECK(__glewTexCoord4fVertex4fvSUN, glTexCoord4fVertex4fvSUN)
  GLfloat* tc = OGLM_GET_ARRAY(tc, GLfloat, NV, 4);
  GLfloat *v = OGLM_GET_ARRAY(v, GLfloat, NV, 4);
  glTexCoord4fVertex4fvSUN((const GLfloat* )tc, (const GLfloat *)v);
  OGLM_CHECK_ERR(glTexCoord4fVertex4fvSUN, free(tc);free(v);)
  free(tc);free(v);
#line 68840 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord4fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord4fv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(0)))
;
#line 34037 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord4fv, )
  glTexCoord4fv(v);
  OGLM_CHECK_ERR(glTexCoord4fv, )
#line 68860 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord4fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord4fv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 34045 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord4fv, )
  GLfloat *v = OGLM_GET_VARARGS(v,0,GLfloat,NV,4);
  glTexCoord4fv((const GLfloat *)v);
  OGLM_CHECK_ERR(glTexCoord4fv, free(v);)
  free(v);
#line 68880 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord4hNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord4hNV)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "s, t, r, q");
    {
	GLhalf	s = (float)SvNV(ST(0))
;
	GLhalf	t = (float)SvNV(ST(1))
;
	GLhalf	r = (float)SvNV(ST(2))
;
	GLhalf	q = (float)SvNV(ST(3))
;
#line 34059 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord4hNV, )
  OGLM_AVAIL_CHECK(__glewTexCoord4hNV, glTexCoord4hNV)
  glTexCoord4hNV(s, t, r, q);
  OGLM_CHECK_ERR(glTexCoord4hNV, )
#line 68907 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord4hvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord4hvNV_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLhalf*	v = INT2PTR(const GLhalf *,SvIV(ST(0)))
;
#line 34069 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord4hvNV, )
  OGLM_AVAIL_CHECK(__glewTexCoord4hvNV, glTexCoord4hvNV)
  glTexCoord4hvNV(v);
  OGLM_CHECK_ERR(glTexCoord4hvNV, )
#line 68928 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord4hvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord4hvNV_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 34078 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord4hvNV, )
  OGLM_AVAIL_CHECK(__glewTexCoord4hvNV, glTexCoord4hvNV)
  GLhalf* v = OGLM_GET_VARARGS(v,0,GLhalf,NV,4);
  glTexCoord4hvNV((const GLhalf* )v);
  OGLM_CHECK_ERR(glTexCoord4hvNV, free(v);)
  free(v);
#line 68949 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord4i); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord4i)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "s, t, r, q");
    {
	GLint	s = (int)SvIV(ST(0))
;
	GLint	t = (int)SvIV(ST(1))
;
	GLint	r = (int)SvIV(ST(2))
;
	GLint	q = (int)SvIV(ST(3))
;
#line 34093 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord4i, )
  glTexCoord4i(s, t, r, q);
  OGLM_CHECK_ERR(glTexCoord4i, )
#line 68975 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord4iv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord4iv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLint *	v = INT2PTR(const GLint *,SvIV(ST(0)))
;
#line 34102 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord4iv, )
  glTexCoord4iv(v);
  OGLM_CHECK_ERR(glTexCoord4iv, )
#line 68995 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord4iv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord4iv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 34110 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord4iv, )
  GLint *v = OGLM_GET_VARARGS(v,0,GLint,IV,4);
  glTexCoord4iv((const GLint *)v);
  OGLM_CHECK_ERR(glTexCoord4iv, free(v);)
  free(v);
#line 69015 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord4s); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord4s)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "s, t, r, q");
    {
	GLshort	s = (short)SvIV(ST(0))
;
	GLshort	t = (short)SvIV(ST(1))
;
	GLshort	r = (short)SvIV(ST(2))
;
	GLshort	q = (short)SvIV(ST(3))
;
#line 34124 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord4s, )
  glTexCoord4s(s, t, r, q);
  OGLM_CHECK_ERR(glTexCoord4s, )
#line 69041 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord4sv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord4sv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLshort *	v = INT2PTR(const GLshort *,SvIV(ST(0)))
;
#line 34133 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord4sv, )
  glTexCoord4sv(v);
  OGLM_CHECK_ERR(glTexCoord4sv, )
#line 69061 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoord4sv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoord4sv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 34141 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoord4sv, )
  GLshort *v = OGLM_GET_VARARGS(v,0,GLshort,IV,4);
  glTexCoord4sv((const GLshort *)v);
  OGLM_CHECK_ERR(glTexCoord4sv, free(v);)
  free(v);
#line 69081 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoordFormatNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoordFormatNV)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "size, type, stride");
    {
	GLint	size = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLsizei	stride = (int)SvIV(ST(2))
;
#line 34154 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoordFormatNV, )
  OGLM_AVAIL_CHECK(__glewTexCoordFormatNV, glTexCoordFormatNV)
  glTexCoordFormatNV(size, type, stride);
  OGLM_CHECK_ERR(glTexCoordFormatNV, )
#line 69106 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoordP1ui); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoordP1ui)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "type, coords");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	GLuint	coords = (unsigned int)SvUV(ST(1))
;
#line 34165 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoordP1ui, )
  OGLM_AVAIL_CHECK(__glewTexCoordP1ui, glTexCoordP1ui)
  glTexCoordP1ui(type, coords);
  OGLM_CHECK_ERR(glTexCoordP1ui, )
#line 69129 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoordP1uiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoordP1uiv_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "type, coords");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	const GLuint*	coords = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 34176 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoordP1uiv, )
  OGLM_AVAIL_CHECK(__glewTexCoordP1uiv, glTexCoordP1uiv)
  glTexCoordP1uiv(type, coords);
  OGLM_CHECK_ERR(glTexCoordP1uiv, )
#line 69152 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoordP1uiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoordP1uiv_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "type, ...");
    {
	GLenum	type = (int)SvIV(ST(0))
;
#line 34186 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoordP1uiv, )
  OGLM_AVAIL_CHECK(__glewTexCoordP1uiv, glTexCoordP1uiv)
  GLuint* coords = OGLM_GET_VARARGS(coords,1,GLuint,UV,1);
  glTexCoordP1uiv((GLenum )type, (const GLuint* )coords);
  OGLM_CHECK_ERR(glTexCoordP1uiv, free(coords);)
  free(coords);
#line 69175 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoordP2ui); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoordP2ui)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "type, coords");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	GLuint	coords = (unsigned int)SvUV(ST(1))
;
#line 34199 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoordP2ui, )
  OGLM_AVAIL_CHECK(__glewTexCoordP2ui, glTexCoordP2ui)
  glTexCoordP2ui(type, coords);
  OGLM_CHECK_ERR(glTexCoordP2ui, )
#line 69198 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoordP2uiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoordP2uiv_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "type, coords");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	const GLuint*	coords = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 34210 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoordP2uiv, )
  OGLM_AVAIL_CHECK(__glewTexCoordP2uiv, glTexCoordP2uiv)
  glTexCoordP2uiv(type, coords);
  OGLM_CHECK_ERR(glTexCoordP2uiv, )
#line 69221 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoordP2uiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoordP2uiv_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "type, ...");
    {
	GLenum	type = (int)SvIV(ST(0))
;
#line 34220 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoordP2uiv, )
  OGLM_AVAIL_CHECK(__glewTexCoordP2uiv, glTexCoordP2uiv)
  GLuint* coords = OGLM_GET_VARARGS(coords,1,GLuint,UV,1);
  glTexCoordP2uiv((GLenum )type, (const GLuint* )coords);
  OGLM_CHECK_ERR(glTexCoordP2uiv, free(coords);)
  free(coords);
#line 69244 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoordP3ui); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoordP3ui)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "type, coords");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	GLuint	coords = (unsigned int)SvUV(ST(1))
;
#line 34233 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoordP3ui, )
  OGLM_AVAIL_CHECK(__glewTexCoordP3ui, glTexCoordP3ui)
  glTexCoordP3ui(type, coords);
  OGLM_CHECK_ERR(glTexCoordP3ui, )
#line 69267 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoordP3uiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoordP3uiv_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "type, coords");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	const GLuint*	coords = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 34244 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoordP3uiv, )
  OGLM_AVAIL_CHECK(__glewTexCoordP3uiv, glTexCoordP3uiv)
  glTexCoordP3uiv(type, coords);
  OGLM_CHECK_ERR(glTexCoordP3uiv, )
#line 69290 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoordP3uiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoordP3uiv_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "type, ...");
    {
	GLenum	type = (int)SvIV(ST(0))
;
#line 34254 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoordP3uiv, )
  OGLM_AVAIL_CHECK(__glewTexCoordP3uiv, glTexCoordP3uiv)
  GLuint* coords = OGLM_GET_VARARGS(coords,1,GLuint,UV,1);
  glTexCoordP3uiv((GLenum )type, (const GLuint* )coords);
  OGLM_CHECK_ERR(glTexCoordP3uiv, free(coords);)
  free(coords);
#line 69313 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoordP4ui); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoordP4ui)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "type, coords");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	GLuint	coords = (unsigned int)SvUV(ST(1))
;
#line 34267 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoordP4ui, )
  OGLM_AVAIL_CHECK(__glewTexCoordP4ui, glTexCoordP4ui)
  glTexCoordP4ui(type, coords);
  OGLM_CHECK_ERR(glTexCoordP4ui, )
#line 69336 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoordP4uiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoordP4uiv_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "type, coords");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	const GLuint*	coords = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 34278 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoordP4uiv, )
  OGLM_AVAIL_CHECK(__glewTexCoordP4uiv, glTexCoordP4uiv)
  glTexCoordP4uiv(type, coords);
  OGLM_CHECK_ERR(glTexCoordP4uiv, )
#line 69359 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoordP4uiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoordP4uiv_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "type, ...");
    {
	GLenum	type = (int)SvIV(ST(0))
;
#line 34288 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoordP4uiv, )
  OGLM_AVAIL_CHECK(__glewTexCoordP4uiv, glTexCoordP4uiv)
  GLuint* coords = OGLM_GET_VARARGS(coords,1,GLuint,UV,1);
  glTexCoordP4uiv((GLenum )type, (const GLuint* )coords);
  OGLM_CHECK_ERR(glTexCoordP4uiv, free(coords);)
  free(coords);
#line 69382 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoordPointer_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoordPointer_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "size, type, stride, pointer");
    {
	GLint	size = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLsizei	stride = (int)SvIV(ST(2))
;
	const void *	pointer = INT2PTR(const void *,SvIV(ST(3)))
;
#line 34303 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoordPointer, )
  glTexCoordPointer(size, type, stride, pointer);
  OGLM_CHECK_ERR(glTexCoordPointer, )
#line 69408 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoordPointerEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoordPointerEXT_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "size, type, stride, count, pointer");
    {
	GLint	size = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLsizei	stride = (int)SvIV(ST(2))
;
	GLsizei	count = (int)SvIV(ST(3))
;
	const void *	pointer = INT2PTR(const void *,SvIV(ST(4)))
;
#line 34316 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoordPointerEXT, )
  OGLM_AVAIL_CHECK(__glewTexCoordPointerEXT, glTexCoordPointerEXT)
  glTexCoordPointerEXT(size, type, stride, count, pointer);
  OGLM_CHECK_ERR(glTexCoordPointerEXT, )
#line 69437 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoordPointerListIBM_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoordPointerListIBM_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "size, type, stride, pointer, ptrstride");
    {
	GLint	size = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLint	stride = (int)SvIV(ST(2))
;
	const void**	pointer = INT2PTR(const void **,SvIV(ST(3)))
;
	GLint	ptrstride = (int)SvIV(ST(4))
;
#line 34330 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoordPointerListIBM, )
  OGLM_AVAIL_CHECK(__glewTexCoordPointerListIBM, glTexCoordPointerListIBM)
  glTexCoordPointerListIBM(size, type, stride, pointer, ptrstride);
  OGLM_CHECK_ERR(glTexCoordPointerListIBM, )
#line 69466 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexCoordPointervINTEL_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexCoordPointervINTEL_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "size, type, pointer");
    {
	GLint	size = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	const void**	pointer = INT2PTR(const void **,SvIV(ST(2)))
;
#line 34342 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexCoordPointervINTEL, )
  OGLM_AVAIL_CHECK(__glewTexCoordPointervINTEL, glTexCoordPointervINTEL)
  glTexCoordPointervINTEL(size, type, pointer);
  OGLM_CHECK_ERR(glTexCoordPointervINTEL, )
#line 69491 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexEnvf); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexEnvf)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, param");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat	param = (float)SvNV(ST(2))
;
#line 34354 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexEnvf, )
  glTexEnvf(target, pname, param);
  OGLM_CHECK_ERR(glTexEnvf, )
#line 69515 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexEnvfv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexEnvfv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLfloat *	params = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 34365 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexEnvfv, )
  glTexEnvfv(target, pname, params);
  OGLM_CHECK_ERR(glTexEnvfv, )
#line 69539 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexEnvfv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexEnvfv_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "target, pname, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 34375 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexEnvfv, )
  OGLM_SIZE_ENUM(TextureEnvParameter,pname,1)
  GLfloat *params = OGLM_GET_VARARGS(params,2,GLfloat,NV,pname_count);
  glTexEnvfv((GLenum )target, (GLenum )pname, (const GLfloat *)params);
  OGLM_CHECK_ERR(glTexEnvfv, free(params);)
  free(params);
#line 69564 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexEnvi); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexEnvi)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, param");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint	param = (int)SvIV(ST(2))
;
#line 34389 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexEnvi, )
  glTexEnvi(target, pname, param);
  OGLM_CHECK_ERR(glTexEnvi, )
#line 69588 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexEnviv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexEnviv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLint *	params = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 34400 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexEnviv, )
  glTexEnviv(target, pname, params);
  OGLM_CHECK_ERR(glTexEnviv, )
#line 69612 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexEnviv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexEnviv_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "target, pname, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 34410 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexEnviv, )
  OGLM_SIZE_ENUM(TextureEnvParameter,pname,1)
  GLint *params = OGLM_GET_VARARGS(params,2,GLint,IV,pname_count);
  glTexEnviv((GLenum )target, (GLenum )pname, (const GLint *)params);
  OGLM_CHECK_ERR(glTexEnviv, free(params);)
  free(params);
#line 69637 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexEnvx); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexEnvx)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, param");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfixed	param = (int)SvIV(ST(2))
;
#line 34424 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexEnvx, )
  OGLM_AVAIL_CHECK(__glewTexEnvx, glTexEnvx)
  glTexEnvx(target, pname, param);
  OGLM_CHECK_ERR(glTexEnvx, )
#line 69662 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexEnvxv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexEnvxv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLfixed*	params = INT2PTR(const GLfixed *,SvIV(ST(2)))
;
#line 34436 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexEnvxv, )
  OGLM_AVAIL_CHECK(__glewTexEnvxv, glTexEnvxv)
  glTexEnvxv(target, pname, params);
  OGLM_CHECK_ERR(glTexEnvxv, )
#line 69687 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexEnvxv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexEnvxv_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "target, pname, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 34447 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexEnvxv, )
  OGLM_AVAIL_CHECK(__glewTexEnvxv, glTexEnvxv)
  OGLM_SIZE_ENUM(TextureEnvParameter,pname,1)
  GLfixed* params = OGLM_GET_VARARGS(params,2,GLfixed,IV,pname_count);
  glTexEnvxv((GLenum )target, (GLenum )pname, (const GLfixed* )params);
  OGLM_CHECK_ERR(glTexEnvxv, free(params);)
  free(params);
#line 69713 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexEstimateMotionQCOM); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexEstimateMotionQCOM)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "ref, target, output");
    {
	GLuint	ref = (unsigned int)SvUV(ST(0))
;
	GLuint	target = (unsigned int)SvUV(ST(1))
;
	GLuint	output = (unsigned int)SvUV(ST(2))
;
#line 34462 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexEstimateMotionQCOM, )
  OGLM_AVAIL_CHECK(__glewTexEstimateMotionQCOM, glTexEstimateMotionQCOM)
  glTexEstimateMotionQCOM(ref, target, output);
  OGLM_CHECK_ERR(glTexEstimateMotionQCOM, )
#line 69738 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexEstimateMotionRegionsQCOM); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexEstimateMotionRegionsQCOM)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "ref, target, output, mask");
    {
	GLuint	ref = (unsigned int)SvUV(ST(0))
;
	GLuint	target = (unsigned int)SvUV(ST(1))
;
	GLuint	output = (unsigned int)SvUV(ST(2))
;
	GLuint	mask = (unsigned int)SvUV(ST(3))
;
#line 34475 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexEstimateMotionRegionsQCOM, )
  OGLM_AVAIL_CHECK(__glewTexEstimateMotionRegionsQCOM, glTexEstimateMotionRegionsQCOM)
  glTexEstimateMotionRegionsQCOM(ref, target, output, mask);
  OGLM_CHECK_ERR(glTexEstimateMotionRegionsQCOM, )
#line 69765 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexFilterFuncSGIS_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexFilterFuncSGIS_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, filter, n, weights");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	filter = (int)SvIV(ST(1))
;
	GLsizei	n = (int)SvIV(ST(2))
;
	const GLfloat*	weights = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 34488 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexFilterFuncSGIS, )
  OGLM_AVAIL_CHECK(__glewTexFilterFuncSGIS, glTexFilterFuncSGIS)
  glTexFilterFuncSGIS(target, filter, n, weights);
  OGLM_CHECK_ERR(glTexFilterFuncSGIS, )
#line 69792 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexFilterFuncSGIS_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexFilterFuncSGIS_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "target, filter, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	filter = (int)SvIV(ST(1))
;
#line 34499 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexFilterFuncSGIS, )
  OGLM_AVAIL_CHECK(__glewTexFilterFuncSGIS, glTexFilterFuncSGIS)
  GLsizei n = items-2;
  GLfloat* weights = OGLM_GET_VARARGS(weights,2,GLfloat,NV,n);
  glTexFilterFuncSGIS((GLenum )target, (GLenum )filter, (GLsizei )n, (const GLfloat* )weights);
  OGLM_CHECK_ERR(glTexFilterFuncSGIS, free(weights);)
  free(weights);
#line 69818 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexGend); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexGend)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "coord, pname, param");
    {
	GLenum	coord = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLdouble	param = (double)SvNV(ST(2))
;
#line 34514 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexGend, )
  glTexGend(coord, pname, param);
  OGLM_CHECK_ERR(glTexGend, )
#line 69842 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexGendv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexGendv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "coord, pname, params");
    {
	GLenum	coord = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLdouble *	params = INT2PTR(const GLdouble *,SvIV(ST(2)))
;
#line 34525 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexGendv, )
  glTexGendv(coord, pname, params);
  OGLM_CHECK_ERR(glTexGendv, )
#line 69866 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexGendv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexGendv_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "coord, pname, ...");
    {
	GLenum	coord = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 34535 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexGendv, )
  OGLM_SIZE_ENUM(TextureGenParameter,pname,1)
  GLdouble *params = OGLM_GET_VARARGS(params,2,GLdouble,NV,pname_count);
  glTexGendv((GLenum )coord, (GLenum )pname, (const GLdouble *)params);
  OGLM_CHECK_ERR(glTexGendv, free(params);)
  free(params);
#line 69891 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexGenf); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexGenf)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "coord, pname, param");
    {
	GLenum	coord = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat	param = (float)SvNV(ST(2))
;
#line 34549 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexGenf, )
  glTexGenf(coord, pname, param);
  OGLM_CHECK_ERR(glTexGenf, )
#line 69915 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexGenfOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexGenfOES)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "coord, pname, param");
    {
	GLenum	coord = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat	param = (float)SvNV(ST(2))
;
#line 34560 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexGenfOES, )
  OGLM_AVAIL_CHECK(__glewTexGenfOES, glTexGenfOES)
  glTexGenfOES(coord, pname, param);
  OGLM_CHECK_ERR(glTexGenfOES, )
#line 69940 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexGenfv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexGenfv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "coord, pname, params");
    {
	GLenum	coord = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLfloat *	params = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 34572 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexGenfv, )
  glTexGenfv(coord, pname, params);
  OGLM_CHECK_ERR(glTexGenfv, )
#line 69964 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexGenfv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexGenfv_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "coord, pname, ...");
    {
	GLenum	coord = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 34582 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexGenfv, )
  OGLM_SIZE_ENUM(TextureGenParameter,pname,1)
  GLfloat *params = OGLM_GET_VARARGS(params,2,GLfloat,NV,pname_count);
  glTexGenfv((GLenum )coord, (GLenum )pname, (const GLfloat *)params);
  OGLM_CHECK_ERR(glTexGenfv, free(params);)
  free(params);
#line 69989 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexGenfvOES_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexGenfvOES_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "coord, pname, params");
    {
	GLenum	coord = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLfloat*	params = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 34596 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexGenfvOES, )
  OGLM_AVAIL_CHECK(__glewTexGenfvOES, glTexGenfvOES)
  glTexGenfvOES(coord, pname, params);
  OGLM_CHECK_ERR(glTexGenfvOES, )
#line 70014 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexGeni); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexGeni)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "coord, pname, param");
    {
	GLenum	coord = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint	param = (int)SvIV(ST(2))
;
#line 34608 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexGeni, )
  glTexGeni(coord, pname, param);
  OGLM_CHECK_ERR(glTexGeni, )
#line 70038 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexGeniOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexGeniOES)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "coord, pname, param");
    {
	GLenum	coord = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint	param = (int)SvIV(ST(2))
;
#line 34619 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexGeniOES, )
  OGLM_AVAIL_CHECK(__glewTexGeniOES, glTexGeniOES)
  glTexGeniOES(coord, pname, param);
  OGLM_CHECK_ERR(glTexGeniOES, )
#line 70063 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexGeniv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexGeniv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "coord, pname, params");
    {
	GLenum	coord = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLint *	params = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 34631 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexGeniv, )
  glTexGeniv(coord, pname, params);
  OGLM_CHECK_ERR(glTexGeniv, )
#line 70087 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexGeniv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexGeniv_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "coord, pname, ...");
    {
	GLenum	coord = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 34641 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexGeniv, )
  OGLM_SIZE_ENUM(TextureGenParameter,pname,1)
  GLint *params = OGLM_GET_VARARGS(params,2,GLint,IV,pname_count);
  glTexGeniv((GLenum )coord, (GLenum )pname, (const GLint *)params);
  OGLM_CHECK_ERR(glTexGeniv, free(params);)
  free(params);
#line 70112 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexGenivOES_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexGenivOES_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "coord, pname, params");
    {
	GLenum	coord = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLint*	params = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 34655 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexGenivOES, )
  OGLM_AVAIL_CHECK(__glewTexGenivOES, glTexGenivOES)
  glTexGenivOES(coord, pname, params);
  OGLM_CHECK_ERR(glTexGenivOES, )
#line 70137 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexGenxOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexGenxOES)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "coord, pname, param");
    {
	GLenum	coord = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfixed	param = (int)SvIV(ST(2))
;
#line 34667 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexGenxOES, )
  OGLM_AVAIL_CHECK(__glewTexGenxOES, glTexGenxOES)
  glTexGenxOES(coord, pname, param);
  OGLM_CHECK_ERR(glTexGenxOES, )
#line 70162 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexGenxvOES_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexGenxvOES_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "coord, pname, params");
    {
	GLenum	coord = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLfixed*	params = INT2PTR(const GLfixed *,SvIV(ST(2)))
;
#line 34679 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexGenxvOES, )
  OGLM_AVAIL_CHECK(__glewTexGenxvOES, glTexGenxvOES)
  glTexGenxvOES(coord, pname, params);
  OGLM_CHECK_ERR(glTexGenxvOES, )
#line 70187 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexImage1D_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexImage1D_c)
{
    dVAR; dXSARGS;
    if (items != 8)
       croak_xs_usage(cv,  "target, level, internalformat, width, border, format, type, pixels");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLint	internalformat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLint	border = (int)SvIV(ST(4))
;
	GLenum	format = (int)SvIV(ST(5))
;
	GLenum	type = (int)SvIV(ST(6))
;
	const void *	pixels = INT2PTR(const void *,SvIV(ST(7)))
;
#line 34696 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexImage1D, )
  glTexImage1D(target, level, internalformat, width, border, format, type, pixels);
  OGLM_CHECK_ERR(glTexImage1D, )
#line 70221 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexImage2D_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexImage2D_c)
{
    dVAR; dXSARGS;
    if (items != 9)
       croak_xs_usage(cv,  "target, level, internalformat, width, height, border, format, type, pixels");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLint	internalformat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
	GLint	border = (int)SvIV(ST(5))
;
	GLenum	format = (int)SvIV(ST(6))
;
	GLenum	type = (int)SvIV(ST(7))
;
	const void *	pixels = INT2PTR(const void *,SvIV(ST(8)))
;
#line 34713 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexImage2D, )
  glTexImage2D(target, level, internalformat, width, height, border, format, type, pixels);
  OGLM_CHECK_ERR(glTexImage2D, )
#line 70257 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexImage2DMultisample); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexImage2DMultisample)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "target, samples, internalformat, width, height, fixedsamplelocations");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	samples = (int)SvIV(ST(1))
;
	GLenum	internalformat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
	GLboolean	fixedsamplelocations = (int)SvIV(ST(5))
;
#line 34727 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexImage2DMultisample, )
  OGLM_AVAIL_CHECK(__glewTexImage2DMultisample, glTexImage2DMultisample)
  glTexImage2DMultisample(target, samples, internalformat, width, height, fixedsamplelocations);
  OGLM_CHECK_ERR(glTexImage2DMultisample, )
#line 70288 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexImage2DMultisampleCoverageNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexImage2DMultisampleCoverageNV)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "target, coverageSamples, colorSamples, internalFormat, width, height, fixedSampleLocations");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	coverageSamples = (int)SvIV(ST(1))
;
	GLsizei	colorSamples = (int)SvIV(ST(2))
;
	GLint	internalFormat = (int)SvIV(ST(3))
;
	GLsizei	width = (int)SvIV(ST(4))
;
	GLsizei	height = (int)SvIV(ST(5))
;
	GLboolean	fixedSampleLocations = (int)SvIV(ST(6))
;
#line 34743 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexImage2DMultisampleCoverageNV, )
  OGLM_AVAIL_CHECK(__glewTexImage2DMultisampleCoverageNV, glTexImage2DMultisampleCoverageNV)
  glTexImage2DMultisampleCoverageNV(target, coverageSamples, colorSamples, internalFormat, width, height, fixedSampleLocations);
  OGLM_CHECK_ERR(glTexImage2DMultisampleCoverageNV, )
#line 70321 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexImage3D_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexImage3D_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 10)
       croak_xs_usage(cv,  "target, level, internalformat, width, height, depth, border, format, type, pixels");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLint	internalformat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
	GLsizei	depth = (int)SvIV(ST(5))
;
	GLint	border = (int)SvIV(ST(6))
;
	GLenum	format = (int)SvIV(ST(7))
;
	GLenum	type = (int)SvIV(ST(8))
;
	const void *	pixels = INT2PTR(const void *,SvIV(ST(9)))
;
#line 34764 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexImage3D, )
  OGLM_AVAIL_CHECK(__glewTexImage3D, glTexImage3D)
  glTexImage3D(target, level, internalformat, width, height, depth, border, format, type, pixels);
  OGLM_CHECK_ERR(glTexImage3D, )
#line 70361 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexImage3DMultisample); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexImage3DMultisample)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "target, samples, internalformat, width, height, depth, fixedsamplelocations");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	samples = (int)SvIV(ST(1))
;
	GLenum	internalformat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
	GLsizei	depth = (int)SvIV(ST(5))
;
	GLboolean	fixedsamplelocations = (int)SvIV(ST(6))
;
#line 34780 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexImage3DMultisample, )
  OGLM_AVAIL_CHECK(__glewTexImage3DMultisample, glTexImage3DMultisample)
  glTexImage3DMultisample(target, samples, internalformat, width, height, depth, fixedsamplelocations);
  OGLM_CHECK_ERR(glTexImage3DMultisample, )
#line 70394 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexImage3DMultisampleCoverageNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexImage3DMultisampleCoverageNV)
{
    dVAR; dXSARGS;
    if (items != 8)
       croak_xs_usage(cv,  "target, coverageSamples, colorSamples, internalFormat, width, height, depth, fixedSampleLocations");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	coverageSamples = (int)SvIV(ST(1))
;
	GLsizei	colorSamples = (int)SvIV(ST(2))
;
	GLint	internalFormat = (int)SvIV(ST(3))
;
	GLsizei	width = (int)SvIV(ST(4))
;
	GLsizei	height = (int)SvIV(ST(5))
;
	GLsizei	depth = (int)SvIV(ST(6))
;
	GLboolean	fixedSampleLocations = (int)SvIV(ST(7))
;
#line 34797 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexImage3DMultisampleCoverageNV, )
  OGLM_AVAIL_CHECK(__glewTexImage3DMultisampleCoverageNV, glTexImage3DMultisampleCoverageNV)
  glTexImage3DMultisampleCoverageNV(target, coverageSamples, colorSamples, internalFormat, width, height, depth, fixedSampleLocations);
  OGLM_CHECK_ERR(glTexImage3DMultisampleCoverageNV, )
#line 70429 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexImage3DNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexImage3DNV_c)
{
    dVAR; dXSARGS;
    if (items != 10)
       croak_xs_usage(cv,  "target, level, internalFormat, width, height, depth, border, format, type, pixels");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLenum	internalFormat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
	GLsizei	depth = (int)SvIV(ST(5))
;
	GLint	border = (int)SvIV(ST(6))
;
	GLenum	format = (int)SvIV(ST(7))
;
	GLenum	type = (int)SvIV(ST(8))
;
	const void *	pixels = INT2PTR(const void *,SvIV(ST(9)))
;
#line 34816 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexImage3DNV, )
  OGLM_AVAIL_CHECK(__glewTexImage3DNV, glTexImage3DNV)
  glTexImage3DNV(target, level, internalFormat, width, height, depth, border, format, type, pixels);
  OGLM_CHECK_ERR(glTexImage3DNV, )
#line 70468 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexImage3DOES_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexImage3DOES_c)
{
    dVAR; dXSARGS;
    if (items != 10)
       croak_xs_usage(cv,  "target, level, internalFormat, width, height, depth, border, format, type, pixels");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLenum	internalFormat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
	GLsizei	depth = (int)SvIV(ST(5))
;
	GLint	border = (int)SvIV(ST(6))
;
	GLenum	format = (int)SvIV(ST(7))
;
	GLenum	type = (int)SvIV(ST(8))
;
	const void *	pixels = INT2PTR(const void *,SvIV(ST(9)))
;
#line 34835 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexImage3DOES, )
  OGLM_AVAIL_CHECK(__glewTexImage3DOES, glTexImage3DOES)
  glTexImage3DOES(target, level, internalFormat, width, height, depth, border, format, type, pixels);
  OGLM_CHECK_ERR(glTexImage3DOES, )
#line 70507 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexImage4DSGIS_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexImage4DSGIS_c)
{
    dVAR; dXSARGS;
    if (items != 11)
       croak_xs_usage(cv,  "target, level, internalformat, width, height, depth, size4d, border, format, type, pixels");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLenum	internalformat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
	GLsizei	depth = (int)SvIV(ST(5))
;
	GLsizei	size4d = (int)SvIV(ST(6))
;
	GLint	border = (int)SvIV(ST(7))
;
	GLenum	format = (int)SvIV(ST(8))
;
	GLenum	type = (int)SvIV(ST(9))
;
	const void *	pixels = INT2PTR(const void *,SvIV(ST(10)))
;
#line 34855 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexImage4DSGIS, )
  OGLM_AVAIL_CHECK(__glewTexImage4DSGIS, glTexImage4DSGIS)
  glTexImage4DSGIS(target, level, internalformat, width, height, depth, size4d, border, format, type, pixels);
  OGLM_CHECK_ERR(glTexImage4DSGIS, )
#line 70548 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexPageCommitmentARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexPageCommitmentARB)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 9)
       croak_xs_usage(cv,  "target, level, xoffset, yoffset, zoffset, width, height, depth, commit");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLint	xoffset = (int)SvIV(ST(2))
;
	GLint	yoffset = (int)SvIV(ST(3))
;
	GLint	zoffset = (int)SvIV(ST(4))
;
	GLsizei	width = (int)SvIV(ST(5))
;
	GLsizei	height = (int)SvIV(ST(6))
;
	GLsizei	depth = (int)SvIV(ST(7))
;
	GLboolean	commit = (int)SvIV(ST(8))
;
#line 34875 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexPageCommitmentARB, )
  OGLM_AVAIL_CHECK(__glewTexPageCommitmentARB, glTexPageCommitmentARB)
  glTexPageCommitmentARB(target, level, xoffset, yoffset, zoffset, width, height, depth, commit);
  OGLM_CHECK_ERR(glTexPageCommitmentARB, )
#line 70586 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexPageCommitmentMemNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexPageCommitmentMemNV)
{
    dVAR; dXSARGS;
    if (items != 12)
       croak_xs_usage(cv,  "target, layer, level, xoffset, yoffset, zoffset, width, height, depth, memory, offset, commit");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	layer = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLint	xoffset = (int)SvIV(ST(3))
;
	GLint	yoffset = (int)SvIV(ST(4))
;
	GLint	zoffset = (int)SvIV(ST(5))
;
	GLsizei	width = (int)SvIV(ST(6))
;
	GLsizei	height = (int)SvIV(ST(7))
;
	GLsizei	depth = (int)SvIV(ST(8))
;
	GLuint	memory = (unsigned int)SvUV(ST(9))
;
	GLuint64	offset = (unsigned int)SvUV(ST(10))
;
	GLboolean	commit = (int)SvIV(ST(11))
;
#line 34896 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexPageCommitmentMemNV, )
  OGLM_AVAIL_CHECK(__glewTexPageCommitmentMemNV, glTexPageCommitmentMemNV)
  glTexPageCommitmentMemNV(target, layer, level, xoffset, yoffset, zoffset, width, height, depth, memory, offset, commit);
  OGLM_CHECK_ERR(glTexPageCommitmentMemNV, )
#line 70629 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexParameterIiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexParameterIiv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLint*	params = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 34910 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexParameterIiv, )
  OGLM_AVAIL_CHECK(__glewTexParameterIiv, glTexParameterIiv)
  glTexParameterIiv(target, pname, params);
  OGLM_CHECK_ERR(glTexParameterIiv, )
#line 70655 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexParameterIiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexParameterIiv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 2)
       croak_xs_usage(cv,  "target, pname, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 34923 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexParameterIiv, )
  OGLM_AVAIL_CHECK(__glewTexParameterIiv, glTexParameterIiv)
  OGLM_SIZE_ENUM(TextureParameterName,pname,1)
  GLint* params = OGLM_GET_VARARGS(params,2,GLint,IV,pname_count);
  glTexParameterIiv((GLenum )target, (GLenum )pname, (const GLint* )params);
  OGLM_CHECK_ERR(glTexParameterIiv, free(params);)
  free(params);
#line 70682 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexParameterIivOES_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexParameterIivOES_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLint*	params = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 34938 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexParameterIivOES, )
  OGLM_AVAIL_CHECK(__glewTexParameterIivOES, glTexParameterIivOES)
  glTexParameterIivOES(target, pname, params);
  OGLM_CHECK_ERR(glTexParameterIivOES, )
#line 70707 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexParameterIuiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexParameterIuiv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLuint*	params = INT2PTR(const GLuint *,SvIV(ST(2)))
;
#line 34952 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexParameterIuiv, )
  OGLM_AVAIL_CHECK(__glewTexParameterIuiv, glTexParameterIuiv)
  glTexParameterIuiv(target, pname, params);
  OGLM_CHECK_ERR(glTexParameterIuiv, )
#line 70733 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexParameterIuiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexParameterIuiv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 2)
       croak_xs_usage(cv,  "target, pname, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 34965 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexParameterIuiv, )
  OGLM_AVAIL_CHECK(__glewTexParameterIuiv, glTexParameterIuiv)
  OGLM_SIZE_ENUM(TextureParameterName,pname,1)
  GLuint* params = OGLM_GET_VARARGS(params,2,GLuint,UV,pname_count);
  glTexParameterIuiv((GLenum )target, (GLenum )pname, (const GLuint* )params);
  OGLM_CHECK_ERR(glTexParameterIuiv, free(params);)
  free(params);
#line 70760 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexParameterIuivOES_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexParameterIuivOES_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLuint*	params = INT2PTR(const GLuint *,SvIV(ST(2)))
;
#line 34980 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexParameterIuivOES, )
  OGLM_AVAIL_CHECK(__glewTexParameterIuivOES, glTexParameterIuivOES)
  glTexParameterIuivOES(target, pname, params);
  OGLM_CHECK_ERR(glTexParameterIuivOES, )
#line 70785 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexParameterf); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexParameterf)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, param");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat	param = (float)SvNV(ST(2))
;
#line 34992 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexParameterf, )
  glTexParameterf(target, pname, param);
  OGLM_CHECK_ERR(glTexParameterf, )
#line 70809 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexParameterfv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexParameterfv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLfloat *	params = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 35003 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexParameterfv, )
  glTexParameterfv(target, pname, params);
  OGLM_CHECK_ERR(glTexParameterfv, )
#line 70833 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexParameterfv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexParameterfv_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "target, pname, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 35013 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexParameterfv, )
  OGLM_SIZE_ENUM(TextureParameterName,pname,1)
  GLfloat *params = OGLM_GET_VARARGS(params,2,GLfloat,NV,pname_count);
  glTexParameterfv((GLenum )target, (GLenum )pname, (const GLfloat *)params);
  OGLM_CHECK_ERR(glTexParameterfv, free(params);)
  free(params);
#line 70858 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexParameteri); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexParameteri)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, param");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint	param = (int)SvIV(ST(2))
;
#line 35027 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexParameteri, )
  glTexParameteri(target, pname, param);
  OGLM_CHECK_ERR(glTexParameteri, )
#line 70882 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexParameteriv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexParameteriv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLint *	params = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 35038 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexParameteriv, )
  glTexParameteriv(target, pname, params);
  OGLM_CHECK_ERR(glTexParameteriv, )
#line 70906 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexParameteriv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexParameteriv_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "target, pname, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 35048 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexParameteriv, )
  OGLM_SIZE_ENUM(TextureParameterName,pname,1)
  GLint *params = OGLM_GET_VARARGS(params,2,GLint,IV,pname_count);
  glTexParameteriv((GLenum )target, (GLenum )pname, (const GLint *)params);
  OGLM_CHECK_ERR(glTexParameteriv, free(params);)
  free(params);
#line 70931 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexParameterx); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexParameterx)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, param");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfixed	param = (int)SvIV(ST(2))
;
#line 35062 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexParameterx, )
  OGLM_AVAIL_CHECK(__glewTexParameterx, glTexParameterx)
  glTexParameterx(target, pname, param);
  OGLM_CHECK_ERR(glTexParameterx, )
#line 70956 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexParameterxv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexParameterxv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, pname, params");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLfixed*	params = INT2PTR(const GLfixed *,SvIV(ST(2)))
;
#line 35074 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexParameterxv, )
  OGLM_AVAIL_CHECK(__glewTexParameterxv, glTexParameterxv)
  glTexParameterxv(target, pname, params);
  OGLM_CHECK_ERR(glTexParameterxv, )
#line 70981 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexParameterxv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexParameterxv_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "target, pname, ...");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 35085 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexParameterxv, )
  OGLM_AVAIL_CHECK(__glewTexParameterxv, glTexParameterxv)
  OGLM_SIZE_ENUM(GetTextureParameter,pname,1)
  GLfixed* params = OGLM_GET_VARARGS(params,2,GLfixed,IV,pname_count);
  glTexParameterxv((GLenum )target, (GLenum )pname, (const GLfixed* )params);
  OGLM_CHECK_ERR(glTexParameterxv, free(params);)
  free(params);
#line 71007 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexRenderbufferNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexRenderbufferNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "target, renderbuffer");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	renderbuffer = (unsigned int)SvUV(ST(1))
;
#line 35099 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexRenderbufferNV, )
  OGLM_AVAIL_CHECK(__glewTexRenderbufferNV, glTexRenderbufferNV)
  glTexRenderbufferNV(target, renderbuffer);
  OGLM_CHECK_ERR(glTexRenderbufferNV, )
#line 71030 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexScissorFuncINTEL); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexScissorFuncINTEL)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, lfunc, hfunc");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	lfunc = (int)SvIV(ST(1))
;
	GLenum	hfunc = (int)SvIV(ST(2))
;
#line 35111 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexScissorFuncINTEL, )
  OGLM_AVAIL_CHECK(__glewTexScissorFuncINTEL, glTexScissorFuncINTEL)
  glTexScissorFuncINTEL(target, lfunc, hfunc);
  OGLM_CHECK_ERR(glTexScissorFuncINTEL, )
#line 71055 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexScissorINTEL); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexScissorINTEL)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, tlow, thigh");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLclampf	tlow = (float)SvNV(ST(1))
;
	GLclampf	thigh = (float)SvNV(ST(2))
;
#line 35123 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexScissorINTEL, )
  OGLM_AVAIL_CHECK(__glewTexScissorINTEL, glTexScissorINTEL)
  glTexScissorINTEL(target, tlow, thigh);
  OGLM_CHECK_ERR(glTexScissorINTEL, )
#line 71080 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexStorage1D); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexStorage1D)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "target, levels, internalformat, width");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	levels = (int)SvIV(ST(1))
;
	GLenum	internalformat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
#line 35138 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexStorage1D, )
  OGLM_AVAIL_CHECK(__glewTexStorage1D, glTexStorage1D)
  glTexStorage1D(target, levels, internalformat, width);
  OGLM_CHECK_ERR(glTexStorage1D, )
#line 71108 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexStorage2D); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexStorage2D)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "target, levels, internalformat, width, height");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	levels = (int)SvIV(ST(1))
;
	GLenum	internalformat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
#line 35154 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexStorage2D, )
  OGLM_AVAIL_CHECK(__glewTexStorage2D, glTexStorage2D)
  glTexStorage2D(target, levels, internalformat, width, height);
  OGLM_CHECK_ERR(glTexStorage2D, )
#line 71138 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexStorage2DMultisample); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexStorage2DMultisample)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "target, samples, internalformat, width, height, fixedsamplelocations");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	samples = (int)SvIV(ST(1))
;
	GLenum	internalformat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
	GLboolean	fixedsamplelocations = (int)SvIV(ST(5))
;
#line 35169 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexStorage2DMultisample, )
  OGLM_AVAIL_CHECK(__glewTexStorage2DMultisample, glTexStorage2DMultisample)
  glTexStorage2DMultisample(target, samples, internalformat, width, height, fixedsamplelocations);
  OGLM_CHECK_ERR(glTexStorage2DMultisample, )
#line 71169 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexStorage3D); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexStorage3D)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 6)
       croak_xs_usage(cv,  "target, levels, internalformat, width, height, depth");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	levels = (int)SvIV(ST(1))
;
	GLenum	internalformat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
	GLsizei	depth = (int)SvIV(ST(5))
;
#line 35186 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexStorage3D, )
  OGLM_AVAIL_CHECK(__glewTexStorage3D, glTexStorage3D)
  glTexStorage3D(target, levels, internalformat, width, height, depth);
  OGLM_CHECK_ERR(glTexStorage3D, )
#line 71201 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexStorage3DMultisample); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexStorage3DMultisample)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "target, samples, internalformat, width, height, depth, fixedsamplelocations");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	samples = (int)SvIV(ST(1))
;
	GLenum	internalformat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
	GLsizei	depth = (int)SvIV(ST(5))
;
	GLboolean	fixedsamplelocations = (int)SvIV(ST(6))
;
#line 35202 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexStorage3DMultisample, )
  OGLM_AVAIL_CHECK(__glewTexStorage3DMultisample, glTexStorage3DMultisample)
  glTexStorage3DMultisample(target, samples, internalformat, width, height, depth, fixedsamplelocations);
  OGLM_CHECK_ERR(glTexStorage3DMultisample, )
#line 71234 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexStorage3DMultisampleOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexStorage3DMultisampleOES)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "target, samples, internalformat, width, height, depth, fixedsamplelocations");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	samples = (int)SvIV(ST(1))
;
	GLenum	internalformat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
	GLsizei	depth = (int)SvIV(ST(5))
;
	GLboolean	fixedsamplelocations = (int)SvIV(ST(6))
;
#line 35218 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexStorage3DMultisampleOES, )
  OGLM_AVAIL_CHECK(__glewTexStorage3DMultisampleOES, glTexStorage3DMultisampleOES)
  glTexStorage3DMultisampleOES(target, samples, internalformat, width, height, depth, fixedsamplelocations);
  OGLM_CHECK_ERR(glTexStorage3DMultisampleOES, )
#line 71267 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexStorageAttribs2DEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexStorageAttribs2DEXT_c)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "target, levels, internalformat, width, height, attrib_list");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	levels = (int)SvIV(ST(1))
;
	GLenum	internalformat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
	const GLint*	attrib_list = INT2PTR(const GLint *,SvIV(ST(5)))
;
#line 35233 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexStorageAttribs2DEXT, )
  OGLM_AVAIL_CHECK(__glewTexStorageAttribs2DEXT, glTexStorageAttribs2DEXT)
  glTexStorageAttribs2DEXT(target, levels, internalformat, width, height, attrib_list);
  OGLM_CHECK_ERR(glTexStorageAttribs2DEXT, )
#line 71298 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexStorageAttribs3DEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexStorageAttribs3DEXT_c)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "target, levels, internalformat, width, height, depth, attrib_list");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	levels = (int)SvIV(ST(1))
;
	GLenum	internalformat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
	GLsizei	depth = (int)SvIV(ST(5))
;
	const GLint*	attrib_list = INT2PTR(const GLint *,SvIV(ST(6)))
;
#line 35249 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexStorageAttribs3DEXT, )
  OGLM_AVAIL_CHECK(__glewTexStorageAttribs3DEXT, glTexStorageAttribs3DEXT)
  glTexStorageAttribs3DEXT(target, levels, internalformat, width, height, depth, attrib_list);
  OGLM_CHECK_ERR(glTexStorageAttribs3DEXT, )
#line 71331 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexStorageMem1DEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexStorageMem1DEXT)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "target, levels, internalFormat, width, memory, offset");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	levels = (int)SvIV(ST(1))
;
	GLenum	internalFormat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLuint	memory = (unsigned int)SvUV(ST(4))
;
	GLuint64	offset = (unsigned int)SvUV(ST(5))
;
#line 35264 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexStorageMem1DEXT, )
  OGLM_AVAIL_CHECK(__glewTexStorageMem1DEXT, glTexStorageMem1DEXT)
  glTexStorageMem1DEXT(target, levels, internalFormat, width, memory, offset);
  OGLM_CHECK_ERR(glTexStorageMem1DEXT, )
#line 71362 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexStorageMem2DEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexStorageMem2DEXT)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "target, levels, internalFormat, width, height, memory, offset");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	levels = (int)SvIV(ST(1))
;
	GLenum	internalFormat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
	GLuint	memory = (unsigned int)SvUV(ST(5))
;
	GLuint64	offset = (unsigned int)SvUV(ST(6))
;
#line 35280 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexStorageMem2DEXT, )
  OGLM_AVAIL_CHECK(__glewTexStorageMem2DEXT, glTexStorageMem2DEXT)
  glTexStorageMem2DEXT(target, levels, internalFormat, width, height, memory, offset);
  OGLM_CHECK_ERR(glTexStorageMem2DEXT, )
#line 71395 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexStorageMem2DMultisampleEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexStorageMem2DMultisampleEXT)
{
    dVAR; dXSARGS;
    if (items != 8)
       croak_xs_usage(cv,  "target, samples, internalFormat, width, height, fixedSampleLocations, memory, offset");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	samples = (int)SvIV(ST(1))
;
	GLenum	internalFormat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
	GLboolean	fixedSampleLocations = (int)SvIV(ST(5))
;
	GLuint	memory = (unsigned int)SvUV(ST(6))
;
	GLuint64	offset = (unsigned int)SvUV(ST(7))
;
#line 35297 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexStorageMem2DMultisampleEXT, )
  OGLM_AVAIL_CHECK(__glewTexStorageMem2DMultisampleEXT, glTexStorageMem2DMultisampleEXT)
  glTexStorageMem2DMultisampleEXT(target, samples, internalFormat, width, height, fixedSampleLocations, memory, offset);
  OGLM_CHECK_ERR(glTexStorageMem2DMultisampleEXT, )
#line 71430 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexStorageMem3DEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexStorageMem3DEXT)
{
    dVAR; dXSARGS;
    if (items != 8)
       croak_xs_usage(cv,  "target, levels, internalFormat, width, height, depth, memory, offset");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	levels = (int)SvIV(ST(1))
;
	GLenum	internalFormat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
	GLsizei	depth = (int)SvIV(ST(5))
;
	GLuint	memory = (unsigned int)SvUV(ST(6))
;
	GLuint64	offset = (unsigned int)SvUV(ST(7))
;
#line 35314 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexStorageMem3DEXT, )
  OGLM_AVAIL_CHECK(__glewTexStorageMem3DEXT, glTexStorageMem3DEXT)
  glTexStorageMem3DEXT(target, levels, internalFormat, width, height, depth, memory, offset);
  OGLM_CHECK_ERR(glTexStorageMem3DEXT, )
#line 71465 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexStorageMem3DMultisampleEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexStorageMem3DMultisampleEXT)
{
    dVAR; dXSARGS;
    if (items != 9)
       croak_xs_usage(cv,  "target, samples, internalFormat, width, height, depth, fixedSampleLocations, memory, offset");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	samples = (int)SvIV(ST(1))
;
	GLenum	internalFormat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
	GLsizei	depth = (int)SvIV(ST(5))
;
	GLboolean	fixedSampleLocations = (int)SvIV(ST(6))
;
	GLuint	memory = (unsigned int)SvUV(ST(7))
;
	GLuint64	offset = (unsigned int)SvUV(ST(8))
;
#line 35332 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexStorageMem3DMultisampleEXT, )
  OGLM_AVAIL_CHECK(__glewTexStorageMem3DMultisampleEXT, glTexStorageMem3DMultisampleEXT)
  glTexStorageMem3DMultisampleEXT(target, samples, internalFormat, width, height, depth, fixedSampleLocations, memory, offset);
  OGLM_CHECK_ERR(glTexStorageMem3DMultisampleEXT, )
#line 71502 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexStorageSparseAMD); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexStorageSparseAMD)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "target, internalFormat, width, height, depth, layers, flags");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLenum	internalFormat = (int)SvIV(ST(1))
;
	GLsizei	width = (int)SvIV(ST(2))
;
	GLsizei	height = (int)SvIV(ST(3))
;
	GLsizei	depth = (int)SvIV(ST(4))
;
	GLsizei	layers = (int)SvIV(ST(5))
;
	GLbitfield	flags = (int)SvIV(ST(6))
;
#line 35348 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexStorageSparseAMD, )
  OGLM_AVAIL_CHECK(__glewTexStorageSparseAMD, glTexStorageSparseAMD)
  glTexStorageSparseAMD(target, internalFormat, width, height, depth, layers, flags);
  OGLM_CHECK_ERR(glTexStorageSparseAMD, )
#line 71535 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexSubImage1D_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexSubImage1D_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 7)
       croak_xs_usage(cv,  "target, level, xoffset, width, format, type, pixels");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLint	xoffset = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLenum	format = (int)SvIV(ST(4))
;
	GLenum	type = (int)SvIV(ST(5))
;
	const void *	pixels = INT2PTR(const void *,SvIV(ST(6)))
;
#line 35366 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexSubImage1D, )
  glTexSubImage1D(target, level, xoffset, width, format, type, pixels);
  OGLM_CHECK_ERR(glTexSubImage1D, )
#line 71568 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexSubImage2D_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexSubImage2D_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 9)
       croak_xs_usage(cv,  "target, level, xoffset, yoffset, width, height, format, type, pixels");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLint	xoffset = (int)SvIV(ST(2))
;
	GLint	yoffset = (int)SvIV(ST(3))
;
	GLsizei	width = (int)SvIV(ST(4))
;
	GLsizei	height = (int)SvIV(ST(5))
;
	GLenum	format = (int)SvIV(ST(6))
;
	GLenum	type = (int)SvIV(ST(7))
;
	const void *	pixels = INT2PTR(const void *,SvIV(ST(8)))
;
#line 35385 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexSubImage2D, )
  glTexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels);
  OGLM_CHECK_ERR(glTexSubImage2D, )
#line 71605 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexSubImage3D_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexSubImage3D_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 11)
       croak_xs_usage(cv,  "target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLint	xoffset = (int)SvIV(ST(2))
;
	GLint	yoffset = (int)SvIV(ST(3))
;
	GLint	zoffset = (int)SvIV(ST(4))
;
	GLsizei	width = (int)SvIV(ST(5))
;
	GLsizei	height = (int)SvIV(ST(6))
;
	GLsizei	depth = (int)SvIV(ST(7))
;
	GLenum	format = (int)SvIV(ST(8))
;
	GLenum	type = (int)SvIV(ST(9))
;
	const void *	pixels = INT2PTR(const void *,SvIV(ST(10)))
;
#line 35406 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexSubImage3D, )
  OGLM_AVAIL_CHECK(__glewTexSubImage3D, glTexSubImage3D)
  glTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
  OGLM_CHECK_ERR(glTexSubImage3D, )
#line 71647 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexSubImage3DNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexSubImage3DNV_c)
{
    dVAR; dXSARGS;
    if (items != 11)
       croak_xs_usage(cv,  "target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLint	xoffset = (int)SvIV(ST(2))
;
	GLint	yoffset = (int)SvIV(ST(3))
;
	GLint	zoffset = (int)SvIV(ST(4))
;
	GLsizei	width = (int)SvIV(ST(5))
;
	GLsizei	height = (int)SvIV(ST(6))
;
	GLsizei	depth = (int)SvIV(ST(7))
;
	GLenum	format = (int)SvIV(ST(8))
;
	GLenum	type = (int)SvIV(ST(9))
;
	const void *	pixels = INT2PTR(const void *,SvIV(ST(10)))
;
#line 35426 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexSubImage3DNV, )
  OGLM_AVAIL_CHECK(__glewTexSubImage3DNV, glTexSubImage3DNV)
  glTexSubImage3DNV(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
  OGLM_CHECK_ERR(glTexSubImage3DNV, )
#line 71688 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexSubImage3DOES_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexSubImage3DOES_c)
{
    dVAR; dXSARGS;
    if (items != 11)
       croak_xs_usage(cv,  "target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLint	xoffset = (int)SvIV(ST(2))
;
	GLint	yoffset = (int)SvIV(ST(3))
;
	GLint	zoffset = (int)SvIV(ST(4))
;
	GLsizei	width = (int)SvIV(ST(5))
;
	GLsizei	height = (int)SvIV(ST(6))
;
	GLsizei	depth = (int)SvIV(ST(7))
;
	GLenum	format = (int)SvIV(ST(8))
;
	GLenum	type = (int)SvIV(ST(9))
;
	const void *	pixels = INT2PTR(const void *,SvIV(ST(10)))
;
#line 35446 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexSubImage3DOES, )
  OGLM_AVAIL_CHECK(__glewTexSubImage3DOES, glTexSubImage3DOES)
  glTexSubImage3DOES(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
  OGLM_CHECK_ERR(glTexSubImage3DOES, )
#line 71729 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexSubImage4DSGIS_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexSubImage4DSGIS_c)
{
    dVAR; dXSARGS;
    if (items != 13)
       croak_xs_usage(cv,  "target, level, xoffset, yoffset, zoffset, woffset, width, height, depth, size4d, format, type, pixels");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLint	xoffset = (int)SvIV(ST(2))
;
	GLint	yoffset = (int)SvIV(ST(3))
;
	GLint	zoffset = (int)SvIV(ST(4))
;
	GLint	woffset = (int)SvIV(ST(5))
;
	GLsizei	width = (int)SvIV(ST(6))
;
	GLsizei	height = (int)SvIV(ST(7))
;
	GLsizei	depth = (int)SvIV(ST(8))
;
	GLsizei	size4d = (int)SvIV(ST(9))
;
	GLenum	format = (int)SvIV(ST(10))
;
	GLenum	type = (int)SvIV(ST(11))
;
	const void *	pixels = INT2PTR(const void *,SvIV(ST(12)))
;
#line 35468 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexSubImage4DSGIS, )
  OGLM_AVAIL_CHECK(__glewTexSubImage4DSGIS, glTexSubImage4DSGIS)
  glTexSubImage4DSGIS(target, level, xoffset, yoffset, zoffset, woffset, width, height, depth, size4d, format, type, pixels);
  OGLM_CHECK_ERR(glTexSubImage4DSGIS, )
#line 71774 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureAttachMemoryNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureAttachMemoryNV)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texture, memory, offset");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLuint	memory = (unsigned int)SvUV(ST(1))
;
	GLuint64	offset = (unsigned int)SvUV(ST(2))
;
#line 35480 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureAttachMemoryNV, )
  OGLM_AVAIL_CHECK(__glewTextureAttachMemoryNV, glTextureAttachMemoryNV)
  glTextureAttachMemoryNV(texture, memory, offset);
  OGLM_CHECK_ERR(glTextureAttachMemoryNV, )
#line 71799 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureBarrier); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureBarrier)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 35489 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureBarrier, )
  OGLM_AVAIL_CHECK(__glewTextureBarrier, glTextureBarrier)
  glTextureBarrier();
  OGLM_CHECK_ERR(glTextureBarrier, )
#line 71818 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureBarrierNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureBarrierNV)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 35498 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureBarrierNV, )
  OGLM_AVAIL_CHECK(__glewTextureBarrierNV, glTextureBarrierNV)
  glTextureBarrierNV();
  OGLM_CHECK_ERR(glTextureBarrierNV, )
#line 71837 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureBuffer); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureBuffer)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texture, internalformat, buffer");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	internalformat = (int)SvIV(ST(1))
;
	GLuint	buffer = (unsigned int)SvUV(ST(2))
;
#line 35510 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureBuffer, )
  OGLM_AVAIL_CHECK(__glewTextureBuffer, glTextureBuffer)
  glTextureBuffer(texture, internalformat, buffer);
  OGLM_CHECK_ERR(glTextureBuffer, )
#line 71862 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureBufferEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureBufferEXT)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texture, target, internalformat, buffer");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	internalformat = (int)SvIV(ST(2))
;
	GLuint	buffer = (unsigned int)SvUV(ST(3))
;
#line 35523 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureBufferEXT, )
  OGLM_AVAIL_CHECK(__glewTextureBufferEXT, glTextureBufferEXT)
  glTextureBufferEXT(texture, target, internalformat, buffer);
  OGLM_CHECK_ERR(glTextureBufferEXT, )
#line 71889 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureBufferRange); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureBufferRange)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "texture, internalformat, buffer, offset, size");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	internalformat = (int)SvIV(ST(1))
;
	GLuint	buffer = (unsigned int)SvUV(ST(2))
;
	GLintptr	offset = (unsigned int)SvUV(ST(3))
;
	GLsizeiptr	size = (unsigned int)SvUV(ST(4))
;
#line 35537 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureBufferRange, )
  OGLM_AVAIL_CHECK(__glewTextureBufferRange, glTextureBufferRange)
  glTextureBufferRange(texture, internalformat, buffer, offset, size);
  OGLM_CHECK_ERR(glTextureBufferRange, )
#line 71918 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureBufferRangeEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureBufferRangeEXT)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "texture, target, internalformat, buffer, offset, size");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	internalformat = (int)SvIV(ST(2))
;
	GLuint	buffer = (unsigned int)SvUV(ST(3))
;
	GLintptr	offset = (unsigned int)SvUV(ST(4))
;
	GLsizeiptr	size = (unsigned int)SvUV(ST(5))
;
#line 35552 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureBufferRangeEXT, )
  OGLM_AVAIL_CHECK(__glewTextureBufferRangeEXT, glTextureBufferRangeEXT)
  glTextureBufferRangeEXT(texture, target, internalformat, buffer, offset, size);
  OGLM_CHECK_ERR(glTextureBufferRangeEXT, )
#line 71949 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureFogSGIX); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureFogSGIX)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "pname");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
#line 35562 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureFogSGIX, )
  OGLM_AVAIL_CHECK(__glewTextureFogSGIX, glTextureFogSGIX)
  glTextureFogSGIX(pname);
  OGLM_CHECK_ERR(glTextureFogSGIX, )
#line 71970 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureFoveationParametersQCOM); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureFoveationParametersQCOM)
{
    dVAR; dXSARGS;
    if (items != 8)
       croak_xs_usage(cv,  "texture, layer, focalPoint, focalX, focalY, gainX, gainY, foveaArea");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLuint	layer = (unsigned int)SvUV(ST(1))
;
	GLuint	focalPoint = (unsigned int)SvUV(ST(2))
;
	GLfloat	focalX = (float)SvNV(ST(3))
;
	GLfloat	focalY = (float)SvNV(ST(4))
;
	GLfloat	gainX = (float)SvNV(ST(5))
;
	GLfloat	gainY = (float)SvNV(ST(6))
;
	GLfloat	foveaArea = (float)SvNV(ST(7))
;
#line 35579 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureFoveationParametersQCOM, )
  OGLM_AVAIL_CHECK(__glewTextureFoveationParametersQCOM, glTextureFoveationParametersQCOM)
  glTextureFoveationParametersQCOM(texture, layer, focalPoint, focalX, focalY, gainX, gainY, foveaArea);
  OGLM_CHECK_ERR(glTextureFoveationParametersQCOM, )
#line 72005 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureImage1DEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureImage1DEXT_c)
{
    dVAR; dXSARGS;
    if (items != 9)
       croak_xs_usage(cv,  "texture, target, level, internalformat, width, border, format, type, pixels");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLint	internalformat = (int)SvIV(ST(3))
;
	GLsizei	width = (int)SvIV(ST(4))
;
	GLint	border = (int)SvIV(ST(5))
;
	GLenum	format = (int)SvIV(ST(6))
;
	GLenum	type = (int)SvIV(ST(7))
;
	const void *	pixels = INT2PTR(const void *,SvIV(ST(8)))
;
#line 35597 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureImage1DEXT, )
  OGLM_AVAIL_CHECK(__glewTextureImage1DEXT, glTextureImage1DEXT)
  glTextureImage1DEXT(texture, target, level, internalformat, width, border, format, type, pixels);
  OGLM_CHECK_ERR(glTextureImage1DEXT, )
#line 72042 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureImage2DEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureImage2DEXT_c)
{
    dVAR; dXSARGS;
    if (items != 10)
       croak_xs_usage(cv,  "texture, target, level, internalformat, width, height, border, format, type, pixels");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLint	internalformat = (int)SvIV(ST(3))
;
	GLsizei	width = (int)SvIV(ST(4))
;
	GLsizei	height = (int)SvIV(ST(5))
;
	GLint	border = (int)SvIV(ST(6))
;
	GLenum	format = (int)SvIV(ST(7))
;
	GLenum	type = (int)SvIV(ST(8))
;
	const void *	pixels = INT2PTR(const void *,SvIV(ST(9)))
;
#line 35616 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureImage2DEXT, )
  OGLM_AVAIL_CHECK(__glewTextureImage2DEXT, glTextureImage2DEXT)
  glTextureImage2DEXT(texture, target, level, internalformat, width, height, border, format, type, pixels);
  OGLM_CHECK_ERR(glTextureImage2DEXT, )
#line 72081 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureImage2DMultisampleCoverageNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureImage2DMultisampleCoverageNV)
{
    dVAR; dXSARGS;
    if (items != 8)
       croak_xs_usage(cv,  "texture, target, coverageSamples, colorSamples, internalFormat, width, height, fixedSampleLocations");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLsizei	coverageSamples = (int)SvIV(ST(2))
;
	GLsizei	colorSamples = (int)SvIV(ST(3))
;
	GLint	internalFormat = (int)SvIV(ST(4))
;
	GLsizei	width = (int)SvIV(ST(5))
;
	GLsizei	height = (int)SvIV(ST(6))
;
	GLboolean	fixedSampleLocations = (int)SvIV(ST(7))
;
#line 35633 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureImage2DMultisampleCoverageNV, )
  OGLM_AVAIL_CHECK(__glewTextureImage2DMultisampleCoverageNV, glTextureImage2DMultisampleCoverageNV)
  glTextureImage2DMultisampleCoverageNV(texture, target, coverageSamples, colorSamples, internalFormat, width, height, fixedSampleLocations);
  OGLM_CHECK_ERR(glTextureImage2DMultisampleCoverageNV, )
#line 72116 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureImage2DMultisampleNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureImage2DMultisampleNV)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "texture, target, samples, internalFormat, width, height, fixedSampleLocations");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLsizei	samples = (int)SvIV(ST(2))
;
	GLint	internalFormat = (int)SvIV(ST(3))
;
	GLsizei	width = (int)SvIV(ST(4))
;
	GLsizei	height = (int)SvIV(ST(5))
;
	GLboolean	fixedSampleLocations = (int)SvIV(ST(6))
;
#line 35649 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureImage2DMultisampleNV, )
  OGLM_AVAIL_CHECK(__glewTextureImage2DMultisampleNV, glTextureImage2DMultisampleNV)
  glTextureImage2DMultisampleNV(texture, target, samples, internalFormat, width, height, fixedSampleLocations);
  OGLM_CHECK_ERR(glTextureImage2DMultisampleNV, )
#line 72149 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureImage3DEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureImage3DEXT_c)
{
    dVAR; dXSARGS;
    if (items != 11)
       croak_xs_usage(cv,  "texture, target, level, internalformat, width, height, depth, border, format, type, pixels");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLint	internalformat = (int)SvIV(ST(3))
;
	GLsizei	width = (int)SvIV(ST(4))
;
	GLsizei	height = (int)SvIV(ST(5))
;
	GLsizei	depth = (int)SvIV(ST(6))
;
	GLint	border = (int)SvIV(ST(7))
;
	GLenum	format = (int)SvIV(ST(8))
;
	GLenum	type = (int)SvIV(ST(9))
;
	const void *	pixels = INT2PTR(const void *,SvIV(ST(10)))
;
#line 35669 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureImage3DEXT, )
  OGLM_AVAIL_CHECK(__glewTextureImage3DEXT, glTextureImage3DEXT)
  glTextureImage3DEXT(texture, target, level, internalformat, width, height, depth, border, format, type, pixels);
  OGLM_CHECK_ERR(glTextureImage3DEXT, )
#line 72190 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureImage3DMultisampleCoverageNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureImage3DMultisampleCoverageNV)
{
    dVAR; dXSARGS;
    if (items != 9)
       croak_xs_usage(cv,  "texture, target, coverageSamples, colorSamples, internalFormat, width, height, depth, fixedSampleLocations");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLsizei	coverageSamples = (int)SvIV(ST(2))
;
	GLsizei	colorSamples = (int)SvIV(ST(3))
;
	GLint	internalFormat = (int)SvIV(ST(4))
;
	GLsizei	width = (int)SvIV(ST(5))
;
	GLsizei	height = (int)SvIV(ST(6))
;
	GLsizei	depth = (int)SvIV(ST(7))
;
	GLboolean	fixedSampleLocations = (int)SvIV(ST(8))
;
#line 35687 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureImage3DMultisampleCoverageNV, )
  OGLM_AVAIL_CHECK(__glewTextureImage3DMultisampleCoverageNV, glTextureImage3DMultisampleCoverageNV)
  glTextureImage3DMultisampleCoverageNV(texture, target, coverageSamples, colorSamples, internalFormat, width, height, depth, fixedSampleLocations);
  OGLM_CHECK_ERR(glTextureImage3DMultisampleCoverageNV, )
#line 72227 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureImage3DMultisampleNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureImage3DMultisampleNV)
{
    dVAR; dXSARGS;
    if (items != 8)
       croak_xs_usage(cv,  "texture, target, samples, internalFormat, width, height, depth, fixedSampleLocations");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLsizei	samples = (int)SvIV(ST(2))
;
	GLint	internalFormat = (int)SvIV(ST(3))
;
	GLsizei	width = (int)SvIV(ST(4))
;
	GLsizei	height = (int)SvIV(ST(5))
;
	GLsizei	depth = (int)SvIV(ST(6))
;
	GLboolean	fixedSampleLocations = (int)SvIV(ST(7))
;
#line 35704 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureImage3DMultisampleNV, )
  OGLM_AVAIL_CHECK(__glewTextureImage3DMultisampleNV, glTextureImage3DMultisampleNV)
  glTextureImage3DMultisampleNV(texture, target, samples, internalFormat, width, height, depth, fixedSampleLocations);
  OGLM_CHECK_ERR(glTextureImage3DMultisampleNV, )
#line 72262 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureLightEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureLightEXT)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "pname");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
#line 35714 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureLightEXT, )
  OGLM_AVAIL_CHECK(__glewTextureLightEXT, glTextureLightEXT)
  glTextureLightEXT(pname);
  OGLM_CHECK_ERR(glTextureLightEXT, )
#line 72283 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureMaterialEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureMaterialEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "face, mode");
    {
	GLenum	face = (int)SvIV(ST(0))
;
	GLenum	mode = (int)SvIV(ST(1))
;
#line 35725 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureMaterialEXT, )
  OGLM_AVAIL_CHECK(__glewTextureMaterialEXT, glTextureMaterialEXT)
  glTextureMaterialEXT(face, mode);
  OGLM_CHECK_ERR(glTextureMaterialEXT, )
#line 72306 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureNormalEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureNormalEXT)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "mode");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
#line 35735 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureNormalEXT, )
  OGLM_AVAIL_CHECK(__glewTextureNormalEXT, glTextureNormalEXT)
  glTextureNormalEXT(mode);
  OGLM_CHECK_ERR(glTextureNormalEXT, )
#line 72327 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexturePageCommitmentEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexturePageCommitmentEXT)
{
    dVAR; dXSARGS;
    if (items != 9)
       croak_xs_usage(cv,  "texture, level, xoffset, yoffset, zoffset, width, height, depth, commit");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLint	xoffset = (int)SvIV(ST(2))
;
	GLint	yoffset = (int)SvIV(ST(3))
;
	GLint	zoffset = (int)SvIV(ST(4))
;
	GLsizei	width = (int)SvIV(ST(5))
;
	GLsizei	height = (int)SvIV(ST(6))
;
	GLsizei	depth = (int)SvIV(ST(7))
;
	GLboolean	commit = (int)SvIV(ST(8))
;
#line 35753 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexturePageCommitmentEXT, )
  OGLM_AVAIL_CHECK(__glewTexturePageCommitmentEXT, glTexturePageCommitmentEXT)
  glTexturePageCommitmentEXT(texture, level, xoffset, yoffset, zoffset, width, height, depth, commit);
  OGLM_CHECK_ERR(glTexturePageCommitmentEXT, )
#line 72364 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTexturePageCommitmentMemNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTexturePageCommitmentMemNV)
{
    dVAR; dXSARGS;
    if (items != 12)
       croak_xs_usage(cv,  "texture, layer, level, xoffset, yoffset, zoffset, width, height, depth, memory, offset, commit");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLint	layer = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLint	xoffset = (int)SvIV(ST(3))
;
	GLint	yoffset = (int)SvIV(ST(4))
;
	GLint	zoffset = (int)SvIV(ST(5))
;
	GLsizei	width = (int)SvIV(ST(6))
;
	GLsizei	height = (int)SvIV(ST(7))
;
	GLsizei	depth = (int)SvIV(ST(8))
;
	GLuint	memory = (unsigned int)SvUV(ST(9))
;
	GLuint64	offset = (unsigned int)SvUV(ST(10))
;
	GLboolean	commit = (int)SvIV(ST(11))
;
#line 35774 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTexturePageCommitmentMemNV, )
  OGLM_AVAIL_CHECK(__glewTexturePageCommitmentMemNV, glTexturePageCommitmentMemNV)
  glTexturePageCommitmentMemNV(texture, layer, level, xoffset, yoffset, zoffset, width, height, depth, memory, offset, commit);
  OGLM_CHECK_ERR(glTexturePageCommitmentMemNV, )
#line 72407 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureParameterIiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureParameterIiv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texture, pname, params");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLint*	params = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 35786 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureParameterIiv, )
  OGLM_AVAIL_CHECK(__glewTextureParameterIiv, glTextureParameterIiv)
  glTextureParameterIiv(texture, pname, params);
  OGLM_CHECK_ERR(glTextureParameterIiv, )
#line 72432 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureParameterIiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureParameterIiv_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "texture, pname, ...");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 35797 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureParameterIiv, )
  OGLM_AVAIL_CHECK(__glewTextureParameterIiv, glTextureParameterIiv)
  OGLM_SIZE_ENUM(TextureParameterName,pname,1)
  GLint* params = OGLM_GET_VARARGS(params,2,GLint,IV,pname_count);
  glTextureParameterIiv((GLuint )texture, (GLenum )pname, (const GLint* )params);
  OGLM_CHECK_ERR(glTextureParameterIiv, free(params);)
  free(params);
#line 72458 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureParameterIivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureParameterIivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texture, target, pname, params");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	const GLint*	params = INT2PTR(const GLint *,SvIV(ST(3)))
;
#line 35813 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureParameterIivEXT, )
  OGLM_AVAIL_CHECK(__glewTextureParameterIivEXT, glTextureParameterIivEXT)
  glTextureParameterIivEXT(texture, target, pname, params);
  OGLM_CHECK_ERR(glTextureParameterIivEXT, )
#line 72485 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureParameterIivEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureParameterIivEXT_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "texture, target, pname, ...");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
#line 35825 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureParameterIivEXT, )
  OGLM_AVAIL_CHECK(__glewTextureParameterIivEXT, glTextureParameterIivEXT)
  OGLM_SIZE_ENUM(TextureParameterName,pname,1)
  GLint* params = OGLM_GET_VARARGS(params,3,GLint,IV,pname_count);
  glTextureParameterIivEXT((GLuint )texture, (GLenum )target, (GLenum )pname, (const GLint* )params);
  OGLM_CHECK_ERR(glTextureParameterIivEXT, free(params);)
  free(params);
#line 72513 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureParameterIuiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureParameterIuiv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texture, pname, params");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLuint*	params = INT2PTR(const GLuint *,SvIV(ST(2)))
;
#line 35840 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureParameterIuiv, )
  OGLM_AVAIL_CHECK(__glewTextureParameterIuiv, glTextureParameterIuiv)
  glTextureParameterIuiv(texture, pname, params);
  OGLM_CHECK_ERR(glTextureParameterIuiv, )
#line 72538 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureParameterIuiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureParameterIuiv_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "texture, pname, ...");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 35851 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureParameterIuiv, )
  OGLM_AVAIL_CHECK(__glewTextureParameterIuiv, glTextureParameterIuiv)
  OGLM_SIZE_ENUM(TextureParameterName,pname,1)
  GLuint* params = OGLM_GET_VARARGS(params,2,GLuint,UV,pname_count);
  glTextureParameterIuiv((GLuint )texture, (GLenum )pname, (const GLuint* )params);
  OGLM_CHECK_ERR(glTextureParameterIuiv, free(params);)
  free(params);
#line 72564 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureParameterIuivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureParameterIuivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texture, target, pname, params");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	const GLuint*	params = INT2PTR(const GLuint *,SvIV(ST(3)))
;
#line 35867 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureParameterIuivEXT, )
  OGLM_AVAIL_CHECK(__glewTextureParameterIuivEXT, glTextureParameterIuivEXT)
  glTextureParameterIuivEXT(texture, target, pname, params);
  OGLM_CHECK_ERR(glTextureParameterIuivEXT, )
#line 72591 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureParameterIuivEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureParameterIuivEXT_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "texture, target, pname, ...");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
#line 35879 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureParameterIuivEXT, )
  OGLM_AVAIL_CHECK(__glewTextureParameterIuivEXT, glTextureParameterIuivEXT)
  OGLM_SIZE_ENUM(TextureParameterName,pname,1)
  GLuint* params = OGLM_GET_VARARGS(params,3,GLuint,UV,pname_count);
  glTextureParameterIuivEXT((GLuint )texture, (GLenum )target, (GLenum )pname, (const GLuint* )params);
  OGLM_CHECK_ERR(glTextureParameterIuivEXT, free(params);)
  free(params);
#line 72619 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureParameterf); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureParameterf)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texture, pname, param");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLfloat	param = (float)SvNV(ST(2))
;
#line 35894 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureParameterf, )
  OGLM_AVAIL_CHECK(__glewTextureParameterf, glTextureParameterf)
  glTextureParameterf(texture, pname, param);
  OGLM_CHECK_ERR(glTextureParameterf, )
#line 72644 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureParameterfEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureParameterfEXT)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texture, target, pname, param");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLfloat	param = (float)SvNV(ST(3))
;
#line 35907 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureParameterfEXT, )
  OGLM_AVAIL_CHECK(__glewTextureParameterfEXT, glTextureParameterfEXT)
  glTextureParameterfEXT(texture, target, pname, param);
  OGLM_CHECK_ERR(glTextureParameterfEXT, )
#line 72671 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureParameterfv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureParameterfv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texture, pname, param");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLfloat*	param = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 35919 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureParameterfv, )
  OGLM_AVAIL_CHECK(__glewTextureParameterfv, glTextureParameterfv)
  glTextureParameterfv(texture, pname, param);
  OGLM_CHECK_ERR(glTextureParameterfv, )
#line 72696 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureParameterfv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureParameterfv_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "texture, pname, ...");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 35930 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureParameterfv, )
  OGLM_AVAIL_CHECK(__glewTextureParameterfv, glTextureParameterfv)
  OGLM_SIZE_ENUM(TextureParameterName,pname,1)
  GLfloat* param = OGLM_GET_VARARGS(param,2,GLfloat,NV,pname_count);
  glTextureParameterfv((GLuint )texture, (GLenum )pname, (const GLfloat* )param);
  OGLM_CHECK_ERR(glTextureParameterfv, free(param);)
  free(param);
#line 72722 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureParameterfvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureParameterfvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texture, target, pname, params");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	const GLfloat*	params = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 35946 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureParameterfvEXT, )
  OGLM_AVAIL_CHECK(__glewTextureParameterfvEXT, glTextureParameterfvEXT)
  glTextureParameterfvEXT(texture, target, pname, params);
  OGLM_CHECK_ERR(glTextureParameterfvEXT, )
#line 72749 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureParameterfvEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureParameterfvEXT_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "texture, target, pname, ...");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
#line 35958 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureParameterfvEXT, )
  OGLM_AVAIL_CHECK(__glewTextureParameterfvEXT, glTextureParameterfvEXT)
  OGLM_SIZE_ENUM(TextureParameterName,pname,1)
  GLfloat* params = OGLM_GET_VARARGS(params,3,GLfloat,NV,pname_count);
  glTextureParameterfvEXT((GLuint )texture, (GLenum )target, (GLenum )pname, (const GLfloat* )params);
  OGLM_CHECK_ERR(glTextureParameterfvEXT, free(params);)
  free(params);
#line 72777 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureParameteri); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureParameteri)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texture, pname, param");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint	param = (int)SvIV(ST(2))
;
#line 35973 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureParameteri, )
  OGLM_AVAIL_CHECK(__glewTextureParameteri, glTextureParameteri)
  glTextureParameteri(texture, pname, param);
  OGLM_CHECK_ERR(glTextureParameteri, )
#line 72802 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureParameteriEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureParameteriEXT)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texture, target, pname, param");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	GLint	param = (int)SvIV(ST(3))
;
#line 35986 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureParameteriEXT, )
  OGLM_AVAIL_CHECK(__glewTextureParameteriEXT, glTextureParameteriEXT)
  glTextureParameteriEXT(texture, target, pname, param);
  OGLM_CHECK_ERR(glTextureParameteriEXT, )
#line 72829 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureParameteriv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureParameteriv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texture, pname, param");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	const GLint*	param = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 35998 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureParameteriv, )
  OGLM_AVAIL_CHECK(__glewTextureParameteriv, glTextureParameteriv)
  glTextureParameteriv(texture, pname, param);
  OGLM_CHECK_ERR(glTextureParameteriv, )
#line 72854 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureParameteriv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureParameteriv_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "texture, pname, ...");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
#line 36009 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureParameteriv, )
  OGLM_AVAIL_CHECK(__glewTextureParameteriv, glTextureParameteriv)
  OGLM_SIZE_ENUM(TextureParameterName,pname,1)
  GLint* param = OGLM_GET_VARARGS(param,2,GLint,IV,pname_count);
  glTextureParameteriv((GLuint )texture, (GLenum )pname, (const GLint* )param);
  OGLM_CHECK_ERR(glTextureParameteriv, free(param);)
  free(param);
#line 72880 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureParameterivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureParameterivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texture, target, pname, params");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	const GLint*	params = INT2PTR(const GLint *,SvIV(ST(3)))
;
#line 36025 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureParameterivEXT, )
  OGLM_AVAIL_CHECK(__glewTextureParameterivEXT, glTextureParameterivEXT)
  glTextureParameterivEXT(texture, target, pname, params);
  OGLM_CHECK_ERR(glTextureParameterivEXT, )
#line 72907 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureParameterivEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureParameterivEXT_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "texture, target, pname, ...");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
#line 36037 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureParameterivEXT, )
  OGLM_AVAIL_CHECK(__glewTextureParameterivEXT, glTextureParameterivEXT)
  OGLM_SIZE_ENUM(TextureParameterName,pname,1)
  GLint* params = OGLM_GET_VARARGS(params,3,GLint,IV,pname_count);
  glTextureParameterivEXT((GLuint )texture, (GLenum )target, (GLenum )pname, (const GLint* )params);
  OGLM_CHECK_ERR(glTextureParameterivEXT, free(params);)
  free(params);
#line 72935 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureRangeAPPLE_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureRangeAPPLE_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "target, length, pointer");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLsizei	length = (int)SvIV(ST(1))
;
	void *	pointer = INT2PTR(void *,SvIV(ST(2)))
;
#line 36052 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureRangeAPPLE, )
  OGLM_AVAIL_CHECK(__glewTextureRangeAPPLE, glTextureRangeAPPLE)
  glTextureRangeAPPLE(target, length, pointer);
  OGLM_CHECK_ERR(glTextureRangeAPPLE, )
#line 72960 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureRenderbufferEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureRenderbufferEXT)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "texture, target, renderbuffer");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLuint	renderbuffer = (unsigned int)SvUV(ST(2))
;
#line 36064 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureRenderbufferEXT, )
  OGLM_AVAIL_CHECK(__glewTextureRenderbufferEXT, glTextureRenderbufferEXT)
  glTextureRenderbufferEXT(texture, target, renderbuffer);
  OGLM_CHECK_ERR(glTextureRenderbufferEXT, )
#line 72985 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureStorage1D); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureStorage1D)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "texture, levels, internalformat, width");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLsizei	levels = (int)SvIV(ST(1))
;
	GLenum	internalformat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
#line 36077 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureStorage1D, )
  OGLM_AVAIL_CHECK(__glewTextureStorage1D, glTextureStorage1D)
  glTextureStorage1D(texture, levels, internalformat, width);
  OGLM_CHECK_ERR(glTextureStorage1D, )
#line 73012 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureStorage1DEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureStorage1DEXT)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "texture, target, levels, internalformat, width");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLsizei	levels = (int)SvIV(ST(2))
;
	GLenum	internalformat = (int)SvIV(ST(3))
;
	GLsizei	width = (int)SvIV(ST(4))
;
#line 36091 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureStorage1DEXT, )
  OGLM_AVAIL_CHECK(__glewTextureStorage1DEXT, glTextureStorage1DEXT)
  glTextureStorage1DEXT(texture, target, levels, internalformat, width);
  OGLM_CHECK_ERR(glTextureStorage1DEXT, )
#line 73041 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureStorage2D); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureStorage2D)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "texture, levels, internalformat, width, height");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLsizei	levels = (int)SvIV(ST(1))
;
	GLenum	internalformat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
#line 36105 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureStorage2D, )
  OGLM_AVAIL_CHECK(__glewTextureStorage2D, glTextureStorage2D)
  glTextureStorage2D(texture, levels, internalformat, width, height);
  OGLM_CHECK_ERR(glTextureStorage2D, )
#line 73070 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureStorage2DEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureStorage2DEXT)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "texture, target, levels, internalformat, width, height");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLsizei	levels = (int)SvIV(ST(2))
;
	GLenum	internalformat = (int)SvIV(ST(3))
;
	GLsizei	width = (int)SvIV(ST(4))
;
	GLsizei	height = (int)SvIV(ST(5))
;
#line 36120 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureStorage2DEXT, )
  OGLM_AVAIL_CHECK(__glewTextureStorage2DEXT, glTextureStorage2DEXT)
  glTextureStorage2DEXT(texture, target, levels, internalformat, width, height);
  OGLM_CHECK_ERR(glTextureStorage2DEXT, )
#line 73101 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureStorage2DMultisample); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureStorage2DMultisample)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "texture, samples, internalformat, width, height, fixedsamplelocations");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLsizei	samples = (int)SvIV(ST(1))
;
	GLenum	internalformat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
	GLboolean	fixedsamplelocations = (int)SvIV(ST(5))
;
#line 36135 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureStorage2DMultisample, )
  OGLM_AVAIL_CHECK(__glewTextureStorage2DMultisample, glTextureStorage2DMultisample)
  glTextureStorage2DMultisample(texture, samples, internalformat, width, height, fixedsamplelocations);
  OGLM_CHECK_ERR(glTextureStorage2DMultisample, )
#line 73132 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureStorage2DMultisampleEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureStorage2DMultisampleEXT)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "texture, target, samples, internalformat, width, height, fixedsamplelocations");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLsizei	samples = (int)SvIV(ST(2))
;
	GLenum	internalformat = (int)SvIV(ST(3))
;
	GLsizei	width = (int)SvIV(ST(4))
;
	GLsizei	height = (int)SvIV(ST(5))
;
	GLboolean	fixedsamplelocations = (int)SvIV(ST(6))
;
#line 36151 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureStorage2DMultisampleEXT, )
  OGLM_AVAIL_CHECK(__glewTextureStorage2DMultisampleEXT, glTextureStorage2DMultisampleEXT)
  glTextureStorage2DMultisampleEXT(texture, target, samples, internalformat, width, height, fixedsamplelocations);
  OGLM_CHECK_ERR(glTextureStorage2DMultisampleEXT, )
#line 73165 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureStorage3D); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureStorage3D)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "texture, levels, internalformat, width, height, depth");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLsizei	levels = (int)SvIV(ST(1))
;
	GLenum	internalformat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
	GLsizei	depth = (int)SvIV(ST(5))
;
#line 36166 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureStorage3D, )
  OGLM_AVAIL_CHECK(__glewTextureStorage3D, glTextureStorage3D)
  glTextureStorage3D(texture, levels, internalformat, width, height, depth);
  OGLM_CHECK_ERR(glTextureStorage3D, )
#line 73196 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureStorage3DEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureStorage3DEXT)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "texture, target, levels, internalformat, width, height, depth");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLsizei	levels = (int)SvIV(ST(2))
;
	GLenum	internalformat = (int)SvIV(ST(3))
;
	GLsizei	width = (int)SvIV(ST(4))
;
	GLsizei	height = (int)SvIV(ST(5))
;
	GLsizei	depth = (int)SvIV(ST(6))
;
#line 36182 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureStorage3DEXT, )
  OGLM_AVAIL_CHECK(__glewTextureStorage3DEXT, glTextureStorage3DEXT)
  glTextureStorage3DEXT(texture, target, levels, internalformat, width, height, depth);
  OGLM_CHECK_ERR(glTextureStorage3DEXT, )
#line 73229 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureStorage3DMultisample); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureStorage3DMultisample)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "texture, samples, internalformat, width, height, depth, fixedsamplelocations");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLsizei	samples = (int)SvIV(ST(1))
;
	GLenum	internalformat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
	GLsizei	depth = (int)SvIV(ST(5))
;
	GLboolean	fixedsamplelocations = (int)SvIV(ST(6))
;
#line 36198 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureStorage3DMultisample, )
  OGLM_AVAIL_CHECK(__glewTextureStorage3DMultisample, glTextureStorage3DMultisample)
  glTextureStorage3DMultisample(texture, samples, internalformat, width, height, depth, fixedsamplelocations);
  OGLM_CHECK_ERR(glTextureStorage3DMultisample, )
#line 73262 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureStorage3DMultisampleEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureStorage3DMultisampleEXT)
{
    dVAR; dXSARGS;
    if (items != 8)
       croak_xs_usage(cv,  "texture, target, samples, internalformat, width, height, depth, fixedsamplelocations");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLsizei	samples = (int)SvIV(ST(2))
;
	GLenum	internalformat = (int)SvIV(ST(3))
;
	GLsizei	width = (int)SvIV(ST(4))
;
	GLsizei	height = (int)SvIV(ST(5))
;
	GLsizei	depth = (int)SvIV(ST(6))
;
	GLboolean	fixedsamplelocations = (int)SvIV(ST(7))
;
#line 36215 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureStorage3DMultisampleEXT, )
  OGLM_AVAIL_CHECK(__glewTextureStorage3DMultisampleEXT, glTextureStorage3DMultisampleEXT)
  glTextureStorage3DMultisampleEXT(texture, target, samples, internalformat, width, height, depth, fixedsamplelocations);
  OGLM_CHECK_ERR(glTextureStorage3DMultisampleEXT, )
#line 73297 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureStorageMem1DEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureStorageMem1DEXT)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "texture, levels, internalFormat, width, memory, offset");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLsizei	levels = (int)SvIV(ST(1))
;
	GLenum	internalFormat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLuint	memory = (unsigned int)SvUV(ST(4))
;
	GLuint64	offset = (unsigned int)SvUV(ST(5))
;
#line 36230 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureStorageMem1DEXT, )
  OGLM_AVAIL_CHECK(__glewTextureStorageMem1DEXT, glTextureStorageMem1DEXT)
  glTextureStorageMem1DEXT(texture, levels, internalFormat, width, memory, offset);
  OGLM_CHECK_ERR(glTextureStorageMem1DEXT, )
#line 73328 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureStorageMem2DEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureStorageMem2DEXT)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "texture, levels, internalFormat, width, height, memory, offset");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLsizei	levels = (int)SvIV(ST(1))
;
	GLenum	internalFormat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
	GLuint	memory = (unsigned int)SvUV(ST(5))
;
	GLuint64	offset = (unsigned int)SvUV(ST(6))
;
#line 36246 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureStorageMem2DEXT, )
  OGLM_AVAIL_CHECK(__glewTextureStorageMem2DEXT, glTextureStorageMem2DEXT)
  glTextureStorageMem2DEXT(texture, levels, internalFormat, width, height, memory, offset);
  OGLM_CHECK_ERR(glTextureStorageMem2DEXT, )
#line 73361 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureStorageMem2DMultisampleEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureStorageMem2DMultisampleEXT)
{
    dVAR; dXSARGS;
    if (items != 8)
       croak_xs_usage(cv,  "texture, samples, internalFormat, width, height, fixedSampleLocations, memory, offset");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLsizei	samples = (int)SvIV(ST(1))
;
	GLenum	internalFormat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
	GLboolean	fixedSampleLocations = (int)SvIV(ST(5))
;
	GLuint	memory = (unsigned int)SvUV(ST(6))
;
	GLuint64	offset = (unsigned int)SvUV(ST(7))
;
#line 36263 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureStorageMem2DMultisampleEXT, )
  OGLM_AVAIL_CHECK(__glewTextureStorageMem2DMultisampleEXT, glTextureStorageMem2DMultisampleEXT)
  glTextureStorageMem2DMultisampleEXT(texture, samples, internalFormat, width, height, fixedSampleLocations, memory, offset);
  OGLM_CHECK_ERR(glTextureStorageMem2DMultisampleEXT, )
#line 73396 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureStorageMem3DEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureStorageMem3DEXT)
{
    dVAR; dXSARGS;
    if (items != 8)
       croak_xs_usage(cv,  "texture, levels, internalFormat, width, height, depth, memory, offset");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLsizei	levels = (int)SvIV(ST(1))
;
	GLenum	internalFormat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
	GLsizei	depth = (int)SvIV(ST(5))
;
	GLuint	memory = (unsigned int)SvUV(ST(6))
;
	GLuint64	offset = (unsigned int)SvUV(ST(7))
;
#line 36280 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureStorageMem3DEXT, )
  OGLM_AVAIL_CHECK(__glewTextureStorageMem3DEXT, glTextureStorageMem3DEXT)
  glTextureStorageMem3DEXT(texture, levels, internalFormat, width, height, depth, memory, offset);
  OGLM_CHECK_ERR(glTextureStorageMem3DEXT, )
#line 73431 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureStorageMem3DMultisampleEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureStorageMem3DMultisampleEXT)
{
    dVAR; dXSARGS;
    if (items != 9)
       croak_xs_usage(cv,  "texture, samples, internalFormat, width, height, depth, fixedSampleLocations, memory, offset");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLsizei	samples = (int)SvIV(ST(1))
;
	GLenum	internalFormat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
	GLsizei	depth = (int)SvIV(ST(5))
;
	GLboolean	fixedSampleLocations = (int)SvIV(ST(6))
;
	GLuint	memory = (unsigned int)SvUV(ST(7))
;
	GLuint64	offset = (unsigned int)SvUV(ST(8))
;
#line 36298 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureStorageMem3DMultisampleEXT, )
  OGLM_AVAIL_CHECK(__glewTextureStorageMem3DMultisampleEXT, glTextureStorageMem3DMultisampleEXT)
  glTextureStorageMem3DMultisampleEXT(texture, samples, internalFormat, width, height, depth, fixedSampleLocations, memory, offset);
  OGLM_CHECK_ERR(glTextureStorageMem3DMultisampleEXT, )
#line 73468 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureStorageSparseAMD); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureStorageSparseAMD)
{
    dVAR; dXSARGS;
    if (items != 8)
       croak_xs_usage(cv,  "texture, target, internalFormat, width, height, depth, layers, flags");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLenum	internalFormat = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLsizei	height = (int)SvIV(ST(4))
;
	GLsizei	depth = (int)SvIV(ST(5))
;
	GLsizei	layers = (int)SvIV(ST(6))
;
	GLbitfield	flags = (int)SvIV(ST(7))
;
#line 36315 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureStorageSparseAMD, )
  OGLM_AVAIL_CHECK(__glewTextureStorageSparseAMD, glTextureStorageSparseAMD)
  glTextureStorageSparseAMD(texture, target, internalFormat, width, height, depth, layers, flags);
  OGLM_CHECK_ERR(glTextureStorageSparseAMD, )
#line 73503 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureSubImage1D_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureSubImage1D_c)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "texture, level, xoffset, width, format, type, pixels");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLint	xoffset = (int)SvIV(ST(2))
;
	GLsizei	width = (int)SvIV(ST(3))
;
	GLenum	format = (int)SvIV(ST(4))
;
	GLenum	type = (int)SvIV(ST(5))
;
	const void *	pixels = INT2PTR(const void *,SvIV(ST(6)))
;
#line 36331 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureSubImage1D, )
  OGLM_AVAIL_CHECK(__glewTextureSubImage1D, glTextureSubImage1D)
  glTextureSubImage1D(texture, level, xoffset, width, format, type, pixels);
  OGLM_CHECK_ERR(glTextureSubImage1D, )
#line 73536 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureSubImage1DEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureSubImage1DEXT_c)
{
    dVAR; dXSARGS;
    if (items != 8)
       croak_xs_usage(cv,  "texture, target, level, xoffset, width, format, type, pixels");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLint	xoffset = (int)SvIV(ST(3))
;
	GLsizei	width = (int)SvIV(ST(4))
;
	GLenum	format = (int)SvIV(ST(5))
;
	GLenum	type = (int)SvIV(ST(6))
;
	const void *	pixels = INT2PTR(const void *,SvIV(ST(7)))
;
#line 36348 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureSubImage1DEXT, )
  OGLM_AVAIL_CHECK(__glewTextureSubImage1DEXT, glTextureSubImage1DEXT)
  glTextureSubImage1DEXT(texture, target, level, xoffset, width, format, type, pixels);
  OGLM_CHECK_ERR(glTextureSubImage1DEXT, )
#line 73571 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureSubImage2D_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureSubImage2D_c)
{
    dVAR; dXSARGS;
    if (items != 9)
       croak_xs_usage(cv,  "texture, level, xoffset, yoffset, width, height, format, type, pixels");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLint	xoffset = (int)SvIV(ST(2))
;
	GLint	yoffset = (int)SvIV(ST(3))
;
	GLsizei	width = (int)SvIV(ST(4))
;
	GLsizei	height = (int)SvIV(ST(5))
;
	GLenum	format = (int)SvIV(ST(6))
;
	GLenum	type = (int)SvIV(ST(7))
;
	const void *	pixels = INT2PTR(const void *,SvIV(ST(8)))
;
#line 36366 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureSubImage2D, )
  OGLM_AVAIL_CHECK(__glewTextureSubImage2D, glTextureSubImage2D)
  glTextureSubImage2D(texture, level, xoffset, yoffset, width, height, format, type, pixels);
  OGLM_CHECK_ERR(glTextureSubImage2D, )
#line 73608 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureSubImage2DEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureSubImage2DEXT_c)
{
    dVAR; dXSARGS;
    if (items != 10)
       croak_xs_usage(cv,  "texture, target, level, xoffset, yoffset, width, height, format, type, pixels");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLint	xoffset = (int)SvIV(ST(3))
;
	GLint	yoffset = (int)SvIV(ST(4))
;
	GLsizei	width = (int)SvIV(ST(5))
;
	GLsizei	height = (int)SvIV(ST(6))
;
	GLenum	format = (int)SvIV(ST(7))
;
	GLenum	type = (int)SvIV(ST(8))
;
	const void *	pixels = INT2PTR(const void *,SvIV(ST(9)))
;
#line 36385 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureSubImage2DEXT, )
  OGLM_AVAIL_CHECK(__glewTextureSubImage2DEXT, glTextureSubImage2DEXT)
  glTextureSubImage2DEXT(texture, target, level, xoffset, yoffset, width, height, format, type, pixels);
  OGLM_CHECK_ERR(glTextureSubImage2DEXT, )
#line 73647 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureSubImage3D_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureSubImage3D_c)
{
    dVAR; dXSARGS;
    if (items != 11)
       croak_xs_usage(cv,  "texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
	GLint	xoffset = (int)SvIV(ST(2))
;
	GLint	yoffset = (int)SvIV(ST(3))
;
	GLint	zoffset = (int)SvIV(ST(4))
;
	GLsizei	width = (int)SvIV(ST(5))
;
	GLsizei	height = (int)SvIV(ST(6))
;
	GLsizei	depth = (int)SvIV(ST(7))
;
	GLenum	format = (int)SvIV(ST(8))
;
	GLenum	type = (int)SvIV(ST(9))
;
	const void *	pixels = INT2PTR(const void *,SvIV(ST(10)))
;
#line 36405 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureSubImage3D, )
  OGLM_AVAIL_CHECK(__glewTextureSubImage3D, glTextureSubImage3D)
  glTextureSubImage3D(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
  OGLM_CHECK_ERR(glTextureSubImage3D, )
#line 73688 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureSubImage3DEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureSubImage3DEXT_c)
{
    dVAR; dXSARGS;
    if (items != 12)
       croak_xs_usage(cv,  "texture, target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLint	level = (int)SvIV(ST(2))
;
	GLint	xoffset = (int)SvIV(ST(3))
;
	GLint	yoffset = (int)SvIV(ST(4))
;
	GLint	zoffset = (int)SvIV(ST(5))
;
	GLsizei	width = (int)SvIV(ST(6))
;
	GLsizei	height = (int)SvIV(ST(7))
;
	GLsizei	depth = (int)SvIV(ST(8))
;
	GLenum	format = (int)SvIV(ST(9))
;
	GLenum	type = (int)SvIV(ST(10))
;
	const void *	pixels = INT2PTR(const void *,SvIV(ST(11)))
;
#line 36426 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureSubImage3DEXT, )
  OGLM_AVAIL_CHECK(__glewTextureSubImage3DEXT, glTextureSubImage3DEXT)
  glTextureSubImage3DEXT(texture, target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels);
  OGLM_CHECK_ERR(glTextureSubImage3DEXT, )
#line 73731 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureView); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureView)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 8)
       croak_xs_usage(cv,  "texture, target, origtexture, internalformat, minlevel, numlevels, minlayer, numlayers");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLuint	origtexture = (unsigned int)SvUV(ST(2))
;
	GLenum	internalformat = (int)SvIV(ST(3))
;
	GLuint	minlevel = (unsigned int)SvUV(ST(4))
;
	GLuint	numlevels = (unsigned int)SvUV(ST(5))
;
	GLuint	minlayer = (unsigned int)SvUV(ST(6))
;
	GLuint	numlayers = (unsigned int)SvUV(ST(7))
;
#line 36445 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureView, )
  OGLM_AVAIL_CHECK(__glewTextureView, glTextureView)
  glTextureView(texture, target, origtexture, internalformat, minlevel, numlevels, minlayer, numlayers);
  OGLM_CHECK_ERR(glTextureView, )
#line 73767 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTextureViewOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTextureViewOES)
{
    dVAR; dXSARGS;
    if (items != 8)
       croak_xs_usage(cv,  "texture, target, origtexture, internalformat, minlevel, numlevels, minlayer, numlayers");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLuint	origtexture = (unsigned int)SvUV(ST(2))
;
	GLenum	internalformat = (int)SvIV(ST(3))
;
	GLuint	minlevel = (unsigned int)SvUV(ST(4))
;
	GLuint	numlevels = (unsigned int)SvUV(ST(5))
;
	GLuint	minlayer = (unsigned int)SvUV(ST(6))
;
	GLuint	numlayers = (unsigned int)SvUV(ST(7))
;
#line 36462 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTextureViewOES, )
  OGLM_AVAIL_CHECK(__glewTextureViewOES, glTextureViewOES)
  glTextureViewOES(texture, target, origtexture, internalformat, minlevel, numlevels, minlayer, numlayers);
  OGLM_CHECK_ERR(glTextureViewOES, )
#line 73802 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTrackMatrixNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTrackMatrixNV)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "target, address, matrix, transform");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLuint	address = (unsigned int)SvUV(ST(1))
;
	GLenum	matrix = (int)SvIV(ST(2))
;
	GLenum	transform = (int)SvIV(ST(3))
;
#line 36475 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTrackMatrixNV, )
  OGLM_AVAIL_CHECK(__glewTrackMatrixNV, glTrackMatrixNV)
  glTrackMatrixNV(target, address, matrix, transform);
  OGLM_CHECK_ERR(glTrackMatrixNV, )
#line 73829 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTransformFeedbackAttribsNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTransformFeedbackAttribsNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "count, attribs, bufferMode");
    {
	GLuint	count = (unsigned int)SvUV(ST(0))
;
	const GLint *	attribs = INT2PTR(const GLint *,SvIV(ST(1)))
;
	GLenum	bufferMode = (int)SvIV(ST(2))
;
#line 36487 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTransformFeedbackAttribsNV, )
  OGLM_AVAIL_CHECK(__glewTransformFeedbackAttribsNV, glTransformFeedbackAttribsNV)
  glTransformFeedbackAttribsNV(count, attribs, bufferMode);
  OGLM_CHECK_ERR(glTransformFeedbackAttribsNV, )
#line 73854 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTransformFeedbackBufferBase); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTransformFeedbackBufferBase)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "xfb, index, buffer");
    {
	GLuint	xfb = (unsigned int)SvUV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLuint	buffer = (unsigned int)SvUV(ST(2))
;
#line 36499 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTransformFeedbackBufferBase, )
  OGLM_AVAIL_CHECK(__glewTransformFeedbackBufferBase, glTransformFeedbackBufferBase)
  glTransformFeedbackBufferBase(xfb, index, buffer);
  OGLM_CHECK_ERR(glTransformFeedbackBufferBase, )
#line 73879 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTransformFeedbackBufferRange); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTransformFeedbackBufferRange)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "xfb, index, buffer, offset, size");
    {
	GLuint	xfb = (unsigned int)SvUV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLuint	buffer = (unsigned int)SvUV(ST(2))
;
	GLintptr	offset = (unsigned int)SvUV(ST(3))
;
	GLsizeiptr	size = (unsigned int)SvUV(ST(4))
;
#line 36513 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTransformFeedbackBufferRange, )
  OGLM_AVAIL_CHECK(__glewTransformFeedbackBufferRange, glTransformFeedbackBufferRange)
  glTransformFeedbackBufferRange(xfb, index, buffer, offset, size);
  OGLM_CHECK_ERR(glTransformFeedbackBufferRange, )
#line 73908 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTransformFeedbackVaryings_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTransformFeedbackVaryings_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "program, count, varyings, bufferMode");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLchar *const*	varyings = (const GLchar * const *)SvPV_nolen(ST(2))
;
	GLenum	bufferMode = (int)SvIV(ST(3))
;
#line 36528 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTransformFeedbackVaryings, )
  OGLM_AVAIL_CHECK(__glewTransformFeedbackVaryings, glTransformFeedbackVaryings)
  glTransformFeedbackVaryings(program, count, varyings, bufferMode);
  OGLM_CHECK_ERR(glTransformFeedbackVaryings, )
#line 73936 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTransformFeedbackVaryings_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTransformFeedbackVaryings_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 2)
       croak_xs_usage(cv,  "program, bufferMode, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	bufferMode = (int)SvIV(ST(1))
;
#line 36541 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTransformFeedbackVaryings, )
  OGLM_AVAIL_CHECK(__glewTransformFeedbackVaryings, glTransformFeedbackVaryings)
  GLsizei count = items-2;
  GLchar ** varyings = OGLM_GET_VARARGS(varyings,2,GLchar*,PV_nolen,count);
  glTransformFeedbackVaryings((GLuint )program, (GLsizei )count, (const GLchar *const* )varyings, (GLenum )bufferMode);
  OGLM_CHECK_ERR(glTransformFeedbackVaryings, free(varyings);)
  free(varyings);
#line 73963 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTransformFeedbackVaryingsNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTransformFeedbackVaryingsNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "program, count, locations, bufferMode");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLint *	locations = INT2PTR(const GLint *,SvIV(ST(2)))
;
	GLenum	bufferMode = (int)SvIV(ST(3))
;
#line 36557 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTransformFeedbackVaryingsNV, )
  OGLM_AVAIL_CHECK(__glewTransformFeedbackVaryingsNV, glTransformFeedbackVaryingsNV)
  glTransformFeedbackVaryingsNV(program, count, locations, bufferMode);
  OGLM_CHECK_ERR(glTransformFeedbackVaryingsNV, )
#line 73990 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTransformFeedbackVaryingsNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTransformFeedbackVaryingsNV_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "program, bufferMode, ...");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLenum	bufferMode = (int)SvIV(ST(1))
;
#line 36568 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTransformFeedbackVaryingsNV, )
  OGLM_AVAIL_CHECK(__glewTransformFeedbackVaryingsNV, glTransformFeedbackVaryingsNV)
  GLsizei count = items-2;
  GLint *locations = OGLM_GET_VARARGS(locations,2,GLint,IV,count);
  glTransformFeedbackVaryingsNV((GLuint )program, (GLsizei )count, (const GLint *)locations, (GLenum )bufferMode);
  OGLM_CHECK_ERR(glTransformFeedbackVaryingsNV, free(locations);)
  free(locations);
#line 74016 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTransformPathNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTransformPathNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "resultPath, srcPath, transformType, transformValues");
    {
	GLuint	resultPath = (unsigned int)SvUV(ST(0))
;
	GLuint	srcPath = (unsigned int)SvUV(ST(1))
;
	GLenum	transformType = (int)SvIV(ST(2))
;
	const GLfloat*	transformValues = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 36584 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTransformPathNV, )
  OGLM_AVAIL_CHECK(__glewTransformPathNV, glTransformPathNV)
  glTransformPathNV(resultPath, srcPath, transformType, transformValues);
  OGLM_CHECK_ERR(glTransformPathNV, )
#line 74043 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTranslated); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTranslated)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "x, y, z");
    {
	GLdouble	x = (double)SvNV(ST(0))
;
	GLdouble	y = (double)SvNV(ST(1))
;
	GLdouble	z = (double)SvNV(ST(2))
;
#line 36596 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTranslated, )
  glTranslated(x, y, z);
  OGLM_CHECK_ERR(glTranslated, )
#line 74067 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTranslatef); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTranslatef)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "x, y, z");
    {
	GLfloat	x = (float)SvNV(ST(0))
;
	GLfloat	y = (float)SvNV(ST(1))
;
	GLfloat	z = (float)SvNV(ST(2))
;
#line 36607 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTranslatef, )
  glTranslatef(x, y, z);
  OGLM_CHECK_ERR(glTranslatef, )
#line 74091 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glTranslatex); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glTranslatex)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "x, y, z");
    {
	GLfixed	x = (int)SvIV(ST(0))
;
	GLfixed	y = (int)SvIV(ST(1))
;
	GLfixed	z = (int)SvIV(ST(2))
;
#line 36618 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glTranslatex, )
  OGLM_AVAIL_CHECK(__glewTranslatex, glTranslatex)
  glTranslatex(x, y, z);
  OGLM_CHECK_ERR(glTranslatex, )
#line 74116 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform1d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform1d)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "location, x");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLdouble	x = (double)SvNV(ST(1))
;
#line 36629 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform1d, )
  OGLM_AVAIL_CHECK(__glewUniform1d, glUniform1d)
  glUniform1d(location, x);
  OGLM_CHECK_ERR(glUniform1d, )
#line 74139 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform1dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform1dv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "location, count, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLdouble*	value = INT2PTR(const GLdouble *,SvIV(ST(2)))
;
#line 36641 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform1dv, )
  OGLM_AVAIL_CHECK(__glewUniform1dv, glUniform1dv)
  glUniform1dv(location, count, value);
  OGLM_CHECK_ERR(glUniform1dv, )
#line 74164 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform1dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform1dv_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "location, count, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 36652 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform1dv, )
  OGLM_AVAIL_CHECK(__glewUniform1dv, glUniform1dv)
  GLdouble* value = OGLM_GET_VARARGS(value,2,GLdouble,NV,count*1);
  glUniform1dv((GLint )location, (GLsizei )count, (const GLdouble* )value);
  OGLM_CHECK_ERR(glUniform1dv, free(value);)
  free(value);
#line 74189 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform1f); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform1f)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "location, v0");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLfloat	v0 = (float)SvNV(ST(1))
;
#line 36667 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform1f, )
  OGLM_AVAIL_CHECK(__glewUniform1f, glUniform1f)
  glUniform1f(location, v0);
  OGLM_CHECK_ERR(glUniform1f, )
#line 74213 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform1fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform1fv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "location, count, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLfloat*	value = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 36681 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform1fv, )
  OGLM_AVAIL_CHECK(__glewUniform1fv, glUniform1fv)
  glUniform1fv(location, count, value);
  OGLM_CHECK_ERR(glUniform1fv, )
#line 74239 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform1fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform1fv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 2)
       croak_xs_usage(cv,  "location, count, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 36694 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform1fv, )
  OGLM_AVAIL_CHECK(__glewUniform1fv, glUniform1fv)
  GLfloat* value = OGLM_GET_VARARGS(value,2,GLfloat,NV,count*1);
  glUniform1fv((GLint )location, (GLsizei )count, (const GLfloat* )value);
  OGLM_CHECK_ERR(glUniform1fv, free(value);)
  free(value);
#line 74265 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform1i); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform1i)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "location, v0");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLint	v0 = (int)SvIV(ST(1))
;
#line 36709 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform1i, )
  OGLM_AVAIL_CHECK(__glewUniform1i, glUniform1i)
  glUniform1i(location, v0);
  OGLM_CHECK_ERR(glUniform1i, )
#line 74289 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform1i64ARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform1i64ARB)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "location, x");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLint64	x = (unsigned int)SvUV(ST(1))
;
#line 36720 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform1i64ARB, )
  OGLM_AVAIL_CHECK(__glewUniform1i64ARB, glUniform1i64ARB)
  glUniform1i64ARB(location, x);
  OGLM_CHECK_ERR(glUniform1i64ARB, )
#line 74312 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform1i64NV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform1i64NV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "location, x");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLint64EXT	x = (unsigned int)SvUV(ST(1))
;
#line 36731 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform1i64NV, )
  OGLM_AVAIL_CHECK(__glewUniform1i64NV, glUniform1i64NV)
  glUniform1i64NV(location, x);
  OGLM_CHECK_ERR(glUniform1i64NV, )
#line 74335 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform1i64vARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform1i64vARB_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "location, count, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLint64*	value = INT2PTR(const GLint64 *,SvIV(ST(2)))
;
#line 36743 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform1i64vARB, )
  OGLM_AVAIL_CHECK(__glewUniform1i64vARB, glUniform1i64vARB)
  glUniform1i64vARB(location, count, value);
  OGLM_CHECK_ERR(glUniform1i64vARB, )
#line 74360 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform1i64vARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform1i64vARB_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "location, count, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 36754 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform1i64vARB, )
  OGLM_AVAIL_CHECK(__glewUniform1i64vARB, glUniform1i64vARB)
  GLint64* value = OGLM_GET_VARARGS(value,2,GLint64,IV,count*1);
  glUniform1i64vARB((GLint )location, (GLsizei )count, (const GLint64* )value);
  OGLM_CHECK_ERR(glUniform1i64vARB, free(value);)
  free(value);
#line 74385 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform1i64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform1i64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "location, count, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLint64EXT*	value = INT2PTR(const GLint64EXT *,SvIV(ST(2)))
;
#line 36768 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform1i64vNV, )
  OGLM_AVAIL_CHECK(__glewUniform1i64vNV, glUniform1i64vNV)
  glUniform1i64vNV(location, count, value);
  OGLM_CHECK_ERR(glUniform1i64vNV, )
#line 74410 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform1i64vNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform1i64vNV_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "location, count, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 36779 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform1i64vNV, )
  OGLM_AVAIL_CHECK(__glewUniform1i64vNV, glUniform1i64vNV)
  GLint64EXT* value = OGLM_GET_VARARGS(value,2,GLint64EXT,IV,count*1);
  glUniform1i64vNV((GLint )location, (GLsizei )count, (const GLint64EXT* )value);
  OGLM_CHECK_ERR(glUniform1i64vNV, free(value);)
  free(value);
#line 74435 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform1iv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform1iv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "location, count, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLint*	value = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 36795 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform1iv, )
  OGLM_AVAIL_CHECK(__glewUniform1iv, glUniform1iv)
  glUniform1iv(location, count, value);
  OGLM_CHECK_ERR(glUniform1iv, )
#line 74461 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform1iv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform1iv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 2)
       croak_xs_usage(cv,  "location, count, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 36808 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform1iv, )
  OGLM_AVAIL_CHECK(__glewUniform1iv, glUniform1iv)
  GLint* value = OGLM_GET_VARARGS(value,2,GLint,IV,count*1);
  glUniform1iv((GLint )location, (GLsizei )count, (const GLint* )value);
  OGLM_CHECK_ERR(glUniform1iv, free(value);)
  free(value);
#line 74487 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform1ui); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform1ui)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "location, v0");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLuint	v0 = (unsigned int)SvUV(ST(1))
;
#line 36823 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform1ui, )
  OGLM_AVAIL_CHECK(__glewUniform1ui, glUniform1ui)
  glUniform1ui(location, v0);
  OGLM_CHECK_ERR(glUniform1ui, )
#line 74511 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform1ui64ARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform1ui64ARB)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "location, x");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLuint64	x = (unsigned int)SvUV(ST(1))
;
#line 36834 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform1ui64ARB, )
  OGLM_AVAIL_CHECK(__glewUniform1ui64ARB, glUniform1ui64ARB)
  glUniform1ui64ARB(location, x);
  OGLM_CHECK_ERR(glUniform1ui64ARB, )
#line 74534 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform1ui64NV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform1ui64NV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "location, x");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLuint64EXT	x = (unsigned int)SvUV(ST(1))
;
#line 36845 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform1ui64NV, )
  OGLM_AVAIL_CHECK(__glewUniform1ui64NV, glUniform1ui64NV)
  glUniform1ui64NV(location, x);
  OGLM_CHECK_ERR(glUniform1ui64NV, )
#line 74557 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform1ui64vARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform1ui64vARB_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "location, count, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLuint64*	value = INT2PTR(const GLuint64 *,SvIV(ST(2)))
;
#line 36857 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform1ui64vARB, )
  OGLM_AVAIL_CHECK(__glewUniform1ui64vARB, glUniform1ui64vARB)
  glUniform1ui64vARB(location, count, value);
  OGLM_CHECK_ERR(glUniform1ui64vARB, )
#line 74582 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform1ui64vARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform1ui64vARB_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "location, count, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 36868 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform1ui64vARB, )
  OGLM_AVAIL_CHECK(__glewUniform1ui64vARB, glUniform1ui64vARB)
  GLuint64* value = OGLM_GET_VARARGS(value,2,GLuint64,UV,count*1);
  glUniform1ui64vARB((GLint )location, (GLsizei )count, (const GLuint64* )value);
  OGLM_CHECK_ERR(glUniform1ui64vARB, free(value);)
  free(value);
#line 74607 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform1ui64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform1ui64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "location, count, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLuint64EXT*	value = INT2PTR(const GLuint64EXT *,SvIV(ST(2)))
;
#line 36882 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform1ui64vNV, )
  OGLM_AVAIL_CHECK(__glewUniform1ui64vNV, glUniform1ui64vNV)
  glUniform1ui64vNV(location, count, value);
  OGLM_CHECK_ERR(glUniform1ui64vNV, )
#line 74632 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform1ui64vNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform1ui64vNV_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "location, count, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 36893 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform1ui64vNV, )
  OGLM_AVAIL_CHECK(__glewUniform1ui64vNV, glUniform1ui64vNV)
  GLuint64EXT* value = OGLM_GET_VARARGS(value,2,GLuint64EXT,UV,count*1);
  glUniform1ui64vNV((GLint )location, (GLsizei )count, (const GLuint64EXT* )value);
  OGLM_CHECK_ERR(glUniform1ui64vNV, free(value);)
  free(value);
#line 74657 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform1uiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform1uiv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "location, count, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLuint*	value = INT2PTR(const GLuint *,SvIV(ST(2)))
;
#line 36909 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform1uiv, )
  OGLM_AVAIL_CHECK(__glewUniform1uiv, glUniform1uiv)
  glUniform1uiv(location, count, value);
  OGLM_CHECK_ERR(glUniform1uiv, )
#line 74683 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform1uiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform1uiv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 2)
       croak_xs_usage(cv,  "location, count, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 36922 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform1uiv, )
  OGLM_AVAIL_CHECK(__glewUniform1uiv, glUniform1uiv)
  GLuint* value = OGLM_GET_VARARGS(value,2,GLuint,UV,count*1);
  glUniform1uiv((GLint )location, (GLsizei )count, (const GLuint* )value);
  OGLM_CHECK_ERR(glUniform1uiv, free(value);)
  free(value);
#line 74709 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform2d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform2d)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "location, x, y");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLdouble	x = (double)SvNV(ST(1))
;
	GLdouble	y = (double)SvNV(ST(2))
;
#line 36936 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform2d, )
  OGLM_AVAIL_CHECK(__glewUniform2d, glUniform2d)
  glUniform2d(location, x, y);
  OGLM_CHECK_ERR(glUniform2d, )
#line 74734 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform2dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform2dv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "location, count, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLdouble*	value = INT2PTR(const GLdouble *,SvIV(ST(2)))
;
#line 36948 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform2dv, )
  OGLM_AVAIL_CHECK(__glewUniform2dv, glUniform2dv)
  glUniform2dv(location, count, value);
  OGLM_CHECK_ERR(glUniform2dv, )
#line 74759 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform2dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform2dv_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "location, count, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 36959 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform2dv, )
  OGLM_AVAIL_CHECK(__glewUniform2dv, glUniform2dv)
  GLdouble* value = OGLM_GET_VARARGS(value,2,GLdouble,NV,count*2);
  glUniform2dv((GLint )location, (GLsizei )count, (const GLdouble* )value);
  OGLM_CHECK_ERR(glUniform2dv, free(value);)
  free(value);
#line 74784 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform2f); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform2f)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "location, v0, v1");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLfloat	v0 = (float)SvNV(ST(1))
;
	GLfloat	v1 = (float)SvNV(ST(2))
;
#line 36975 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform2f, )
  OGLM_AVAIL_CHECK(__glewUniform2f, glUniform2f)
  glUniform2f(location, v0, v1);
  OGLM_CHECK_ERR(glUniform2f, )
#line 74810 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform2fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform2fv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "location, count, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLfloat*	value = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 36989 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform2fv, )
  OGLM_AVAIL_CHECK(__glewUniform2fv, glUniform2fv)
  glUniform2fv(location, count, value);
  OGLM_CHECK_ERR(glUniform2fv, )
#line 74836 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform2fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform2fv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 2)
       croak_xs_usage(cv,  "location, count, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 37002 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform2fv, )
  OGLM_AVAIL_CHECK(__glewUniform2fv, glUniform2fv)
  GLfloat* value = OGLM_GET_VARARGS(value,2,GLfloat,NV,count*2);
  glUniform2fv((GLint )location, (GLsizei )count, (const GLfloat* )value);
  OGLM_CHECK_ERR(glUniform2fv, free(value);)
  free(value);
#line 74862 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform2i); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform2i)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "location, v0, v1");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLint	v0 = (int)SvIV(ST(1))
;
	GLint	v1 = (int)SvIV(ST(2))
;
#line 37018 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform2i, )
  OGLM_AVAIL_CHECK(__glewUniform2i, glUniform2i)
  glUniform2i(location, v0, v1);
  OGLM_CHECK_ERR(glUniform2i, )
#line 74888 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform2i64ARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform2i64ARB)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "location, x, y");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLint64	x = (unsigned int)SvUV(ST(1))
;
	GLint64	y = (unsigned int)SvUV(ST(2))
;
#line 37030 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform2i64ARB, )
  OGLM_AVAIL_CHECK(__glewUniform2i64ARB, glUniform2i64ARB)
  glUniform2i64ARB(location, x, y);
  OGLM_CHECK_ERR(glUniform2i64ARB, )
#line 74913 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform2i64NV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform2i64NV)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "location, x, y");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLint64EXT	x = (unsigned int)SvUV(ST(1))
;
	GLint64EXT	y = (unsigned int)SvUV(ST(2))
;
#line 37042 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform2i64NV, )
  OGLM_AVAIL_CHECK(__glewUniform2i64NV, glUniform2i64NV)
  glUniform2i64NV(location, x, y);
  OGLM_CHECK_ERR(glUniform2i64NV, )
#line 74938 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform2i64vARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform2i64vARB_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "location, count, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLint64*	value = INT2PTR(const GLint64 *,SvIV(ST(2)))
;
#line 37054 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform2i64vARB, )
  OGLM_AVAIL_CHECK(__glewUniform2i64vARB, glUniform2i64vARB)
  glUniform2i64vARB(location, count, value);
  OGLM_CHECK_ERR(glUniform2i64vARB, )
#line 74963 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform2i64vARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform2i64vARB_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "location, count, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 37065 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform2i64vARB, )
  OGLM_AVAIL_CHECK(__glewUniform2i64vARB, glUniform2i64vARB)
  GLint64* value = OGLM_GET_VARARGS(value,2,GLint64,IV,count*2);
  glUniform2i64vARB((GLint )location, (GLsizei )count, (const GLint64* )value);
  OGLM_CHECK_ERR(glUniform2i64vARB, free(value);)
  free(value);
#line 74988 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform2i64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform2i64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "location, count, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLint64EXT*	value = INT2PTR(const GLint64EXT *,SvIV(ST(2)))
;
#line 37079 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform2i64vNV, )
  OGLM_AVAIL_CHECK(__glewUniform2i64vNV, glUniform2i64vNV)
  glUniform2i64vNV(location, count, value);
  OGLM_CHECK_ERR(glUniform2i64vNV, )
#line 75013 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform2i64vNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform2i64vNV_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "location, count, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 37090 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform2i64vNV, )
  OGLM_AVAIL_CHECK(__glewUniform2i64vNV, glUniform2i64vNV)
  GLint64EXT* value = OGLM_GET_VARARGS(value,2,GLint64EXT,IV,count*2);
  glUniform2i64vNV((GLint )location, (GLsizei )count, (const GLint64EXT* )value);
  OGLM_CHECK_ERR(glUniform2i64vNV, free(value);)
  free(value);
#line 75038 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform2iv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform2iv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "location, count, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLint*	value = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 37106 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform2iv, )
  OGLM_AVAIL_CHECK(__glewUniform2iv, glUniform2iv)
  glUniform2iv(location, count, value);
  OGLM_CHECK_ERR(glUniform2iv, )
#line 75064 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform2iv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform2iv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 2)
       croak_xs_usage(cv,  "location, count, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 37119 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform2iv, )
  OGLM_AVAIL_CHECK(__glewUniform2iv, glUniform2iv)
  GLint* value = OGLM_GET_VARARGS(value,2,GLint,IV,count*2);
  glUniform2iv((GLint )location, (GLsizei )count, (const GLint* )value);
  OGLM_CHECK_ERR(glUniform2iv, free(value);)
  free(value);
#line 75090 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform2ui); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform2ui)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "location, v0, v1");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLuint	v0 = (unsigned int)SvUV(ST(1))
;
	GLuint	v1 = (unsigned int)SvUV(ST(2))
;
#line 37135 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform2ui, )
  OGLM_AVAIL_CHECK(__glewUniform2ui, glUniform2ui)
  glUniform2ui(location, v0, v1);
  OGLM_CHECK_ERR(glUniform2ui, )
#line 75116 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform2ui64ARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform2ui64ARB)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "location, x, y");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLuint64	x = (unsigned int)SvUV(ST(1))
;
	GLuint64	y = (unsigned int)SvUV(ST(2))
;
#line 37147 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform2ui64ARB, )
  OGLM_AVAIL_CHECK(__glewUniform2ui64ARB, glUniform2ui64ARB)
  glUniform2ui64ARB(location, x, y);
  OGLM_CHECK_ERR(glUniform2ui64ARB, )
#line 75141 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform2ui64NV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform2ui64NV)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "location, x, y");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLuint64EXT	x = (unsigned int)SvUV(ST(1))
;
	GLuint64EXT	y = (unsigned int)SvUV(ST(2))
;
#line 37159 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform2ui64NV, )
  OGLM_AVAIL_CHECK(__glewUniform2ui64NV, glUniform2ui64NV)
  glUniform2ui64NV(location, x, y);
  OGLM_CHECK_ERR(glUniform2ui64NV, )
#line 75166 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform2ui64vARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform2ui64vARB_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "location, count, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLuint64*	value = INT2PTR(const GLuint64 *,SvIV(ST(2)))
;
#line 37171 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform2ui64vARB, )
  OGLM_AVAIL_CHECK(__glewUniform2ui64vARB, glUniform2ui64vARB)
  glUniform2ui64vARB(location, count, value);
  OGLM_CHECK_ERR(glUniform2ui64vARB, )
#line 75191 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform2ui64vARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform2ui64vARB_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "location, count, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 37182 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform2ui64vARB, )
  OGLM_AVAIL_CHECK(__glewUniform2ui64vARB, glUniform2ui64vARB)
  GLuint64* value = OGLM_GET_VARARGS(value,2,GLuint64,UV,count*2);
  glUniform2ui64vARB((GLint )location, (GLsizei )count, (const GLuint64* )value);
  OGLM_CHECK_ERR(glUniform2ui64vARB, free(value);)
  free(value);
#line 75216 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform2ui64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform2ui64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "location, count, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLuint64EXT*	value = INT2PTR(const GLuint64EXT *,SvIV(ST(2)))
;
#line 37196 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform2ui64vNV, )
  OGLM_AVAIL_CHECK(__glewUniform2ui64vNV, glUniform2ui64vNV)
  glUniform2ui64vNV(location, count, value);
  OGLM_CHECK_ERR(glUniform2ui64vNV, )
#line 75241 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform2ui64vNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform2ui64vNV_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "location, count, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 37207 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform2ui64vNV, )
  OGLM_AVAIL_CHECK(__glewUniform2ui64vNV, glUniform2ui64vNV)
  GLuint64EXT* value = OGLM_GET_VARARGS(value,2,GLuint64EXT,UV,count*2);
  glUniform2ui64vNV((GLint )location, (GLsizei )count, (const GLuint64EXT* )value);
  OGLM_CHECK_ERR(glUniform2ui64vNV, free(value);)
  free(value);
#line 75266 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform2uiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform2uiv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "location, count, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLuint*	value = INT2PTR(const GLuint *,SvIV(ST(2)))
;
#line 37223 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform2uiv, )
  OGLM_AVAIL_CHECK(__glewUniform2uiv, glUniform2uiv)
  glUniform2uiv(location, count, value);
  OGLM_CHECK_ERR(glUniform2uiv, )
#line 75292 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform2uiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform2uiv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 2)
       croak_xs_usage(cv,  "location, count, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 37236 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform2uiv, )
  OGLM_AVAIL_CHECK(__glewUniform2uiv, glUniform2uiv)
  GLuint* value = OGLM_GET_VARARGS(value,2,GLuint,UV,count*2);
  glUniform2uiv((GLint )location, (GLsizei )count, (const GLuint* )value);
  OGLM_CHECK_ERR(glUniform2uiv, free(value);)
  free(value);
#line 75318 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform3d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform3d)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "location, x, y, z");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLdouble	x = (double)SvNV(ST(1))
;
	GLdouble	y = (double)SvNV(ST(2))
;
	GLdouble	z = (double)SvNV(ST(3))
;
#line 37251 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform3d, )
  OGLM_AVAIL_CHECK(__glewUniform3d, glUniform3d)
  glUniform3d(location, x, y, z);
  OGLM_CHECK_ERR(glUniform3d, )
#line 75345 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform3dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform3dv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "location, count, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLdouble*	value = INT2PTR(const GLdouble *,SvIV(ST(2)))
;
#line 37263 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform3dv, )
  OGLM_AVAIL_CHECK(__glewUniform3dv, glUniform3dv)
  glUniform3dv(location, count, value);
  OGLM_CHECK_ERR(glUniform3dv, )
#line 75370 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform3dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform3dv_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "location, count, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 37274 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform3dv, )
  OGLM_AVAIL_CHECK(__glewUniform3dv, glUniform3dv)
  GLdouble* value = OGLM_GET_VARARGS(value,2,GLdouble,NV,count*3);
  glUniform3dv((GLint )location, (GLsizei )count, (const GLdouble* )value);
  OGLM_CHECK_ERR(glUniform3dv, free(value);)
  free(value);
#line 75395 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform3f); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform3f)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "location, v0, v1, v2");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLfloat	v0 = (float)SvNV(ST(1))
;
	GLfloat	v1 = (float)SvNV(ST(2))
;
	GLfloat	v2 = (float)SvNV(ST(3))
;
#line 37291 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform3f, )
  OGLM_AVAIL_CHECK(__glewUniform3f, glUniform3f)
  glUniform3f(location, v0, v1, v2);
  OGLM_CHECK_ERR(glUniform3f, )
#line 75423 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform3fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform3fv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "location, count, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLfloat*	value = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 37305 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform3fv, )
  OGLM_AVAIL_CHECK(__glewUniform3fv, glUniform3fv)
  glUniform3fv(location, count, value);
  OGLM_CHECK_ERR(glUniform3fv, )
#line 75449 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform3fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform3fv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 2)
       croak_xs_usage(cv,  "location, count, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 37318 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform3fv, )
  OGLM_AVAIL_CHECK(__glewUniform3fv, glUniform3fv)
  GLfloat* value = OGLM_GET_VARARGS(value,2,GLfloat,NV,count*3);
  glUniform3fv((GLint )location, (GLsizei )count, (const GLfloat* )value);
  OGLM_CHECK_ERR(glUniform3fv, free(value);)
  free(value);
#line 75475 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform3i); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform3i)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "location, v0, v1, v2");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLint	v0 = (int)SvIV(ST(1))
;
	GLint	v1 = (int)SvIV(ST(2))
;
	GLint	v2 = (int)SvIV(ST(3))
;
#line 37335 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform3i, )
  OGLM_AVAIL_CHECK(__glewUniform3i, glUniform3i)
  glUniform3i(location, v0, v1, v2);
  OGLM_CHECK_ERR(glUniform3i, )
#line 75503 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform3i64ARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform3i64ARB)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "location, x, y, z");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLint64	x = (unsigned int)SvUV(ST(1))
;
	GLint64	y = (unsigned int)SvUV(ST(2))
;
	GLint64	z = (unsigned int)SvUV(ST(3))
;
#line 37348 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform3i64ARB, )
  OGLM_AVAIL_CHECK(__glewUniform3i64ARB, glUniform3i64ARB)
  glUniform3i64ARB(location, x, y, z);
  OGLM_CHECK_ERR(glUniform3i64ARB, )
#line 75530 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform3i64NV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform3i64NV)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "location, x, y, z");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLint64EXT	x = (unsigned int)SvUV(ST(1))
;
	GLint64EXT	y = (unsigned int)SvUV(ST(2))
;
	GLint64EXT	z = (unsigned int)SvUV(ST(3))
;
#line 37361 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform3i64NV, )
  OGLM_AVAIL_CHECK(__glewUniform3i64NV, glUniform3i64NV)
  glUniform3i64NV(location, x, y, z);
  OGLM_CHECK_ERR(glUniform3i64NV, )
#line 75557 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform3i64vARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform3i64vARB_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "location, count, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLint64*	value = INT2PTR(const GLint64 *,SvIV(ST(2)))
;
#line 37373 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform3i64vARB, )
  OGLM_AVAIL_CHECK(__glewUniform3i64vARB, glUniform3i64vARB)
  glUniform3i64vARB(location, count, value);
  OGLM_CHECK_ERR(glUniform3i64vARB, )
#line 75582 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform3i64vARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform3i64vARB_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "location, count, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 37384 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform3i64vARB, )
  OGLM_AVAIL_CHECK(__glewUniform3i64vARB, glUniform3i64vARB)
  GLint64* value = OGLM_GET_VARARGS(value,2,GLint64,IV,count*3);
  glUniform3i64vARB((GLint )location, (GLsizei )count, (const GLint64* )value);
  OGLM_CHECK_ERR(glUniform3i64vARB, free(value);)
  free(value);
#line 75607 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform3i64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform3i64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "location, count, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLint64EXT*	value = INT2PTR(const GLint64EXT *,SvIV(ST(2)))
;
#line 37398 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform3i64vNV, )
  OGLM_AVAIL_CHECK(__glewUniform3i64vNV, glUniform3i64vNV)
  glUniform3i64vNV(location, count, value);
  OGLM_CHECK_ERR(glUniform3i64vNV, )
#line 75632 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform3i64vNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform3i64vNV_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "location, count, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 37409 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform3i64vNV, )
  OGLM_AVAIL_CHECK(__glewUniform3i64vNV, glUniform3i64vNV)
  GLint64EXT* value = OGLM_GET_VARARGS(value,2,GLint64EXT,IV,count*3);
  glUniform3i64vNV((GLint )location, (GLsizei )count, (const GLint64EXT* )value);
  OGLM_CHECK_ERR(glUniform3i64vNV, free(value);)
  free(value);
#line 75657 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform3iv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform3iv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "location, count, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLint*	value = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 37425 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform3iv, )
  OGLM_AVAIL_CHECK(__glewUniform3iv, glUniform3iv)
  glUniform3iv(location, count, value);
  OGLM_CHECK_ERR(glUniform3iv, )
#line 75683 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform3iv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform3iv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 2)
       croak_xs_usage(cv,  "location, count, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 37438 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform3iv, )
  OGLM_AVAIL_CHECK(__glewUniform3iv, glUniform3iv)
  GLint* value = OGLM_GET_VARARGS(value,2,GLint,IV,count*3);
  glUniform3iv((GLint )location, (GLsizei )count, (const GLint* )value);
  OGLM_CHECK_ERR(glUniform3iv, free(value);)
  free(value);
#line 75709 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform3ui); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform3ui)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "location, v0, v1, v2");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLuint	v0 = (unsigned int)SvUV(ST(1))
;
	GLuint	v1 = (unsigned int)SvUV(ST(2))
;
	GLuint	v2 = (unsigned int)SvUV(ST(3))
;
#line 37455 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform3ui, )
  OGLM_AVAIL_CHECK(__glewUniform3ui, glUniform3ui)
  glUniform3ui(location, v0, v1, v2);
  OGLM_CHECK_ERR(glUniform3ui, )
#line 75737 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform3ui64ARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform3ui64ARB)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "location, x, y, z");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLuint64	x = (unsigned int)SvUV(ST(1))
;
	GLuint64	y = (unsigned int)SvUV(ST(2))
;
	GLuint64	z = (unsigned int)SvUV(ST(3))
;
#line 37468 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform3ui64ARB, )
  OGLM_AVAIL_CHECK(__glewUniform3ui64ARB, glUniform3ui64ARB)
  glUniform3ui64ARB(location, x, y, z);
  OGLM_CHECK_ERR(glUniform3ui64ARB, )
#line 75764 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform3ui64NV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform3ui64NV)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "location, x, y, z");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLuint64EXT	x = (unsigned int)SvUV(ST(1))
;
	GLuint64EXT	y = (unsigned int)SvUV(ST(2))
;
	GLuint64EXT	z = (unsigned int)SvUV(ST(3))
;
#line 37481 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform3ui64NV, )
  OGLM_AVAIL_CHECK(__glewUniform3ui64NV, glUniform3ui64NV)
  glUniform3ui64NV(location, x, y, z);
  OGLM_CHECK_ERR(glUniform3ui64NV, )
#line 75791 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform3ui64vARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform3ui64vARB_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "location, count, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLuint64*	value = INT2PTR(const GLuint64 *,SvIV(ST(2)))
;
#line 37493 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform3ui64vARB, )
  OGLM_AVAIL_CHECK(__glewUniform3ui64vARB, glUniform3ui64vARB)
  glUniform3ui64vARB(location, count, value);
  OGLM_CHECK_ERR(glUniform3ui64vARB, )
#line 75816 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform3ui64vARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform3ui64vARB_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "location, count, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 37504 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform3ui64vARB, )
  OGLM_AVAIL_CHECK(__glewUniform3ui64vARB, glUniform3ui64vARB)
  GLuint64* value = OGLM_GET_VARARGS(value,2,GLuint64,UV,count*3);
  glUniform3ui64vARB((GLint )location, (GLsizei )count, (const GLuint64* )value);
  OGLM_CHECK_ERR(glUniform3ui64vARB, free(value);)
  free(value);
#line 75841 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform3ui64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform3ui64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "location, count, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLuint64EXT*	value = INT2PTR(const GLuint64EXT *,SvIV(ST(2)))
;
#line 37518 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform3ui64vNV, )
  OGLM_AVAIL_CHECK(__glewUniform3ui64vNV, glUniform3ui64vNV)
  glUniform3ui64vNV(location, count, value);
  OGLM_CHECK_ERR(glUniform3ui64vNV, )
#line 75866 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform3ui64vNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform3ui64vNV_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "location, count, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 37529 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform3ui64vNV, )
  OGLM_AVAIL_CHECK(__glewUniform3ui64vNV, glUniform3ui64vNV)
  GLuint64EXT* value = OGLM_GET_VARARGS(value,2,GLuint64EXT,UV,count*3);
  glUniform3ui64vNV((GLint )location, (GLsizei )count, (const GLuint64EXT* )value);
  OGLM_CHECK_ERR(glUniform3ui64vNV, free(value);)
  free(value);
#line 75891 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform3uiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform3uiv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "location, count, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLuint*	value = INT2PTR(const GLuint *,SvIV(ST(2)))
;
#line 37545 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform3uiv, )
  OGLM_AVAIL_CHECK(__glewUniform3uiv, glUniform3uiv)
  glUniform3uiv(location, count, value);
  OGLM_CHECK_ERR(glUniform3uiv, )
#line 75917 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform3uiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform3uiv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 2)
       croak_xs_usage(cv,  "location, count, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 37558 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform3uiv, )
  OGLM_AVAIL_CHECK(__glewUniform3uiv, glUniform3uiv)
  GLuint* value = OGLM_GET_VARARGS(value,2,GLuint,UV,count*3);
  glUniform3uiv((GLint )location, (GLsizei )count, (const GLuint* )value);
  OGLM_CHECK_ERR(glUniform3uiv, free(value);)
  free(value);
#line 75943 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform4d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform4d)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "location, x, y, z, w");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLdouble	x = (double)SvNV(ST(1))
;
	GLdouble	y = (double)SvNV(ST(2))
;
	GLdouble	z = (double)SvNV(ST(3))
;
	GLdouble	w = (double)SvNV(ST(4))
;
#line 37574 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform4d, )
  OGLM_AVAIL_CHECK(__glewUniform4d, glUniform4d)
  glUniform4d(location, x, y, z, w);
  OGLM_CHECK_ERR(glUniform4d, )
#line 75972 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform4dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform4dv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "location, count, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLdouble*	value = INT2PTR(const GLdouble *,SvIV(ST(2)))
;
#line 37586 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform4dv, )
  OGLM_AVAIL_CHECK(__glewUniform4dv, glUniform4dv)
  glUniform4dv(location, count, value);
  OGLM_CHECK_ERR(glUniform4dv, )
#line 75997 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform4dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform4dv_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "location, count, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 37597 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform4dv, )
  OGLM_AVAIL_CHECK(__glewUniform4dv, glUniform4dv)
  GLdouble* value = OGLM_GET_VARARGS(value,2,GLdouble,NV,count*4);
  glUniform4dv((GLint )location, (GLsizei )count, (const GLdouble* )value);
  OGLM_CHECK_ERR(glUniform4dv, free(value);)
  free(value);
#line 76022 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform4f); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform4f)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "location, v0, v1, v2, v3");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLfloat	v0 = (float)SvNV(ST(1))
;
	GLfloat	v1 = (float)SvNV(ST(2))
;
	GLfloat	v2 = (float)SvNV(ST(3))
;
	GLfloat	v3 = (float)SvNV(ST(4))
;
#line 37615 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform4f, )
  OGLM_AVAIL_CHECK(__glewUniform4f, glUniform4f)
  glUniform4f(location, v0, v1, v2, v3);
  OGLM_CHECK_ERR(glUniform4f, )
#line 76052 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform4fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform4fv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "location, count, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLfloat*	value = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 37629 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform4fv, )
  OGLM_AVAIL_CHECK(__glewUniform4fv, glUniform4fv)
  glUniform4fv(location, count, value);
  OGLM_CHECK_ERR(glUniform4fv, )
#line 76078 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform4fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform4fv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 2)
       croak_xs_usage(cv,  "location, count, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 37642 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform4fv, )
  OGLM_AVAIL_CHECK(__glewUniform4fv, glUniform4fv)
  GLfloat* value = OGLM_GET_VARARGS(value,2,GLfloat,NV,count*4);
  glUniform4fv((GLint )location, (GLsizei )count, (const GLfloat* )value);
  OGLM_CHECK_ERR(glUniform4fv, free(value);)
  free(value);
#line 76104 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform4i); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform4i)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "location, v0, v1, v2, v3");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLint	v0 = (int)SvIV(ST(1))
;
	GLint	v1 = (int)SvIV(ST(2))
;
	GLint	v2 = (int)SvIV(ST(3))
;
	GLint	v3 = (int)SvIV(ST(4))
;
#line 37660 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform4i, )
  OGLM_AVAIL_CHECK(__glewUniform4i, glUniform4i)
  glUniform4i(location, v0, v1, v2, v3);
  OGLM_CHECK_ERR(glUniform4i, )
#line 76134 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform4i64ARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform4i64ARB)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "location, x, y, z, w");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLint64	x = (unsigned int)SvUV(ST(1))
;
	GLint64	y = (unsigned int)SvUV(ST(2))
;
	GLint64	z = (unsigned int)SvUV(ST(3))
;
	GLint64	w = (unsigned int)SvUV(ST(4))
;
#line 37674 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform4i64ARB, )
  OGLM_AVAIL_CHECK(__glewUniform4i64ARB, glUniform4i64ARB)
  glUniform4i64ARB(location, x, y, z, w);
  OGLM_CHECK_ERR(glUniform4i64ARB, )
#line 76163 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform4i64NV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform4i64NV)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "location, x, y, z, w");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLint64EXT	x = (unsigned int)SvUV(ST(1))
;
	GLint64EXT	y = (unsigned int)SvUV(ST(2))
;
	GLint64EXT	z = (unsigned int)SvUV(ST(3))
;
	GLint64EXT	w = (unsigned int)SvUV(ST(4))
;
#line 37688 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform4i64NV, )
  OGLM_AVAIL_CHECK(__glewUniform4i64NV, glUniform4i64NV)
  glUniform4i64NV(location, x, y, z, w);
  OGLM_CHECK_ERR(glUniform4i64NV, )
#line 76192 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform4i64vARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform4i64vARB_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "location, count, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLint64*	value = INT2PTR(const GLint64 *,SvIV(ST(2)))
;
#line 37700 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform4i64vARB, )
  OGLM_AVAIL_CHECK(__glewUniform4i64vARB, glUniform4i64vARB)
  glUniform4i64vARB(location, count, value);
  OGLM_CHECK_ERR(glUniform4i64vARB, )
#line 76217 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform4i64vARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform4i64vARB_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "location, count, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 37711 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform4i64vARB, )
  OGLM_AVAIL_CHECK(__glewUniform4i64vARB, glUniform4i64vARB)
  GLint64* value = OGLM_GET_VARARGS(value,2,GLint64,IV,count*4);
  glUniform4i64vARB((GLint )location, (GLsizei )count, (const GLint64* )value);
  OGLM_CHECK_ERR(glUniform4i64vARB, free(value);)
  free(value);
#line 76242 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform4i64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform4i64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "location, count, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLint64EXT*	value = INT2PTR(const GLint64EXT *,SvIV(ST(2)))
;
#line 37725 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform4i64vNV, )
  OGLM_AVAIL_CHECK(__glewUniform4i64vNV, glUniform4i64vNV)
  glUniform4i64vNV(location, count, value);
  OGLM_CHECK_ERR(glUniform4i64vNV, )
#line 76267 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform4i64vNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform4i64vNV_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "location, count, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 37736 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform4i64vNV, )
  OGLM_AVAIL_CHECK(__glewUniform4i64vNV, glUniform4i64vNV)
  GLint64EXT* value = OGLM_GET_VARARGS(value,2,GLint64EXT,IV,count*4);
  glUniform4i64vNV((GLint )location, (GLsizei )count, (const GLint64EXT* )value);
  OGLM_CHECK_ERR(glUniform4i64vNV, free(value);)
  free(value);
#line 76292 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform4iv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform4iv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "location, count, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLint*	value = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 37752 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform4iv, )
  OGLM_AVAIL_CHECK(__glewUniform4iv, glUniform4iv)
  glUniform4iv(location, count, value);
  OGLM_CHECK_ERR(glUniform4iv, )
#line 76318 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform4iv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform4iv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 2)
       croak_xs_usage(cv,  "location, count, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 37765 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform4iv, )
  OGLM_AVAIL_CHECK(__glewUniform4iv, glUniform4iv)
  GLint* value = OGLM_GET_VARARGS(value,2,GLint,IV,count*4);
  glUniform4iv((GLint )location, (GLsizei )count, (const GLint* )value);
  OGLM_CHECK_ERR(glUniform4iv, free(value);)
  free(value);
#line 76344 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform4ui); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform4ui)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "location, v0, v1, v2, v3");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLuint	v0 = (unsigned int)SvUV(ST(1))
;
	GLuint	v1 = (unsigned int)SvUV(ST(2))
;
	GLuint	v2 = (unsigned int)SvUV(ST(3))
;
	GLuint	v3 = (unsigned int)SvUV(ST(4))
;
#line 37783 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform4ui, )
  OGLM_AVAIL_CHECK(__glewUniform4ui, glUniform4ui)
  glUniform4ui(location, v0, v1, v2, v3);
  OGLM_CHECK_ERR(glUniform4ui, )
#line 76374 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform4ui64ARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform4ui64ARB)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "location, x, y, z, w");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLuint64	x = (unsigned int)SvUV(ST(1))
;
	GLuint64	y = (unsigned int)SvUV(ST(2))
;
	GLuint64	z = (unsigned int)SvUV(ST(3))
;
	GLuint64	w = (unsigned int)SvUV(ST(4))
;
#line 37797 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform4ui64ARB, )
  OGLM_AVAIL_CHECK(__glewUniform4ui64ARB, glUniform4ui64ARB)
  glUniform4ui64ARB(location, x, y, z, w);
  OGLM_CHECK_ERR(glUniform4ui64ARB, )
#line 76403 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform4ui64NV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform4ui64NV)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "location, x, y, z, w");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLuint64EXT	x = (unsigned int)SvUV(ST(1))
;
	GLuint64EXT	y = (unsigned int)SvUV(ST(2))
;
	GLuint64EXT	z = (unsigned int)SvUV(ST(3))
;
	GLuint64EXT	w = (unsigned int)SvUV(ST(4))
;
#line 37811 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform4ui64NV, )
  OGLM_AVAIL_CHECK(__glewUniform4ui64NV, glUniform4ui64NV)
  glUniform4ui64NV(location, x, y, z, w);
  OGLM_CHECK_ERR(glUniform4ui64NV, )
#line 76432 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform4ui64vARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform4ui64vARB_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "location, count, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLuint64*	value = INT2PTR(const GLuint64 *,SvIV(ST(2)))
;
#line 37823 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform4ui64vARB, )
  OGLM_AVAIL_CHECK(__glewUniform4ui64vARB, glUniform4ui64vARB)
  glUniform4ui64vARB(location, count, value);
  OGLM_CHECK_ERR(glUniform4ui64vARB, )
#line 76457 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform4ui64vARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform4ui64vARB_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "location, count, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 37834 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform4ui64vARB, )
  OGLM_AVAIL_CHECK(__glewUniform4ui64vARB, glUniform4ui64vARB)
  GLuint64* value = OGLM_GET_VARARGS(value,2,GLuint64,UV,count*4);
  glUniform4ui64vARB((GLint )location, (GLsizei )count, (const GLuint64* )value);
  OGLM_CHECK_ERR(glUniform4ui64vARB, free(value);)
  free(value);
#line 76482 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform4ui64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform4ui64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "location, count, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLuint64EXT*	value = INT2PTR(const GLuint64EXT *,SvIV(ST(2)))
;
#line 37848 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform4ui64vNV, )
  OGLM_AVAIL_CHECK(__glewUniform4ui64vNV, glUniform4ui64vNV)
  glUniform4ui64vNV(location, count, value);
  OGLM_CHECK_ERR(glUniform4ui64vNV, )
#line 76507 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform4ui64vNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform4ui64vNV_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "location, count, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 37859 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform4ui64vNV, )
  OGLM_AVAIL_CHECK(__glewUniform4ui64vNV, glUniform4ui64vNV)
  GLuint64EXT* value = OGLM_GET_VARARGS(value,2,GLuint64EXT,UV,count*4);
  glUniform4ui64vNV((GLint )location, (GLsizei )count, (const GLuint64EXT* )value);
  OGLM_CHECK_ERR(glUniform4ui64vNV, free(value);)
  free(value);
#line 76532 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform4uiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform4uiv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "location, count, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLuint*	value = INT2PTR(const GLuint *,SvIV(ST(2)))
;
#line 37875 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform4uiv, )
  OGLM_AVAIL_CHECK(__glewUniform4uiv, glUniform4uiv)
  glUniform4uiv(location, count, value);
  OGLM_CHECK_ERR(glUniform4uiv, )
#line 76558 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniform4uiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniform4uiv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 2)
       croak_xs_usage(cv,  "location, count, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 37888 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniform4uiv, )
  OGLM_AVAIL_CHECK(__glewUniform4uiv, glUniform4uiv)
  GLuint* value = OGLM_GET_VARARGS(value,2,GLuint,UV,count*4);
  glUniform4uiv((GLint )location, (GLsizei )count, (const GLuint* )value);
  OGLM_CHECK_ERR(glUniform4uiv, free(value);)
  free(value);
#line 76584 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformBlockBinding); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformBlockBinding)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, uniformBlockIndex, uniformBlockBinding");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLuint	uniformBlockIndex = (unsigned int)SvUV(ST(1))
;
	GLuint	uniformBlockBinding = (unsigned int)SvUV(ST(2))
;
#line 37902 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformBlockBinding, )
  OGLM_AVAIL_CHECK(__glewUniformBlockBinding, glUniformBlockBinding)
  glUniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding);
  OGLM_CHECK_ERR(glUniformBlockBinding, )
#line 76609 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformBufferEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformBufferEXT)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "program, location, buffer");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
	GLint	location = (int)SvIV(ST(1))
;
	GLuint	buffer = (unsigned int)SvUV(ST(2))
;
#line 37914 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformBufferEXT, )
  OGLM_AVAIL_CHECK(__glewUniformBufferEXT, glUniformBufferEXT)
  glUniformBufferEXT(program, location, buffer);
  OGLM_CHECK_ERR(glUniformBufferEXT, )
#line 76634 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformHandleui64ARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformHandleui64ARB)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "location, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLuint64	value = (unsigned int)SvUV(ST(1))
;
#line 37927 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformHandleui64ARB, )
  OGLM_AVAIL_CHECK(__glewUniformHandleui64ARB, glUniformHandleui64ARB)
  glUniformHandleui64ARB(location, value);
  OGLM_CHECK_ERR(glUniformHandleui64ARB, )
#line 76658 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformHandleui64NV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformHandleui64NV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "location, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLuint64	value = (unsigned int)SvUV(ST(1))
;
#line 37938 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformHandleui64NV, )
  OGLM_AVAIL_CHECK(__glewUniformHandleui64NV, glUniformHandleui64NV)
  glUniformHandleui64NV(location, value);
  OGLM_CHECK_ERR(glUniformHandleui64NV, )
#line 76681 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformHandleui64vARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformHandleui64vARB_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "location, count, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLuint64*	value = INT2PTR(const GLuint64 *,SvIV(ST(2)))
;
#line 37952 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformHandleui64vARB, )
  OGLM_AVAIL_CHECK(__glewUniformHandleui64vARB, glUniformHandleui64vARB)
  glUniformHandleui64vARB(location, count, value);
  OGLM_CHECK_ERR(glUniformHandleui64vARB, )
#line 76707 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformHandleui64vARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformHandleui64vARB_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "location, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
#line 37964 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformHandleui64vARB, )
  OGLM_AVAIL_CHECK(__glewUniformHandleui64vARB, glUniformHandleui64vARB)
  GLsizei count = items-1;
  GLuint64* value = OGLM_GET_VARARGS(value,1,GLuint64,UV,count);
  glUniformHandleui64vARB((GLint )location, (GLsizei )count, (const GLuint64* )value);
  OGLM_CHECK_ERR(glUniformHandleui64vARB, free(value);)
  free(value);
#line 76732 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformHandleui64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformHandleui64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "location, count, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLuint64*	value = INT2PTR(const GLuint64 *,SvIV(ST(2)))
;
#line 37979 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformHandleui64vNV, )
  OGLM_AVAIL_CHECK(__glewUniformHandleui64vNV, glUniformHandleui64vNV)
  glUniformHandleui64vNV(location, count, value);
  OGLM_CHECK_ERR(glUniformHandleui64vNV, )
#line 76757 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformHandleui64vNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformHandleui64vNV_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "location, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
#line 37989 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformHandleui64vNV, )
  OGLM_AVAIL_CHECK(__glewUniformHandleui64vNV, glUniformHandleui64vNV)
  GLsizei count = items-1;
  GLuint64* value = OGLM_GET_VARARGS(value,1,GLuint64,UV,count);
  glUniformHandleui64vNV((GLint )location, (GLsizei )count, (const GLuint64* )value);
  OGLM_CHECK_ERR(glUniformHandleui64vNV, free(value);)
  free(value);
#line 76781 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix2dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix2dv_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "location, count, transpose, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLboolean	transpose = (int)SvIV(ST(2))
;
	const GLdouble*	value = INT2PTR(const GLdouble *,SvIV(ST(3)))
;
#line 38005 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformMatrix2dv, )
  OGLM_AVAIL_CHECK(__glewUniformMatrix2dv, glUniformMatrix2dv)
  glUniformMatrix2dv(location, count, transpose, value);
  OGLM_CHECK_ERR(glUniformMatrix2dv, )
#line 76808 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix2dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix2dv_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "location, count, transpose, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLboolean	transpose = (int)SvIV(ST(2))
;
#line 38017 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformMatrix2dv, )
  OGLM_AVAIL_CHECK(__glewUniformMatrix2dv, glUniformMatrix2dv)
  GLdouble* value = OGLM_GET_VARARGS(value,3,GLdouble,NV,count*4);
  glUniformMatrix2dv((GLint )location, (GLsizei )count, (GLboolean )transpose, (const GLdouble* )value);
  OGLM_CHECK_ERR(glUniformMatrix2dv, free(value);)
  free(value);
#line 76835 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix2fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix2fv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "location, count, transpose, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLboolean	transpose = (int)SvIV(ST(2))
;
	const GLfloat*	value = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 38034 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformMatrix2fv, )
  OGLM_AVAIL_CHECK(__glewUniformMatrix2fv, glUniformMatrix2fv)
  glUniformMatrix2fv(location, count, transpose, value);
  OGLM_CHECK_ERR(glUniformMatrix2fv, )
#line 76863 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix2fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix2fv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 3)
       croak_xs_usage(cv,  "location, count, transpose, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLboolean	transpose = (int)SvIV(ST(2))
;
#line 38048 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformMatrix2fv, )
  OGLM_AVAIL_CHECK(__glewUniformMatrix2fv, glUniformMatrix2fv)
  GLfloat* value = OGLM_GET_VARARGS(value,3,GLfloat,NV,count*4);
  glUniformMatrix2fv((GLint )location, (GLsizei )count, (GLboolean )transpose, (const GLfloat* )value);
  OGLM_CHECK_ERR(glUniformMatrix2fv, free(value);)
  free(value);
#line 76891 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix2x3dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix2x3dv_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "location, count, transpose, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLboolean	transpose = (int)SvIV(ST(2))
;
	const GLdouble*	value = INT2PTR(const GLdouble *,SvIV(ST(3)))
;
#line 38063 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformMatrix2x3dv, )
  OGLM_AVAIL_CHECK(__glewUniformMatrix2x3dv, glUniformMatrix2x3dv)
  glUniformMatrix2x3dv(location, count, transpose, value);
  OGLM_CHECK_ERR(glUniformMatrix2x3dv, )
#line 76918 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix2x3dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix2x3dv_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "location, count, transpose, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLboolean	transpose = (int)SvIV(ST(2))
;
#line 38075 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformMatrix2x3dv, )
  OGLM_AVAIL_CHECK(__glewUniformMatrix2x3dv, glUniformMatrix2x3dv)
  GLdouble* value = OGLM_GET_VARARGS(value,3,GLdouble,NV,count*6);
  glUniformMatrix2x3dv((GLint )location, (GLsizei )count, (GLboolean )transpose, (const GLdouble* )value);
  OGLM_CHECK_ERR(glUniformMatrix2x3dv, free(value);)
  free(value);
#line 76945 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix2x3fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix2x3fv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "location, count, transpose, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLboolean	transpose = (int)SvIV(ST(2))
;
	const GLfloat *	value = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 38092 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformMatrix2x3fv, )
  OGLM_AVAIL_CHECK(__glewUniformMatrix2x3fv, glUniformMatrix2x3fv)
  glUniformMatrix2x3fv(location, count, transpose, value);
  OGLM_CHECK_ERR(glUniformMatrix2x3fv, )
#line 76973 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix2x3fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix2x3fv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 3)
       croak_xs_usage(cv,  "location, count, transpose, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLboolean	transpose = (int)SvIV(ST(2))
;
#line 38106 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformMatrix2x3fv, )
  OGLM_AVAIL_CHECK(__glewUniformMatrix2x3fv, glUniformMatrix2x3fv)
  GLfloat *value = OGLM_GET_VARARGS(value,3,GLfloat,NV,count*6);
  glUniformMatrix2x3fv((GLint )location, (GLsizei )count, (GLboolean )transpose, (const GLfloat *)value);
  OGLM_CHECK_ERR(glUniformMatrix2x3fv, free(value);)
  free(value);
#line 77001 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix2x4dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix2x4dv_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "location, count, transpose, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLboolean	transpose = (int)SvIV(ST(2))
;
	const GLdouble*	value = INT2PTR(const GLdouble *,SvIV(ST(3)))
;
#line 38121 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformMatrix2x4dv, )
  OGLM_AVAIL_CHECK(__glewUniformMatrix2x4dv, glUniformMatrix2x4dv)
  glUniformMatrix2x4dv(location, count, transpose, value);
  OGLM_CHECK_ERR(glUniformMatrix2x4dv, )
#line 77028 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix2x4dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix2x4dv_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "location, count, transpose, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLboolean	transpose = (int)SvIV(ST(2))
;
#line 38133 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformMatrix2x4dv, )
  OGLM_AVAIL_CHECK(__glewUniformMatrix2x4dv, glUniformMatrix2x4dv)
  GLdouble* value = OGLM_GET_VARARGS(value,3,GLdouble,NV,count*8);
  glUniformMatrix2x4dv((GLint )location, (GLsizei )count, (GLboolean )transpose, (const GLdouble* )value);
  OGLM_CHECK_ERR(glUniformMatrix2x4dv, free(value);)
  free(value);
#line 77055 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix2x4fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix2x4fv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "location, count, transpose, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLboolean	transpose = (int)SvIV(ST(2))
;
	const GLfloat *	value = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 38150 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformMatrix2x4fv, )
  OGLM_AVAIL_CHECK(__glewUniformMatrix2x4fv, glUniformMatrix2x4fv)
  glUniformMatrix2x4fv(location, count, transpose, value);
  OGLM_CHECK_ERR(glUniformMatrix2x4fv, )
#line 77083 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix2x4fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix2x4fv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 3)
       croak_xs_usage(cv,  "location, count, transpose, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLboolean	transpose = (int)SvIV(ST(2))
;
#line 38164 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformMatrix2x4fv, )
  OGLM_AVAIL_CHECK(__glewUniformMatrix2x4fv, glUniformMatrix2x4fv)
  GLfloat *value = OGLM_GET_VARARGS(value,3,GLfloat,NV,count*8);
  glUniformMatrix2x4fv((GLint )location, (GLsizei )count, (GLboolean )transpose, (const GLfloat *)value);
  OGLM_CHECK_ERR(glUniformMatrix2x4fv, free(value);)
  free(value);
#line 77111 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix3dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix3dv_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "location, count, transpose, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLboolean	transpose = (int)SvIV(ST(2))
;
	const GLdouble*	value = INT2PTR(const GLdouble *,SvIV(ST(3)))
;
#line 38179 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformMatrix3dv, )
  OGLM_AVAIL_CHECK(__glewUniformMatrix3dv, glUniformMatrix3dv)
  glUniformMatrix3dv(location, count, transpose, value);
  OGLM_CHECK_ERR(glUniformMatrix3dv, )
#line 77138 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix3dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix3dv_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "location, count, transpose, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLboolean	transpose = (int)SvIV(ST(2))
;
#line 38191 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformMatrix3dv, )
  OGLM_AVAIL_CHECK(__glewUniformMatrix3dv, glUniformMatrix3dv)
  GLdouble* value = OGLM_GET_VARARGS(value,3,GLdouble,NV,count*9);
  glUniformMatrix3dv((GLint )location, (GLsizei )count, (GLboolean )transpose, (const GLdouble* )value);
  OGLM_CHECK_ERR(glUniformMatrix3dv, free(value);)
  free(value);
#line 77165 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix3fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix3fv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "location, count, transpose, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLboolean	transpose = (int)SvIV(ST(2))
;
	const GLfloat*	value = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 38208 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformMatrix3fv, )
  OGLM_AVAIL_CHECK(__glewUniformMatrix3fv, glUniformMatrix3fv)
  glUniformMatrix3fv(location, count, transpose, value);
  OGLM_CHECK_ERR(glUniformMatrix3fv, )
#line 77193 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix3fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix3fv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 3)
       croak_xs_usage(cv,  "location, count, transpose, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLboolean	transpose = (int)SvIV(ST(2))
;
#line 38222 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformMatrix3fv, )
  OGLM_AVAIL_CHECK(__glewUniformMatrix3fv, glUniformMatrix3fv)
  GLfloat* value = OGLM_GET_VARARGS(value,3,GLfloat,NV,count*9);
  glUniformMatrix3fv((GLint )location, (GLsizei )count, (GLboolean )transpose, (const GLfloat* )value);
  OGLM_CHECK_ERR(glUniformMatrix3fv, free(value);)
  free(value);
#line 77221 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix3x2dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix3x2dv_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "location, count, transpose, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLboolean	transpose = (int)SvIV(ST(2))
;
	const GLdouble*	value = INT2PTR(const GLdouble *,SvIV(ST(3)))
;
#line 38237 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformMatrix3x2dv, )
  OGLM_AVAIL_CHECK(__glewUniformMatrix3x2dv, glUniformMatrix3x2dv)
  glUniformMatrix3x2dv(location, count, transpose, value);
  OGLM_CHECK_ERR(glUniformMatrix3x2dv, )
#line 77248 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix3x2dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix3x2dv_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "location, count, transpose, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLboolean	transpose = (int)SvIV(ST(2))
;
#line 38249 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformMatrix3x2dv, )
  OGLM_AVAIL_CHECK(__glewUniformMatrix3x2dv, glUniformMatrix3x2dv)
  GLdouble* value = OGLM_GET_VARARGS(value,3,GLdouble,NV,count*6);
  glUniformMatrix3x2dv((GLint )location, (GLsizei )count, (GLboolean )transpose, (const GLdouble* )value);
  OGLM_CHECK_ERR(glUniformMatrix3x2dv, free(value);)
  free(value);
#line 77275 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix3x2fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix3x2fv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "location, count, transpose, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLboolean	transpose = (int)SvIV(ST(2))
;
	const GLfloat *	value = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 38266 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformMatrix3x2fv, )
  OGLM_AVAIL_CHECK(__glewUniformMatrix3x2fv, glUniformMatrix3x2fv)
  glUniformMatrix3x2fv(location, count, transpose, value);
  OGLM_CHECK_ERR(glUniformMatrix3x2fv, )
#line 77303 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix3x2fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix3x2fv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 3)
       croak_xs_usage(cv,  "location, count, transpose, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLboolean	transpose = (int)SvIV(ST(2))
;
#line 38280 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformMatrix3x2fv, )
  OGLM_AVAIL_CHECK(__glewUniformMatrix3x2fv, glUniformMatrix3x2fv)
  GLfloat *value = OGLM_GET_VARARGS(value,3,GLfloat,NV,count*6);
  glUniformMatrix3x2fv((GLint )location, (GLsizei )count, (GLboolean )transpose, (const GLfloat *)value);
  OGLM_CHECK_ERR(glUniformMatrix3x2fv, free(value);)
  free(value);
#line 77331 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix3x4dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix3x4dv_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "location, count, transpose, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLboolean	transpose = (int)SvIV(ST(2))
;
	const GLdouble*	value = INT2PTR(const GLdouble *,SvIV(ST(3)))
;
#line 38295 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformMatrix3x4dv, )
  OGLM_AVAIL_CHECK(__glewUniformMatrix3x4dv, glUniformMatrix3x4dv)
  glUniformMatrix3x4dv(location, count, transpose, value);
  OGLM_CHECK_ERR(glUniformMatrix3x4dv, )
#line 77358 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix3x4dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix3x4dv_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "location, count, transpose, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLboolean	transpose = (int)SvIV(ST(2))
;
#line 38307 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformMatrix3x4dv, )
  OGLM_AVAIL_CHECK(__glewUniformMatrix3x4dv, glUniformMatrix3x4dv)
  GLdouble* value = OGLM_GET_VARARGS(value,3,GLdouble,NV,count*12);
  glUniformMatrix3x4dv((GLint )location, (GLsizei )count, (GLboolean )transpose, (const GLdouble* )value);
  OGLM_CHECK_ERR(glUniformMatrix3x4dv, free(value);)
  free(value);
#line 77385 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix3x4fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix3x4fv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "location, count, transpose, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLboolean	transpose = (int)SvIV(ST(2))
;
	const GLfloat *	value = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 38324 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformMatrix3x4fv, )
  OGLM_AVAIL_CHECK(__glewUniformMatrix3x4fv, glUniformMatrix3x4fv)
  glUniformMatrix3x4fv(location, count, transpose, value);
  OGLM_CHECK_ERR(glUniformMatrix3x4fv, )
#line 77413 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix3x4fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix3x4fv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 3)
       croak_xs_usage(cv,  "location, count, transpose, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLboolean	transpose = (int)SvIV(ST(2))
;
#line 38338 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformMatrix3x4fv, )
  OGLM_AVAIL_CHECK(__glewUniformMatrix3x4fv, glUniformMatrix3x4fv)
  GLfloat *value = OGLM_GET_VARARGS(value,3,GLfloat,NV,count*12);
  glUniformMatrix3x4fv((GLint )location, (GLsizei )count, (GLboolean )transpose, (const GLfloat *)value);
  OGLM_CHECK_ERR(glUniformMatrix3x4fv, free(value);)
  free(value);
#line 77441 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix4dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix4dv_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "location, count, transpose, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLboolean	transpose = (int)SvIV(ST(2))
;
	const GLdouble*	value = INT2PTR(const GLdouble *,SvIV(ST(3)))
;
#line 38353 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformMatrix4dv, )
  OGLM_AVAIL_CHECK(__glewUniformMatrix4dv, glUniformMatrix4dv)
  glUniformMatrix4dv(location, count, transpose, value);
  OGLM_CHECK_ERR(glUniformMatrix4dv, )
#line 77468 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix4dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix4dv_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "location, count, transpose, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLboolean	transpose = (int)SvIV(ST(2))
;
#line 38365 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformMatrix4dv, )
  OGLM_AVAIL_CHECK(__glewUniformMatrix4dv, glUniformMatrix4dv)
  GLdouble* value = OGLM_GET_VARARGS(value,3,GLdouble,NV,count*16);
  glUniformMatrix4dv((GLint )location, (GLsizei )count, (GLboolean )transpose, (const GLdouble* )value);
  OGLM_CHECK_ERR(glUniformMatrix4dv, free(value);)
  free(value);
#line 77495 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix4fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix4fv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "location, count, transpose, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLboolean	transpose = (int)SvIV(ST(2))
;
	const GLfloat*	value = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 38382 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformMatrix4fv, )
  OGLM_AVAIL_CHECK(__glewUniformMatrix4fv, glUniformMatrix4fv)
  glUniformMatrix4fv(location, count, transpose, value);
  OGLM_CHECK_ERR(glUniformMatrix4fv, )
#line 77523 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix4fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix4fv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 3)
       croak_xs_usage(cv,  "location, count, transpose, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLboolean	transpose = (int)SvIV(ST(2))
;
#line 38396 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformMatrix4fv, )
  OGLM_AVAIL_CHECK(__glewUniformMatrix4fv, glUniformMatrix4fv)
  GLfloat* value = OGLM_GET_VARARGS(value,3,GLfloat,NV,count*16);
  glUniformMatrix4fv((GLint )location, (GLsizei )count, (GLboolean )transpose, (const GLfloat* )value);
  OGLM_CHECK_ERR(glUniformMatrix4fv, free(value);)
  free(value);
#line 77551 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix4x2dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix4x2dv_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "location, count, transpose, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLboolean	transpose = (int)SvIV(ST(2))
;
	const GLdouble*	value = INT2PTR(const GLdouble *,SvIV(ST(3)))
;
#line 38411 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformMatrix4x2dv, )
  OGLM_AVAIL_CHECK(__glewUniformMatrix4x2dv, glUniformMatrix4x2dv)
  glUniformMatrix4x2dv(location, count, transpose, value);
  OGLM_CHECK_ERR(glUniformMatrix4x2dv, )
#line 77578 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix4x2dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix4x2dv_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "location, count, transpose, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLboolean	transpose = (int)SvIV(ST(2))
;
#line 38423 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformMatrix4x2dv, )
  OGLM_AVAIL_CHECK(__glewUniformMatrix4x2dv, glUniformMatrix4x2dv)
  GLdouble* value = OGLM_GET_VARARGS(value,3,GLdouble,NV,count*8);
  glUniformMatrix4x2dv((GLint )location, (GLsizei )count, (GLboolean )transpose, (const GLdouble* )value);
  OGLM_CHECK_ERR(glUniformMatrix4x2dv, free(value);)
  free(value);
#line 77605 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix4x2fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix4x2fv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "location, count, transpose, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLboolean	transpose = (int)SvIV(ST(2))
;
	const GLfloat *	value = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 38440 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformMatrix4x2fv, )
  OGLM_AVAIL_CHECK(__glewUniformMatrix4x2fv, glUniformMatrix4x2fv)
  glUniformMatrix4x2fv(location, count, transpose, value);
  OGLM_CHECK_ERR(glUniformMatrix4x2fv, )
#line 77633 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix4x2fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix4x2fv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 3)
       croak_xs_usage(cv,  "location, count, transpose, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLboolean	transpose = (int)SvIV(ST(2))
;
#line 38454 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformMatrix4x2fv, )
  OGLM_AVAIL_CHECK(__glewUniformMatrix4x2fv, glUniformMatrix4x2fv)
  GLfloat *value = OGLM_GET_VARARGS(value,3,GLfloat,NV,count*8);
  glUniformMatrix4x2fv((GLint )location, (GLsizei )count, (GLboolean )transpose, (const GLfloat *)value);
  OGLM_CHECK_ERR(glUniformMatrix4x2fv, free(value);)
  free(value);
#line 77661 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix4x3dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix4x3dv_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "location, count, transpose, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLboolean	transpose = (int)SvIV(ST(2))
;
	const GLdouble*	value = INT2PTR(const GLdouble *,SvIV(ST(3)))
;
#line 38469 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformMatrix4x3dv, )
  OGLM_AVAIL_CHECK(__glewUniformMatrix4x3dv, glUniformMatrix4x3dv)
  glUniformMatrix4x3dv(location, count, transpose, value);
  OGLM_CHECK_ERR(glUniformMatrix4x3dv, )
#line 77688 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix4x3dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix4x3dv_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "location, count, transpose, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLboolean	transpose = (int)SvIV(ST(2))
;
#line 38481 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformMatrix4x3dv, )
  OGLM_AVAIL_CHECK(__glewUniformMatrix4x3dv, glUniformMatrix4x3dv)
  GLdouble* value = OGLM_GET_VARARGS(value,3,GLdouble,NV,count*12);
  glUniformMatrix4x3dv((GLint )location, (GLsizei )count, (GLboolean )transpose, (const GLdouble* )value);
  OGLM_CHECK_ERR(glUniformMatrix4x3dv, free(value);)
  free(value);
#line 77715 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix4x3fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix4x3fv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "location, count, transpose, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLboolean	transpose = (int)SvIV(ST(2))
;
	const GLfloat *	value = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 38498 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformMatrix4x3fv, )
  OGLM_AVAIL_CHECK(__glewUniformMatrix4x3fv, glUniformMatrix4x3fv)
  glUniformMatrix4x3fv(location, count, transpose, value);
  OGLM_CHECK_ERR(glUniformMatrix4x3fv, )
#line 77743 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix4x3fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformMatrix4x3fv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 3)
       croak_xs_usage(cv,  "location, count, transpose, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	GLboolean	transpose = (int)SvIV(ST(2))
;
#line 38512 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformMatrix4x3fv, )
  OGLM_AVAIL_CHECK(__glewUniformMatrix4x3fv, glUniformMatrix4x3fv)
  GLfloat *value = OGLM_GET_VARARGS(value,3,GLfloat,NV,count*12);
  glUniformMatrix4x3fv((GLint )location, (GLsizei )count, (GLboolean )transpose, (const GLfloat *)value);
  OGLM_CHECK_ERR(glUniformMatrix4x3fv, free(value);)
  free(value);
#line 77771 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformSubroutinesuiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformSubroutinesuiv_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "shadertype, count, indices");
    {
	GLenum	shadertype = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLuint*	indices = INT2PTR(const GLuint *,SvIV(ST(2)))
;
#line 38526 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformSubroutinesuiv, )
  OGLM_AVAIL_CHECK(__glewUniformSubroutinesuiv, glUniformSubroutinesuiv)
  glUniformSubroutinesuiv(shadertype, count, indices);
  OGLM_CHECK_ERR(glUniformSubroutinesuiv, )
#line 77796 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformSubroutinesuiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformSubroutinesuiv_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "shadertype, ...");
    {
	GLenum	shadertype = (int)SvIV(ST(0))
;
#line 38536 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformSubroutinesuiv, )
  OGLM_AVAIL_CHECK(__glewUniformSubroutinesuiv, glUniformSubroutinesuiv)
  GLsizei count = items-1;
  GLuint* indices = OGLM_GET_VARARGS(indices,1,GLuint,UV,count);
  glUniformSubroutinesuiv((GLenum )shadertype, (GLsizei )count, (const GLuint* )indices);
  OGLM_CHECK_ERR(glUniformSubroutinesuiv, free(indices);)
  free(indices);
#line 77820 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformui64NV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformui64NV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "location, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLuint64EXT	value = (unsigned int)SvUV(ST(1))
;
#line 38550 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformui64NV, )
  OGLM_AVAIL_CHECK(__glewUniformui64NV, glUniformui64NV)
  glUniformui64NV(location, value);
  OGLM_CHECK_ERR(glUniformui64NV, )
#line 77843 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformui64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformui64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "location, count, value");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLuint64EXT*	value = INT2PTR(const GLuint64EXT *,SvIV(ST(2)))
;
#line 38562 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformui64vNV, )
  OGLM_AVAIL_CHECK(__glewUniformui64vNV, glUniformui64vNV)
  glUniformui64vNV(location, count, value);
  OGLM_CHECK_ERR(glUniformui64vNV, )
#line 77868 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUniformui64vNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUniformui64vNV_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "location, count, ...");
    {
	GLint	location = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 38573 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUniformui64vNV, )
  OGLM_AVAIL_CHECK(__glewUniformui64vNV, glUniformui64vNV)
  GLuint64EXT* value = OGLM_GET_VARARGS(value,2,GLuint64EXT,UV,count*1);
  glUniformui64vNV((GLint )location, (GLsizei )count, (const GLuint64EXT* )value);
  OGLM_CHECK_ERR(glUniformui64vNV, free(value);)
  free(value);
#line 77893 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUnlockArraysEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUnlockArraysEXT)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 38584 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUnlockArraysEXT, )
  OGLM_AVAIL_CHECK(__glewUnlockArraysEXT, glUnlockArraysEXT)
  glUnlockArraysEXT();
  OGLM_CHECK_ERR(glUnlockArraysEXT, )
#line 77912 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUnmapBuffer); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUnmapBuffer)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "target");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 38596 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUnmapBuffer, )
  OGLM_AVAIL_CHECK(__glewUnmapBuffer, glUnmapBuffer)
  RETVAL = glUnmapBuffer(target);
  OGLM_CHECK_ERR(glUnmapBuffer, )
#line 77936 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glUnmapBufferOES); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUnmapBufferOES)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "target");
    {
	GLenum	target = (int)SvIV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 38608 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUnmapBufferOES, )
  OGLM_AVAIL_CHECK(__glewUnmapBufferOES, glUnmapBufferOES)
  RETVAL = glUnmapBufferOES(target);
  OGLM_CHECK_ERR(glUnmapBufferOES, )
#line 77961 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glUnmapNamedBuffer); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUnmapNamedBuffer)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "buffer");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 38620 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUnmapNamedBuffer, )
  OGLM_AVAIL_CHECK(__glewUnmapNamedBuffer, glUnmapNamedBuffer)
  RETVAL = glUnmapNamedBuffer(buffer);
  OGLM_CHECK_ERR(glUnmapNamedBuffer, )
#line 77986 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glUnmapNamedBufferEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUnmapNamedBufferEXT)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "buffer");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLboolean	RETVAL;
	dXSTARG;
#line 38632 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUnmapNamedBufferEXT, )
  OGLM_AVAIL_CHECK(__glewUnmapNamedBufferEXT, glUnmapNamedBufferEXT)
  RETVAL = glUnmapNamedBufferEXT(buffer);
  OGLM_CHECK_ERR(glUnmapNamedBufferEXT, )
#line 78011 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glUnmapObjectBufferATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUnmapObjectBufferATI)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "buffer");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
#line 38644 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUnmapObjectBufferATI, )
  OGLM_AVAIL_CHECK(__glewUnmapObjectBufferATI, glUnmapObjectBufferATI)
  glUnmapObjectBufferATI(buffer);
  OGLM_CHECK_ERR(glUnmapObjectBufferATI, )
#line 78034 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUnmapTexture2DINTEL); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUnmapTexture2DINTEL)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "texture, level");
    {
	GLuint	texture = (unsigned int)SvUV(ST(0))
;
	GLint	level = (int)SvIV(ST(1))
;
#line 38655 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUnmapTexture2DINTEL, )
  OGLM_AVAIL_CHECK(__glewUnmapTexture2DINTEL, glUnmapTexture2DINTEL)
  glUnmapTexture2DINTEL(texture, level);
  OGLM_CHECK_ERR(glUnmapTexture2DINTEL, )
#line 78057 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUpdateObjectBufferATI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUpdateObjectBufferATI_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "buffer, offset, size, pointer, preserve");
    {
	GLuint	buffer = (unsigned int)SvUV(ST(0))
;
	GLuint	offset = (unsigned int)SvUV(ST(1))
;
	GLsizei	size = (int)SvIV(ST(2))
;
	const void *	pointer = INT2PTR(const void *,SvIV(ST(3)))
;
	GLenum	preserve = (int)SvIV(ST(4))
;
#line 38669 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUpdateObjectBufferATI, )
  OGLM_AVAIL_CHECK(__glewUpdateObjectBufferATI, glUpdateObjectBufferATI)
  glUpdateObjectBufferATI(buffer, offset, size, pointer, preserve);
  OGLM_CHECK_ERR(glUpdateObjectBufferATI, )
#line 78086 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUploadGpuMaskNVX); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUploadGpuMaskNVX)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "mask");
    {
	GLbitfield	mask = (int)SvIV(ST(0))
;
#line 38679 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUploadGpuMaskNVX, )
  OGLM_AVAIL_CHECK(__glewUploadGpuMaskNVX, glUploadGpuMaskNVX)
  glUploadGpuMaskNVX(mask);
  OGLM_CHECK_ERR(glUploadGpuMaskNVX, )
#line 78107 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUseProgram); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUseProgram)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "program");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
#line 38689 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUseProgram, )
  OGLM_AVAIL_CHECK(__glewUseProgram, glUseProgram)
  glUseProgram(program);
  OGLM_CHECK_ERR(glUseProgram, )
#line 78128 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUseProgramObjectARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUseProgramObjectARB)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "programObj");
    {
	GLhandleARB	programObj = (unsigned int)SvUV(ST(0))
;
#line 38699 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUseProgramObjectARB, )
  OGLM_AVAIL_CHECK(__glewUseProgramObjectARB, glUseProgramObjectARB)
  glUseProgramObjectARB(programObj);
  OGLM_CHECK_ERR(glUseProgramObjectARB, )
#line 78149 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUseProgramStages); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUseProgramStages)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "pipeline, stages, program");
    {
	GLuint	pipeline = (unsigned int)SvUV(ST(0))
;
	GLbitfield	stages = (int)SvIV(ST(1))
;
	GLuint	program = (unsigned int)SvUV(ST(2))
;
#line 38711 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUseProgramStages, )
  OGLM_AVAIL_CHECK(__glewUseProgramStages, glUseProgramStages)
  glUseProgramStages(pipeline, stages, program);
  OGLM_CHECK_ERR(glUseProgramStages, )
#line 78174 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glUseShaderProgramEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glUseShaderProgramEXT)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "type, program");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	GLuint	program = (unsigned int)SvUV(ST(1))
;
#line 38722 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glUseShaderProgramEXT, )
  OGLM_AVAIL_CHECK(__glewUseShaderProgramEXT, glUseShaderProgramEXT)
  glUseShaderProgramEXT(type, program);
  OGLM_CHECK_ERR(glUseShaderProgramEXT, )
#line 78197 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVDPAUFiniNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVDPAUFiniNV)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
#line 38731 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVDPAUFiniNV, )
  OGLM_AVAIL_CHECK(__glewVDPAUFiniNV, glVDPAUFiniNV)
  glVDPAUFiniNV();
  OGLM_CHECK_ERR(glVDPAUFiniNV, )
#line 78216 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVDPAUGetSurfaceivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVDPAUGetSurfaceivNV_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "surface, pname, count, length, values");
    {
	GLvdpauSurfaceNV	surface = INT2PTR(GLvdpauSurfaceNV,SvIV(ST(0)))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	GLsizei*	length = INT2PTR(GLsizei *,SvIV(ST(3)))
;
	GLint *	values = INT2PTR(GLint *,SvIV(ST(4)))
;
#line 38745 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVDPAUGetSurfaceivNV, )
  OGLM_AVAIL_CHECK(__glewVDPAUGetSurfaceivNV, glVDPAUGetSurfaceivNV)
  glVDPAUGetSurfaceivNV(surface, pname, count, length, values);
  OGLM_CHECK_ERR(glVDPAUGetSurfaceivNV, )
#line 78245 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVDPAUInitNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVDPAUInitNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "vdpDevice, getProcAddress");
    {
	const void*	vdpDevice = INT2PTR(const void *,SvIV(ST(0)))
;
	const void*	getProcAddress = INT2PTR(const void *,SvIV(ST(1)))
;
#line 38756 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVDPAUInitNV, )
  OGLM_AVAIL_CHECK(__glewVDPAUInitNV, glVDPAUInitNV)
  glVDPAUInitNV(vdpDevice, getProcAddress);
  OGLM_CHECK_ERR(glVDPAUInitNV, )
#line 78268 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVDPAUIsSurfaceNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVDPAUIsSurfaceNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "surface");
    {
	GLvdpauSurfaceNV	surface = INT2PTR(GLvdpauSurfaceNV,SvIV(ST(0)))
;
#line 38766 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVDPAUIsSurfaceNV, )
  OGLM_AVAIL_CHECK(__glewVDPAUIsSurfaceNV, glVDPAUIsSurfaceNV)
  glVDPAUIsSurfaceNV(surface);
  OGLM_CHECK_ERR(glVDPAUIsSurfaceNV, )
#line 78289 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVDPAUMapSurfacesNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVDPAUMapSurfacesNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "numSurfaces, surfaces");
    {
	GLsizei	numSurfaces = (int)SvIV(ST(0))
;
	const GLvdpauSurfaceNV*	surfaces = INT2PTR(const GLvdpauSurfaceNV *,SvIV(ST(1)))
;
#line 38777 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVDPAUMapSurfacesNV, )
  OGLM_AVAIL_CHECK(__glewVDPAUMapSurfacesNV, glVDPAUMapSurfacesNV)
  glVDPAUMapSurfacesNV(numSurfaces, surfaces);
  OGLM_CHECK_ERR(glVDPAUMapSurfacesNV, )
#line 78312 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVDPAURegisterOutputSurfaceNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVDPAURegisterOutputSurfaceNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "vdpSurface, target, numTextureNames, textureNames");
    {
	const void*	vdpSurface = INT2PTR(const void *,SvIV(ST(0)))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLsizei	numTextureNames = (int)SvIV(ST(2))
;
	const GLuint *	textureNames = INT2PTR(const GLuint *,SvIV(ST(3)))
;
	GLvdpauSurfaceNV	RETVAL;
	dXSTARG;
#line 38790 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVDPAURegisterOutputSurfaceNV, )
  OGLM_AVAIL_CHECK(__glewVDPAURegisterOutputSurfaceNV, glVDPAURegisterOutputSurfaceNV)
  RETVAL = glVDPAURegisterOutputSurfaceNV(vdpSurface, target, numTextureNames, textureNames);
  OGLM_CHECK_ERR(glVDPAURegisterOutputSurfaceNV, )
#line 78341 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi(PTR2IV(RETVAL));
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glVDPAURegisterVideoSurfaceNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVDPAURegisterVideoSurfaceNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "vdpSurface, target, numTextureNames, textureNames");
    {
	const void*	vdpSurface = INT2PTR(const void *,SvIV(ST(0)))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLsizei	numTextureNames = (int)SvIV(ST(2))
;
	const GLuint *	textureNames = INT2PTR(const GLuint *,SvIV(ST(3)))
;
	GLvdpauSurfaceNV	RETVAL;
	dXSTARG;
#line 38805 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVDPAURegisterVideoSurfaceNV, )
  OGLM_AVAIL_CHECK(__glewVDPAURegisterVideoSurfaceNV, glVDPAURegisterVideoSurfaceNV)
  RETVAL = glVDPAURegisterVideoSurfaceNV(vdpSurface, target, numTextureNames, textureNames);
  OGLM_CHECK_ERR(glVDPAURegisterVideoSurfaceNV, )
#line 78372 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi(PTR2IV(RETVAL));
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glVDPAURegisterVideoSurfaceWithPictureStructureNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVDPAURegisterVideoSurfaceWithPictureStructureNV_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "vdpSurface, target, numTextureNames, textureNames, isFrameStructure");
    {
	const void *	vdpSurface = INT2PTR(const void *,SvIV(ST(0)))
;
	GLenum	target = (int)SvIV(ST(1))
;
	GLsizei	numTextureNames = (int)SvIV(ST(2))
;
	const GLuint *	textureNames = INT2PTR(const GLuint *,SvIV(ST(3)))
;
	GLboolean	isFrameStructure = (int)SvIV(ST(4))
;
	GLvdpauSurfaceNV	RETVAL;
	dXSTARG;
#line 38821 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVDPAURegisterVideoSurfaceWithPictureStructureNV, )
  OGLM_AVAIL_CHECK(__glewVDPAURegisterVideoSurfaceWithPictureStructureNV, glVDPAURegisterVideoSurfaceWithPictureStructureNV)
  RETVAL = glVDPAURegisterVideoSurfaceWithPictureStructureNV(vdpSurface, target, numTextureNames, textureNames, isFrameStructure);
  OGLM_CHECK_ERR(glVDPAURegisterVideoSurfaceWithPictureStructureNV, )
#line 78405 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi(PTR2IV(RETVAL));
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glVDPAUSurfaceAccessNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVDPAUSurfaceAccessNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "surface, access");
    {
	GLvdpauSurfaceNV	surface = INT2PTR(GLvdpauSurfaceNV,SvIV(ST(0)))
;
	GLenum	access = (int)SvIV(ST(1))
;
#line 38834 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVDPAUSurfaceAccessNV, )
  OGLM_AVAIL_CHECK(__glewVDPAUSurfaceAccessNV, glVDPAUSurfaceAccessNV)
  glVDPAUSurfaceAccessNV(surface, access);
  OGLM_CHECK_ERR(glVDPAUSurfaceAccessNV, )
#line 78430 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVDPAUUnmapSurfacesNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVDPAUUnmapSurfacesNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "numSurface, surfaces");
    {
	GLsizei	numSurface = (int)SvIV(ST(0))
;
	const GLvdpauSurfaceNV*	surfaces = INT2PTR(const GLvdpauSurfaceNV *,SvIV(ST(1)))
;
#line 38845 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVDPAUUnmapSurfacesNV, )
  OGLM_AVAIL_CHECK(__glewVDPAUUnmapSurfacesNV, glVDPAUUnmapSurfacesNV)
  glVDPAUUnmapSurfacesNV(numSurface, surfaces);
  OGLM_CHECK_ERR(glVDPAUUnmapSurfacesNV, )
#line 78453 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVDPAUUnregisterSurfaceNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVDPAUUnregisterSurfaceNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "surface");
    {
	GLvdpauSurfaceNV	surface = INT2PTR(GLvdpauSurfaceNV,SvIV(ST(0)))
;
#line 38855 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVDPAUUnregisterSurfaceNV, )
  OGLM_AVAIL_CHECK(__glewVDPAUUnregisterSurfaceNV, glVDPAUUnregisterSurfaceNV)
  glVDPAUUnregisterSurfaceNV(surface);
  OGLM_CHECK_ERR(glVDPAUUnregisterSurfaceNV, )
#line 78474 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glValidateProgram); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glValidateProgram)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "program");
    {
	GLuint	program = (unsigned int)SvUV(ST(0))
;
#line 38865 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glValidateProgram, )
  OGLM_AVAIL_CHECK(__glewValidateProgram, glValidateProgram)
  glValidateProgram(program);
  OGLM_CHECK_ERR(glValidateProgram, )
#line 78495 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glValidateProgramARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glValidateProgramARB)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "programObj");
    {
	GLhandleARB	programObj = (unsigned int)SvUV(ST(0))
;
#line 38875 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glValidateProgramARB, )
  OGLM_AVAIL_CHECK(__glewValidateProgramARB, glValidateProgramARB)
  glValidateProgramARB(programObj);
  OGLM_CHECK_ERR(glValidateProgramARB, )
#line 78516 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glValidateProgramPipeline); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glValidateProgramPipeline)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "pipeline");
    {
	GLuint	pipeline = (unsigned int)SvUV(ST(0))
;
#line 38885 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glValidateProgramPipeline, )
  OGLM_AVAIL_CHECK(__glewValidateProgramPipeline, glValidateProgramPipeline)
  glValidateProgramPipeline(pipeline);
  OGLM_CHECK_ERR(glValidateProgramPipeline, )
#line 78537 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVariantArrayObjectATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVariantArrayObjectATI)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "id, type, stride, buffer, offset");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLsizei	stride = (int)SvIV(ST(2))
;
	GLuint	buffer = (unsigned int)SvUV(ST(3))
;
	GLuint	offset = (unsigned int)SvUV(ST(4))
;
#line 38899 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVariantArrayObjectATI, )
  OGLM_AVAIL_CHECK(__glewVariantArrayObjectATI, glVariantArrayObjectATI)
  glVariantArrayObjectATI(id, type, stride, buffer, offset);
  OGLM_CHECK_ERR(glVariantArrayObjectATI, )
#line 78566 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVariantPointerEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVariantPointerEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "id, type, stride, addr");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLuint	stride = (unsigned int)SvUV(ST(2))
;
	void *	addr = INT2PTR(void *,SvIV(ST(3)))
;
#line 38912 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVariantPointerEXT, )
  OGLM_AVAIL_CHECK(__glewVariantPointerEXT, glVariantPointerEXT)
  glVariantPointerEXT(id, type, stride, addr);
  OGLM_CHECK_ERR(glVariantPointerEXT, )
#line 78593 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVariantbvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVariantbvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "id, addr");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLbyte *	addr = INT2PTR(GLbyte *,SvIV(ST(1)))
;
#line 38923 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVariantbvEXT, )
  OGLM_AVAIL_CHECK(__glewVariantbvEXT, glVariantbvEXT)
  glVariantbvEXT(id, addr);
  OGLM_CHECK_ERR(glVariantbvEXT, )
#line 78616 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVariantdvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVariantdvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "id, addr");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLdouble *	addr = INT2PTR(GLdouble *,SvIV(ST(1)))
;
#line 38934 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVariantdvEXT, )
  OGLM_AVAIL_CHECK(__glewVariantdvEXT, glVariantdvEXT)
  glVariantdvEXT(id, addr);
  OGLM_CHECK_ERR(glVariantdvEXT, )
#line 78639 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVariantfvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVariantfvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "id, addr");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLfloat *	addr = INT2PTR(GLfloat *,SvIV(ST(1)))
;
#line 38945 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVariantfvEXT, )
  OGLM_AVAIL_CHECK(__glewVariantfvEXT, glVariantfvEXT)
  glVariantfvEXT(id, addr);
  OGLM_CHECK_ERR(glVariantfvEXT, )
#line 78662 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVariantivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVariantivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "id, addr");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLint *	addr = INT2PTR(GLint *,SvIV(ST(1)))
;
#line 38956 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVariantivEXT, )
  OGLM_AVAIL_CHECK(__glewVariantivEXT, glVariantivEXT)
  glVariantivEXT(id, addr);
  OGLM_CHECK_ERR(glVariantivEXT, )
#line 78685 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVariantsvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVariantsvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "id, addr");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLshort *	addr = INT2PTR(GLshort *,SvIV(ST(1)))
;
#line 38967 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVariantsvEXT, )
  OGLM_AVAIL_CHECK(__glewVariantsvEXT, glVariantsvEXT)
  glVariantsvEXT(id, addr);
  OGLM_CHECK_ERR(glVariantsvEXT, )
#line 78708 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVariantubvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVariantubvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "id, addr");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLubyte *	addr = INT2PTR(GLubyte *,SvIV(ST(1)))
;
#line 38978 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVariantubvEXT, )
  OGLM_AVAIL_CHECK(__glewVariantubvEXT, glVariantubvEXT)
  glVariantubvEXT(id, addr);
  OGLM_CHECK_ERR(glVariantubvEXT, )
#line 78731 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVariantuivEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVariantuivEXT_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "id, addr");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLuint *	addr = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 38989 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVariantuivEXT, )
  OGLM_AVAIL_CHECK(__glewVariantuivEXT, glVariantuivEXT)
  glVariantuivEXT(id, addr);
  OGLM_CHECK_ERR(glVariantuivEXT, )
#line 78754 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVariantusvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVariantusvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "id, addr");
    {
	GLuint	id = (unsigned int)SvUV(ST(0))
;
	GLushort *	addr = INT2PTR(GLushort *,SvIV(ST(1)))
;
#line 39000 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVariantusvEXT, )
  OGLM_AVAIL_CHECK(__glewVariantusvEXT, glVariantusvEXT)
  glVariantusvEXT(id, addr);
  OGLM_CHECK_ERR(glVariantusvEXT, )
#line 78777 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVectorOperationSGIX); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVectorOperationSGIX)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "operation");
    {
	GLenum	operation = (int)SvIV(ST(0))
;
#line 39010 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVectorOperationSGIX, )
  OGLM_AVAIL_CHECK(__glewVectorOperationSGIX, glVectorOperationSGIX)
  glVectorOperationSGIX(operation);
  OGLM_CHECK_ERR(glVectorOperationSGIX, )
#line 78798 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex2d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex2d)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "x, y");
    {
	GLdouble	x = (double)SvNV(ST(0))
;
	GLdouble	y = (double)SvNV(ST(1))
;
#line 39021 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex2d, )
  glVertex2d(x, y);
  OGLM_CHECK_ERR(glVertex2d, )
#line 78820 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex2dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex2dv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLdouble *	v = INT2PTR(const GLdouble *,SvIV(ST(0)))
;
#line 39030 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex2dv, )
  glVertex2dv(v);
  OGLM_CHECK_ERR(glVertex2dv, )
#line 78840 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex2dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex2dv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 39038 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex2dv, )
  GLdouble *v = OGLM_GET_VARARGS(v,0,GLdouble,NV,2);
  glVertex2dv((const GLdouble *)v);
  OGLM_CHECK_ERR(glVertex2dv, free(v);)
  free(v);
#line 78860 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex2f); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex2f)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "x, y");
    {
	GLfloat	x = (float)SvNV(ST(0))
;
	GLfloat	y = (float)SvNV(ST(1))
;
#line 39050 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex2f, )
  glVertex2f(x, y);
  OGLM_CHECK_ERR(glVertex2f, )
#line 78882 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex2fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex2fv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(0)))
;
#line 39059 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex2fv, )
  glVertex2fv(v);
  OGLM_CHECK_ERR(glVertex2fv, )
#line 78902 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex2fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex2fv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 39067 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex2fv, )
  GLfloat *v = OGLM_GET_VARARGS(v,0,GLfloat,NV,2);
  glVertex2fv((const GLfloat *)v);
  OGLM_CHECK_ERR(glVertex2fv, free(v);)
  free(v);
#line 78922 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex2hNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex2hNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "x, y");
    {
	GLhalf	x = (float)SvNV(ST(0))
;
	GLhalf	y = (float)SvNV(ST(1))
;
#line 39079 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex2hNV, )
  OGLM_AVAIL_CHECK(__glewVertex2hNV, glVertex2hNV)
  glVertex2hNV(x, y);
  OGLM_CHECK_ERR(glVertex2hNV, )
#line 78945 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex2hvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex2hvNV_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLhalf*	v = INT2PTR(const GLhalf *,SvIV(ST(0)))
;
#line 39089 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex2hvNV, )
  OGLM_AVAIL_CHECK(__glewVertex2hvNV, glVertex2hvNV)
  glVertex2hvNV(v);
  OGLM_CHECK_ERR(glVertex2hvNV, )
#line 78966 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex2hvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex2hvNV_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 39098 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex2hvNV, )
  OGLM_AVAIL_CHECK(__glewVertex2hvNV, glVertex2hvNV)
  GLhalf* v = OGLM_GET_VARARGS(v,0,GLhalf,NV,2);
  glVertex2hvNV((const GLhalf* )v);
  OGLM_CHECK_ERR(glVertex2hvNV, free(v);)
  free(v);
#line 78987 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex2i); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex2i)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "x, y");
    {
	GLint	x = (int)SvIV(ST(0))
;
	GLint	y = (int)SvIV(ST(1))
;
#line 39111 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex2i, )
  glVertex2i(x, y);
  OGLM_CHECK_ERR(glVertex2i, )
#line 79009 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex2iv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex2iv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLint *	v = INT2PTR(const GLint *,SvIV(ST(0)))
;
#line 39120 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex2iv, )
  glVertex2iv(v);
  OGLM_CHECK_ERR(glVertex2iv, )
#line 79029 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex2iv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex2iv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 39128 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex2iv, )
  GLint *v = OGLM_GET_VARARGS(v,0,GLint,IV,2);
  glVertex2iv((const GLint *)v);
  OGLM_CHECK_ERR(glVertex2iv, free(v);)
  free(v);
#line 79049 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex2s); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex2s)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "x, y");
    {
	GLshort	x = (short)SvIV(ST(0))
;
	GLshort	y = (short)SvIV(ST(1))
;
#line 39140 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex2s, )
  glVertex2s(x, y);
  OGLM_CHECK_ERR(glVertex2s, )
#line 79071 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex2sv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex2sv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLshort *	v = INT2PTR(const GLshort *,SvIV(ST(0)))
;
#line 39149 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex2sv, )
  glVertex2sv(v);
  OGLM_CHECK_ERR(glVertex2sv, )
#line 79091 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex2sv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex2sv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 39157 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex2sv, )
  GLshort *v = OGLM_GET_VARARGS(v,0,GLshort,IV,2);
  glVertex2sv((const GLshort *)v);
  OGLM_CHECK_ERR(glVertex2sv, free(v);)
  free(v);
#line 79111 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex3d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex3d)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "x, y, z");
    {
	GLdouble	x = (double)SvNV(ST(0))
;
	GLdouble	y = (double)SvNV(ST(1))
;
	GLdouble	z = (double)SvNV(ST(2))
;
#line 39170 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex3d, )
  glVertex3d(x, y, z);
  OGLM_CHECK_ERR(glVertex3d, )
#line 79135 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex3dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex3dv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLdouble *	v = INT2PTR(const GLdouble *,SvIV(ST(0)))
;
#line 39179 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex3dv, )
  glVertex3dv(v);
  OGLM_CHECK_ERR(glVertex3dv, )
#line 79155 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex3dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex3dv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 39187 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex3dv, )
  GLdouble *v = OGLM_GET_VARARGS(v,0,GLdouble,NV,3);
  glVertex3dv((const GLdouble *)v);
  OGLM_CHECK_ERR(glVertex3dv, free(v);)
  free(v);
#line 79175 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex3f); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex3f)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "x, y, z");
    {
	GLfloat	x = (float)SvNV(ST(0))
;
	GLfloat	y = (float)SvNV(ST(1))
;
	GLfloat	z = (float)SvNV(ST(2))
;
#line 39200 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex3f, )
  glVertex3f(x, y, z);
  OGLM_CHECK_ERR(glVertex3f, )
#line 79199 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex3fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex3fv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(0)))
;
#line 39209 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex3fv, )
  glVertex3fv(v);
  OGLM_CHECK_ERR(glVertex3fv, )
#line 79219 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex3fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex3fv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 39217 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex3fv, )
  GLfloat *v = OGLM_GET_VARARGS(v,0,GLfloat,NV,3);
  glVertex3fv((const GLfloat *)v);
  OGLM_CHECK_ERR(glVertex3fv, free(v);)
  free(v);
#line 79239 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex3hNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex3hNV)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "x, y, z");
    {
	GLhalf	x = (float)SvNV(ST(0))
;
	GLhalf	y = (float)SvNV(ST(1))
;
	GLhalf	z = (float)SvNV(ST(2))
;
#line 39230 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex3hNV, )
  OGLM_AVAIL_CHECK(__glewVertex3hNV, glVertex3hNV)
  glVertex3hNV(x, y, z);
  OGLM_CHECK_ERR(glVertex3hNV, )
#line 79264 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex3hvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex3hvNV_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLhalf*	v = INT2PTR(const GLhalf *,SvIV(ST(0)))
;
#line 39240 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex3hvNV, )
  OGLM_AVAIL_CHECK(__glewVertex3hvNV, glVertex3hvNV)
  glVertex3hvNV(v);
  OGLM_CHECK_ERR(glVertex3hvNV, )
#line 79285 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex3hvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex3hvNV_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 39249 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex3hvNV, )
  OGLM_AVAIL_CHECK(__glewVertex3hvNV, glVertex3hvNV)
  GLhalf* v = OGLM_GET_VARARGS(v,0,GLhalf,NV,3);
  glVertex3hvNV((const GLhalf* )v);
  OGLM_CHECK_ERR(glVertex3hvNV, free(v);)
  free(v);
#line 79306 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex3i); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex3i)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "x, y, z");
    {
	GLint	x = (int)SvIV(ST(0))
;
	GLint	y = (int)SvIV(ST(1))
;
	GLint	z = (int)SvIV(ST(2))
;
#line 39263 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex3i, )
  glVertex3i(x, y, z);
  OGLM_CHECK_ERR(glVertex3i, )
#line 79330 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex3iv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex3iv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLint *	v = INT2PTR(const GLint *,SvIV(ST(0)))
;
#line 39272 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex3iv, )
  glVertex3iv(v);
  OGLM_CHECK_ERR(glVertex3iv, )
#line 79350 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex3iv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex3iv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 39280 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex3iv, )
  GLint *v = OGLM_GET_VARARGS(v,0,GLint,IV,3);
  glVertex3iv((const GLint *)v);
  OGLM_CHECK_ERR(glVertex3iv, free(v);)
  free(v);
#line 79370 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex3s); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex3s)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "x, y, z");
    {
	GLshort	x = (short)SvIV(ST(0))
;
	GLshort	y = (short)SvIV(ST(1))
;
	GLshort	z = (short)SvIV(ST(2))
;
#line 39293 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex3s, )
  glVertex3s(x, y, z);
  OGLM_CHECK_ERR(glVertex3s, )
#line 79394 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex3sv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex3sv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLshort *	v = INT2PTR(const GLshort *,SvIV(ST(0)))
;
#line 39302 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex3sv, )
  glVertex3sv(v);
  OGLM_CHECK_ERR(glVertex3sv, )
#line 79414 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex3sv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex3sv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 39310 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex3sv, )
  GLshort *v = OGLM_GET_VARARGS(v,0,GLshort,IV,3);
  glVertex3sv((const GLshort *)v);
  OGLM_CHECK_ERR(glVertex3sv, free(v);)
  free(v);
#line 79434 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex4d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex4d)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "x, y, z, w");
    {
	GLdouble	x = (double)SvNV(ST(0))
;
	GLdouble	y = (double)SvNV(ST(1))
;
	GLdouble	z = (double)SvNV(ST(2))
;
	GLdouble	w = (double)SvNV(ST(3))
;
#line 39324 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex4d, )
  glVertex4d(x, y, z, w);
  OGLM_CHECK_ERR(glVertex4d, )
#line 79460 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex4dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex4dv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLdouble *	v = INT2PTR(const GLdouble *,SvIV(ST(0)))
;
#line 39333 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex4dv, )
  glVertex4dv(v);
  OGLM_CHECK_ERR(glVertex4dv, )
#line 79480 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex4dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex4dv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 39341 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex4dv, )
  GLdouble *v = OGLM_GET_VARARGS(v,0,GLdouble,NV,4);
  glVertex4dv((const GLdouble *)v);
  OGLM_CHECK_ERR(glVertex4dv, free(v);)
  free(v);
#line 79500 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex4f); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex4f)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "x, y, z, w");
    {
	GLfloat	x = (float)SvNV(ST(0))
;
	GLfloat	y = (float)SvNV(ST(1))
;
	GLfloat	z = (float)SvNV(ST(2))
;
	GLfloat	w = (float)SvNV(ST(3))
;
#line 39355 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex4f, )
  glVertex4f(x, y, z, w);
  OGLM_CHECK_ERR(glVertex4f, )
#line 79526 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex4fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex4fv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(0)))
;
#line 39364 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex4fv, )
  glVertex4fv(v);
  OGLM_CHECK_ERR(glVertex4fv, )
#line 79546 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex4fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex4fv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 39372 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex4fv, )
  GLfloat *v = OGLM_GET_VARARGS(v,0,GLfloat,NV,4);
  glVertex4fv((const GLfloat *)v);
  OGLM_CHECK_ERR(glVertex4fv, free(v);)
  free(v);
#line 79566 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex4hNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex4hNV)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "x, y, z, w");
    {
	GLhalf	x = (float)SvNV(ST(0))
;
	GLhalf	y = (float)SvNV(ST(1))
;
	GLhalf	z = (float)SvNV(ST(2))
;
	GLhalf	w = (float)SvNV(ST(3))
;
#line 39386 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex4hNV, )
  OGLM_AVAIL_CHECK(__glewVertex4hNV, glVertex4hNV)
  glVertex4hNV(x, y, z, w);
  OGLM_CHECK_ERR(glVertex4hNV, )
#line 79593 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex4hvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex4hvNV_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLhalf*	v = INT2PTR(const GLhalf *,SvIV(ST(0)))
;
#line 39396 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex4hvNV, )
  OGLM_AVAIL_CHECK(__glewVertex4hvNV, glVertex4hvNV)
  glVertex4hvNV(v);
  OGLM_CHECK_ERR(glVertex4hvNV, )
#line 79614 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex4hvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex4hvNV_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 39405 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex4hvNV, )
  OGLM_AVAIL_CHECK(__glewVertex4hvNV, glVertex4hvNV)
  GLhalf* v = OGLM_GET_VARARGS(v,0,GLhalf,NV,4);
  glVertex4hvNV((const GLhalf* )v);
  OGLM_CHECK_ERR(glVertex4hvNV, free(v);)
  free(v);
#line 79635 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex4i); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex4i)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "x, y, z, w");
    {
	GLint	x = (int)SvIV(ST(0))
;
	GLint	y = (int)SvIV(ST(1))
;
	GLint	z = (int)SvIV(ST(2))
;
	GLint	w = (int)SvIV(ST(3))
;
#line 39420 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex4i, )
  glVertex4i(x, y, z, w);
  OGLM_CHECK_ERR(glVertex4i, )
#line 79661 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex4iv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex4iv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLint *	v = INT2PTR(const GLint *,SvIV(ST(0)))
;
#line 39429 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex4iv, )
  glVertex4iv(v);
  OGLM_CHECK_ERR(glVertex4iv, )
#line 79681 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex4iv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex4iv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 39437 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex4iv, )
  GLint *v = OGLM_GET_VARARGS(v,0,GLint,IV,4);
  glVertex4iv((const GLint *)v);
  OGLM_CHECK_ERR(glVertex4iv, free(v);)
  free(v);
#line 79701 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex4s); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex4s)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "x, y, z, w");
    {
	GLshort	x = (short)SvIV(ST(0))
;
	GLshort	y = (short)SvIV(ST(1))
;
	GLshort	z = (short)SvIV(ST(2))
;
	GLshort	w = (short)SvIV(ST(3))
;
#line 39451 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex4s, )
  glVertex4s(x, y, z, w);
  OGLM_CHECK_ERR(glVertex4s, )
#line 79727 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex4sv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex4sv_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLshort *	v = INT2PTR(const GLshort *,SvIV(ST(0)))
;
#line 39460 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex4sv, )
  glVertex4sv(v);
  OGLM_CHECK_ERR(glVertex4sv, )
#line 79747 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertex4sv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertex4sv_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 39468 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertex4sv, )
  GLshort *v = OGLM_GET_VARARGS(v,0,GLshort,IV,4);
  glVertex4sv((const GLshort *)v);
  OGLM_CHECK_ERR(glVertex4sv, free(v);)
  free(v);
#line 79767 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexArrayAttribBinding); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexArrayAttribBinding)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "vaobj, attribindex, bindingindex");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLuint	attribindex = (unsigned int)SvUV(ST(1))
;
	GLuint	bindingindex = (unsigned int)SvUV(ST(2))
;
#line 39481 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexArrayAttribBinding, )
  OGLM_AVAIL_CHECK(__glewVertexArrayAttribBinding, glVertexArrayAttribBinding)
  glVertexArrayAttribBinding(vaobj, attribindex, bindingindex);
  OGLM_CHECK_ERR(glVertexArrayAttribBinding, )
#line 79792 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexArrayAttribFormat); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexArrayAttribFormat)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "vaobj, attribindex, size, type, normalized, relativeoffset");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLuint	attribindex = (unsigned int)SvUV(ST(1))
;
	GLint	size = (int)SvIV(ST(2))
;
	GLenum	type = (int)SvIV(ST(3))
;
	GLboolean	normalized = (int)SvIV(ST(4))
;
	GLuint	relativeoffset = (unsigned int)SvUV(ST(5))
;
#line 39496 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexArrayAttribFormat, )
  OGLM_AVAIL_CHECK(__glewVertexArrayAttribFormat, glVertexArrayAttribFormat)
  glVertexArrayAttribFormat(vaobj, attribindex, size, type, normalized, relativeoffset);
  OGLM_CHECK_ERR(glVertexArrayAttribFormat, )
#line 79823 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexArrayAttribIFormat); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexArrayAttribIFormat)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "vaobj, attribindex, size, type, relativeoffset");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLuint	attribindex = (unsigned int)SvUV(ST(1))
;
	GLint	size = (int)SvIV(ST(2))
;
	GLenum	type = (int)SvIV(ST(3))
;
	GLuint	relativeoffset = (unsigned int)SvUV(ST(4))
;
#line 39510 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexArrayAttribIFormat, )
  OGLM_AVAIL_CHECK(__glewVertexArrayAttribIFormat, glVertexArrayAttribIFormat)
  glVertexArrayAttribIFormat(vaobj, attribindex, size, type, relativeoffset);
  OGLM_CHECK_ERR(glVertexArrayAttribIFormat, )
#line 79852 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexArrayAttribLFormat); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexArrayAttribLFormat)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "vaobj, attribindex, size, type, relativeoffset");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLuint	attribindex = (unsigned int)SvUV(ST(1))
;
	GLint	size = (int)SvIV(ST(2))
;
	GLenum	type = (int)SvIV(ST(3))
;
	GLuint	relativeoffset = (unsigned int)SvUV(ST(4))
;
#line 39524 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexArrayAttribLFormat, )
  OGLM_AVAIL_CHECK(__glewVertexArrayAttribLFormat, glVertexArrayAttribLFormat)
  glVertexArrayAttribLFormat(vaobj, attribindex, size, type, relativeoffset);
  OGLM_CHECK_ERR(glVertexArrayAttribLFormat, )
#line 79881 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexArrayBindVertexBufferEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexArrayBindVertexBufferEXT)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "vaobj, bindingindex, buffer, offset, stride");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLuint	bindingindex = (unsigned int)SvUV(ST(1))
;
	GLuint	buffer = (unsigned int)SvUV(ST(2))
;
	GLintptr	offset = (unsigned int)SvUV(ST(3))
;
	GLsizei	stride = (int)SvIV(ST(4))
;
#line 39538 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexArrayBindVertexBufferEXT, )
  OGLM_AVAIL_CHECK(__glewVertexArrayBindVertexBufferEXT, glVertexArrayBindVertexBufferEXT)
  glVertexArrayBindVertexBufferEXT(vaobj, bindingindex, buffer, offset, stride);
  OGLM_CHECK_ERR(glVertexArrayBindVertexBufferEXT, )
#line 79910 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexArrayBindingDivisor); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexArrayBindingDivisor)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "vaobj, bindingindex, divisor");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLuint	bindingindex = (unsigned int)SvUV(ST(1))
;
	GLuint	divisor = (unsigned int)SvUV(ST(2))
;
#line 39550 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexArrayBindingDivisor, )
  OGLM_AVAIL_CHECK(__glewVertexArrayBindingDivisor, glVertexArrayBindingDivisor)
  glVertexArrayBindingDivisor(vaobj, bindingindex, divisor);
  OGLM_CHECK_ERR(glVertexArrayBindingDivisor, )
#line 79935 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexArrayColorOffsetEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexArrayColorOffsetEXT)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "vaobj, buffer, size, type, stride, offset");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLuint	buffer = (unsigned int)SvUV(ST(1))
;
	GLint	size = (int)SvIV(ST(2))
;
	GLenum	type = (int)SvIV(ST(3))
;
	GLsizei	stride = (int)SvIV(ST(4))
;
	GLintptr	offset = (unsigned int)SvUV(ST(5))
;
#line 39565 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexArrayColorOffsetEXT, )
  OGLM_AVAIL_CHECK(__glewVertexArrayColorOffsetEXT, glVertexArrayColorOffsetEXT)
  glVertexArrayColorOffsetEXT(vaobj, buffer, size, type, stride, offset);
  OGLM_CHECK_ERR(glVertexArrayColorOffsetEXT, )
#line 79966 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexArrayEdgeFlagOffsetEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexArrayEdgeFlagOffsetEXT)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "vaobj, buffer, stride, offset");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLuint	buffer = (unsigned int)SvUV(ST(1))
;
	GLsizei	stride = (int)SvIV(ST(2))
;
	GLintptr	offset = (unsigned int)SvUV(ST(3))
;
#line 39578 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexArrayEdgeFlagOffsetEXT, )
  OGLM_AVAIL_CHECK(__glewVertexArrayEdgeFlagOffsetEXT, glVertexArrayEdgeFlagOffsetEXT)
  glVertexArrayEdgeFlagOffsetEXT(vaobj, buffer, stride, offset);
  OGLM_CHECK_ERR(glVertexArrayEdgeFlagOffsetEXT, )
#line 79993 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexArrayElementBuffer); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexArrayElementBuffer)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "vaobj, buffer");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLuint	buffer = (unsigned int)SvUV(ST(1))
;
#line 39589 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexArrayElementBuffer, )
  OGLM_AVAIL_CHECK(__glewVertexArrayElementBuffer, glVertexArrayElementBuffer)
  glVertexArrayElementBuffer(vaobj, buffer);
  OGLM_CHECK_ERR(glVertexArrayElementBuffer, )
#line 80016 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexArrayFogCoordOffsetEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexArrayFogCoordOffsetEXT)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "vaobj, buffer, type, stride, offset");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLuint	buffer = (unsigned int)SvUV(ST(1))
;
	GLenum	type = (int)SvIV(ST(2))
;
	GLsizei	stride = (int)SvIV(ST(3))
;
	GLintptr	offset = (unsigned int)SvUV(ST(4))
;
#line 39603 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexArrayFogCoordOffsetEXT, )
  OGLM_AVAIL_CHECK(__glewVertexArrayFogCoordOffsetEXT, glVertexArrayFogCoordOffsetEXT)
  glVertexArrayFogCoordOffsetEXT(vaobj, buffer, type, stride, offset);
  OGLM_CHECK_ERR(glVertexArrayFogCoordOffsetEXT, )
#line 80045 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexArrayIndexOffsetEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexArrayIndexOffsetEXT)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "vaobj, buffer, type, stride, offset");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLuint	buffer = (unsigned int)SvUV(ST(1))
;
	GLenum	type = (int)SvIV(ST(2))
;
	GLsizei	stride = (int)SvIV(ST(3))
;
	GLintptr	offset = (unsigned int)SvUV(ST(4))
;
#line 39617 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexArrayIndexOffsetEXT, )
  OGLM_AVAIL_CHECK(__glewVertexArrayIndexOffsetEXT, glVertexArrayIndexOffsetEXT)
  glVertexArrayIndexOffsetEXT(vaobj, buffer, type, stride, offset);
  OGLM_CHECK_ERR(glVertexArrayIndexOffsetEXT, )
#line 80074 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexArrayMultiTexCoordOffsetEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexArrayMultiTexCoordOffsetEXT)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "vaobj, buffer, texunit, size, type, stride, offset");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLuint	buffer = (unsigned int)SvUV(ST(1))
;
	GLenum	texunit = (int)SvIV(ST(2))
;
	GLint	size = (int)SvIV(ST(3))
;
	GLenum	type = (int)SvIV(ST(4))
;
	GLsizei	stride = (int)SvIV(ST(5))
;
	GLintptr	offset = (unsigned int)SvUV(ST(6))
;
#line 39633 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexArrayMultiTexCoordOffsetEXT, )
  OGLM_AVAIL_CHECK(__glewVertexArrayMultiTexCoordOffsetEXT, glVertexArrayMultiTexCoordOffsetEXT)
  glVertexArrayMultiTexCoordOffsetEXT(vaobj, buffer, texunit, size, type, stride, offset);
  OGLM_CHECK_ERR(glVertexArrayMultiTexCoordOffsetEXT, )
#line 80107 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexArrayNormalOffsetEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexArrayNormalOffsetEXT)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "vaobj, buffer, type, stride, offset");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLuint	buffer = (unsigned int)SvUV(ST(1))
;
	GLenum	type = (int)SvIV(ST(2))
;
	GLsizei	stride = (int)SvIV(ST(3))
;
	GLintptr	offset = (unsigned int)SvUV(ST(4))
;
#line 39647 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexArrayNormalOffsetEXT, )
  OGLM_AVAIL_CHECK(__glewVertexArrayNormalOffsetEXT, glVertexArrayNormalOffsetEXT)
  glVertexArrayNormalOffsetEXT(vaobj, buffer, type, stride, offset);
  OGLM_CHECK_ERR(glVertexArrayNormalOffsetEXT, )
#line 80136 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexArrayParameteriAPPLE); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexArrayParameteriAPPLE)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, param");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLint	param = (int)SvIV(ST(1))
;
#line 39658 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexArrayParameteriAPPLE, )
  OGLM_AVAIL_CHECK(__glewVertexArrayParameteriAPPLE, glVertexArrayParameteriAPPLE)
  glVertexArrayParameteriAPPLE(pname, param);
  OGLM_CHECK_ERR(glVertexArrayParameteriAPPLE, )
#line 80159 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexArrayRangeAPPLE_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexArrayRangeAPPLE_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "length, pointer");
    {
	GLsizei	length = (int)SvIV(ST(0))
;
	void *	pointer = INT2PTR(void *,SvIV(ST(1)))
;
#line 39669 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexArrayRangeAPPLE, )
  OGLM_AVAIL_CHECK(__glewVertexArrayRangeAPPLE, glVertexArrayRangeAPPLE)
  glVertexArrayRangeAPPLE(length, pointer);
  OGLM_CHECK_ERR(glVertexArrayRangeAPPLE, )
#line 80182 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexArrayRangeNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexArrayRangeNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "length, pointer");
    {
	GLsizei	length = (int)SvIV(ST(0))
;
	void *	pointer = INT2PTR(void *,SvIV(ST(1)))
;
#line 39680 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexArrayRangeNV, )
  OGLM_AVAIL_CHECK(__glewVertexArrayRangeNV, glVertexArrayRangeNV)
  glVertexArrayRangeNV(length, pointer);
  OGLM_CHECK_ERR(glVertexArrayRangeNV, )
#line 80205 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexArraySecondaryColorOffsetEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexArraySecondaryColorOffsetEXT)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "vaobj, buffer, size, type, stride, offset");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLuint	buffer = (unsigned int)SvUV(ST(1))
;
	GLint	size = (int)SvIV(ST(2))
;
	GLenum	type = (int)SvIV(ST(3))
;
	GLsizei	stride = (int)SvIV(ST(4))
;
	GLintptr	offset = (unsigned int)SvUV(ST(5))
;
#line 39695 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexArraySecondaryColorOffsetEXT, )
  OGLM_AVAIL_CHECK(__glewVertexArraySecondaryColorOffsetEXT, glVertexArraySecondaryColorOffsetEXT)
  glVertexArraySecondaryColorOffsetEXT(vaobj, buffer, size, type, stride, offset);
  OGLM_CHECK_ERR(glVertexArraySecondaryColorOffsetEXT, )
#line 80236 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexArrayTexCoordOffsetEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexArrayTexCoordOffsetEXT)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "vaobj, buffer, size, type, stride, offset");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLuint	buffer = (unsigned int)SvUV(ST(1))
;
	GLint	size = (int)SvIV(ST(2))
;
	GLenum	type = (int)SvIV(ST(3))
;
	GLsizei	stride = (int)SvIV(ST(4))
;
	GLintptr	offset = (unsigned int)SvUV(ST(5))
;
#line 39710 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexArrayTexCoordOffsetEXT, )
  OGLM_AVAIL_CHECK(__glewVertexArrayTexCoordOffsetEXT, glVertexArrayTexCoordOffsetEXT)
  glVertexArrayTexCoordOffsetEXT(vaobj, buffer, size, type, stride, offset);
  OGLM_CHECK_ERR(glVertexArrayTexCoordOffsetEXT, )
#line 80267 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexArrayVertexAttribBindingEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexArrayVertexAttribBindingEXT)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "vaobj, attribindex, bindingindex");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLuint	attribindex = (unsigned int)SvUV(ST(1))
;
	GLuint	bindingindex = (unsigned int)SvUV(ST(2))
;
#line 39722 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexArrayVertexAttribBindingEXT, )
  OGLM_AVAIL_CHECK(__glewVertexArrayVertexAttribBindingEXT, glVertexArrayVertexAttribBindingEXT)
  glVertexArrayVertexAttribBindingEXT(vaobj, attribindex, bindingindex);
  OGLM_CHECK_ERR(glVertexArrayVertexAttribBindingEXT, )
#line 80292 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexArrayVertexAttribDivisorEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexArrayVertexAttribDivisorEXT)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "vaobj, index, divisor");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLuint	index = (unsigned int)SvUV(ST(1))
;
	GLuint	divisor = (unsigned int)SvUV(ST(2))
;
#line 39734 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexArrayVertexAttribDivisorEXT, )
  OGLM_AVAIL_CHECK(__glewVertexArrayVertexAttribDivisorEXT, glVertexArrayVertexAttribDivisorEXT)
  glVertexArrayVertexAttribDivisorEXT(vaobj, index, divisor);
  OGLM_CHECK_ERR(glVertexArrayVertexAttribDivisorEXT, )
#line 80317 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexArrayVertexAttribFormatEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexArrayVertexAttribFormatEXT)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "vaobj, attribindex, size, type, normalized, relativeoffset");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLuint	attribindex = (unsigned int)SvUV(ST(1))
;
	GLint	size = (int)SvIV(ST(2))
;
	GLenum	type = (int)SvIV(ST(3))
;
	GLboolean	normalized = (int)SvIV(ST(4))
;
	GLuint	relativeoffset = (unsigned int)SvUV(ST(5))
;
#line 39749 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexArrayVertexAttribFormatEXT, )
  OGLM_AVAIL_CHECK(__glewVertexArrayVertexAttribFormatEXT, glVertexArrayVertexAttribFormatEXT)
  glVertexArrayVertexAttribFormatEXT(vaobj, attribindex, size, type, normalized, relativeoffset);
  OGLM_CHECK_ERR(glVertexArrayVertexAttribFormatEXT, )
#line 80348 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexArrayVertexAttribIFormatEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexArrayVertexAttribIFormatEXT)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "vaobj, attribindex, size, type, relativeoffset");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLuint	attribindex = (unsigned int)SvUV(ST(1))
;
	GLint	size = (int)SvIV(ST(2))
;
	GLenum	type = (int)SvIV(ST(3))
;
	GLuint	relativeoffset = (unsigned int)SvUV(ST(4))
;
#line 39763 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexArrayVertexAttribIFormatEXT, )
  OGLM_AVAIL_CHECK(__glewVertexArrayVertexAttribIFormatEXT, glVertexArrayVertexAttribIFormatEXT)
  glVertexArrayVertexAttribIFormatEXT(vaobj, attribindex, size, type, relativeoffset);
  OGLM_CHECK_ERR(glVertexArrayVertexAttribIFormatEXT, )
#line 80377 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexArrayVertexAttribIOffsetEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexArrayVertexAttribIOffsetEXT)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "vaobj, buffer, index, size, type, stride, offset");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLuint	buffer = (unsigned int)SvUV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
	GLint	size = (int)SvIV(ST(3))
;
	GLenum	type = (int)SvIV(ST(4))
;
	GLsizei	stride = (int)SvIV(ST(5))
;
	GLintptr	offset = (unsigned int)SvUV(ST(6))
;
#line 39779 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexArrayVertexAttribIOffsetEXT, )
  OGLM_AVAIL_CHECK(__glewVertexArrayVertexAttribIOffsetEXT, glVertexArrayVertexAttribIOffsetEXT)
  glVertexArrayVertexAttribIOffsetEXT(vaobj, buffer, index, size, type, stride, offset);
  OGLM_CHECK_ERR(glVertexArrayVertexAttribIOffsetEXT, )
#line 80410 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexArrayVertexAttribLFormatEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexArrayVertexAttribLFormatEXT)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "vaobj, attribindex, size, type, relativeoffset");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLuint	attribindex = (unsigned int)SvUV(ST(1))
;
	GLint	size = (int)SvIV(ST(2))
;
	GLenum	type = (int)SvIV(ST(3))
;
	GLuint	relativeoffset = (unsigned int)SvUV(ST(4))
;
#line 39793 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexArrayVertexAttribLFormatEXT, )
  OGLM_AVAIL_CHECK(__glewVertexArrayVertexAttribLFormatEXT, glVertexArrayVertexAttribLFormatEXT)
  glVertexArrayVertexAttribLFormatEXT(vaobj, attribindex, size, type, relativeoffset);
  OGLM_CHECK_ERR(glVertexArrayVertexAttribLFormatEXT, )
#line 80439 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexArrayVertexAttribLOffsetEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexArrayVertexAttribLOffsetEXT)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "vaobj, buffer, index, size, type, stride, offset");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLuint	buffer = (unsigned int)SvUV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
	GLint	size = (int)SvIV(ST(3))
;
	GLenum	type = (int)SvIV(ST(4))
;
	GLsizei	stride = (int)SvIV(ST(5))
;
	GLintptr	offset = (unsigned int)SvUV(ST(6))
;
#line 39809 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexArrayVertexAttribLOffsetEXT, )
  OGLM_AVAIL_CHECK(__glewVertexArrayVertexAttribLOffsetEXT, glVertexArrayVertexAttribLOffsetEXT)
  glVertexArrayVertexAttribLOffsetEXT(vaobj, buffer, index, size, type, stride, offset);
  OGLM_CHECK_ERR(glVertexArrayVertexAttribLOffsetEXT, )
#line 80472 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexArrayVertexAttribOffsetEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexArrayVertexAttribOffsetEXT)
{
    dVAR; dXSARGS;
    if (items != 8)
       croak_xs_usage(cv,  "vaobj, buffer, index, size, type, normalized, stride, offset");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLuint	buffer = (unsigned int)SvUV(ST(1))
;
	GLuint	index = (unsigned int)SvUV(ST(2))
;
	GLint	size = (int)SvIV(ST(3))
;
	GLenum	type = (int)SvIV(ST(4))
;
	GLboolean	normalized = (int)SvIV(ST(5))
;
	GLsizei	stride = (int)SvIV(ST(6))
;
	GLintptr	offset = (unsigned int)SvUV(ST(7))
;
#line 39826 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexArrayVertexAttribOffsetEXT, )
  OGLM_AVAIL_CHECK(__glewVertexArrayVertexAttribOffsetEXT, glVertexArrayVertexAttribOffsetEXT)
  glVertexArrayVertexAttribOffsetEXT(vaobj, buffer, index, size, type, normalized, stride, offset);
  OGLM_CHECK_ERR(glVertexArrayVertexAttribOffsetEXT, )
#line 80507 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexArrayVertexBindingDivisorEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexArrayVertexBindingDivisorEXT)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "vaobj, bindingindex, divisor");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLuint	bindingindex = (unsigned int)SvUV(ST(1))
;
	GLuint	divisor = (unsigned int)SvUV(ST(2))
;
#line 39838 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexArrayVertexBindingDivisorEXT, )
  OGLM_AVAIL_CHECK(__glewVertexArrayVertexBindingDivisorEXT, glVertexArrayVertexBindingDivisorEXT)
  glVertexArrayVertexBindingDivisorEXT(vaobj, bindingindex, divisor);
  OGLM_CHECK_ERR(glVertexArrayVertexBindingDivisorEXT, )
#line 80532 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexArrayVertexBuffer); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexArrayVertexBuffer)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "vaobj, bindingindex, buffer, offset, stride");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLuint	bindingindex = (unsigned int)SvUV(ST(1))
;
	GLuint	buffer = (unsigned int)SvUV(ST(2))
;
	GLintptr	offset = (unsigned int)SvUV(ST(3))
;
	GLsizei	stride = (int)SvIV(ST(4))
;
#line 39852 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexArrayVertexBuffer, )
  OGLM_AVAIL_CHECK(__glewVertexArrayVertexBuffer, glVertexArrayVertexBuffer)
  glVertexArrayVertexBuffer(vaobj, bindingindex, buffer, offset, stride);
  OGLM_CHECK_ERR(glVertexArrayVertexBuffer, )
#line 80561 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexArrayVertexBuffers_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexArrayVertexBuffers_c)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "vaobj, first, count, buffers, offsets, strides");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLuint	first = (unsigned int)SvUV(ST(1))
;
	GLsizei	count = (int)SvIV(ST(2))
;
	const GLuint*	buffers = INT2PTR(const GLuint *,SvIV(ST(3)))
;
	const GLintptr *	offsets = INT2PTR(const GLintptr *,SvIV(ST(4)))
;
	const GLsizei *	strides = INT2PTR(const GLsizei *,SvIV(ST(5)))
;
#line 39867 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexArrayVertexBuffers, )
  OGLM_AVAIL_CHECK(__glewVertexArrayVertexBuffers, glVertexArrayVertexBuffers)
  glVertexArrayVertexBuffers(vaobj, first, count, buffers, offsets, strides);
  OGLM_CHECK_ERR(glVertexArrayVertexBuffers, )
#line 80592 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexArrayVertexOffsetEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexArrayVertexOffsetEXT)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "vaobj, buffer, size, type, stride, offset");
    {
	GLuint	vaobj = (unsigned int)SvUV(ST(0))
;
	GLuint	buffer = (unsigned int)SvUV(ST(1))
;
	GLint	size = (int)SvIV(ST(2))
;
	GLenum	type = (int)SvIV(ST(3))
;
	GLsizei	stride = (int)SvIV(ST(4))
;
	GLintptr	offset = (unsigned int)SvUV(ST(5))
;
#line 39882 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexArrayVertexOffsetEXT, )
  OGLM_AVAIL_CHECK(__glewVertexArrayVertexOffsetEXT, glVertexArrayVertexOffsetEXT)
  glVertexArrayVertexOffsetEXT(vaobj, buffer, size, type, stride, offset);
  OGLM_CHECK_ERR(glVertexArrayVertexOffsetEXT, )
#line 80623 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib1d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib1d)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, x");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLdouble	x = (double)SvNV(ST(1))
;
#line 39896 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib1d, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib1d, glVertexAttrib1d)
  glVertexAttrib1d(index, x);
  OGLM_CHECK_ERR(glVertexAttrib1d, )
#line 80647 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib1dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib1dv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLdouble*	v = INT2PTR(const GLdouble *,SvIV(ST(1)))
;
#line 39910 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib1dv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib1dv, glVertexAttrib1dv)
  glVertexAttrib1dv(index, v);
  OGLM_CHECK_ERR(glVertexAttrib1dv, )
#line 80671 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib1dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib1dv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 39923 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib1dv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib1dv, glVertexAttrib1dv)
  GLdouble* v = OGLM_GET_VARARGS(v,1,GLdouble,NV,1);
  glVertexAttrib1dv((GLuint )index, (const GLdouble* )v);
  OGLM_CHECK_ERR(glVertexAttrib1dv, free(v);)
  free(v);
#line 80695 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib1f); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib1f)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, x");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLfloat	x = (float)SvNV(ST(1))
;
#line 39939 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib1f, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib1f, glVertexAttrib1f)
  glVertexAttrib1f(index, x);
  OGLM_CHECK_ERR(glVertexAttrib1f, )
#line 80719 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib1fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib1fv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLfloat*	v = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 39953 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib1fv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib1fv, glVertexAttrib1fv)
  glVertexAttrib1fv(index, v);
  OGLM_CHECK_ERR(glVertexAttrib1fv, )
#line 80743 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib1fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib1fv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 39966 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib1fv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib1fv, glVertexAttrib1fv)
  GLfloat* v = OGLM_GET_VARARGS(v,1,GLfloat,NV,1);
  glVertexAttrib1fv((GLuint )index, (const GLfloat* )v);
  OGLM_CHECK_ERR(glVertexAttrib1fv, free(v);)
  free(v);
#line 80767 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib1hNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib1hNV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "index, x");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLhalf	x = (float)SvNV(ST(1))
;
#line 39979 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib1hNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib1hNV, glVertexAttrib1hNV)
  glVertexAttrib1hNV(index, x);
  OGLM_CHECK_ERR(glVertexAttrib1hNV, )
#line 80790 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib1hvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib1hvNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLhalf*	v = INT2PTR(const GLhalf *,SvIV(ST(1)))
;
#line 39990 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib1hvNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib1hvNV, glVertexAttrib1hvNV)
  glVertexAttrib1hvNV(index, v);
  OGLM_CHECK_ERR(glVertexAttrib1hvNV, )
#line 80813 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib1hvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib1hvNV_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 40000 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib1hvNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib1hvNV, glVertexAttrib1hvNV)
  GLhalf* v = OGLM_GET_VARARGS(v,1,GLhalf,NV,1);
  glVertexAttrib1hvNV((GLuint )index, (const GLhalf* )v);
  OGLM_CHECK_ERR(glVertexAttrib1hvNV, free(v);)
  free(v);
#line 80836 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib1s); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib1s)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, x");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLshort	x = (short)SvIV(ST(1))
;
#line 40016 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib1s, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib1s, glVertexAttrib1s)
  glVertexAttrib1s(index, x);
  OGLM_CHECK_ERR(glVertexAttrib1s, )
#line 80860 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib1sv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib1sv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLshort*	v = INT2PTR(const GLshort *,SvIV(ST(1)))
;
#line 40030 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib1sv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib1sv, glVertexAttrib1sv)
  glVertexAttrib1sv(index, v);
  OGLM_CHECK_ERR(glVertexAttrib1sv, )
#line 80884 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib1sv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib1sv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 40043 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib1sv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib1sv, glVertexAttrib1sv)
  GLshort* v = OGLM_GET_VARARGS(v,1,GLshort,IV,1);
  glVertexAttrib1sv((GLuint )index, (const GLshort* )v);
  OGLM_CHECK_ERR(glVertexAttrib1sv, free(v);)
  free(v);
#line 80908 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib2d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib2d)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "index, x, y");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLdouble	x = (double)SvNV(ST(1))
;
	GLdouble	y = (double)SvNV(ST(2))
;
#line 40060 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib2d, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib2d, glVertexAttrib2d)
  glVertexAttrib2d(index, x, y);
  OGLM_CHECK_ERR(glVertexAttrib2d, )
#line 80934 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib2dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib2dv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLdouble*	v = INT2PTR(const GLdouble *,SvIV(ST(1)))
;
#line 40074 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib2dv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib2dv, glVertexAttrib2dv)
  glVertexAttrib2dv(index, v);
  OGLM_CHECK_ERR(glVertexAttrib2dv, )
#line 80958 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib2dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib2dv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 40087 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib2dv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib2dv, glVertexAttrib2dv)
  GLdouble* v = OGLM_GET_VARARGS(v,1,GLdouble,NV,2);
  glVertexAttrib2dv((GLuint )index, (const GLdouble* )v);
  OGLM_CHECK_ERR(glVertexAttrib2dv, free(v);)
  free(v);
#line 80982 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib2f); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib2f)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "index, x, y");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLfloat	x = (float)SvNV(ST(1))
;
	GLfloat	y = (float)SvNV(ST(2))
;
#line 40104 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib2f, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib2f, glVertexAttrib2f)
  glVertexAttrib2f(index, x, y);
  OGLM_CHECK_ERR(glVertexAttrib2f, )
#line 81008 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib2fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib2fv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLfloat*	v = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 40118 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib2fv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib2fv, glVertexAttrib2fv)
  glVertexAttrib2fv(index, v);
  OGLM_CHECK_ERR(glVertexAttrib2fv, )
#line 81032 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib2fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib2fv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 40131 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib2fv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib2fv, glVertexAttrib2fv)
  GLfloat* v = OGLM_GET_VARARGS(v,1,GLfloat,NV,2);
  glVertexAttrib2fv((GLuint )index, (const GLfloat* )v);
  OGLM_CHECK_ERR(glVertexAttrib2fv, free(v);)
  free(v);
#line 81056 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib2hNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib2hNV)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "index, x, y");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLhalf	x = (float)SvNV(ST(1))
;
	GLhalf	y = (float)SvNV(ST(2))
;
#line 40145 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib2hNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib2hNV, glVertexAttrib2hNV)
  glVertexAttrib2hNV(index, x, y);
  OGLM_CHECK_ERR(glVertexAttrib2hNV, )
#line 81081 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib2hvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib2hvNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLhalf*	v = INT2PTR(const GLhalf *,SvIV(ST(1)))
;
#line 40156 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib2hvNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib2hvNV, glVertexAttrib2hvNV)
  glVertexAttrib2hvNV(index, v);
  OGLM_CHECK_ERR(glVertexAttrib2hvNV, )
#line 81104 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib2hvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib2hvNV_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 40166 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib2hvNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib2hvNV, glVertexAttrib2hvNV)
  GLhalf* v = OGLM_GET_VARARGS(v,1,GLhalf,NV,2);
  glVertexAttrib2hvNV((GLuint )index, (const GLhalf* )v);
  OGLM_CHECK_ERR(glVertexAttrib2hvNV, free(v);)
  free(v);
#line 81127 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib2s); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib2s)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "index, x, y");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLshort	x = (short)SvIV(ST(1))
;
	GLshort	y = (short)SvIV(ST(2))
;
#line 40183 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib2s, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib2s, glVertexAttrib2s)
  glVertexAttrib2s(index, x, y);
  OGLM_CHECK_ERR(glVertexAttrib2s, )
#line 81153 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib2sv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib2sv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLshort*	v = INT2PTR(const GLshort *,SvIV(ST(1)))
;
#line 40197 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib2sv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib2sv, glVertexAttrib2sv)
  glVertexAttrib2sv(index, v);
  OGLM_CHECK_ERR(glVertexAttrib2sv, )
#line 81177 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib2sv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib2sv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 40210 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib2sv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib2sv, glVertexAttrib2sv)
  GLshort* v = OGLM_GET_VARARGS(v,1,GLshort,IV,2);
  glVertexAttrib2sv((GLuint )index, (const GLshort* )v);
  OGLM_CHECK_ERR(glVertexAttrib2sv, free(v);)
  free(v);
#line 81201 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib3d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib3d)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "index, x, y, z");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLdouble	x = (double)SvNV(ST(1))
;
	GLdouble	y = (double)SvNV(ST(2))
;
	GLdouble	z = (double)SvNV(ST(3))
;
#line 40228 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib3d, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib3d, glVertexAttrib3d)
  glVertexAttrib3d(index, x, y, z);
  OGLM_CHECK_ERR(glVertexAttrib3d, )
#line 81229 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib3dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib3dv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLdouble*	v = INT2PTR(const GLdouble *,SvIV(ST(1)))
;
#line 40242 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib3dv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib3dv, glVertexAttrib3dv)
  glVertexAttrib3dv(index, v);
  OGLM_CHECK_ERR(glVertexAttrib3dv, )
#line 81253 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib3dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib3dv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 40255 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib3dv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib3dv, glVertexAttrib3dv)
  GLdouble* v = OGLM_GET_VARARGS(v,1,GLdouble,NV,3);
  glVertexAttrib3dv((GLuint )index, (const GLdouble* )v);
  OGLM_CHECK_ERR(glVertexAttrib3dv, free(v);)
  free(v);
#line 81277 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib3f); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib3f)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "index, x, y, z");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLfloat	x = (float)SvNV(ST(1))
;
	GLfloat	y = (float)SvNV(ST(2))
;
	GLfloat	z = (float)SvNV(ST(3))
;
#line 40273 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib3f, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib3f, glVertexAttrib3f)
  glVertexAttrib3f(index, x, y, z);
  OGLM_CHECK_ERR(glVertexAttrib3f, )
#line 81305 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib3fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib3fv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLfloat*	v = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 40287 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib3fv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib3fv, glVertexAttrib3fv)
  glVertexAttrib3fv(index, v);
  OGLM_CHECK_ERR(glVertexAttrib3fv, )
#line 81329 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib3fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib3fv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 40300 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib3fv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib3fv, glVertexAttrib3fv)
  GLfloat* v = OGLM_GET_VARARGS(v,1,GLfloat,NV,3);
  glVertexAttrib3fv((GLuint )index, (const GLfloat* )v);
  OGLM_CHECK_ERR(glVertexAttrib3fv, free(v);)
  free(v);
#line 81353 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib3hNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib3hNV)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "index, x, y, z");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLhalf	x = (float)SvNV(ST(1))
;
	GLhalf	y = (float)SvNV(ST(2))
;
	GLhalf	z = (float)SvNV(ST(3))
;
#line 40315 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib3hNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib3hNV, glVertexAttrib3hNV)
  glVertexAttrib3hNV(index, x, y, z);
  OGLM_CHECK_ERR(glVertexAttrib3hNV, )
#line 81380 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib3hvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib3hvNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLhalf*	v = INT2PTR(const GLhalf *,SvIV(ST(1)))
;
#line 40326 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib3hvNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib3hvNV, glVertexAttrib3hvNV)
  glVertexAttrib3hvNV(index, v);
  OGLM_CHECK_ERR(glVertexAttrib3hvNV, )
#line 81403 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib3hvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib3hvNV_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 40336 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib3hvNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib3hvNV, glVertexAttrib3hvNV)
  GLhalf* v = OGLM_GET_VARARGS(v,1,GLhalf,NV,3);
  glVertexAttrib3hvNV((GLuint )index, (const GLhalf* )v);
  OGLM_CHECK_ERR(glVertexAttrib3hvNV, free(v);)
  free(v);
#line 81426 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib3s); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib3s)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "index, x, y, z");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLshort	x = (short)SvIV(ST(1))
;
	GLshort	y = (short)SvIV(ST(2))
;
	GLshort	z = (short)SvIV(ST(3))
;
#line 40354 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib3s, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib3s, glVertexAttrib3s)
  glVertexAttrib3s(index, x, y, z);
  OGLM_CHECK_ERR(glVertexAttrib3s, )
#line 81454 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib3sv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib3sv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLshort*	v = INT2PTR(const GLshort *,SvIV(ST(1)))
;
#line 40368 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib3sv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib3sv, glVertexAttrib3sv)
  glVertexAttrib3sv(index, v);
  OGLM_CHECK_ERR(glVertexAttrib3sv, )
#line 81478 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib3sv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib3sv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 40381 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib3sv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib3sv, glVertexAttrib3sv)
  GLshort* v = OGLM_GET_VARARGS(v,1,GLshort,IV,3);
  glVertexAttrib3sv((GLuint )index, (const GLshort* )v);
  OGLM_CHECK_ERR(glVertexAttrib3sv, free(v);)
  free(v);
#line 81502 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4Nbv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4Nbv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLbyte*	v = INT2PTR(const GLbyte *,SvIV(ST(1)))
;
#line 40396 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib4Nbv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib4Nbv, glVertexAttrib4Nbv)
  glVertexAttrib4Nbv(index, v);
  OGLM_CHECK_ERR(glVertexAttrib4Nbv, )
#line 81526 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4Nbv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4Nbv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 40408 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib4Nbv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib4Nbv, glVertexAttrib4Nbv)
  GLbyte* v = OGLM_GET_VARARGS(v,1,GLbyte,IV,4);
  glVertexAttrib4Nbv((GLuint )index, (const GLbyte* )v);
  OGLM_CHECK_ERR(glVertexAttrib4Nbv, free(v);)
  free(v);
#line 81550 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4Niv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4Niv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLint*	v = INT2PTR(const GLint *,SvIV(ST(1)))
;
#line 40423 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib4Niv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib4Niv, glVertexAttrib4Niv)
  glVertexAttrib4Niv(index, v);
  OGLM_CHECK_ERR(glVertexAttrib4Niv, )
#line 81574 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4Niv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4Niv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 40435 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib4Niv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib4Niv, glVertexAttrib4Niv)
  GLint* v = OGLM_GET_VARARGS(v,1,GLint,IV,4);
  glVertexAttrib4Niv((GLuint )index, (const GLint* )v);
  OGLM_CHECK_ERR(glVertexAttrib4Niv, free(v);)
  free(v);
#line 81598 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4Nsv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4Nsv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLshort*	v = INT2PTR(const GLshort *,SvIV(ST(1)))
;
#line 40450 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib4Nsv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib4Nsv, glVertexAttrib4Nsv)
  glVertexAttrib4Nsv(index, v);
  OGLM_CHECK_ERR(glVertexAttrib4Nsv, )
#line 81622 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4Nsv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4Nsv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 40462 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib4Nsv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib4Nsv, glVertexAttrib4Nsv)
  GLshort* v = OGLM_GET_VARARGS(v,1,GLshort,IV,4);
  glVertexAttrib4Nsv((GLuint )index, (const GLshort* )v);
  OGLM_CHECK_ERR(glVertexAttrib4Nsv, free(v);)
  free(v);
#line 81646 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4Nub); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4Nub)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "index, x, y, z, w");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLubyte	x = (unsigned int)SvUV(ST(1))
;
	GLubyte	y = (unsigned int)SvUV(ST(2))
;
	GLubyte	z = (unsigned int)SvUV(ST(3))
;
	GLubyte	w = (unsigned int)SvUV(ST(4))
;
#line 40481 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib4Nub, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib4Nub, glVertexAttrib4Nub)
  glVertexAttrib4Nub(index, x, y, z, w);
  OGLM_CHECK_ERR(glVertexAttrib4Nub, )
#line 81676 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4Nubv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4Nubv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLubyte*        v = (const GLubyte *)SvPV_nolen(ST(1))
;
#line 40495 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib4Nubv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib4Nubv, glVertexAttrib4Nubv)
  glVertexAttrib4Nubv(index, v);
  OGLM_CHECK_ERR(glVertexAttrib4Nubv, )
#line 81700 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4Nubv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4Nubv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 40508 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib4Nubv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib4Nubv, glVertexAttrib4Nubv)
  GLubyte* v = OGLM_GET_VARARGS(v,1,GLubyte,UV,4);
  glVertexAttrib4Nubv((GLuint )index, (const GLubyte* )v);
  OGLM_CHECK_ERR(glVertexAttrib4Nubv, free(v);)
  free(v);
#line 81724 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4Nuiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4Nuiv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLuint*	v = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 40523 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib4Nuiv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib4Nuiv, glVertexAttrib4Nuiv)
  glVertexAttrib4Nuiv(index, v);
  OGLM_CHECK_ERR(glVertexAttrib4Nuiv, )
#line 81748 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4Nuiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4Nuiv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 40535 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib4Nuiv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib4Nuiv, glVertexAttrib4Nuiv)
  GLuint* v = OGLM_GET_VARARGS(v,1,GLuint,UV,4);
  glVertexAttrib4Nuiv((GLuint )index, (const GLuint* )v);
  OGLM_CHECK_ERR(glVertexAttrib4Nuiv, free(v);)
  free(v);
#line 81772 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4Nusv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4Nusv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLushort*	v = INT2PTR(const GLushort *,SvIV(ST(1)))
;
#line 40550 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib4Nusv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib4Nusv, glVertexAttrib4Nusv)
  glVertexAttrib4Nusv(index, v);
  OGLM_CHECK_ERR(glVertexAttrib4Nusv, )
#line 81796 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4Nusv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4Nusv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 40562 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib4Nusv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib4Nusv, glVertexAttrib4Nusv)
  GLushort* v = OGLM_GET_VARARGS(v,1,GLushort,UV,4);
  glVertexAttrib4Nusv((GLuint )index, (const GLushort* )v);
  OGLM_CHECK_ERR(glVertexAttrib4Nusv, free(v);)
  free(v);
#line 81820 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4bv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4bv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLbyte*	v = INT2PTR(const GLbyte *,SvIV(ST(1)))
;
#line 40577 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib4bv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib4bv, glVertexAttrib4bv)
  glVertexAttrib4bv(index, v);
  OGLM_CHECK_ERR(glVertexAttrib4bv, )
#line 81844 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4bv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4bv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 40589 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib4bv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib4bv, glVertexAttrib4bv)
  GLbyte* v = OGLM_GET_VARARGS(v,1,GLbyte,IV,4);
  glVertexAttrib4bv((GLuint )index, (const GLbyte* )v);
  OGLM_CHECK_ERR(glVertexAttrib4bv, free(v);)
  free(v);
#line 81868 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4d)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "index, x, y, z, w");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLdouble	x = (double)SvNV(ST(1))
;
	GLdouble	y = (double)SvNV(ST(2))
;
	GLdouble	z = (double)SvNV(ST(3))
;
	GLdouble	w = (double)SvNV(ST(4))
;
#line 40608 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib4d, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib4d, glVertexAttrib4d)
  glVertexAttrib4d(index, x, y, z, w);
  OGLM_CHECK_ERR(glVertexAttrib4d, )
#line 81898 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4dv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLdouble*	v = INT2PTR(const GLdouble *,SvIV(ST(1)))
;
#line 40622 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib4dv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib4dv, glVertexAttrib4dv)
  glVertexAttrib4dv(index, v);
  OGLM_CHECK_ERR(glVertexAttrib4dv, )
#line 81922 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4dv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 40635 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib4dv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib4dv, glVertexAttrib4dv)
  GLdouble* v = OGLM_GET_VARARGS(v,1,GLdouble,NV,4);
  glVertexAttrib4dv((GLuint )index, (const GLdouble* )v);
  OGLM_CHECK_ERR(glVertexAttrib4dv, free(v);)
  free(v);
#line 81946 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4f); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4f)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "index, x, y, z, w");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLfloat	x = (float)SvNV(ST(1))
;
	GLfloat	y = (float)SvNV(ST(2))
;
	GLfloat	z = (float)SvNV(ST(3))
;
	GLfloat	w = (float)SvNV(ST(4))
;
#line 40654 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib4f, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib4f, glVertexAttrib4f)
  glVertexAttrib4f(index, x, y, z, w);
  OGLM_CHECK_ERR(glVertexAttrib4f, )
#line 81976 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4fv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLfloat*	v = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 40668 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib4fv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib4fv, glVertexAttrib4fv)
  glVertexAttrib4fv(index, v);
  OGLM_CHECK_ERR(glVertexAttrib4fv, )
#line 82000 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4fv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 40681 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib4fv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib4fv, glVertexAttrib4fv)
  GLfloat* v = OGLM_GET_VARARGS(v,1,GLfloat,NV,4);
  glVertexAttrib4fv((GLuint )index, (const GLfloat* )v);
  OGLM_CHECK_ERR(glVertexAttrib4fv, free(v);)
  free(v);
#line 82024 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4hNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4hNV)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "index, x, y, z, w");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLhalf	x = (float)SvNV(ST(1))
;
	GLhalf	y = (float)SvNV(ST(2))
;
	GLhalf	z = (float)SvNV(ST(3))
;
	GLhalf	w = (float)SvNV(ST(4))
;
#line 40697 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib4hNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib4hNV, glVertexAttrib4hNV)
  glVertexAttrib4hNV(index, x, y, z, w);
  OGLM_CHECK_ERR(glVertexAttrib4hNV, )
#line 82053 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4hvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4hvNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLhalf*	v = INT2PTR(const GLhalf *,SvIV(ST(1)))
;
#line 40708 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib4hvNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib4hvNV, glVertexAttrib4hvNV)
  glVertexAttrib4hvNV(index, v);
  OGLM_CHECK_ERR(glVertexAttrib4hvNV, )
#line 82076 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4hvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4hvNV_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 40718 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib4hvNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib4hvNV, glVertexAttrib4hvNV)
  GLhalf* v = OGLM_GET_VARARGS(v,1,GLhalf,NV,4);
  glVertexAttrib4hvNV((GLuint )index, (const GLhalf* )v);
  OGLM_CHECK_ERR(glVertexAttrib4hvNV, free(v);)
  free(v);
#line 82099 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4iv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4iv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLint*	v = INT2PTR(const GLint *,SvIV(ST(1)))
;
#line 40733 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib4iv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib4iv, glVertexAttrib4iv)
  glVertexAttrib4iv(index, v);
  OGLM_CHECK_ERR(glVertexAttrib4iv, )
#line 82123 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4iv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4iv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 40745 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib4iv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib4iv, glVertexAttrib4iv)
  GLint* v = OGLM_GET_VARARGS(v,1,GLint,IV,4);
  glVertexAttrib4iv((GLuint )index, (const GLint* )v);
  OGLM_CHECK_ERR(glVertexAttrib4iv, free(v);)
  free(v);
#line 82147 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4s); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4s)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "index, x, y, z, w");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLshort	x = (short)SvIV(ST(1))
;
	GLshort	y = (short)SvIV(ST(2))
;
	GLshort	z = (short)SvIV(ST(3))
;
	GLshort	w = (short)SvIV(ST(4))
;
#line 40764 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib4s, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib4s, glVertexAttrib4s)
  glVertexAttrib4s(index, x, y, z, w);
  OGLM_CHECK_ERR(glVertexAttrib4s, )
#line 82177 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4sv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4sv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLshort*	v = INT2PTR(const GLshort *,SvIV(ST(1)))
;
#line 40778 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib4sv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib4sv, glVertexAttrib4sv)
  glVertexAttrib4sv(index, v);
  OGLM_CHECK_ERR(glVertexAttrib4sv, )
#line 82201 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4sv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4sv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 40791 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib4sv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib4sv, glVertexAttrib4sv)
  GLshort* v = OGLM_GET_VARARGS(v,1,GLshort,IV,4);
  glVertexAttrib4sv((GLuint )index, (const GLshort* )v);
  OGLM_CHECK_ERR(glVertexAttrib4sv, free(v);)
  free(v);
#line 82225 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4ubv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4ubv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLubyte*        v = (const GLubyte *)SvPV_nolen(ST(1))
;
#line 40806 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib4ubv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib4ubv, glVertexAttrib4ubv)
  glVertexAttrib4ubv(index, v);
  OGLM_CHECK_ERR(glVertexAttrib4ubv, )
#line 82249 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4ubv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4ubv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 40818 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib4ubv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib4ubv, glVertexAttrib4ubv)
  GLubyte* v = OGLM_GET_VARARGS(v,1,GLubyte,UV,4);
  glVertexAttrib4ubv((GLuint )index, (const GLubyte* )v);
  OGLM_CHECK_ERR(glVertexAttrib4ubv, free(v);)
  free(v);
#line 82273 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4uiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4uiv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLuint*	v = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 40833 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib4uiv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib4uiv, glVertexAttrib4uiv)
  glVertexAttrib4uiv(index, v);
  OGLM_CHECK_ERR(glVertexAttrib4uiv, )
#line 82297 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4uiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4uiv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 40845 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib4uiv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib4uiv, glVertexAttrib4uiv)
  GLuint* v = OGLM_GET_VARARGS(v,1,GLuint,UV,4);
  glVertexAttrib4uiv((GLuint )index, (const GLuint* )v);
  OGLM_CHECK_ERR(glVertexAttrib4uiv, free(v);)
  free(v);
#line 82321 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4usv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4usv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLushort*	v = INT2PTR(const GLushort *,SvIV(ST(1)))
;
#line 40860 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib4usv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib4usv, glVertexAttrib4usv)
  glVertexAttrib4usv(index, v);
  OGLM_CHECK_ERR(glVertexAttrib4usv, )
#line 82345 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4usv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttrib4usv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 40872 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttrib4usv, )
  OGLM_AVAIL_CHECK(__glewVertexAttrib4usv, glVertexAttrib4usv)
  GLushort* v = OGLM_GET_VARARGS(v,1,GLushort,UV,4);
  glVertexAttrib4usv((GLuint )index, (const GLushort* )v);
  OGLM_CHECK_ERR(glVertexAttrib4usv, free(v);)
  free(v);
#line 82369 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribArrayObjectATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribArrayObjectATI)
{
    dVAR; dXSARGS;
    if (items != 7)
       croak_xs_usage(cv,  "index, size, type, normalized, stride, buffer, offset");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLint	size = (int)SvIV(ST(1))
;
	GLenum	type = (int)SvIV(ST(2))
;
	GLboolean	normalized = (int)SvIV(ST(3))
;
	GLsizei	stride = (int)SvIV(ST(4))
;
	GLuint	buffer = (unsigned int)SvUV(ST(5))
;
	GLuint	offset = (unsigned int)SvUV(ST(6))
;
#line 40890 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribArrayObjectATI, )
  OGLM_AVAIL_CHECK(__glewVertexAttribArrayObjectATI, glVertexAttribArrayObjectATI)
  glVertexAttribArrayObjectATI(index, size, type, normalized, stride, buffer, offset);
  OGLM_CHECK_ERR(glVertexAttribArrayObjectATI, )
#line 82402 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribBinding); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribBinding)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "attribindex, bindingindex");
    {
	GLuint	attribindex = (unsigned int)SvUV(ST(0))
;
	GLuint	bindingindex = (unsigned int)SvUV(ST(1))
;
#line 40901 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribBinding, )
  OGLM_AVAIL_CHECK(__glewVertexAttribBinding, glVertexAttribBinding)
  glVertexAttribBinding(attribindex, bindingindex);
  OGLM_CHECK_ERR(glVertexAttribBinding, )
#line 82425 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribDivisor); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribDivisor)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, divisor");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLuint	divisor = (unsigned int)SvUV(ST(1))
;
#line 40917 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribDivisor, )
  OGLM_AVAIL_CHECK(__glewVertexAttribDivisor, glVertexAttribDivisor)
  glVertexAttribDivisor(index, divisor);
  OGLM_CHECK_ERR(glVertexAttribDivisor, )
#line 82449 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribFormat); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribFormat)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "attribindex, size, type, normalized, relativeoffset");
    {
	GLuint	attribindex = (unsigned int)SvUV(ST(0))
;
	GLint	size = (int)SvIV(ST(1))
;
	GLenum	type = (int)SvIV(ST(2))
;
	GLboolean	normalized = (int)SvIV(ST(3))
;
	GLuint	relativeoffset = (unsigned int)SvUV(ST(4))
;
#line 40931 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribFormat, )
  OGLM_AVAIL_CHECK(__glewVertexAttribFormat, glVertexAttribFormat)
  glVertexAttribFormat(attribindex, size, type, normalized, relativeoffset);
  OGLM_CHECK_ERR(glVertexAttribFormat, )
#line 82478 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribFormatNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribFormatNV)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "index, size, type, normalized, stride");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLint	size = (int)SvIV(ST(1))
;
	GLenum	type = (int)SvIV(ST(2))
;
	GLboolean	normalized = (int)SvIV(ST(3))
;
	GLsizei	stride = (int)SvIV(ST(4))
;
#line 40945 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribFormatNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribFormatNV, glVertexAttribFormatNV)
  glVertexAttribFormatNV(index, size, type, normalized, stride);
  OGLM_CHECK_ERR(glVertexAttribFormatNV, )
#line 82507 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI1i); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI1i)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v0");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLint	v0 = (int)SvIV(ST(1))
;
#line 40958 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribI1i, )
  OGLM_AVAIL_CHECK(__glewVertexAttribI1i, glVertexAttribI1i)
  glVertexAttribI1i(index, v0);
  OGLM_CHECK_ERR(glVertexAttribI1i, )
#line 82531 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI1iv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI1iv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLint*	v = INT2PTR(const GLint *,SvIV(ST(1)))
;
#line 40971 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribI1iv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribI1iv, glVertexAttribI1iv)
  glVertexAttribI1iv(index, v);
  OGLM_CHECK_ERR(glVertexAttribI1iv, )
#line 82555 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI1iv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI1iv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 40983 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribI1iv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribI1iv, glVertexAttribI1iv)
  GLint* v = OGLM_GET_VARARGS(v,1,GLint,IV,1);
  glVertexAttribI1iv((GLuint )index, (const GLint* )v);
  OGLM_CHECK_ERR(glVertexAttribI1iv, free(v);)
  free(v);
#line 82579 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI1ui); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI1ui)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v0");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLuint	v0 = (unsigned int)SvUV(ST(1))
;
#line 40998 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribI1ui, )
  OGLM_AVAIL_CHECK(__glewVertexAttribI1ui, glVertexAttribI1ui)
  glVertexAttribI1ui(index, v0);
  OGLM_CHECK_ERR(glVertexAttribI1ui, )
#line 82603 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI1uiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI1uiv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLuint*	v = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 41011 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribI1uiv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribI1uiv, glVertexAttribI1uiv)
  glVertexAttribI1uiv(index, v);
  OGLM_CHECK_ERR(glVertexAttribI1uiv, )
#line 82627 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI1uiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI1uiv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 41023 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribI1uiv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribI1uiv, glVertexAttribI1uiv)
  GLuint* v = OGLM_GET_VARARGS(v,1,GLuint,UV,1);
  glVertexAttribI1uiv((GLuint )index, (const GLuint* )v);
  OGLM_CHECK_ERR(glVertexAttribI1uiv, free(v);)
  free(v);
#line 82651 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI2i); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI2i)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "index, v0, v1");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLint	v0 = (int)SvIV(ST(1))
;
	GLint	v1 = (int)SvIV(ST(2))
;
#line 41039 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribI2i, )
  OGLM_AVAIL_CHECK(__glewVertexAttribI2i, glVertexAttribI2i)
  glVertexAttribI2i(index, v0, v1);
  OGLM_CHECK_ERR(glVertexAttribI2i, )
#line 82677 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI2iv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI2iv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLint*	v = INT2PTR(const GLint *,SvIV(ST(1)))
;
#line 41052 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribI2iv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribI2iv, glVertexAttribI2iv)
  glVertexAttribI2iv(index, v);
  OGLM_CHECK_ERR(glVertexAttribI2iv, )
#line 82701 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI2iv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI2iv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 41064 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribI2iv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribI2iv, glVertexAttribI2iv)
  GLint* v = OGLM_GET_VARARGS(v,1,GLint,IV,2);
  glVertexAttribI2iv((GLuint )index, (const GLint* )v);
  OGLM_CHECK_ERR(glVertexAttribI2iv, free(v);)
  free(v);
#line 82725 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI2ui); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI2ui)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "index, v0, v1");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLuint	v0 = (unsigned int)SvUV(ST(1))
;
	GLuint	v1 = (unsigned int)SvUV(ST(2))
;
#line 41080 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribI2ui, )
  OGLM_AVAIL_CHECK(__glewVertexAttribI2ui, glVertexAttribI2ui)
  glVertexAttribI2ui(index, v0, v1);
  OGLM_CHECK_ERR(glVertexAttribI2ui, )
#line 82751 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI2uiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI2uiv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLuint*	v = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 41093 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribI2uiv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribI2uiv, glVertexAttribI2uiv)
  glVertexAttribI2uiv(index, v);
  OGLM_CHECK_ERR(glVertexAttribI2uiv, )
#line 82775 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI2uiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI2uiv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 41105 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribI2uiv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribI2uiv, glVertexAttribI2uiv)
  GLuint* v = OGLM_GET_VARARGS(v,1,GLuint,UV,2);
  glVertexAttribI2uiv((GLuint )index, (const GLuint* )v);
  OGLM_CHECK_ERR(glVertexAttribI2uiv, free(v);)
  free(v);
#line 82799 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI3i); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI3i)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "index, v0, v1, v2");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLint	v0 = (int)SvIV(ST(1))
;
	GLint	v1 = (int)SvIV(ST(2))
;
	GLint	v2 = (int)SvIV(ST(3))
;
#line 41122 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribI3i, )
  OGLM_AVAIL_CHECK(__glewVertexAttribI3i, glVertexAttribI3i)
  glVertexAttribI3i(index, v0, v1, v2);
  OGLM_CHECK_ERR(glVertexAttribI3i, )
#line 82827 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI3iv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI3iv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLint*	v = INT2PTR(const GLint *,SvIV(ST(1)))
;
#line 41135 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribI3iv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribI3iv, glVertexAttribI3iv)
  glVertexAttribI3iv(index, v);
  OGLM_CHECK_ERR(glVertexAttribI3iv, )
#line 82851 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI3iv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI3iv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 41147 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribI3iv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribI3iv, glVertexAttribI3iv)
  GLint* v = OGLM_GET_VARARGS(v,1,GLint,IV,3);
  glVertexAttribI3iv((GLuint )index, (const GLint* )v);
  OGLM_CHECK_ERR(glVertexAttribI3iv, free(v);)
  free(v);
#line 82875 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI3ui); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI3ui)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "index, v0, v1, v2");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLuint	v0 = (unsigned int)SvUV(ST(1))
;
	GLuint	v1 = (unsigned int)SvUV(ST(2))
;
	GLuint	v2 = (unsigned int)SvUV(ST(3))
;
#line 41164 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribI3ui, )
  OGLM_AVAIL_CHECK(__glewVertexAttribI3ui, glVertexAttribI3ui)
  glVertexAttribI3ui(index, v0, v1, v2);
  OGLM_CHECK_ERR(glVertexAttribI3ui, )
#line 82903 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI3uiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI3uiv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLuint*	v = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 41177 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribI3uiv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribI3uiv, glVertexAttribI3uiv)
  glVertexAttribI3uiv(index, v);
  OGLM_CHECK_ERR(glVertexAttribI3uiv, )
#line 82927 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI3uiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI3uiv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 41189 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribI3uiv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribI3uiv, glVertexAttribI3uiv)
  GLuint* v = OGLM_GET_VARARGS(v,1,GLuint,UV,3);
  glVertexAttribI3uiv((GLuint )index, (const GLuint* )v);
  OGLM_CHECK_ERR(glVertexAttribI3uiv, free(v);)
  free(v);
#line 82951 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI4bv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI4bv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLbyte*	v = INT2PTR(const GLbyte *,SvIV(ST(1)))
;
#line 41204 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribI4bv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribI4bv, glVertexAttribI4bv)
  glVertexAttribI4bv(index, v);
  OGLM_CHECK_ERR(glVertexAttribI4bv, )
#line 82975 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI4bv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI4bv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 41216 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribI4bv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribI4bv, glVertexAttribI4bv)
  GLbyte* v = OGLM_GET_VARARGS(v,1,GLbyte,IV,4);
  glVertexAttribI4bv((GLuint )index, (const GLbyte* )v);
  OGLM_CHECK_ERR(glVertexAttribI4bv, free(v);)
  free(v);
#line 82999 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI4i); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI4i)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "index, v0, v1, v2, v3");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLint	v0 = (int)SvIV(ST(1))
;
	GLint	v1 = (int)SvIV(ST(2))
;
	GLint	v2 = (int)SvIV(ST(3))
;
	GLint	v3 = (int)SvIV(ST(4))
;
#line 41234 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribI4i, )
  OGLM_AVAIL_CHECK(__glewVertexAttribI4i, glVertexAttribI4i)
  glVertexAttribI4i(index, v0, v1, v2, v3);
  OGLM_CHECK_ERR(glVertexAttribI4i, )
#line 83029 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI4iv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI4iv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLint*	v = INT2PTR(const GLint *,SvIV(ST(1)))
;
#line 41247 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribI4iv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribI4iv, glVertexAttribI4iv)
  glVertexAttribI4iv(index, v);
  OGLM_CHECK_ERR(glVertexAttribI4iv, )
#line 83053 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI4iv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI4iv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 41259 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribI4iv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribI4iv, glVertexAttribI4iv)
  GLint* v = OGLM_GET_VARARGS(v,1,GLint,IV,4);
  glVertexAttribI4iv((GLuint )index, (const GLint* )v);
  OGLM_CHECK_ERR(glVertexAttribI4iv, free(v);)
  free(v);
#line 83077 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI4sv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI4sv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLshort*	v = INT2PTR(const GLshort *,SvIV(ST(1)))
;
#line 41274 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribI4sv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribI4sv, glVertexAttribI4sv)
  glVertexAttribI4sv(index, v);
  OGLM_CHECK_ERR(glVertexAttribI4sv, )
#line 83101 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI4sv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI4sv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 41286 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribI4sv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribI4sv, glVertexAttribI4sv)
  GLshort* v = OGLM_GET_VARARGS(v,1,GLshort,IV,4);
  glVertexAttribI4sv((GLuint )index, (const GLshort* )v);
  OGLM_CHECK_ERR(glVertexAttribI4sv, free(v);)
  free(v);
#line 83125 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI4ubv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI4ubv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLubyte*        v = (const GLubyte *)SvPV_nolen(ST(1))
;
#line 41301 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribI4ubv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribI4ubv, glVertexAttribI4ubv)
  glVertexAttribI4ubv(index, v);
  OGLM_CHECK_ERR(glVertexAttribI4ubv, )
#line 83149 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI4ubv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI4ubv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 41313 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribI4ubv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribI4ubv, glVertexAttribI4ubv)
  GLubyte* v = OGLM_GET_VARARGS(v,1,GLubyte,UV,4);
  glVertexAttribI4ubv((GLuint )index, (const GLubyte* )v);
  OGLM_CHECK_ERR(glVertexAttribI4ubv, free(v);)
  free(v);
#line 83173 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI4ui); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI4ui)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "index, v0, v1, v2, v3");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLuint	v0 = (unsigned int)SvUV(ST(1))
;
	GLuint	v1 = (unsigned int)SvUV(ST(2))
;
	GLuint	v2 = (unsigned int)SvUV(ST(3))
;
	GLuint	v3 = (unsigned int)SvUV(ST(4))
;
#line 41331 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribI4ui, )
  OGLM_AVAIL_CHECK(__glewVertexAttribI4ui, glVertexAttribI4ui)
  glVertexAttribI4ui(index, v0, v1, v2, v3);
  OGLM_CHECK_ERR(glVertexAttribI4ui, )
#line 83203 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI4uiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI4uiv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLuint*	v = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 41344 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribI4uiv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribI4uiv, glVertexAttribI4uiv)
  glVertexAttribI4uiv(index, v);
  OGLM_CHECK_ERR(glVertexAttribI4uiv, )
#line 83227 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI4uiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI4uiv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 41356 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribI4uiv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribI4uiv, glVertexAttribI4uiv)
  GLuint* v = OGLM_GET_VARARGS(v,1,GLuint,UV,4);
  glVertexAttribI4uiv((GLuint )index, (const GLuint* )v);
  OGLM_CHECK_ERR(glVertexAttribI4uiv, free(v);)
  free(v);
#line 83251 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI4usv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI4usv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLushort*	v = INT2PTR(const GLushort *,SvIV(ST(1)))
;
#line 41371 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribI4usv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribI4usv, glVertexAttribI4usv)
  glVertexAttribI4usv(index, v);
  OGLM_CHECK_ERR(glVertexAttribI4usv, )
#line 83275 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI4usv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribI4usv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 41383 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribI4usv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribI4usv, glVertexAttribI4usv)
  GLushort* v = OGLM_GET_VARARGS(v,1,GLushort,UV,4);
  glVertexAttribI4usv((GLuint )index, (const GLushort* )v);
  OGLM_CHECK_ERR(glVertexAttribI4usv, free(v);)
  free(v);
#line 83299 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribIFormat); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribIFormat)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "attribindex, size, type, relativeoffset");
    {
	GLuint	attribindex = (unsigned int)SvUV(ST(0))
;
	GLint	size = (int)SvIV(ST(1))
;
	GLenum	type = (int)SvIV(ST(2))
;
	GLuint	relativeoffset = (unsigned int)SvUV(ST(3))
;
#line 41398 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribIFormat, )
  OGLM_AVAIL_CHECK(__glewVertexAttribIFormat, glVertexAttribIFormat)
  glVertexAttribIFormat(attribindex, size, type, relativeoffset);
  OGLM_CHECK_ERR(glVertexAttribIFormat, )
#line 83326 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribIFormatNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribIFormatNV)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "index, size, type, stride");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLint	size = (int)SvIV(ST(1))
;
	GLenum	type = (int)SvIV(ST(2))
;
	GLsizei	stride = (int)SvIV(ST(3))
;
#line 41411 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribIFormatNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribIFormatNV, glVertexAttribIFormatNV)
  glVertexAttribIFormatNV(index, size, type, stride);
  OGLM_CHECK_ERR(glVertexAttribIFormatNV, )
#line 83353 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribIPointer_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribIPointer_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "index, size, type, stride, pointer");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLint	size = (int)SvIV(ST(1))
;
	GLenum	type = (int)SvIV(ST(2))
;
	GLsizei	stride = (int)SvIV(ST(3))
;
	const void*	pointer = INT2PTR(const void *,SvIV(ST(4)))
;
#line 41427 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribIPointer, )
  OGLM_AVAIL_CHECK(__glewVertexAttribIPointer, glVertexAttribIPointer)
  glVertexAttribIPointer(index, size, type, stride, pointer);
  OGLM_CHECK_ERR(glVertexAttribIPointer, )
#line 83383 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL1d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL1d)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, x");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLdouble	x = (double)SvNV(ST(1))
;
#line 41440 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribL1d, )
  OGLM_AVAIL_CHECK(__glewVertexAttribL1d, glVertexAttribL1d)
  glVertexAttribL1d(index, x);
  OGLM_CHECK_ERR(glVertexAttribL1d, )
#line 83407 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL1dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL1dv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLdouble*	v = INT2PTR(const GLdouble *,SvIV(ST(1)))
;
#line 41453 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribL1dv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribL1dv, glVertexAttribL1dv)
  glVertexAttribL1dv(index, v);
  OGLM_CHECK_ERR(glVertexAttribL1dv, )
#line 83431 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL1dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL1dv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 41465 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribL1dv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribL1dv, glVertexAttribL1dv)
  GLdouble* v = OGLM_GET_VARARGS(v,1,GLdouble,NV,1);
  glVertexAttribL1dv((GLuint )index, (const GLdouble* )v);
  OGLM_CHECK_ERR(glVertexAttribL1dv, free(v);)
  free(v);
#line 83455 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL1i64NV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL1i64NV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "index, x");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLint64EXT	x = (unsigned int)SvUV(ST(1))
;
#line 41478 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribL1i64NV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribL1i64NV, glVertexAttribL1i64NV)
  glVertexAttribL1i64NV(index, x);
  OGLM_CHECK_ERR(glVertexAttribL1i64NV, )
#line 83478 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL1i64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL1i64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLint64EXT*	v = INT2PTR(const GLint64EXT *,SvIV(ST(1)))
;
#line 41489 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribL1i64vNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribL1i64vNV, glVertexAttribL1i64vNV)
  glVertexAttribL1i64vNV(index, v);
  OGLM_CHECK_ERR(glVertexAttribL1i64vNV, )
#line 83501 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL1i64vNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL1i64vNV_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 41499 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribL1i64vNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribL1i64vNV, glVertexAttribL1i64vNV)
  GLint64EXT* v = OGLM_GET_VARARGS(v,1,GLint64EXT,IV,1);
  glVertexAttribL1i64vNV((GLuint )index, (const GLint64EXT* )v);
  OGLM_CHECK_ERR(glVertexAttribL1i64vNV, free(v);)
  free(v);
#line 83524 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL1ui64ARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL1ui64ARB)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "index, x");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLuint64EXT	x = (unsigned int)SvUV(ST(1))
;
#line 41512 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribL1ui64ARB, )
  OGLM_AVAIL_CHECK(__glewVertexAttribL1ui64ARB, glVertexAttribL1ui64ARB)
  glVertexAttribL1ui64ARB(index, x);
  OGLM_CHECK_ERR(glVertexAttribL1ui64ARB, )
#line 83547 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL1ui64NV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL1ui64NV)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "index, x");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLuint64EXT	x = (unsigned int)SvUV(ST(1))
;
#line 41523 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribL1ui64NV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribL1ui64NV, glVertexAttribL1ui64NV)
  glVertexAttribL1ui64NV(index, x);
  OGLM_CHECK_ERR(glVertexAttribL1ui64NV, )
#line 83570 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL1ui64vARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL1ui64vARB_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLuint64EXT*	v = INT2PTR(const GLuint64EXT *,SvIV(ST(1)))
;
#line 41534 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribL1ui64vARB, )
  OGLM_AVAIL_CHECK(__glewVertexAttribL1ui64vARB, glVertexAttribL1ui64vARB)
  glVertexAttribL1ui64vARB(index, v);
  OGLM_CHECK_ERR(glVertexAttribL1ui64vARB, )
#line 83593 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL1ui64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL1ui64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLuint64EXT*	v = INT2PTR(const GLuint64EXT *,SvIV(ST(1)))
;
#line 41545 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribL1ui64vNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribL1ui64vNV, glVertexAttribL1ui64vNV)
  glVertexAttribL1ui64vNV(index, v);
  OGLM_CHECK_ERR(glVertexAttribL1ui64vNV, )
#line 83616 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL1ui64vNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL1ui64vNV_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 41555 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribL1ui64vNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribL1ui64vNV, glVertexAttribL1ui64vNV)
  GLuint64EXT* v = OGLM_GET_VARARGS(v,1,GLuint64EXT,UV,1);
  glVertexAttribL1ui64vNV((GLuint )index, (const GLuint64EXT* )v);
  OGLM_CHECK_ERR(glVertexAttribL1ui64vNV, free(v);)
  free(v);
#line 83639 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL2d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL2d)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "index, x, y");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLdouble	x = (double)SvNV(ST(1))
;
	GLdouble	y = (double)SvNV(ST(2))
;
#line 41571 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribL2d, )
  OGLM_AVAIL_CHECK(__glewVertexAttribL2d, glVertexAttribL2d)
  glVertexAttribL2d(index, x, y);
  OGLM_CHECK_ERR(glVertexAttribL2d, )
#line 83665 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL2dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL2dv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLdouble*	v = INT2PTR(const GLdouble *,SvIV(ST(1)))
;
#line 41584 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribL2dv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribL2dv, glVertexAttribL2dv)
  glVertexAttribL2dv(index, v);
  OGLM_CHECK_ERR(glVertexAttribL2dv, )
#line 83689 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL2dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL2dv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 41596 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribL2dv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribL2dv, glVertexAttribL2dv)
  GLdouble* v = OGLM_GET_VARARGS(v,1,GLdouble,NV,2);
  glVertexAttribL2dv((GLuint )index, (const GLdouble* )v);
  OGLM_CHECK_ERR(glVertexAttribL2dv, free(v);)
  free(v);
#line 83713 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL2i64NV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL2i64NV)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "index, x, y");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLint64EXT	x = (unsigned int)SvUV(ST(1))
;
	GLint64EXT	y = (unsigned int)SvUV(ST(2))
;
#line 41610 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribL2i64NV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribL2i64NV, glVertexAttribL2i64NV)
  glVertexAttribL2i64NV(index, x, y);
  OGLM_CHECK_ERR(glVertexAttribL2i64NV, )
#line 83738 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL2i64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL2i64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLint64EXT*	v = INT2PTR(const GLint64EXT *,SvIV(ST(1)))
;
#line 41621 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribL2i64vNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribL2i64vNV, glVertexAttribL2i64vNV)
  glVertexAttribL2i64vNV(index, v);
  OGLM_CHECK_ERR(glVertexAttribL2i64vNV, )
#line 83761 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL2i64vNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL2i64vNV_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 41631 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribL2i64vNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribL2i64vNV, glVertexAttribL2i64vNV)
  GLint64EXT* v = OGLM_GET_VARARGS(v,1,GLint64EXT,IV,2);
  glVertexAttribL2i64vNV((GLuint )index, (const GLint64EXT* )v);
  OGLM_CHECK_ERR(glVertexAttribL2i64vNV, free(v);)
  free(v);
#line 83784 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL2ui64NV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL2ui64NV)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "index, x, y");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLuint64EXT	x = (unsigned int)SvUV(ST(1))
;
	GLuint64EXT	y = (unsigned int)SvUV(ST(2))
;
#line 41645 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribL2ui64NV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribL2ui64NV, glVertexAttribL2ui64NV)
  glVertexAttribL2ui64NV(index, x, y);
  OGLM_CHECK_ERR(glVertexAttribL2ui64NV, )
#line 83809 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL2ui64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL2ui64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLuint64EXT*	v = INT2PTR(const GLuint64EXT *,SvIV(ST(1)))
;
#line 41656 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribL2ui64vNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribL2ui64vNV, glVertexAttribL2ui64vNV)
  glVertexAttribL2ui64vNV(index, v);
  OGLM_CHECK_ERR(glVertexAttribL2ui64vNV, )
#line 83832 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL2ui64vNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL2ui64vNV_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 41666 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribL2ui64vNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribL2ui64vNV, glVertexAttribL2ui64vNV)
  GLuint64EXT* v = OGLM_GET_VARARGS(v,1,GLuint64EXT,UV,2);
  glVertexAttribL2ui64vNV((GLuint )index, (const GLuint64EXT* )v);
  OGLM_CHECK_ERR(glVertexAttribL2ui64vNV, free(v);)
  free(v);
#line 83855 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL3d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL3d)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 4)
       croak_xs_usage(cv,  "index, x, y, z");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLdouble	x = (double)SvNV(ST(1))
;
	GLdouble	y = (double)SvNV(ST(2))
;
	GLdouble	z = (double)SvNV(ST(3))
;
#line 41683 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribL3d, )
  OGLM_AVAIL_CHECK(__glewVertexAttribL3d, glVertexAttribL3d)
  glVertexAttribL3d(index, x, y, z);
  OGLM_CHECK_ERR(glVertexAttribL3d, )
#line 83883 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL3dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL3dv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLdouble*	v = INT2PTR(const GLdouble *,SvIV(ST(1)))
;
#line 41696 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribL3dv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribL3dv, glVertexAttribL3dv)
  glVertexAttribL3dv(index, v);
  OGLM_CHECK_ERR(glVertexAttribL3dv, )
#line 83907 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL3dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL3dv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 41708 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribL3dv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribL3dv, glVertexAttribL3dv)
  GLdouble* v = OGLM_GET_VARARGS(v,1,GLdouble,NV,3);
  glVertexAttribL3dv((GLuint )index, (const GLdouble* )v);
  OGLM_CHECK_ERR(glVertexAttribL3dv, free(v);)
  free(v);
#line 83931 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL3i64NV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL3i64NV)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "index, x, y, z");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLint64EXT	x = (unsigned int)SvUV(ST(1))
;
	GLint64EXT	y = (unsigned int)SvUV(ST(2))
;
	GLint64EXT	z = (unsigned int)SvUV(ST(3))
;
#line 41723 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribL3i64NV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribL3i64NV, glVertexAttribL3i64NV)
  glVertexAttribL3i64NV(index, x, y, z);
  OGLM_CHECK_ERR(glVertexAttribL3i64NV, )
#line 83958 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL3i64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL3i64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLint64EXT*	v = INT2PTR(const GLint64EXT *,SvIV(ST(1)))
;
#line 41734 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribL3i64vNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribL3i64vNV, glVertexAttribL3i64vNV)
  glVertexAttribL3i64vNV(index, v);
  OGLM_CHECK_ERR(glVertexAttribL3i64vNV, )
#line 83981 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL3i64vNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL3i64vNV_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 41744 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribL3i64vNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribL3i64vNV, glVertexAttribL3i64vNV)
  GLint64EXT* v = OGLM_GET_VARARGS(v,1,GLint64EXT,IV,3);
  glVertexAttribL3i64vNV((GLuint )index, (const GLint64EXT* )v);
  OGLM_CHECK_ERR(glVertexAttribL3i64vNV, free(v);)
  free(v);
#line 84004 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL3ui64NV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL3ui64NV)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "index, x, y, z");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLuint64EXT	x = (unsigned int)SvUV(ST(1))
;
	GLuint64EXT	y = (unsigned int)SvUV(ST(2))
;
	GLuint64EXT	z = (unsigned int)SvUV(ST(3))
;
#line 41759 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribL3ui64NV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribL3ui64NV, glVertexAttribL3ui64NV)
  glVertexAttribL3ui64NV(index, x, y, z);
  OGLM_CHECK_ERR(glVertexAttribL3ui64NV, )
#line 84031 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL3ui64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL3ui64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLuint64EXT*	v = INT2PTR(const GLuint64EXT *,SvIV(ST(1)))
;
#line 41770 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribL3ui64vNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribL3ui64vNV, glVertexAttribL3ui64vNV)
  glVertexAttribL3ui64vNV(index, v);
  OGLM_CHECK_ERR(glVertexAttribL3ui64vNV, )
#line 84054 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL3ui64vNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL3ui64vNV_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 41780 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribL3ui64vNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribL3ui64vNV, glVertexAttribL3ui64vNV)
  GLuint64EXT* v = OGLM_GET_VARARGS(v,1,GLuint64EXT,UV,3);
  glVertexAttribL3ui64vNV((GLuint )index, (const GLuint64EXT* )v);
  OGLM_CHECK_ERR(glVertexAttribL3ui64vNV, free(v);)
  free(v);
#line 84077 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL4d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL4d)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "index, x, y, z, w");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLdouble	x = (double)SvNV(ST(1))
;
	GLdouble	y = (double)SvNV(ST(2))
;
	GLdouble	z = (double)SvNV(ST(3))
;
	GLdouble	w = (double)SvNV(ST(4))
;
#line 41798 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribL4d, )
  OGLM_AVAIL_CHECK(__glewVertexAttribL4d, glVertexAttribL4d)
  glVertexAttribL4d(index, x, y, z, w);
  OGLM_CHECK_ERR(glVertexAttribL4d, )
#line 84107 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL4dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL4dv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLdouble*	v = INT2PTR(const GLdouble *,SvIV(ST(1)))
;
#line 41811 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribL4dv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribL4dv, glVertexAttribL4dv)
  glVertexAttribL4dv(index, v);
  OGLM_CHECK_ERR(glVertexAttribL4dv, )
#line 84131 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL4dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL4dv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 41823 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribL4dv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribL4dv, glVertexAttribL4dv)
  GLdouble* v = OGLM_GET_VARARGS(v,1,GLdouble,NV,4);
  glVertexAttribL4dv((GLuint )index, (const GLdouble* )v);
  OGLM_CHECK_ERR(glVertexAttribL4dv, free(v);)
  free(v);
#line 84155 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL4i64NV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL4i64NV)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "index, x, y, z, w");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLint64EXT	x = (unsigned int)SvUV(ST(1))
;
	GLint64EXT	y = (unsigned int)SvUV(ST(2))
;
	GLint64EXT	z = (unsigned int)SvUV(ST(3))
;
	GLint64EXT	w = (unsigned int)SvUV(ST(4))
;
#line 41839 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribL4i64NV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribL4i64NV, glVertexAttribL4i64NV)
  glVertexAttribL4i64NV(index, x, y, z, w);
  OGLM_CHECK_ERR(glVertexAttribL4i64NV, )
#line 84184 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL4i64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL4i64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLint64EXT*	v = INT2PTR(const GLint64EXT *,SvIV(ST(1)))
;
#line 41850 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribL4i64vNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribL4i64vNV, glVertexAttribL4i64vNV)
  glVertexAttribL4i64vNV(index, v);
  OGLM_CHECK_ERR(glVertexAttribL4i64vNV, )
#line 84207 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL4i64vNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL4i64vNV_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 41860 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribL4i64vNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribL4i64vNV, glVertexAttribL4i64vNV)
  GLint64EXT* v = OGLM_GET_VARARGS(v,1,GLint64EXT,IV,4);
  glVertexAttribL4i64vNV((GLuint )index, (const GLint64EXT* )v);
  OGLM_CHECK_ERR(glVertexAttribL4i64vNV, free(v);)
  free(v);
#line 84230 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL4ui64NV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL4ui64NV)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "index, x, y, z, w");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLuint64EXT	x = (unsigned int)SvUV(ST(1))
;
	GLuint64EXT	y = (unsigned int)SvUV(ST(2))
;
	GLuint64EXT	z = (unsigned int)SvUV(ST(3))
;
	GLuint64EXT	w = (unsigned int)SvUV(ST(4))
;
#line 41876 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribL4ui64NV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribL4ui64NV, glVertexAttribL4ui64NV)
  glVertexAttribL4ui64NV(index, x, y, z, w);
  OGLM_CHECK_ERR(glVertexAttribL4ui64NV, )
#line 84259 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL4ui64vNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL4ui64vNV_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLuint64EXT*	v = INT2PTR(const GLuint64EXT *,SvIV(ST(1)))
;
#line 41887 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribL4ui64vNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribL4ui64vNV, glVertexAttribL4ui64vNV)
  glVertexAttribL4ui64vNV(index, v);
  OGLM_CHECK_ERR(glVertexAttribL4ui64vNV, )
#line 84282 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL4ui64vNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribL4ui64vNV_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 41897 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribL4ui64vNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribL4ui64vNV, glVertexAttribL4ui64vNV)
  GLuint64EXT* v = OGLM_GET_VARARGS(v,1,GLuint64EXT,UV,4);
  glVertexAttribL4ui64vNV((GLuint )index, (const GLuint64EXT* )v);
  OGLM_CHECK_ERR(glVertexAttribL4ui64vNV, free(v);)
  free(v);
#line 84305 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribLFormat); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribLFormat)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "attribindex, size, type, relativeoffset");
    {
	GLuint	attribindex = (unsigned int)SvUV(ST(0))
;
	GLint	size = (int)SvIV(ST(1))
;
	GLenum	type = (int)SvIV(ST(2))
;
	GLuint	relativeoffset = (unsigned int)SvUV(ST(3))
;
#line 41912 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribLFormat, )
  OGLM_AVAIL_CHECK(__glewVertexAttribLFormat, glVertexAttribLFormat)
  glVertexAttribLFormat(attribindex, size, type, relativeoffset);
  OGLM_CHECK_ERR(glVertexAttribLFormat, )
#line 84332 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribLFormatNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribLFormatNV)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "index, size, type, stride");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLint	size = (int)SvIV(ST(1))
;
	GLenum	type = (int)SvIV(ST(2))
;
	GLsizei	stride = (int)SvIV(ST(3))
;
#line 41925 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribLFormatNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribLFormatNV, glVertexAttribLFormatNV)
  glVertexAttribLFormatNV(index, size, type, stride);
  OGLM_CHECK_ERR(glVertexAttribLFormatNV, )
#line 84359 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribLPointer_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribLPointer_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "index, size, type, stride, pointer");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLint	size = (int)SvIV(ST(1))
;
	GLenum	type = (int)SvIV(ST(2))
;
	GLsizei	stride = (int)SvIV(ST(3))
;
	const void*	pointer = INT2PTR(const void *,SvIV(ST(4)))
;
#line 41941 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribLPointer, )
  OGLM_AVAIL_CHECK(__glewVertexAttribLPointer, glVertexAttribLPointer)
  glVertexAttribLPointer(index, size, type, stride, pointer);
  OGLM_CHECK_ERR(glVertexAttribLPointer, )
#line 84389 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribP1ui); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribP1ui)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "index, type, normalized, value");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLboolean	normalized = (int)SvIV(ST(2))
;
	GLuint	value = (unsigned int)SvUV(ST(3))
;
#line 41954 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribP1ui, )
  OGLM_AVAIL_CHECK(__glewVertexAttribP1ui, glVertexAttribP1ui)
  glVertexAttribP1ui(index, type, normalized, value);
  OGLM_CHECK_ERR(glVertexAttribP1ui, )
#line 84416 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribP1uiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribP1uiv_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "index, type, normalized, value");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLboolean	normalized = (int)SvIV(ST(2))
;
	const GLuint*	value = INT2PTR(const GLuint *,SvIV(ST(3)))
;
#line 41967 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribP1uiv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribP1uiv, glVertexAttribP1uiv)
  glVertexAttribP1uiv(index, type, normalized, value);
  OGLM_CHECK_ERR(glVertexAttribP1uiv, )
#line 84443 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribP1uiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribP1uiv_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "index, type, normalized, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLboolean	normalized = (int)SvIV(ST(2))
;
#line 41979 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribP1uiv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribP1uiv, glVertexAttribP1uiv)
  GLuint* value = OGLM_GET_VARARGS(value,3,GLuint,UV,1);
  glVertexAttribP1uiv((GLuint )index, (GLenum )type, (GLboolean )normalized, (const GLuint* )value);
  OGLM_CHECK_ERR(glVertexAttribP1uiv, free(value);)
  free(value);
#line 84470 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribP2ui); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribP2ui)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "index, type, normalized, value");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLboolean	normalized = (int)SvIV(ST(2))
;
	GLuint	value = (unsigned int)SvUV(ST(3))
;
#line 41994 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribP2ui, )
  OGLM_AVAIL_CHECK(__glewVertexAttribP2ui, glVertexAttribP2ui)
  glVertexAttribP2ui(index, type, normalized, value);
  OGLM_CHECK_ERR(glVertexAttribP2ui, )
#line 84497 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribP2uiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribP2uiv_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "index, type, normalized, value");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLboolean	normalized = (int)SvIV(ST(2))
;
	const GLuint*	value = INT2PTR(const GLuint *,SvIV(ST(3)))
;
#line 42007 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribP2uiv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribP2uiv, glVertexAttribP2uiv)
  glVertexAttribP2uiv(index, type, normalized, value);
  OGLM_CHECK_ERR(glVertexAttribP2uiv, )
#line 84524 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribP2uiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribP2uiv_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "index, type, normalized, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLboolean	normalized = (int)SvIV(ST(2))
;
#line 42019 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribP2uiv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribP2uiv, glVertexAttribP2uiv)
  GLuint* value = OGLM_GET_VARARGS(value,3,GLuint,UV,1);
  glVertexAttribP2uiv((GLuint )index, (GLenum )type, (GLboolean )normalized, (const GLuint* )value);
  OGLM_CHECK_ERR(glVertexAttribP2uiv, free(value);)
  free(value);
#line 84551 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribP3ui); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribP3ui)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "index, type, normalized, value");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLboolean	normalized = (int)SvIV(ST(2))
;
	GLuint	value = (unsigned int)SvUV(ST(3))
;
#line 42034 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribP3ui, )
  OGLM_AVAIL_CHECK(__glewVertexAttribP3ui, glVertexAttribP3ui)
  glVertexAttribP3ui(index, type, normalized, value);
  OGLM_CHECK_ERR(glVertexAttribP3ui, )
#line 84578 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribP3uiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribP3uiv_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "index, type, normalized, value");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLboolean	normalized = (int)SvIV(ST(2))
;
	const GLuint*	value = INT2PTR(const GLuint *,SvIV(ST(3)))
;
#line 42047 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribP3uiv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribP3uiv, glVertexAttribP3uiv)
  glVertexAttribP3uiv(index, type, normalized, value);
  OGLM_CHECK_ERR(glVertexAttribP3uiv, )
#line 84605 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribP3uiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribP3uiv_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "index, type, normalized, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLboolean	normalized = (int)SvIV(ST(2))
;
#line 42059 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribP3uiv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribP3uiv, glVertexAttribP3uiv)
  GLuint* value = OGLM_GET_VARARGS(value,3,GLuint,UV,1);
  glVertexAttribP3uiv((GLuint )index, (GLenum )type, (GLboolean )normalized, (const GLuint* )value);
  OGLM_CHECK_ERR(glVertexAttribP3uiv, free(value);)
  free(value);
#line 84632 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribP4ui); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribP4ui)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "index, type, normalized, value");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLboolean	normalized = (int)SvIV(ST(2))
;
	GLuint	value = (unsigned int)SvUV(ST(3))
;
#line 42074 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribP4ui, )
  OGLM_AVAIL_CHECK(__glewVertexAttribP4ui, glVertexAttribP4ui)
  glVertexAttribP4ui(index, type, normalized, value);
  OGLM_CHECK_ERR(glVertexAttribP4ui, )
#line 84659 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribP4uiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribP4uiv_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "index, type, normalized, value");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLboolean	normalized = (int)SvIV(ST(2))
;
	const GLuint*	value = INT2PTR(const GLuint *,SvIV(ST(3)))
;
#line 42087 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribP4uiv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribP4uiv, glVertexAttribP4uiv)
  glVertexAttribP4uiv(index, type, normalized, value);
  OGLM_CHECK_ERR(glVertexAttribP4uiv, )
#line 84686 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribP4uiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribP4uiv_p)
{
    dVAR; dXSARGS;
    if (items < 3)
       croak_xs_usage(cv,  "index, type, normalized, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLboolean	normalized = (int)SvIV(ST(2))
;
#line 42099 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribP4uiv, )
  OGLM_AVAIL_CHECK(__glewVertexAttribP4uiv, glVertexAttribP4uiv)
  GLuint* value = OGLM_GET_VARARGS(value,3,GLuint,UV,1);
  glVertexAttribP4uiv((GLuint )index, (GLenum )type, (GLboolean )normalized, (const GLuint* )value);
  OGLM_CHECK_ERR(glVertexAttribP4uiv, free(value);)
  free(value);
#line 84713 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribParameteriAMD); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribParameteriAMD)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "index, pname, param");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	pname = (int)SvIV(ST(1))
;
	GLint	param = (int)SvIV(ST(2))
;
#line 42113 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribParameteriAMD, )
  OGLM_AVAIL_CHECK(__glewVertexAttribParameteriAMD, glVertexAttribParameteriAMD)
  glVertexAttribParameteriAMD(index, pname, param);
  OGLM_CHECK_ERR(glVertexAttribParameteriAMD, )
#line 84738 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribPointer_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribPointer_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 6)
       croak_xs_usage(cv,  "index, size, type, normalized, stride, pointer");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLint	size = (int)SvIV(ST(1))
;
	GLenum	type = (int)SvIV(ST(2))
;
	GLboolean	normalized = (int)SvIV(ST(3))
;
	GLsizei	stride = (int)SvIV(ST(4))
;
	const void*	pointer = INT2PTR(const void *,SvIV(ST(5)))
;
#line 42130 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribPointer, )
  OGLM_AVAIL_CHECK(__glewVertexAttribPointer, glVertexAttribPointer)
  glVertexAttribPointer(index, size, type, normalized, stride, pointer);
  OGLM_CHECK_ERR(glVertexAttribPointer, )
#line 84770 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribPointerNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribPointerNV_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "index, fsize, type, stride, pointer");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLint	fsize = (int)SvIV(ST(1))
;
	GLenum	type = (int)SvIV(ST(2))
;
	GLsizei	stride = (int)SvIV(ST(3))
;
	const void *	pointer = INT2PTR(const void *,SvIV(ST(4)))
;
#line 42144 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribPointerNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribPointerNV, glVertexAttribPointerNV)
  glVertexAttribPointerNV(index, fsize, type, stride, pointer);
  OGLM_CHECK_ERR(glVertexAttribPointerNV, )
#line 84799 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs1dvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs1dvNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "index, count, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLdouble*	v = INT2PTR(const GLdouble *,SvIV(ST(2)))
;
#line 42156 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribs1dvNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribs1dvNV, glVertexAttribs1dvNV)
  glVertexAttribs1dvNV(index, count, v);
  OGLM_CHECK_ERR(glVertexAttribs1dvNV, )
#line 84824 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs1dvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs1dvNV_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 42166 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribs1dvNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribs1dvNV, glVertexAttribs1dvNV)
  GLsizei count = items-1;
  GLdouble* v = OGLM_GET_VARARGS(v,1,GLdouble,NV,count);
  glVertexAttribs1dvNV((GLuint )index, (GLsizei )count, (const GLdouble* )v);
  OGLM_CHECK_ERR(glVertexAttribs1dvNV, free(v);)
  free(v);
#line 84848 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs1fvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs1fvNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "index, count, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLfloat*	v = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 42181 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribs1fvNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribs1fvNV, glVertexAttribs1fvNV)
  glVertexAttribs1fvNV(index, count, v);
  OGLM_CHECK_ERR(glVertexAttribs1fvNV, )
#line 84873 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs1fvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs1fvNV_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 42191 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribs1fvNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribs1fvNV, glVertexAttribs1fvNV)
  GLsizei count = items-1;
  GLfloat* v = OGLM_GET_VARARGS(v,1,GLfloat,NV,count);
  glVertexAttribs1fvNV((GLuint )index, (GLsizei )count, (const GLfloat* )v);
  OGLM_CHECK_ERR(glVertexAttribs1fvNV, free(v);)
  free(v);
#line 84897 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs1hvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs1hvNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "index, n, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLsizei	n = (int)SvIV(ST(1))
;
	const GLhalf*	v = INT2PTR(const GLhalf *,SvIV(ST(2)))
;
#line 42206 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribs1hvNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribs1hvNV, glVertexAttribs1hvNV)
  glVertexAttribs1hvNV(index, n, v);
  OGLM_CHECK_ERR(glVertexAttribs1hvNV, )
#line 84922 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs1hvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs1hvNV_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 42216 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribs1hvNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribs1hvNV, glVertexAttribs1hvNV)
  GLsizei n = items-1;
  GLhalf* v = OGLM_GET_VARARGS(v,1,GLhalf,NV,n);
  glVertexAttribs1hvNV((GLuint )index, (GLsizei )n, (const GLhalf* )v);
  OGLM_CHECK_ERR(glVertexAttribs1hvNV, free(v);)
  free(v);
#line 84946 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs1svNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs1svNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "index, count, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLshort*	v = INT2PTR(const GLshort *,SvIV(ST(2)))
;
#line 42231 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribs1svNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribs1svNV, glVertexAttribs1svNV)
  glVertexAttribs1svNV(index, count, v);
  OGLM_CHECK_ERR(glVertexAttribs1svNV, )
#line 84971 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs1svNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs1svNV_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 42241 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribs1svNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribs1svNV, glVertexAttribs1svNV)
  GLsizei count = items-1;
  GLshort* v = OGLM_GET_VARARGS(v,1,GLshort,IV,count);
  glVertexAttribs1svNV((GLuint )index, (GLsizei )count, (const GLshort* )v);
  OGLM_CHECK_ERR(glVertexAttribs1svNV, free(v);)
  free(v);
#line 84995 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs2dvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs2dvNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "index, count, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLdouble*	v = INT2PTR(const GLdouble *,SvIV(ST(2)))
;
#line 42256 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribs2dvNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribs2dvNV, glVertexAttribs2dvNV)
  glVertexAttribs2dvNV(index, count, v);
  OGLM_CHECK_ERR(glVertexAttribs2dvNV, )
#line 85020 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs2dvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs2dvNV_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "index, count, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 42267 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribs2dvNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribs2dvNV, glVertexAttribs2dvNV)
  GLdouble* v = OGLM_GET_VARARGS(v,2,GLdouble,NV,count*2);
  glVertexAttribs2dvNV((GLuint )index, (GLsizei )count, (const GLdouble* )v);
  OGLM_CHECK_ERR(glVertexAttribs2dvNV, free(v);)
  free(v);
#line 85045 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs2fvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs2fvNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "index, count, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLfloat*	v = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 42281 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribs2fvNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribs2fvNV, glVertexAttribs2fvNV)
  glVertexAttribs2fvNV(index, count, v);
  OGLM_CHECK_ERR(glVertexAttribs2fvNV, )
#line 85070 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs2fvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs2fvNV_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "index, count, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 42292 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribs2fvNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribs2fvNV, glVertexAttribs2fvNV)
  GLfloat* v = OGLM_GET_VARARGS(v,2,GLfloat,NV,count*2);
  glVertexAttribs2fvNV((GLuint )index, (GLsizei )count, (const GLfloat* )v);
  OGLM_CHECK_ERR(glVertexAttribs2fvNV, free(v);)
  free(v);
#line 85095 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs2hvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs2hvNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "index, n, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLsizei	n = (int)SvIV(ST(1))
;
	const GLhalf*	v = INT2PTR(const GLhalf *,SvIV(ST(2)))
;
#line 42306 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribs2hvNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribs2hvNV, glVertexAttribs2hvNV)
  glVertexAttribs2hvNV(index, n, v);
  OGLM_CHECK_ERR(glVertexAttribs2hvNV, )
#line 85120 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs2hvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs2hvNV_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 42316 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribs2hvNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribs2hvNV, glVertexAttribs2hvNV)
  GLsizei n = items-1;
  GLhalf* v = OGLM_GET_VARARGS(v,1,GLhalf,NV,n);
  glVertexAttribs2hvNV((GLuint )index, (GLsizei )n, (const GLhalf* )v);
  OGLM_CHECK_ERR(glVertexAttribs2hvNV, free(v);)
  free(v);
#line 85144 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs2svNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs2svNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "index, count, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLshort*	v = INT2PTR(const GLshort *,SvIV(ST(2)))
;
#line 42331 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribs2svNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribs2svNV, glVertexAttribs2svNV)
  glVertexAttribs2svNV(index, count, v);
  OGLM_CHECK_ERR(glVertexAttribs2svNV, )
#line 85169 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs2svNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs2svNV_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "index, count, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 42342 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribs2svNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribs2svNV, glVertexAttribs2svNV)
  GLshort* v = OGLM_GET_VARARGS(v,2,GLshort,IV,count*2);
  glVertexAttribs2svNV((GLuint )index, (GLsizei )count, (const GLshort* )v);
  OGLM_CHECK_ERR(glVertexAttribs2svNV, free(v);)
  free(v);
#line 85194 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs3dvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs3dvNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "index, count, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLdouble*	v = INT2PTR(const GLdouble *,SvIV(ST(2)))
;
#line 42356 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribs3dvNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribs3dvNV, glVertexAttribs3dvNV)
  glVertexAttribs3dvNV(index, count, v);
  OGLM_CHECK_ERR(glVertexAttribs3dvNV, )
#line 85219 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs3dvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs3dvNV_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "index, count, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 42367 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribs3dvNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribs3dvNV, glVertexAttribs3dvNV)
  GLdouble* v = OGLM_GET_VARARGS(v,2,GLdouble,NV,count*3);
  glVertexAttribs3dvNV((GLuint )index, (GLsizei )count, (const GLdouble* )v);
  OGLM_CHECK_ERR(glVertexAttribs3dvNV, free(v);)
  free(v);
#line 85244 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs3fvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs3fvNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "index, count, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLfloat*	v = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 42381 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribs3fvNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribs3fvNV, glVertexAttribs3fvNV)
  glVertexAttribs3fvNV(index, count, v);
  OGLM_CHECK_ERR(glVertexAttribs3fvNV, )
#line 85269 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs3fvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs3fvNV_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "index, count, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 42392 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribs3fvNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribs3fvNV, glVertexAttribs3fvNV)
  GLfloat* v = OGLM_GET_VARARGS(v,2,GLfloat,NV,count*3);
  glVertexAttribs3fvNV((GLuint )index, (GLsizei )count, (const GLfloat* )v);
  OGLM_CHECK_ERR(glVertexAttribs3fvNV, free(v);)
  free(v);
#line 85294 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs3hvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs3hvNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "index, n, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLsizei	n = (int)SvIV(ST(1))
;
	const GLhalf*	v = INT2PTR(const GLhalf *,SvIV(ST(2)))
;
#line 42406 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribs3hvNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribs3hvNV, glVertexAttribs3hvNV)
  glVertexAttribs3hvNV(index, n, v);
  OGLM_CHECK_ERR(glVertexAttribs3hvNV, )
#line 85319 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs3hvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs3hvNV_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 42416 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribs3hvNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribs3hvNV, glVertexAttribs3hvNV)
  GLsizei n = items-1;
  GLhalf* v = OGLM_GET_VARARGS(v,1,GLhalf,NV,n);
  glVertexAttribs3hvNV((GLuint )index, (GLsizei )n, (const GLhalf* )v);
  OGLM_CHECK_ERR(glVertexAttribs3hvNV, free(v);)
  free(v);
#line 85343 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs3svNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs3svNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "index, count, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLshort*	v = INT2PTR(const GLshort *,SvIV(ST(2)))
;
#line 42431 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribs3svNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribs3svNV, glVertexAttribs3svNV)
  glVertexAttribs3svNV(index, count, v);
  OGLM_CHECK_ERR(glVertexAttribs3svNV, )
#line 85368 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs3svNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs3svNV_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "index, count, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 42442 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribs3svNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribs3svNV, glVertexAttribs3svNV)
  GLshort* v = OGLM_GET_VARARGS(v,2,GLshort,IV,count*3);
  glVertexAttribs3svNV((GLuint )index, (GLsizei )count, (const GLshort* )v);
  OGLM_CHECK_ERR(glVertexAttribs3svNV, free(v);)
  free(v);
#line 85393 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs4dvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs4dvNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "index, count, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLdouble*	v = INT2PTR(const GLdouble *,SvIV(ST(2)))
;
#line 42456 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribs4dvNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribs4dvNV, glVertexAttribs4dvNV)
  glVertexAttribs4dvNV(index, count, v);
  OGLM_CHECK_ERR(glVertexAttribs4dvNV, )
#line 85418 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs4dvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs4dvNV_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "index, count, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 42467 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribs4dvNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribs4dvNV, glVertexAttribs4dvNV)
  GLdouble* v = OGLM_GET_VARARGS(v,2,GLdouble,NV,count*4);
  glVertexAttribs4dvNV((GLuint )index, (GLsizei )count, (const GLdouble* )v);
  OGLM_CHECK_ERR(glVertexAttribs4dvNV, free(v);)
  free(v);
#line 85443 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs4fvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs4fvNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "index, count, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLfloat*	v = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 42481 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribs4fvNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribs4fvNV, glVertexAttribs4fvNV)
  glVertexAttribs4fvNV(index, count, v);
  OGLM_CHECK_ERR(glVertexAttribs4fvNV, )
#line 85468 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs4fvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs4fvNV_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "index, count, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 42492 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribs4fvNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribs4fvNV, glVertexAttribs4fvNV)
  GLfloat* v = OGLM_GET_VARARGS(v,2,GLfloat,NV,count*4);
  glVertexAttribs4fvNV((GLuint )index, (GLsizei )count, (const GLfloat* )v);
  OGLM_CHECK_ERR(glVertexAttribs4fvNV, free(v);)
  free(v);
#line 85493 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs4hvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs4hvNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "index, n, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLsizei	n = (int)SvIV(ST(1))
;
	const GLhalf*	v = INT2PTR(const GLhalf *,SvIV(ST(2)))
;
#line 42506 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribs4hvNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribs4hvNV, glVertexAttribs4hvNV)
  glVertexAttribs4hvNV(index, n, v);
  OGLM_CHECK_ERR(glVertexAttribs4hvNV, )
#line 85518 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs4hvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs4hvNV_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 42516 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribs4hvNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribs4hvNV, glVertexAttribs4hvNV)
  GLsizei n = items-1;
  GLhalf* v = OGLM_GET_VARARGS(v,1,GLhalf,NV,n);
  glVertexAttribs4hvNV((GLuint )index, (GLsizei )n, (const GLhalf* )v);
  OGLM_CHECK_ERR(glVertexAttribs4hvNV, free(v);)
  free(v);
#line 85542 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs4svNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs4svNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "index, count, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLshort*	v = INT2PTR(const GLshort *,SvIV(ST(2)))
;
#line 42531 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribs4svNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribs4svNV, glVertexAttribs4svNV)
  glVertexAttribs4svNV(index, count, v);
  OGLM_CHECK_ERR(glVertexAttribs4svNV, )
#line 85567 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs4svNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs4svNV_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "index, count, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 42542 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribs4svNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribs4svNV, glVertexAttribs4svNV)
  GLshort* v = OGLM_GET_VARARGS(v,2,GLshort,IV,count*4);
  glVertexAttribs4svNV((GLuint )index, (GLsizei )count, (const GLshort* )v);
  OGLM_CHECK_ERR(glVertexAttribs4svNV, free(v);)
  free(v);
#line 85592 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs4ubvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs4ubvNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "index, count, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLubyte*        v = (const GLubyte *)SvPV_nolen(ST(2))
;
#line 42556 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribs4ubvNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribs4ubvNV, glVertexAttribs4ubvNV)
  glVertexAttribs4ubvNV(index, count, v);
  OGLM_CHECK_ERR(glVertexAttribs4ubvNV, )
#line 85617 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs4ubvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexAttribs4ubvNV_p)
{
    dVAR; dXSARGS;
    if (items < 2)
       croak_xs_usage(cv,  "index, count, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
#line 42567 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexAttribs4ubvNV, )
  OGLM_AVAIL_CHECK(__glewVertexAttribs4ubvNV, glVertexAttribs4ubvNV)
  GLubyte* v = OGLM_GET_VARARGS(v,2,GLubyte,UV,count*4);
  glVertexAttribs4ubvNV((GLuint )index, (GLsizei )count, (const GLubyte* )v);
  OGLM_CHECK_ERR(glVertexAttribs4ubvNV, free(v);)
  free(v);
#line 85642 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexBindingDivisor); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexBindingDivisor)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "bindingindex, divisor");
    {
	GLuint	bindingindex = (unsigned int)SvUV(ST(0))
;
	GLuint	divisor = (unsigned int)SvUV(ST(1))
;
#line 42580 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexBindingDivisor, )
  OGLM_AVAIL_CHECK(__glewVertexBindingDivisor, glVertexBindingDivisor)
  glVertexBindingDivisor(bindingindex, divisor);
  OGLM_CHECK_ERR(glVertexBindingDivisor, )
#line 85665 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexBlendARB); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexBlendARB)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "count");
    {
	GLint	count = (int)SvIV(ST(0))
;
#line 42590 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexBlendARB, )
  OGLM_AVAIL_CHECK(__glewVertexBlendARB, glVertexBlendARB)
  glVertexBlendARB(count);
  OGLM_CHECK_ERR(glVertexBlendARB, )
#line 85686 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexBlendEnvfATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexBlendEnvfATI)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, param");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLfloat	param = (float)SvNV(ST(1))
;
#line 42601 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexBlendEnvfATI, )
  OGLM_AVAIL_CHECK(__glewVertexBlendEnvfATI, glVertexBlendEnvfATI)
  glVertexBlendEnvfATI(pname, param);
  OGLM_CHECK_ERR(glVertexBlendEnvfATI, )
#line 85709 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexBlendEnviATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexBlendEnviATI)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "pname, param");
    {
	GLenum	pname = (int)SvIV(ST(0))
;
	GLint	param = (int)SvIV(ST(1))
;
#line 42612 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexBlendEnviATI, )
  OGLM_AVAIL_CHECK(__glewVertexBlendEnviATI, glVertexBlendEnviATI)
  glVertexBlendEnviATI(pname, param);
  OGLM_CHECK_ERR(glVertexBlendEnviATI, )
#line 85732 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexFormatNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexFormatNV)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "size, type, stride");
    {
	GLint	size = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLsizei	stride = (int)SvIV(ST(2))
;
#line 42624 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexFormatNV, )
  OGLM_AVAIL_CHECK(__glewVertexFormatNV, glVertexFormatNV)
  glVertexFormatNV(size, type, stride);
  OGLM_CHECK_ERR(glVertexFormatNV, )
#line 85757 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexP2ui); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexP2ui)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "type, value");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	GLuint	value = (unsigned int)SvUV(ST(1))
;
#line 42635 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexP2ui, )
  OGLM_AVAIL_CHECK(__glewVertexP2ui, glVertexP2ui)
  glVertexP2ui(type, value);
  OGLM_CHECK_ERR(glVertexP2ui, )
#line 85780 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexP2uiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexP2uiv_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "type, value");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	const GLuint*	value = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 42646 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexP2uiv, )
  OGLM_AVAIL_CHECK(__glewVertexP2uiv, glVertexP2uiv)
  glVertexP2uiv(type, value);
  OGLM_CHECK_ERR(glVertexP2uiv, )
#line 85803 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexP2uiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexP2uiv_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "type, ...");
    {
	GLenum	type = (int)SvIV(ST(0))
;
#line 42656 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexP2uiv, )
  OGLM_AVAIL_CHECK(__glewVertexP2uiv, glVertexP2uiv)
  GLuint* value = OGLM_GET_VARARGS(value,1,GLuint,UV,1);
  glVertexP2uiv((GLenum )type, (const GLuint* )value);
  OGLM_CHECK_ERR(glVertexP2uiv, free(value);)
  free(value);
#line 85826 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexP3ui); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexP3ui)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "type, value");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	GLuint	value = (unsigned int)SvUV(ST(1))
;
#line 42669 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexP3ui, )
  OGLM_AVAIL_CHECK(__glewVertexP3ui, glVertexP3ui)
  glVertexP3ui(type, value);
  OGLM_CHECK_ERR(glVertexP3ui, )
#line 85849 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexP3uiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexP3uiv_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "type, value");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	const GLuint*	value = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 42680 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexP3uiv, )
  OGLM_AVAIL_CHECK(__glewVertexP3uiv, glVertexP3uiv)
  glVertexP3uiv(type, value);
  OGLM_CHECK_ERR(glVertexP3uiv, )
#line 85872 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexP3uiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexP3uiv_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "type, ...");
    {
	GLenum	type = (int)SvIV(ST(0))
;
#line 42690 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexP3uiv, )
  OGLM_AVAIL_CHECK(__glewVertexP3uiv, glVertexP3uiv)
  GLuint* value = OGLM_GET_VARARGS(value,1,GLuint,UV,1);
  glVertexP3uiv((GLenum )type, (const GLuint* )value);
  OGLM_CHECK_ERR(glVertexP3uiv, free(value);)
  free(value);
#line 85895 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexP4ui); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexP4ui)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "type, value");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	GLuint	value = (unsigned int)SvUV(ST(1))
;
#line 42703 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexP4ui, )
  OGLM_AVAIL_CHECK(__glewVertexP4ui, glVertexP4ui)
  glVertexP4ui(type, value);
  OGLM_CHECK_ERR(glVertexP4ui, )
#line 85918 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexP4uiv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexP4uiv_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "type, value");
    {
	GLenum	type = (int)SvIV(ST(0))
;
	const GLuint*	value = INT2PTR(const GLuint *,SvIV(ST(1)))
;
#line 42714 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexP4uiv, )
  OGLM_AVAIL_CHECK(__glewVertexP4uiv, glVertexP4uiv)
  glVertexP4uiv(type, value);
  OGLM_CHECK_ERR(glVertexP4uiv, )
#line 85941 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexP4uiv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexP4uiv_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "type, ...");
    {
	GLenum	type = (int)SvIV(ST(0))
;
#line 42724 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexP4uiv, )
  OGLM_AVAIL_CHECK(__glewVertexP4uiv, glVertexP4uiv)
  GLuint* value = OGLM_GET_VARARGS(value,1,GLuint,UV,1);
  glVertexP4uiv((GLenum )type, (const GLuint* )value);
  OGLM_CHECK_ERR(glVertexP4uiv, free(value);)
  free(value);
#line 85964 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexPointer_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexPointer_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "size, type, stride, pointer");
    {
	GLint	size = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLsizei	stride = (int)SvIV(ST(2))
;
	const void *	pointer = INT2PTR(const void *,SvIV(ST(3)))
;
#line 42739 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexPointer, )
  glVertexPointer(size, type, stride, pointer);
  OGLM_CHECK_ERR(glVertexPointer, )
#line 85990 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexPointerEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexPointerEXT_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "size, type, stride, count, pointer");
    {
	GLint	size = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLsizei	stride = (int)SvIV(ST(2))
;
	GLsizei	count = (int)SvIV(ST(3))
;
	const void *	pointer = INT2PTR(const void *,SvIV(ST(4)))
;
#line 42752 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexPointerEXT, )
  OGLM_AVAIL_CHECK(__glewVertexPointerEXT, glVertexPointerEXT)
  glVertexPointerEXT(size, type, stride, count, pointer);
  OGLM_CHECK_ERR(glVertexPointerEXT, )
#line 86019 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexPointerListIBM_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexPointerListIBM_c)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "size, type, stride, pointer, ptrstride");
    {
	GLint	size = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLint	stride = (int)SvIV(ST(2))
;
	const void**	pointer = INT2PTR(const void **,SvIV(ST(3)))
;
	GLint	ptrstride = (int)SvIV(ST(4))
;
#line 42766 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexPointerListIBM, )
  OGLM_AVAIL_CHECK(__glewVertexPointerListIBM, glVertexPointerListIBM)
  glVertexPointerListIBM(size, type, stride, pointer, ptrstride);
  OGLM_CHECK_ERR(glVertexPointerListIBM, )
#line 86048 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexPointervINTEL_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexPointervINTEL_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "size, type, pointer");
    {
	GLint	size = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	const void**	pointer = INT2PTR(const void **,SvIV(ST(2)))
;
#line 42778 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexPointervINTEL, )
  OGLM_AVAIL_CHECK(__glewVertexPointervINTEL, glVertexPointervINTEL)
  glVertexPointervINTEL(size, type, pointer);
  OGLM_CHECK_ERR(glVertexPointervINTEL, )
#line 86073 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream1dATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream1dATI)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "stream, x");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	GLdouble	x = (double)SvNV(ST(1))
;
#line 42789 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream1dATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream1dATI, glVertexStream1dATI)
  glVertexStream1dATI(stream, x);
  OGLM_CHECK_ERR(glVertexStream1dATI, )
#line 86096 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream1dvATI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream1dvATI_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "stream, coords");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	const GLdouble *	coords = INT2PTR(const GLdouble *,SvIV(ST(1)))
;
#line 42800 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream1dvATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream1dvATI, glVertexStream1dvATI)
  glVertexStream1dvATI(stream, coords);
  OGLM_CHECK_ERR(glVertexStream1dvATI, )
#line 86119 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream1dvATI_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream1dvATI_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "stream, ...");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
#line 42810 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream1dvATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream1dvATI, glVertexStream1dvATI)
  GLdouble *coords = OGLM_GET_VARARGS(coords,1,GLdouble,NV,1);
  glVertexStream1dvATI((GLenum )stream, (const GLdouble *)coords);
  OGLM_CHECK_ERR(glVertexStream1dvATI, free(coords);)
  free(coords);
#line 86142 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream1fATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream1fATI)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "stream, x");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	GLfloat	x = (float)SvNV(ST(1))
;
#line 42823 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream1fATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream1fATI, glVertexStream1fATI)
  glVertexStream1fATI(stream, x);
  OGLM_CHECK_ERR(glVertexStream1fATI, )
#line 86165 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream1fvATI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream1fvATI_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "stream, coords");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	const GLfloat *	coords = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 42834 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream1fvATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream1fvATI, glVertexStream1fvATI)
  glVertexStream1fvATI(stream, coords);
  OGLM_CHECK_ERR(glVertexStream1fvATI, )
#line 86188 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream1fvATI_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream1fvATI_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "stream, ...");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
#line 42844 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream1fvATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream1fvATI, glVertexStream1fvATI)
  GLfloat *coords = OGLM_GET_VARARGS(coords,1,GLfloat,NV,1);
  glVertexStream1fvATI((GLenum )stream, (const GLfloat *)coords);
  OGLM_CHECK_ERR(glVertexStream1fvATI, free(coords);)
  free(coords);
#line 86211 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream1iATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream1iATI)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "stream, x");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	GLint	x = (int)SvIV(ST(1))
;
#line 42857 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream1iATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream1iATI, glVertexStream1iATI)
  glVertexStream1iATI(stream, x);
  OGLM_CHECK_ERR(glVertexStream1iATI, )
#line 86234 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream1ivATI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream1ivATI_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "stream, coords");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	const GLint *	coords = INT2PTR(const GLint *,SvIV(ST(1)))
;
#line 42868 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream1ivATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream1ivATI, glVertexStream1ivATI)
  glVertexStream1ivATI(stream, coords);
  OGLM_CHECK_ERR(glVertexStream1ivATI, )
#line 86257 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream1ivATI_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream1ivATI_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "stream, ...");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
#line 42878 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream1ivATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream1ivATI, glVertexStream1ivATI)
  GLint *coords = OGLM_GET_VARARGS(coords,1,GLint,IV,1);
  glVertexStream1ivATI((GLenum )stream, (const GLint *)coords);
  OGLM_CHECK_ERR(glVertexStream1ivATI, free(coords);)
  free(coords);
#line 86280 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream1sATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream1sATI)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "stream, x");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	GLshort	x = (short)SvIV(ST(1))
;
#line 42891 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream1sATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream1sATI, glVertexStream1sATI)
  glVertexStream1sATI(stream, x);
  OGLM_CHECK_ERR(glVertexStream1sATI, )
#line 86303 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream1svATI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream1svATI_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "stream, coords");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	const GLshort *	coords = INT2PTR(const GLshort *,SvIV(ST(1)))
;
#line 42902 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream1svATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream1svATI, glVertexStream1svATI)
  glVertexStream1svATI(stream, coords);
  OGLM_CHECK_ERR(glVertexStream1svATI, )
#line 86326 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream1svATI_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream1svATI_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "stream, ...");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
#line 42912 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream1svATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream1svATI, glVertexStream1svATI)
  GLshort *coords = OGLM_GET_VARARGS(coords,1,GLshort,IV,1);
  glVertexStream1svATI((GLenum )stream, (const GLshort *)coords);
  OGLM_CHECK_ERR(glVertexStream1svATI, free(coords);)
  free(coords);
#line 86349 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream2dATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream2dATI)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "stream, x, y");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	GLdouble	x = (double)SvNV(ST(1))
;
	GLdouble	y = (double)SvNV(ST(2))
;
#line 42926 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream2dATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream2dATI, glVertexStream2dATI)
  glVertexStream2dATI(stream, x, y);
  OGLM_CHECK_ERR(glVertexStream2dATI, )
#line 86374 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream2dvATI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream2dvATI_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "stream, coords");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	const GLdouble *	coords = INT2PTR(const GLdouble *,SvIV(ST(1)))
;
#line 42937 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream2dvATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream2dvATI, glVertexStream2dvATI)
  glVertexStream2dvATI(stream, coords);
  OGLM_CHECK_ERR(glVertexStream2dvATI, )
#line 86397 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream2dvATI_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream2dvATI_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "stream, ...");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
#line 42947 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream2dvATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream2dvATI, glVertexStream2dvATI)
  GLdouble *coords = OGLM_GET_VARARGS(coords,1,GLdouble,NV,2);
  glVertexStream2dvATI((GLenum )stream, (const GLdouble *)coords);
  OGLM_CHECK_ERR(glVertexStream2dvATI, free(coords);)
  free(coords);
#line 86420 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream2fATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream2fATI)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "stream, x, y");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	GLfloat	x = (float)SvNV(ST(1))
;
	GLfloat	y = (float)SvNV(ST(2))
;
#line 42961 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream2fATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream2fATI, glVertexStream2fATI)
  glVertexStream2fATI(stream, x, y);
  OGLM_CHECK_ERR(glVertexStream2fATI, )
#line 86445 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream2fvATI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream2fvATI_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "stream, coords");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	const GLfloat *	coords = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 42972 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream2fvATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream2fvATI, glVertexStream2fvATI)
  glVertexStream2fvATI(stream, coords);
  OGLM_CHECK_ERR(glVertexStream2fvATI, )
#line 86468 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream2fvATI_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream2fvATI_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "stream, ...");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
#line 42982 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream2fvATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream2fvATI, glVertexStream2fvATI)
  GLfloat *coords = OGLM_GET_VARARGS(coords,1,GLfloat,NV,2);
  glVertexStream2fvATI((GLenum )stream, (const GLfloat *)coords);
  OGLM_CHECK_ERR(glVertexStream2fvATI, free(coords);)
  free(coords);
#line 86491 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream2iATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream2iATI)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "stream, x, y");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	GLint	x = (int)SvIV(ST(1))
;
	GLint	y = (int)SvIV(ST(2))
;
#line 42996 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream2iATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream2iATI, glVertexStream2iATI)
  glVertexStream2iATI(stream, x, y);
  OGLM_CHECK_ERR(glVertexStream2iATI, )
#line 86516 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream2ivATI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream2ivATI_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "stream, coords");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	const GLint *	coords = INT2PTR(const GLint *,SvIV(ST(1)))
;
#line 43007 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream2ivATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream2ivATI, glVertexStream2ivATI)
  glVertexStream2ivATI(stream, coords);
  OGLM_CHECK_ERR(glVertexStream2ivATI, )
#line 86539 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream2ivATI_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream2ivATI_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "stream, ...");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
#line 43017 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream2ivATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream2ivATI, glVertexStream2ivATI)
  GLint *coords = OGLM_GET_VARARGS(coords,1,GLint,IV,2);
  glVertexStream2ivATI((GLenum )stream, (const GLint *)coords);
  OGLM_CHECK_ERR(glVertexStream2ivATI, free(coords);)
  free(coords);
#line 86562 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream2sATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream2sATI)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "stream, x, y");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	GLshort	x = (short)SvIV(ST(1))
;
	GLshort	y = (short)SvIV(ST(2))
;
#line 43031 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream2sATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream2sATI, glVertexStream2sATI)
  glVertexStream2sATI(stream, x, y);
  OGLM_CHECK_ERR(glVertexStream2sATI, )
#line 86587 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream2svATI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream2svATI_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "stream, coords");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	const GLshort *	coords = INT2PTR(const GLshort *,SvIV(ST(1)))
;
#line 43042 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream2svATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream2svATI, glVertexStream2svATI)
  glVertexStream2svATI(stream, coords);
  OGLM_CHECK_ERR(glVertexStream2svATI, )
#line 86610 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream2svATI_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream2svATI_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "stream, ...");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
#line 43052 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream2svATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream2svATI, glVertexStream2svATI)
  GLshort *coords = OGLM_GET_VARARGS(coords,1,GLshort,IV,2);
  glVertexStream2svATI((GLenum )stream, (const GLshort *)coords);
  OGLM_CHECK_ERR(glVertexStream2svATI, free(coords);)
  free(coords);
#line 86633 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream3dATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream3dATI)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "stream, x, y, z");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	GLdouble	x = (double)SvNV(ST(1))
;
	GLdouble	y = (double)SvNV(ST(2))
;
	GLdouble	z = (double)SvNV(ST(3))
;
#line 43067 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream3dATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream3dATI, glVertexStream3dATI)
  glVertexStream3dATI(stream, x, y, z);
  OGLM_CHECK_ERR(glVertexStream3dATI, )
#line 86660 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream3dvATI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream3dvATI_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "stream, coords");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	const GLdouble *	coords = INT2PTR(const GLdouble *,SvIV(ST(1)))
;
#line 43078 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream3dvATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream3dvATI, glVertexStream3dvATI)
  glVertexStream3dvATI(stream, coords);
  OGLM_CHECK_ERR(glVertexStream3dvATI, )
#line 86683 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream3dvATI_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream3dvATI_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "stream, ...");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
#line 43088 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream3dvATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream3dvATI, glVertexStream3dvATI)
  GLdouble *coords = OGLM_GET_VARARGS(coords,1,GLdouble,NV,3);
  glVertexStream3dvATI((GLenum )stream, (const GLdouble *)coords);
  OGLM_CHECK_ERR(glVertexStream3dvATI, free(coords);)
  free(coords);
#line 86706 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream3fATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream3fATI)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "stream, x, y, z");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	GLfloat	x = (float)SvNV(ST(1))
;
	GLfloat	y = (float)SvNV(ST(2))
;
	GLfloat	z = (float)SvNV(ST(3))
;
#line 43103 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream3fATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream3fATI, glVertexStream3fATI)
  glVertexStream3fATI(stream, x, y, z);
  OGLM_CHECK_ERR(glVertexStream3fATI, )
#line 86733 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream3fvATI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream3fvATI_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "stream, coords");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	const GLfloat *	coords = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 43114 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream3fvATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream3fvATI, glVertexStream3fvATI)
  glVertexStream3fvATI(stream, coords);
  OGLM_CHECK_ERR(glVertexStream3fvATI, )
#line 86756 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream3fvATI_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream3fvATI_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "stream, ...");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
#line 43124 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream3fvATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream3fvATI, glVertexStream3fvATI)
  GLfloat *coords = OGLM_GET_VARARGS(coords,1,GLfloat,NV,3);
  glVertexStream3fvATI((GLenum )stream, (const GLfloat *)coords);
  OGLM_CHECK_ERR(glVertexStream3fvATI, free(coords);)
  free(coords);
#line 86779 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream3iATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream3iATI)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "stream, x, y, z");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	GLint	x = (int)SvIV(ST(1))
;
	GLint	y = (int)SvIV(ST(2))
;
	GLint	z = (int)SvIV(ST(3))
;
#line 43139 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream3iATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream3iATI, glVertexStream3iATI)
  glVertexStream3iATI(stream, x, y, z);
  OGLM_CHECK_ERR(glVertexStream3iATI, )
#line 86806 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream3ivATI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream3ivATI_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "stream, coords");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	const GLint *	coords = INT2PTR(const GLint *,SvIV(ST(1)))
;
#line 43150 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream3ivATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream3ivATI, glVertexStream3ivATI)
  glVertexStream3ivATI(stream, coords);
  OGLM_CHECK_ERR(glVertexStream3ivATI, )
#line 86829 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream3ivATI_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream3ivATI_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "stream, ...");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
#line 43160 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream3ivATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream3ivATI, glVertexStream3ivATI)
  GLint *coords = OGLM_GET_VARARGS(coords,1,GLint,IV,3);
  glVertexStream3ivATI((GLenum )stream, (const GLint *)coords);
  OGLM_CHECK_ERR(glVertexStream3ivATI, free(coords);)
  free(coords);
#line 86852 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream3sATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream3sATI)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "stream, x, y, z");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	GLshort	x = (short)SvIV(ST(1))
;
	GLshort	y = (short)SvIV(ST(2))
;
	GLshort	z = (short)SvIV(ST(3))
;
#line 43175 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream3sATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream3sATI, glVertexStream3sATI)
  glVertexStream3sATI(stream, x, y, z);
  OGLM_CHECK_ERR(glVertexStream3sATI, )
#line 86879 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream3svATI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream3svATI_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "stream, coords");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	const GLshort *	coords = INT2PTR(const GLshort *,SvIV(ST(1)))
;
#line 43186 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream3svATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream3svATI, glVertexStream3svATI)
  glVertexStream3svATI(stream, coords);
  OGLM_CHECK_ERR(glVertexStream3svATI, )
#line 86902 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream3svATI_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream3svATI_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "stream, ...");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
#line 43196 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream3svATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream3svATI, glVertexStream3svATI)
  GLshort *coords = OGLM_GET_VARARGS(coords,1,GLshort,IV,3);
  glVertexStream3svATI((GLenum )stream, (const GLshort *)coords);
  OGLM_CHECK_ERR(glVertexStream3svATI, free(coords);)
  free(coords);
#line 86925 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream4dATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream4dATI)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "stream, x, y, z, w");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	GLdouble	x = (double)SvNV(ST(1))
;
	GLdouble	y = (double)SvNV(ST(2))
;
	GLdouble	z = (double)SvNV(ST(3))
;
	GLdouble	w = (double)SvNV(ST(4))
;
#line 43212 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream4dATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream4dATI, glVertexStream4dATI)
  glVertexStream4dATI(stream, x, y, z, w);
  OGLM_CHECK_ERR(glVertexStream4dATI, )
#line 86954 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream4dvATI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream4dvATI_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "stream, coords");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	const GLdouble *	coords = INT2PTR(const GLdouble *,SvIV(ST(1)))
;
#line 43223 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream4dvATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream4dvATI, glVertexStream4dvATI)
  glVertexStream4dvATI(stream, coords);
  OGLM_CHECK_ERR(glVertexStream4dvATI, )
#line 86977 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream4dvATI_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream4dvATI_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "stream, ...");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
#line 43233 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream4dvATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream4dvATI, glVertexStream4dvATI)
  GLdouble *coords = OGLM_GET_VARARGS(coords,1,GLdouble,NV,4);
  glVertexStream4dvATI((GLenum )stream, (const GLdouble *)coords);
  OGLM_CHECK_ERR(glVertexStream4dvATI, free(coords);)
  free(coords);
#line 87000 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream4fATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream4fATI)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "stream, x, y, z, w");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	GLfloat	x = (float)SvNV(ST(1))
;
	GLfloat	y = (float)SvNV(ST(2))
;
	GLfloat	z = (float)SvNV(ST(3))
;
	GLfloat	w = (float)SvNV(ST(4))
;
#line 43249 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream4fATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream4fATI, glVertexStream4fATI)
  glVertexStream4fATI(stream, x, y, z, w);
  OGLM_CHECK_ERR(glVertexStream4fATI, )
#line 87029 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream4fvATI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream4fvATI_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "stream, coords");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	const GLfloat *	coords = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 43260 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream4fvATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream4fvATI, glVertexStream4fvATI)
  glVertexStream4fvATI(stream, coords);
  OGLM_CHECK_ERR(glVertexStream4fvATI, )
#line 87052 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream4fvATI_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream4fvATI_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "stream, ...");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
#line 43270 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream4fvATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream4fvATI, glVertexStream4fvATI)
  GLfloat *coords = OGLM_GET_VARARGS(coords,1,GLfloat,NV,4);
  glVertexStream4fvATI((GLenum )stream, (const GLfloat *)coords);
  OGLM_CHECK_ERR(glVertexStream4fvATI, free(coords);)
  free(coords);
#line 87075 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream4iATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream4iATI)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "stream, x, y, z, w");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	GLint	x = (int)SvIV(ST(1))
;
	GLint	y = (int)SvIV(ST(2))
;
	GLint	z = (int)SvIV(ST(3))
;
	GLint	w = (int)SvIV(ST(4))
;
#line 43286 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream4iATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream4iATI, glVertexStream4iATI)
  glVertexStream4iATI(stream, x, y, z, w);
  OGLM_CHECK_ERR(glVertexStream4iATI, )
#line 87104 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream4ivATI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream4ivATI_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "stream, coords");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	const GLint *	coords = INT2PTR(const GLint *,SvIV(ST(1)))
;
#line 43297 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream4ivATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream4ivATI, glVertexStream4ivATI)
  glVertexStream4ivATI(stream, coords);
  OGLM_CHECK_ERR(glVertexStream4ivATI, )
#line 87127 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream4ivATI_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream4ivATI_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "stream, ...");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
#line 43307 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream4ivATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream4ivATI, glVertexStream4ivATI)
  GLint *coords = OGLM_GET_VARARGS(coords,1,GLint,IV,4);
  glVertexStream4ivATI((GLenum )stream, (const GLint *)coords);
  OGLM_CHECK_ERR(glVertexStream4ivATI, free(coords);)
  free(coords);
#line 87150 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream4sATI); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream4sATI)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "stream, x, y, z, w");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	GLshort	x = (short)SvIV(ST(1))
;
	GLshort	y = (short)SvIV(ST(2))
;
	GLshort	z = (short)SvIV(ST(3))
;
	GLshort	w = (short)SvIV(ST(4))
;
#line 43323 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream4sATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream4sATI, glVertexStream4sATI)
  glVertexStream4sATI(stream, x, y, z, w);
  OGLM_CHECK_ERR(glVertexStream4sATI, )
#line 87179 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream4svATI_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream4svATI_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "stream, coords");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
	const GLshort *	coords = INT2PTR(const GLshort *,SvIV(ST(1)))
;
#line 43334 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream4svATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream4svATI, glVertexStream4svATI)
  glVertexStream4svATI(stream, coords);
  OGLM_CHECK_ERR(glVertexStream4svATI, )
#line 87202 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexStream4svATI_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexStream4svATI_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "stream, ...");
    {
	GLenum	stream = (int)SvIV(ST(0))
;
#line 43344 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexStream4svATI, )
  OGLM_AVAIL_CHECK(__glewVertexStream4svATI, glVertexStream4svATI)
  GLshort *coords = OGLM_GET_VARARGS(coords,1,GLshort,IV,4);
  glVertexStream4svATI((GLenum )stream, (const GLshort *)coords);
  OGLM_CHECK_ERR(glVertexStream4svATI, free(coords);)
  free(coords);
#line 87225 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexWeightPointerEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexWeightPointerEXT_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "size, type, stride, pointer");
    {
	GLint	size = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLsizei	stride = (int)SvIV(ST(2))
;
	void *	pointer = INT2PTR(void *,SvIV(ST(3)))
;
#line 43359 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexWeightPointerEXT, )
  OGLM_AVAIL_CHECK(__glewVertexWeightPointerEXT, glVertexWeightPointerEXT)
  glVertexWeightPointerEXT(size, type, stride, pointer);
  OGLM_CHECK_ERR(glVertexWeightPointerEXT, )
#line 87252 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexWeightfEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexWeightfEXT)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "weight");
    {
	GLfloat	weight = (float)SvNV(ST(0))
;
#line 43369 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexWeightfEXT, )
  OGLM_AVAIL_CHECK(__glewVertexWeightfEXT, glVertexWeightfEXT)
  glVertexWeightfEXT(weight);
  OGLM_CHECK_ERR(glVertexWeightfEXT, )
#line 87273 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexWeightfvEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexWeightfvEXT_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "weight");
    {
	GLfloat*	weight = INT2PTR(GLfloat *,SvIV(ST(0)))
;
#line 43379 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexWeightfvEXT, )
  OGLM_AVAIL_CHECK(__glewVertexWeightfvEXT, glVertexWeightfvEXT)
  glVertexWeightfvEXT(weight);
  OGLM_CHECK_ERR(glVertexWeightfvEXT, )
#line 87294 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexWeightfvEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexWeightfvEXT_p)
{
    dVAR; dXSARGS;
    if (items != 0)
       croak_xs_usage(cv,  "");
    {
	GLfloat	RETVAL;
	dXSTARG;
#line 43388 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexWeightfvEXT, )
  OGLM_AVAIL_CHECK(__glewVertexWeightfvEXT, glVertexWeightfvEXT)
  GLfloat weight[1];
  glVertexWeightfvEXT(weight);
  OGLM_CHECK_ERR(glVertexWeightfvEXT, )
  RETVAL = weight[0];
#line 87317 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHn((double)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glVertexWeighthNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexWeighthNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "weight");
    {
	GLhalf	weight = (float)SvNV(ST(0))
;
#line 43402 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexWeighthNV, )
  OGLM_AVAIL_CHECK(__glewVertexWeighthNV, glVertexWeighthNV)
  glVertexWeighthNV(weight);
  OGLM_CHECK_ERR(glVertexWeighthNV, )
#line 87340 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexWeighthvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexWeighthvNV_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "weight");
    {
	const GLhalf*	weight = INT2PTR(const GLhalf *,SvIV(ST(0)))
;
#line 43412 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexWeighthvNV, )
  OGLM_AVAIL_CHECK(__glewVertexWeighthvNV, glVertexWeighthvNV)
  glVertexWeighthvNV(weight);
  OGLM_CHECK_ERR(glVertexWeighthvNV, )
#line 87361 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVertexWeighthvNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVertexWeighthvNV_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 43421 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVertexWeighthvNV, )
  OGLM_AVAIL_CHECK(__glewVertexWeighthvNV, glVertexWeighthvNV)
  GLhalf* weight = OGLM_GET_VARARGS(weight,0,GLhalf,NV,1);
  glVertexWeighthvNV((const GLhalf* )weight);
  OGLM_CHECK_ERR(glVertexWeighthvNV, free(weight);)
  free(weight);
#line 87382 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVideoCaptureNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVideoCaptureNV_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "video_capture_slot, sequence_num, capture_time");
    {
	GLuint	video_capture_slot = (unsigned int)SvUV(ST(0))
;
	GLuint*	sequence_num = INT2PTR(GLuint *,SvIV(ST(1)))
;
	GLuint64EXT *	capture_time = INT2PTR(GLuint64EXT *,SvIV(ST(2)))
;
	GLenum	RETVAL;
	dXSTARG;
#line 43435 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVideoCaptureNV, )
  OGLM_AVAIL_CHECK(__glewVideoCaptureNV, glVideoCaptureNV)
  RETVAL = glVideoCaptureNV(video_capture_slot, sequence_num, capture_time);
  OGLM_CHECK_ERR(glVideoCaptureNV, )
#line 87409 "lib/OpenGL/Modern.c"
	XSprePUSH;
	PUSHi((IV)RETVAL);
    }
    XSRETURN(1);
}


XS_EUPXS(XS_OpenGL__Modern_glVideoCaptureStreamParameterdvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVideoCaptureStreamParameterdvNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "video_capture_slot, stream, pname, params");
    {
	GLuint	video_capture_slot = (unsigned int)SvUV(ST(0))
;
	GLuint	stream = (unsigned int)SvUV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	const GLdouble*	params = INT2PTR(const GLdouble *,SvIV(ST(3)))
;
#line 43450 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVideoCaptureStreamParameterdvNV, )
  OGLM_AVAIL_CHECK(__glewVideoCaptureStreamParameterdvNV, glVideoCaptureStreamParameterdvNV)
  glVideoCaptureStreamParameterdvNV(video_capture_slot, stream, pname, params);
  OGLM_CHECK_ERR(glVideoCaptureStreamParameterdvNV, )
#line 87438 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVideoCaptureStreamParameterfvNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVideoCaptureStreamParameterfvNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "video_capture_slot, stream, pname, params");
    {
	GLuint	video_capture_slot = (unsigned int)SvUV(ST(0))
;
	GLuint	stream = (unsigned int)SvUV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	const GLfloat*	params = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 43463 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVideoCaptureStreamParameterfvNV, )
  OGLM_AVAIL_CHECK(__glewVideoCaptureStreamParameterfvNV, glVideoCaptureStreamParameterfvNV)
  glVideoCaptureStreamParameterfvNV(video_capture_slot, stream, pname, params);
  OGLM_CHECK_ERR(glVideoCaptureStreamParameterfvNV, )
#line 87465 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glVideoCaptureStreamParameterivNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glVideoCaptureStreamParameterivNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "video_capture_slot, stream, pname, params");
    {
	GLuint	video_capture_slot = (unsigned int)SvUV(ST(0))
;
	GLuint	stream = (unsigned int)SvUV(ST(1))
;
	GLenum	pname = (int)SvIV(ST(2))
;
	const GLint*	params = INT2PTR(const GLint *,SvIV(ST(3)))
;
#line 43476 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glVideoCaptureStreamParameterivNV, )
  OGLM_AVAIL_CHECK(__glewVideoCaptureStreamParameterivNV, glVideoCaptureStreamParameterivNV)
  glVideoCaptureStreamParameterivNV(video_capture_slot, stream, pname, params);
  OGLM_CHECK_ERR(glVideoCaptureStreamParameterivNV, )
#line 87492 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glViewport); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glViewport)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "x, y, width, height");
    {
	GLint	x = (int)SvIV(ST(0))
;
	GLint	y = (int)SvIV(ST(1))
;
	GLsizei	width = (int)SvIV(ST(2))
;
	GLsizei	height = (int)SvIV(ST(3))
;
#line 43489 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glViewport, )
  glViewport(x, y, width, height);
  OGLM_CHECK_ERR(glViewport, )
#line 87518 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glViewportArrayv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glViewportArrayv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "first, count, v");
    {
	GLuint	first = (unsigned int)SvUV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(2)))
;
#line 43502 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glViewportArrayv, )
  OGLM_AVAIL_CHECK(__glewViewportArrayv, glViewportArrayv)
  glViewportArrayv(first, count, v);
  OGLM_CHECK_ERR(glViewportArrayv, )
#line 87544 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glViewportArrayv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glViewportArrayv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "first, ...");
    {
	GLuint	first = (unsigned int)SvUV(ST(0))
;
#line 43514 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glViewportArrayv, )
  OGLM_AVAIL_CHECK(__glewViewportArrayv, glViewportArrayv)
  GLsizei count = items-1;
  GLfloat * v = OGLM_GET_VARARGS(v,1,GLfloat,NV,count);
  glViewportArrayv((GLuint )first, (GLsizei )count, (const GLfloat * )v);
  OGLM_CHECK_ERR(glViewportArrayv, free(v);)
  free(v);
#line 87569 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glViewportIndexedf); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glViewportIndexedf)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 5)
       croak_xs_usage(cv,  "index, x, y, w, h");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLfloat	x = (float)SvNV(ST(1))
;
	GLfloat	y = (float)SvNV(ST(2))
;
	GLfloat	w = (float)SvNV(ST(3))
;
	GLfloat	h = (float)SvNV(ST(4))
;
#line 43533 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glViewportIndexedf, )
  OGLM_AVAIL_CHECK(__glewViewportIndexedf, glViewportIndexedf)
  glViewportIndexedf(index, x, y, w, h);
  OGLM_CHECK_ERR(glViewportIndexedf, )
#line 87599 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glViewportIndexedfv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glViewportIndexedfv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "index, v");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(1)))
;
#line 43546 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glViewportIndexedfv, )
  OGLM_AVAIL_CHECK(__glewViewportIndexedfv, glViewportIndexedfv)
  glViewportIndexedfv(index, v);
  OGLM_CHECK_ERR(glViewportIndexedfv, )
#line 87623 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glViewportIndexedfv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glViewportIndexedfv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items < 1)
       croak_xs_usage(cv,  "index, ...");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
#line 43558 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glViewportIndexedfv, )
  OGLM_AVAIL_CHECK(__glewViewportIndexedfv, glViewportIndexedfv)
  GLfloat * v = OGLM_GET_VARARGS(v,1,GLfloat,NV,4);
  glViewportIndexedfv((GLuint )index, (const GLfloat * )v);
  OGLM_CHECK_ERR(glViewportIndexedfv, free(v);)
  free(v);
#line 87647 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glViewportPositionWScaleNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glViewportPositionWScaleNV)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "index, xcoeff, ycoeff");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLfloat	xcoeff = (float)SvNV(ST(1))
;
	GLfloat	ycoeff = (float)SvNV(ST(2))
;
#line 43572 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glViewportPositionWScaleNV, )
  OGLM_AVAIL_CHECK(__glewViewportPositionWScaleNV, glViewportPositionWScaleNV)
  glViewportPositionWScaleNV(index, xcoeff, ycoeff);
  OGLM_CHECK_ERR(glViewportPositionWScaleNV, )
#line 87672 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glViewportSwizzleNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glViewportSwizzleNV)
{
    dVAR; dXSARGS;
    if (items != 5)
       croak_xs_usage(cv,  "index, swizzlex, swizzley, swizzlez, swizzlew");
    {
	GLuint	index = (unsigned int)SvUV(ST(0))
;
	GLenum	swizzlex = (int)SvIV(ST(1))
;
	GLenum	swizzley = (int)SvIV(ST(2))
;
	GLenum	swizzlez = (int)SvIV(ST(3))
;
	GLenum	swizzlew = (int)SvIV(ST(4))
;
#line 43586 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glViewportSwizzleNV, )
  OGLM_AVAIL_CHECK(__glewViewportSwizzleNV, glViewportSwizzleNV)
  glViewportSwizzleNV(index, swizzlex, swizzley, swizzlez, swizzlew);
  OGLM_CHECK_ERR(glViewportSwizzleNV, )
#line 87701 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWaitSemaphoreEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWaitSemaphoreEXT_c)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "semaphore, numBufferBarriers, buffers, numTextureBarriers, textures, srcLayouts");
    {
	GLuint	semaphore = (unsigned int)SvUV(ST(0))
;
	GLuint	numBufferBarriers = (unsigned int)SvUV(ST(1))
;
	const GLuint*	buffers = INT2PTR(const GLuint *,SvIV(ST(2)))
;
	GLuint	numTextureBarriers = (unsigned int)SvUV(ST(3))
;
	const GLuint *	textures = INT2PTR(const GLuint *,SvIV(ST(4)))
;
	const GLenum *	srcLayouts = INT2PTR(const GLenum *,SvIV(ST(5)))
;
#line 43601 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWaitSemaphoreEXT, )
  OGLM_AVAIL_CHECK(__glewWaitSemaphoreEXT, glWaitSemaphoreEXT)
  glWaitSemaphoreEXT(semaphore, numBufferBarriers, buffers, numTextureBarriers, textures, srcLayouts);
  OGLM_CHECK_ERR(glWaitSemaphoreEXT, )
#line 87732 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWaitSemaphoreui64NVX_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWaitSemaphoreui64NVX_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "waitGpu, fenceObjectCount, semaphoreArray, fenceValueArray");
    {
	GLuint	waitGpu = (unsigned int)SvUV(ST(0))
;
	GLsizei	fenceObjectCount = (int)SvIV(ST(1))
;
	const GLuint*	semaphoreArray = INT2PTR(const GLuint *,SvIV(ST(2)))
;
	const GLuint64 *	fenceValueArray = INT2PTR(const GLuint64 *,SvIV(ST(3)))
;
#line 43614 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWaitSemaphoreui64NVX, )
  OGLM_AVAIL_CHECK(__glewWaitSemaphoreui64NVX, glWaitSemaphoreui64NVX)
  glWaitSemaphoreui64NVX(waitGpu, fenceObjectCount, semaphoreArray, fenceValueArray);
  OGLM_CHECK_ERR(glWaitSemaphoreui64NVX, )
#line 87759 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWaitSemaphoreui64NVX_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWaitSemaphoreui64NVX_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "waitGpu, semaphoreArraySV, fenceValueArraySV");
    {
	GLuint	waitGpu = (unsigned int)SvUV(ST(0))
;
	SV *	semaphoreArraySV = ST(1)
;
	SV *	fenceValueArraySV = ST(2)
;
#line 43626 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWaitSemaphoreui64NVX, )
  OGLM_AVAIL_CHECK(__glewWaitSemaphoreui64NVX, glWaitSemaphoreui64NVX)
  GLsizei fenceObjectCount = OGLM_LEN_ARRAY(fenceObjectCount, semaphoreArray);
  GLuint64 *fenceValueArray = OGLM_GET_ARRAY(fenceValueArray, GLuint64, UV, fenceObjectCount);
  GLuint* semaphoreArray = OGLM_GET_ARRAY(semaphoreArray, GLuint, UV, fenceObjectCount);
  glWaitSemaphoreui64NVX((GLuint )waitGpu, (GLsizei )fenceObjectCount, (const GLuint* )semaphoreArray, (const GLuint64 *)fenceValueArray);
  OGLM_CHECK_ERR(glWaitSemaphoreui64NVX, free(fenceValueArray);free(semaphoreArray);)
  free(fenceValueArray);free(semaphoreArray);
#line 87788 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWaitSync); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWaitSync)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "sync, flags, timeout");
    {
	GLsync	sync = INT2PTR(GLsync,SvIV(ST(0)))
;
	GLbitfield	flags = (int)SvIV(ST(1))
;
	GLuint64	timeout = (unsigned int)SvUV(ST(2))
;
#line 43644 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWaitSync, )
  OGLM_AVAIL_CHECK(__glewWaitSync, glWaitSync)
  glWaitSync(sync, flags, timeout);
  OGLM_CHECK_ERR(glWaitSync, )
#line 87814 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWaitVkSemaphoreNV); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWaitVkSemaphoreNV)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "vkSemaphore");
    {
	GLuint64	vkSemaphore = (unsigned int)SvUV(ST(0))
;
#line 43654 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWaitVkSemaphoreNV, )
  OGLM_AVAIL_CHECK(__glewWaitVkSemaphoreNV, glWaitVkSemaphoreNV)
  glWaitVkSemaphoreNV(vkSemaphore);
  OGLM_CHECK_ERR(glWaitVkSemaphoreNV, )
#line 87835 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWeightPathsNV_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWeightPathsNV_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "resultPath, numPaths, paths, weights");
    {
	GLuint	resultPath = (unsigned int)SvUV(ST(0))
;
	GLsizei	numPaths = (int)SvIV(ST(1))
;
	const GLuint *	paths = INT2PTR(const GLuint *,SvIV(ST(2)))
;
	const GLfloat *	weights = INT2PTR(const GLfloat *,SvIV(ST(3)))
;
#line 43667 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWeightPathsNV, )
  OGLM_AVAIL_CHECK(__glewWeightPathsNV, glWeightPathsNV)
  glWeightPathsNV(resultPath, numPaths, paths, weights);
  OGLM_CHECK_ERR(glWeightPathsNV, )
#line 87862 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWeightPathsNV_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWeightPathsNV_p)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "resultPath, pathsSV, weightsSV");
    {
	GLuint	resultPath = (unsigned int)SvUV(ST(0))
;
	SV *	pathsSV = ST(1)
;
	SV *	weightsSV = ST(2)
;
#line 43679 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWeightPathsNV, )
  OGLM_AVAIL_CHECK(__glewWeightPathsNV, glWeightPathsNV)
  GLsizei numPaths = OGLM_LEN_ARRAY(numPaths, paths);
  GLuint * paths = OGLM_GET_ARRAY(paths, GLuint, UV, numPaths);
  GLfloat * weights = OGLM_GET_ARRAY(weights, GLfloat, NV, numPaths);
  glWeightPathsNV((GLuint )resultPath, (GLsizei )numPaths, (const GLuint * )paths, (const GLfloat * )weights);
  OGLM_CHECK_ERR(glWeightPathsNV, free(paths);free(weights);)
  free(paths);free(weights);
#line 87891 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWeightPointerARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWeightPointerARB_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "size, type, stride, pointer");
    {
	GLint	size = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLsizei	stride = (int)SvIV(ST(2))
;
	void *	pointer = INT2PTR(void *,SvIV(ST(3)))
;
#line 43696 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWeightPointerARB, )
  OGLM_AVAIL_CHECK(__glewWeightPointerARB, glWeightPointerARB)
  glWeightPointerARB(size, type, stride, pointer);
  OGLM_CHECK_ERR(glWeightPointerARB, )
#line 87918 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWeightPointerOES_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWeightPointerOES_c)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "size, type, stride, pointer");
    {
	GLint	size = (int)SvIV(ST(0))
;
	GLenum	type = (int)SvIV(ST(1))
;
	GLsizei	stride = (int)SvIV(ST(2))
;
	void *	pointer = INT2PTR(void *,SvIV(ST(3)))
;
#line 43709 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWeightPointerOES, )
  OGLM_AVAIL_CHECK(__glewWeightPointerOES, glWeightPointerOES)
  glWeightPointerOES(size, type, stride, pointer);
  OGLM_CHECK_ERR(glWeightPointerOES, )
#line 87945 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWeightbvARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWeightbvARB_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "size, weights");
    {
	GLint	size = (int)SvIV(ST(0))
;
	GLbyte *	weights = INT2PTR(GLbyte *,SvIV(ST(1)))
;
#line 43720 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWeightbvARB, )
  OGLM_AVAIL_CHECK(__glewWeightbvARB, glWeightbvARB)
  glWeightbvARB(size, weights);
  OGLM_CHECK_ERR(glWeightbvARB, )
#line 87968 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWeightbvARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWeightbvARB_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "size");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLint	size = (int)SvIV(ST(0))
;
#line 43730 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWeightbvARB, )
  OGLM_AVAIL_CHECK(__glewWeightbvARB, glWeightbvARB)
  GLbyte *weights = OGLM_ALLOC(size,GLbyte,weights);
  glWeightbvARB(size, weights);
  OGLM_CHECK_ERR(glWeightbvARB, free(weights);)
  OGLM_OUT_FINISH(weights,size,newSViv)
  free(weights);
#line 87994 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glWeightdvARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWeightdvARB_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "size, weights");
    {
	GLint	size = (int)SvIV(ST(0))
;
	GLdouble *	weights = INT2PTR(GLdouble *,SvIV(ST(1)))
;
#line 43744 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWeightdvARB, )
  OGLM_AVAIL_CHECK(__glewWeightdvARB, glWeightdvARB)
  glWeightdvARB(size, weights);
  OGLM_CHECK_ERR(glWeightdvARB, )
#line 88018 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWeightdvARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWeightdvARB_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "size");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLint	size = (int)SvIV(ST(0))
;
#line 43754 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWeightdvARB, )
  OGLM_AVAIL_CHECK(__glewWeightdvARB, glWeightdvARB)
  GLdouble *weights = OGLM_ALLOC(size,GLdouble,weights);
  glWeightdvARB(size, weights);
  OGLM_CHECK_ERR(glWeightdvARB, free(weights);)
  OGLM_OUT_FINISH(weights,size,newSVnv)
  free(weights);
#line 88044 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glWeightfvARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWeightfvARB_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "size, weights");
    {
	GLint	size = (int)SvIV(ST(0))
;
	GLfloat *	weights = INT2PTR(GLfloat *,SvIV(ST(1)))
;
#line 43768 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWeightfvARB, )
  OGLM_AVAIL_CHECK(__glewWeightfvARB, glWeightfvARB)
  glWeightfvARB(size, weights);
  OGLM_CHECK_ERR(glWeightfvARB, )
#line 88068 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWeightfvARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWeightfvARB_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "size");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLint	size = (int)SvIV(ST(0))
;
#line 43778 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWeightfvARB, )
  OGLM_AVAIL_CHECK(__glewWeightfvARB, glWeightfvARB)
  GLfloat *weights = OGLM_ALLOC(size,GLfloat,weights);
  glWeightfvARB(size, weights);
  OGLM_CHECK_ERR(glWeightfvARB, free(weights);)
  OGLM_OUT_FINISH(weights,size,newSVnv)
  free(weights);
#line 88094 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glWeightivARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWeightivARB_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "size, weights");
    {
	GLint	size = (int)SvIV(ST(0))
;
	GLint *	weights = INT2PTR(GLint *,SvIV(ST(1)))
;
#line 43792 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWeightivARB, )
  OGLM_AVAIL_CHECK(__glewWeightivARB, glWeightivARB)
  glWeightivARB(size, weights);
  OGLM_CHECK_ERR(glWeightivARB, )
#line 88118 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWeightivARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWeightivARB_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "size");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLint	size = (int)SvIV(ST(0))
;
#line 43802 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWeightivARB, )
  OGLM_AVAIL_CHECK(__glewWeightivARB, glWeightivARB)
  GLint *weights = OGLM_ALLOC(size,GLint,weights);
  glWeightivARB(size, weights);
  OGLM_CHECK_ERR(glWeightivARB, free(weights);)
  OGLM_OUT_FINISH(weights,size,newSViv)
  free(weights);
#line 88144 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glWeightsvARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWeightsvARB_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "size, weights");
    {
	GLint	size = (int)SvIV(ST(0))
;
	GLshort *	weights = INT2PTR(GLshort *,SvIV(ST(1)))
;
#line 43816 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWeightsvARB, )
  OGLM_AVAIL_CHECK(__glewWeightsvARB, glWeightsvARB)
  glWeightsvARB(size, weights);
  OGLM_CHECK_ERR(glWeightsvARB, )
#line 88168 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWeightsvARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWeightsvARB_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "size");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLint	size = (int)SvIV(ST(0))
;
#line 43826 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWeightsvARB, )
  OGLM_AVAIL_CHECK(__glewWeightsvARB, glWeightsvARB)
  GLshort *weights = OGLM_ALLOC(size,GLshort,weights);
  glWeightsvARB(size, weights);
  OGLM_CHECK_ERR(glWeightsvARB, free(weights);)
  OGLM_OUT_FINISH(weights,size,newSViv)
  free(weights);
#line 88194 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glWeightubvARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWeightubvARB_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "size, weights");
    {
	GLint	size = (int)SvIV(ST(0))
;
	GLubyte *	weights = INT2PTR(GLubyte *,SvIV(ST(1)))
;
#line 43840 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWeightubvARB, )
  OGLM_AVAIL_CHECK(__glewWeightubvARB, glWeightubvARB)
  glWeightubvARB(size, weights);
  OGLM_CHECK_ERR(glWeightubvARB, )
#line 88218 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWeightubvARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWeightubvARB_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "size");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLint	size = (int)SvIV(ST(0))
;
#line 43850 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWeightubvARB, )
  OGLM_AVAIL_CHECK(__glewWeightubvARB, glWeightubvARB)
  GLubyte *weights = OGLM_ALLOC(size,GLubyte,weights);
  glWeightubvARB(size, weights);
  OGLM_CHECK_ERR(glWeightubvARB, free(weights);)
  OGLM_OUT_FINISH(weights,size,newSVuv)
  free(weights);
#line 88244 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glWeightuivARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWeightuivARB_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "size, weights");
    {
	GLint	size = (int)SvIV(ST(0))
;
	GLuint *	weights = INT2PTR(GLuint *,SvIV(ST(1)))
;
#line 43864 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWeightuivARB, )
  OGLM_AVAIL_CHECK(__glewWeightuivARB, glWeightuivARB)
  glWeightuivARB(size, weights);
  OGLM_CHECK_ERR(glWeightuivARB, )
#line 88268 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWeightuivARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWeightuivARB_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "size");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLint	size = (int)SvIV(ST(0))
;
#line 43874 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWeightuivARB, )
  OGLM_AVAIL_CHECK(__glewWeightuivARB, glWeightuivARB)
  GLuint *weights = OGLM_ALLOC(size,GLuint,weights);
  glWeightuivARB(size, weights);
  OGLM_CHECK_ERR(glWeightuivARB, free(weights);)
  OGLM_OUT_FINISH(weights,size,newSVuv)
  free(weights);
#line 88294 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glWeightusvARB_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWeightusvARB_c)
{
    dVAR; dXSARGS;
    if (items != 2)
       croak_xs_usage(cv,  "size, weights");
    {
	GLint	size = (int)SvIV(ST(0))
;
	GLushort *	weights = INT2PTR(GLushort *,SvIV(ST(1)))
;
#line 43888 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWeightusvARB, )
  OGLM_AVAIL_CHECK(__glewWeightusvARB, glWeightusvARB)
  glWeightusvARB(size, weights);
  OGLM_CHECK_ERR(glWeightusvARB, )
#line 88318 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWeightusvARB_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWeightusvARB_p)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "size");
    PERL_UNUSED_VAR(ax); /* -Wall */
    SP -= items;
    {
	GLint	size = (int)SvIV(ST(0))
;
#line 43898 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWeightusvARB, )
  OGLM_AVAIL_CHECK(__glewWeightusvARB, glWeightusvARB)
  GLushort *weights = OGLM_ALLOC(size,GLushort,weights);
  glWeightusvARB(size, weights);
  OGLM_CHECK_ERR(glWeightusvARB, free(weights);)
  OGLM_OUT_FINISH(weights,size,newSVuv)
  free(weights);
#line 88344 "lib/OpenGL/Modern.c"
	PUTBACK;
	return;
    }
}


XS_EUPXS(XS_OpenGL__Modern_glWindowPos2d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWindowPos2d)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "x, y");
    {
	GLdouble	x = (double)SvNV(ST(0))
;
	GLdouble	y = (double)SvNV(ST(1))
;
#line 43915 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWindowPos2d, )
  OGLM_AVAIL_CHECK(__glewWindowPos2d, glWindowPos2d)
  glWindowPos2d(x, y);
  OGLM_CHECK_ERR(glWindowPos2d, )
#line 88369 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWindowPos2dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWindowPos2dv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLdouble *	v = INT2PTR(const GLdouble *,SvIV(ST(0)))
;
#line 43928 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWindowPos2dv, )
  OGLM_AVAIL_CHECK(__glewWindowPos2dv, glWindowPos2dv)
  glWindowPos2dv(v);
  OGLM_CHECK_ERR(glWindowPos2dv, )
#line 88391 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWindowPos2dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWindowPos2dv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 43940 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWindowPos2dv, )
  OGLM_AVAIL_CHECK(__glewWindowPos2dv, glWindowPos2dv)
  GLdouble *v = OGLM_GET_VARARGS(v,0,GLdouble,NV,2);
  glWindowPos2dv((const GLdouble *)v);
  OGLM_CHECK_ERR(glWindowPos2dv, free(v);)
  free(v);
#line 88413 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWindowPos2f); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWindowPos2f)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "x, y");
    {
	GLfloat	x = (float)SvNV(ST(0))
;
	GLfloat	y = (float)SvNV(ST(1))
;
#line 43956 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWindowPos2f, )
  OGLM_AVAIL_CHECK(__glewWindowPos2f, glWindowPos2f)
  glWindowPos2f(x, y);
  OGLM_CHECK_ERR(glWindowPos2f, )
#line 88437 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWindowPos2fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWindowPos2fv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(0)))
;
#line 43969 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWindowPos2fv, )
  OGLM_AVAIL_CHECK(__glewWindowPos2fv, glWindowPos2fv)
  glWindowPos2fv(v);
  OGLM_CHECK_ERR(glWindowPos2fv, )
#line 88459 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWindowPos2fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWindowPos2fv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 43981 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWindowPos2fv, )
  OGLM_AVAIL_CHECK(__glewWindowPos2fv, glWindowPos2fv)
  GLfloat *v = OGLM_GET_VARARGS(v,0,GLfloat,NV,2);
  glWindowPos2fv((const GLfloat *)v);
  OGLM_CHECK_ERR(glWindowPos2fv, free(v);)
  free(v);
#line 88481 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWindowPos2i); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWindowPos2i)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "x, y");
    {
	GLint	x = (int)SvIV(ST(0))
;
	GLint	y = (int)SvIV(ST(1))
;
#line 43997 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWindowPos2i, )
  OGLM_AVAIL_CHECK(__glewWindowPos2i, glWindowPos2i)
  glWindowPos2i(x, y);
  OGLM_CHECK_ERR(glWindowPos2i, )
#line 88505 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWindowPos2iv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWindowPos2iv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLint *	v = INT2PTR(const GLint *,SvIV(ST(0)))
;
#line 44010 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWindowPos2iv, )
  OGLM_AVAIL_CHECK(__glewWindowPos2iv, glWindowPos2iv)
  glWindowPos2iv(v);
  OGLM_CHECK_ERR(glWindowPos2iv, )
#line 88527 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWindowPos2iv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWindowPos2iv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 44022 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWindowPos2iv, )
  OGLM_AVAIL_CHECK(__glewWindowPos2iv, glWindowPos2iv)
  GLint *v = OGLM_GET_VARARGS(v,0,GLint,IV,2);
  glWindowPos2iv((const GLint *)v);
  OGLM_CHECK_ERR(glWindowPos2iv, free(v);)
  free(v);
#line 88549 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWindowPos2s); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWindowPos2s)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 2)
       croak_xs_usage(cv,  "x, y");
    {
	GLshort	x = (short)SvIV(ST(0))
;
	GLshort	y = (short)SvIV(ST(1))
;
#line 44038 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWindowPos2s, )
  OGLM_AVAIL_CHECK(__glewWindowPos2s, glWindowPos2s)
  glWindowPos2s(x, y);
  OGLM_CHECK_ERR(glWindowPos2s, )
#line 88573 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWindowPos2sv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWindowPos2sv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLshort *	v = INT2PTR(const GLshort *,SvIV(ST(0)))
;
#line 44051 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWindowPos2sv, )
  OGLM_AVAIL_CHECK(__glewWindowPos2sv, glWindowPos2sv)
  glWindowPos2sv(v);
  OGLM_CHECK_ERR(glWindowPos2sv, )
#line 88595 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWindowPos2sv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWindowPos2sv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 44063 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWindowPos2sv, )
  OGLM_AVAIL_CHECK(__glewWindowPos2sv, glWindowPos2sv)
  GLshort *v = OGLM_GET_VARARGS(v,0,GLshort,IV,2);
  glWindowPos2sv((const GLshort *)v);
  OGLM_CHECK_ERR(glWindowPos2sv, free(v);)
  free(v);
#line 88617 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWindowPos3d); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWindowPos3d)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "x, y, z");
    {
	GLdouble	x = (double)SvNV(ST(0))
;
	GLdouble	y = (double)SvNV(ST(1))
;
	GLdouble	z = (double)SvNV(ST(2))
;
#line 44080 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWindowPos3d, )
  OGLM_AVAIL_CHECK(__glewWindowPos3d, glWindowPos3d)
  glWindowPos3d(x, y, z);
  OGLM_CHECK_ERR(glWindowPos3d, )
#line 88643 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWindowPos3dv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWindowPos3dv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLdouble *	v = INT2PTR(const GLdouble *,SvIV(ST(0)))
;
#line 44093 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWindowPos3dv, )
  OGLM_AVAIL_CHECK(__glewWindowPos3dv, glWindowPos3dv)
  glWindowPos3dv(v);
  OGLM_CHECK_ERR(glWindowPos3dv, )
#line 88665 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWindowPos3dv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWindowPos3dv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 44105 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWindowPos3dv, )
  OGLM_AVAIL_CHECK(__glewWindowPos3dv, glWindowPos3dv)
  GLdouble *v = OGLM_GET_VARARGS(v,0,GLdouble,NV,3);
  glWindowPos3dv((const GLdouble *)v);
  OGLM_CHECK_ERR(glWindowPos3dv, free(v);)
  free(v);
#line 88687 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWindowPos3f); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWindowPos3f)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "x, y, z");
    {
	GLfloat	x = (float)SvNV(ST(0))
;
	GLfloat	y = (float)SvNV(ST(1))
;
	GLfloat	z = (float)SvNV(ST(2))
;
#line 44122 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWindowPos3f, )
  OGLM_AVAIL_CHECK(__glewWindowPos3f, glWindowPos3f)
  glWindowPos3f(x, y, z);
  OGLM_CHECK_ERR(glWindowPos3f, )
#line 88713 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWindowPos3fv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWindowPos3fv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLfloat *	v = INT2PTR(const GLfloat *,SvIV(ST(0)))
;
#line 44135 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWindowPos3fv, )
  OGLM_AVAIL_CHECK(__glewWindowPos3fv, glWindowPos3fv)
  glWindowPos3fv(v);
  OGLM_CHECK_ERR(glWindowPos3fv, )
#line 88735 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWindowPos3fv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWindowPos3fv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 44147 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWindowPos3fv, )
  OGLM_AVAIL_CHECK(__glewWindowPos3fv, glWindowPos3fv)
  GLfloat *v = OGLM_GET_VARARGS(v,0,GLfloat,NV,3);
  glWindowPos3fv((const GLfloat *)v);
  OGLM_CHECK_ERR(glWindowPos3fv, free(v);)
  free(v);
#line 88757 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWindowPos3i); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWindowPos3i)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "x, y, z");
    {
	GLint	x = (int)SvIV(ST(0))
;
	GLint	y = (int)SvIV(ST(1))
;
	GLint	z = (int)SvIV(ST(2))
;
#line 44164 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWindowPos3i, )
  OGLM_AVAIL_CHECK(__glewWindowPos3i, glWindowPos3i)
  glWindowPos3i(x, y, z);
  OGLM_CHECK_ERR(glWindowPos3i, )
#line 88783 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWindowPos3iv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWindowPos3iv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLint *	v = INT2PTR(const GLint *,SvIV(ST(0)))
;
#line 44177 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWindowPos3iv, )
  OGLM_AVAIL_CHECK(__glewWindowPos3iv, glWindowPos3iv)
  glWindowPos3iv(v);
  OGLM_CHECK_ERR(glWindowPos3iv, )
#line 88805 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWindowPos3iv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWindowPos3iv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 44189 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWindowPos3iv, )
  OGLM_AVAIL_CHECK(__glewWindowPos3iv, glWindowPos3iv)
  GLint *v = OGLM_GET_VARARGS(v,0,GLint,IV,3);
  glWindowPos3iv((const GLint *)v);
  OGLM_CHECK_ERR(glWindowPos3iv, free(v);)
  free(v);
#line 88827 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWindowPos3s); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWindowPos3s)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 3)
       croak_xs_usage(cv,  "x, y, z");
    {
	GLshort	x = (short)SvIV(ST(0))
;
	GLshort	y = (short)SvIV(ST(1))
;
	GLshort	z = (short)SvIV(ST(2))
;
#line 44206 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWindowPos3s, )
  OGLM_AVAIL_CHECK(__glewWindowPos3s, glWindowPos3s)
  glWindowPos3s(x, y, z);
  OGLM_CHECK_ERR(glWindowPos3s, )
#line 88853 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWindowPos3sv_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWindowPos3sv_c)
{
    dVAR; dXSARGS;
    dXSI32;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLshort *	v = INT2PTR(const GLshort *,SvIV(ST(0)))
;
#line 44219 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWindowPos3sv, )
  OGLM_AVAIL_CHECK(__glewWindowPos3sv, glWindowPos3sv)
  glWindowPos3sv(v);
  OGLM_CHECK_ERR(glWindowPos3sv, )
#line 88875 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWindowPos3sv_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWindowPos3sv_p)
{
    dVAR; dXSARGS;
    dXSI32;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 44231 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWindowPos3sv, )
  OGLM_AVAIL_CHECK(__glewWindowPos3sv, glWindowPos3sv)
  GLshort *v = OGLM_GET_VARARGS(v,0,GLshort,IV,3);
  glWindowPos3sv((const GLshort *)v);
  OGLM_CHECK_ERR(glWindowPos3sv, free(v);)
  free(v);
#line 88897 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWindowPos4dMESA); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWindowPos4dMESA)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "x, y, z, param4");
    {
	GLdouble	x = (double)SvNV(ST(0))
;
	GLdouble	y = (double)SvNV(ST(1))
;
	GLdouble	z = (double)SvNV(ST(2))
;
	GLdouble	param4 = (double)SvNV(ST(3))
;
#line 44246 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWindowPos4dMESA, )
  OGLM_AVAIL_CHECK(__glewWindowPos4dMESA, glWindowPos4dMESA)
  glWindowPos4dMESA(x, y, z, param4);
  OGLM_CHECK_ERR(glWindowPos4dMESA, )
#line 88924 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWindowPos4dvMESA_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWindowPos4dvMESA_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLdouble*	v = INT2PTR(const GLdouble *,SvIV(ST(0)))
;
#line 44256 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWindowPos4dvMESA, )
  OGLM_AVAIL_CHECK(__glewWindowPos4dvMESA, glWindowPos4dvMESA)
  glWindowPos4dvMESA(v);
  OGLM_CHECK_ERR(glWindowPos4dvMESA, )
#line 88945 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWindowPos4dvMESA_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWindowPos4dvMESA_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 44265 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWindowPos4dvMESA, )
  OGLM_AVAIL_CHECK(__glewWindowPos4dvMESA, glWindowPos4dvMESA)
  GLdouble* v = OGLM_GET_VARARGS(v,0,GLdouble,NV,4);
  glWindowPos4dvMESA((const GLdouble* )v);
  OGLM_CHECK_ERR(glWindowPos4dvMESA, free(v);)
  free(v);
#line 88966 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWindowPos4fMESA); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWindowPos4fMESA)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "x, y, z, w");
    {
	GLfloat	x = (float)SvNV(ST(0))
;
	GLfloat	y = (float)SvNV(ST(1))
;
	GLfloat	z = (float)SvNV(ST(2))
;
	GLfloat	w = (float)SvNV(ST(3))
;
#line 44280 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWindowPos4fMESA, )
  OGLM_AVAIL_CHECK(__glewWindowPos4fMESA, glWindowPos4fMESA)
  glWindowPos4fMESA(x, y, z, w);
  OGLM_CHECK_ERR(glWindowPos4fMESA, )
#line 88993 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWindowPos4fvMESA_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWindowPos4fvMESA_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLfloat*	v = INT2PTR(const GLfloat *,SvIV(ST(0)))
;
#line 44290 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWindowPos4fvMESA, )
  OGLM_AVAIL_CHECK(__glewWindowPos4fvMESA, glWindowPos4fvMESA)
  glWindowPos4fvMESA(v);
  OGLM_CHECK_ERR(glWindowPos4fvMESA, )
#line 89014 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWindowPos4fvMESA_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWindowPos4fvMESA_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 44299 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWindowPos4fvMESA, )
  OGLM_AVAIL_CHECK(__glewWindowPos4fvMESA, glWindowPos4fvMESA)
  GLfloat* v = OGLM_GET_VARARGS(v,0,GLfloat,NV,4);
  glWindowPos4fvMESA((const GLfloat* )v);
  OGLM_CHECK_ERR(glWindowPos4fvMESA, free(v);)
  free(v);
#line 89035 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWindowPos4iMESA); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWindowPos4iMESA)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "x, y, z, w");
    {
	GLint	x = (int)SvIV(ST(0))
;
	GLint	y = (int)SvIV(ST(1))
;
	GLint	z = (int)SvIV(ST(2))
;
	GLint	w = (int)SvIV(ST(3))
;
#line 44314 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWindowPos4iMESA, )
  OGLM_AVAIL_CHECK(__glewWindowPos4iMESA, glWindowPos4iMESA)
  glWindowPos4iMESA(x, y, z, w);
  OGLM_CHECK_ERR(glWindowPos4iMESA, )
#line 89062 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWindowPos4ivMESA_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWindowPos4ivMESA_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLint*	v = INT2PTR(const GLint *,SvIV(ST(0)))
;
#line 44324 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWindowPos4ivMESA, )
  OGLM_AVAIL_CHECK(__glewWindowPos4ivMESA, glWindowPos4ivMESA)
  glWindowPos4ivMESA(v);
  OGLM_CHECK_ERR(glWindowPos4ivMESA, )
#line 89083 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWindowPos4ivMESA_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWindowPos4ivMESA_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 44333 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWindowPos4ivMESA, )
  OGLM_AVAIL_CHECK(__glewWindowPos4ivMESA, glWindowPos4ivMESA)
  GLint* v = OGLM_GET_VARARGS(v,0,GLint,IV,4);
  glWindowPos4ivMESA((const GLint* )v);
  OGLM_CHECK_ERR(glWindowPos4ivMESA, free(v);)
  free(v);
#line 89104 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWindowPos4sMESA); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWindowPos4sMESA)
{
    dVAR; dXSARGS;
    if (items != 4)
       croak_xs_usage(cv,  "x, y, z, w");
    {
	GLshort	x = (short)SvIV(ST(0))
;
	GLshort	y = (short)SvIV(ST(1))
;
	GLshort	z = (short)SvIV(ST(2))
;
	GLshort	w = (short)SvIV(ST(3))
;
#line 44348 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWindowPos4sMESA, )
  OGLM_AVAIL_CHECK(__glewWindowPos4sMESA, glWindowPos4sMESA)
  glWindowPos4sMESA(x, y, z, w);
  OGLM_CHECK_ERR(glWindowPos4sMESA, )
#line 89131 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWindowPos4svMESA_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWindowPos4svMESA_c)
{
    dVAR; dXSARGS;
    if (items != 1)
       croak_xs_usage(cv,  "v");
    {
	const GLshort*	v = INT2PTR(const GLshort *,SvIV(ST(0)))
;
#line 44358 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWindowPos4svMESA, )
  OGLM_AVAIL_CHECK(__glewWindowPos4svMESA, glWindowPos4svMESA)
  glWindowPos4svMESA(v);
  OGLM_CHECK_ERR(glWindowPos4svMESA, )
#line 89152 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWindowPos4svMESA_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWindowPos4svMESA_p)
{
    dVAR; dXSARGS;
    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
    {
#line 44367 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWindowPos4svMESA, )
  OGLM_AVAIL_CHECK(__glewWindowPos4svMESA, glWindowPos4svMESA)
  GLshort* v = OGLM_GET_VARARGS(v,0,GLshort,IV,4);
  glWindowPos4svMESA((const GLshort* )v);
  OGLM_CHECK_ERR(glWindowPos4svMESA, free(v);)
  free(v);
#line 89173 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWindowRectanglesEXT_c); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWindowRectanglesEXT_c)
{
    dVAR; dXSARGS;
    if (items != 3)
       croak_xs_usage(cv,  "mode, count, box");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
	GLsizei	count = (int)SvIV(ST(1))
;
	const GLint *	box = INT2PTR(const GLint *,SvIV(ST(2)))
;
#line 44381 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWindowRectanglesEXT, )
  OGLM_AVAIL_CHECK(__glewWindowRectanglesEXT, glWindowRectanglesEXT)
  glWindowRectanglesEXT(mode, count, box);
  OGLM_CHECK_ERR(glWindowRectanglesEXT, )
#line 89198 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWindowRectanglesEXT_p); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWindowRectanglesEXT_p)
{
    dVAR; dXSARGS;
    if (items < 1)
       croak_xs_usage(cv,  "mode, ...");
    {
	GLenum	mode = (int)SvIV(ST(0))
;
#line 44391 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWindowRectanglesEXT, )
  OGLM_AVAIL_CHECK(__glewWindowRectanglesEXT, glWindowRectanglesEXT)
  GLsizei count = items-1;
  GLint * box = OGLM_GET_VARARGS(box,1,GLint,IV,count);
  glWindowRectanglesEXT((GLenum )mode, (GLsizei )count, (const GLint * )box);
  OGLM_CHECK_ERR(glWindowRectanglesEXT, free(box);)
  free(box);
#line 89222 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


XS_EUPXS(XS_OpenGL__Modern_glWriteMaskEXT); /* prototype to pass -Wmissing-prototypes */
XS_EUPXS(XS_OpenGL__Modern_glWriteMaskEXT)
{
    dVAR; dXSARGS;
    if (items != 6)
       croak_xs_usage(cv,  "res, in, outX, outY, outZ, outW");
    {
	GLuint	res = (unsigned int)SvUV(ST(0))
;
	GLuint	in = (unsigned int)SvUV(ST(1))
;
	GLenum	outX = (int)SvIV(ST(2))
;
	GLenum	outY = (int)SvIV(ST(3))
;
	GLenum	outZ = (int)SvIV(ST(4))
;
	GLenum	outW = (int)SvIV(ST(5))
;
#line 44409 "lib/OpenGL/../../auto-xs.inc"
  OGLM_GLEWINIT
  OGLM_CHECK_ERR(glWriteMaskEXT, )
  OGLM_AVAIL_CHECK(__glewWriteMaskEXT, glWriteMaskEXT)
  glWriteMaskEXT(res, in, outX, outY, outZ, outW);
  OGLM_CHECK_ERR(glWriteMaskEXT, )
#line 89253 "lib/OpenGL/Modern.c"
    }
    XSRETURN_EMPTY;
}


/* INCLUDE: Returning to 'Modern.xs' from '../../auto-xs.inc' */

#ifdef __cplusplus
extern "C" {
#endif
XS_EXTERNAL(boot_OpenGL__Modern); /* prototype to pass -Wmissing-prototypes */
XS_EXTERNAL(boot_OpenGL__Modern)
{
#if PERL_VERSION_LE(5, 21, 5)
    dVAR; dXSARGS;
#else
    dVAR; dXSBOOTARGSXSAPIVERCHK;
#endif
#if PERL_VERSION_LE(5, 8, 999) /* PERL_VERSION_LT is 5.33+ */
    char* file = __FILE__;
#else
    const char* file = __FILE__;
#endif

    PERL_UNUSED_VAR(file);

    PERL_UNUSED_VAR(cv); /* -W */
    PERL_UNUSED_VAR(items); /* -W */
#if PERL_VERSION_LE(5, 21, 5)
    XS_VERSION_BOOTCHECK;
#  ifdef XS_APIVERSION_BOOTCHECK
    XS_APIVERSION_BOOTCHECK;
#  endif
#endif

        newXS_deffile("OpenGL::Modern::glewCreateContext", XS_OpenGL__Modern_glewCreateContext);
        newXS_deffile("OpenGL::Modern::glewDestroyContext", XS_OpenGL__Modern_glewDestroyContext);
        newXS_deffile("OpenGL::Modern::glewInit", XS_OpenGL__Modern_glewInit);
        newXS_deffile("OpenGL::Modern::glewGetErrorString", XS_OpenGL__Modern_glewGetErrorString);
        newXS_deffile("OpenGL::Modern::glewGetString", XS_OpenGL__Modern_glewGetString);
        newXS_deffile("OpenGL::Modern::glewIsSupported", XS_OpenGL__Modern_glewIsSupported);
        newXS_deffile("OpenGL::Modern::done_glewInit", XS_OpenGL__Modern_done_glewInit);
        newXS_deffile("OpenGL::Modern::glpSetAutoCheckErrors", XS_OpenGL__Modern_glpSetAutoCheckErrors);
        newXS_deffile("OpenGL::Modern::glpCheckErrors", XS_OpenGL__Modern_glpCheckErrors);
        newXS_deffile("OpenGL::Modern::glpErrorString", XS_OpenGL__Modern_glpErrorString);
        newXS_deffile("OpenGL::Modern::glAccum", XS_OpenGL__Modern_glAccum);
        newXS_deffile("OpenGL::Modern::glAcquireKeyedMutexWin32EXT", XS_OpenGL__Modern_glAcquireKeyedMutexWin32EXT);
        newXS_deffile("OpenGL::Modern::glActiveProgramEXT", XS_OpenGL__Modern_glActiveProgramEXT);
        newXS_deffile("OpenGL::Modern::glActiveShaderProgram", XS_OpenGL__Modern_glActiveShaderProgram);
        newXS_deffile("OpenGL::Modern::glActiveStencilFaceEXT", XS_OpenGL__Modern_glActiveStencilFaceEXT);
        cv = newXS_deffile("OpenGL::Modern::glActiveTexture", XS_OpenGL__Modern_glActiveTexture);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glActiveTextureARB", XS_OpenGL__Modern_glActiveTexture);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glActiveVaryingNV", XS_OpenGL__Modern_glActiveVaryingNV);
        newXS_deffile("OpenGL::Modern::glAddSwapHintRectWIN", XS_OpenGL__Modern_glAddSwapHintRectWIN);
        newXS_deffile("OpenGL::Modern::glAddressSpace", XS_OpenGL__Modern_glAddressSpace);
        newXS_deffile("OpenGL::Modern::glAllocMPEGPredictorsSGIX_c", XS_OpenGL__Modern_glAllocMPEGPredictorsSGIX_c);
        newXS_deffile("OpenGL::Modern::glAlphaFragmentOp1ATI", XS_OpenGL__Modern_glAlphaFragmentOp1ATI);
        newXS_deffile("OpenGL::Modern::glAlphaFragmentOp2ATI", XS_OpenGL__Modern_glAlphaFragmentOp2ATI);
        newXS_deffile("OpenGL::Modern::glAlphaFragmentOp3ATI", XS_OpenGL__Modern_glAlphaFragmentOp3ATI);
        newXS_deffile("OpenGL::Modern::glAlphaFunc", XS_OpenGL__Modern_glAlphaFunc);
        newXS_deffile("OpenGL::Modern::glAlphaFuncQCOM", XS_OpenGL__Modern_glAlphaFuncQCOM);
        newXS_deffile("OpenGL::Modern::glAlphaFuncx", XS_OpenGL__Modern_glAlphaFuncx);
        newXS_deffile("OpenGL::Modern::glAlphaToCoverageDitherControlNV", XS_OpenGL__Modern_glAlphaToCoverageDitherControlNV);
        newXS_deffile("OpenGL::Modern::glApplyFramebufferAttachmentCMAAINTEL", XS_OpenGL__Modern_glApplyFramebufferAttachmentCMAAINTEL);
        newXS_deffile("OpenGL::Modern::glApplyTextureEXT", XS_OpenGL__Modern_glApplyTextureEXT);
        newXS_deffile("OpenGL::Modern::glAreProgramsResidentNV_c", XS_OpenGL__Modern_glAreProgramsResidentNV_c);
        newXS_deffile("OpenGL::Modern::glAreProgramsResidentNV_p", XS_OpenGL__Modern_glAreProgramsResidentNV_p);
        newXS_deffile("OpenGL::Modern::glAreTexturesResident_c", XS_OpenGL__Modern_glAreTexturesResident_c);
        newXS_deffile("OpenGL::Modern::glAreTexturesResident_p", XS_OpenGL__Modern_glAreTexturesResident_p);
        newXS_deffile("OpenGL::Modern::glAreTexturesResidentEXT_c", XS_OpenGL__Modern_glAreTexturesResidentEXT_c);
        newXS_deffile("OpenGL::Modern::glAreTexturesResidentEXT_p", XS_OpenGL__Modern_glAreTexturesResidentEXT_p);
        newXS_deffile("OpenGL::Modern::glAreVertexArraysResidentSGIX_c", XS_OpenGL__Modern_glAreVertexArraysResidentSGIX_c);
        cv = newXS_deffile("OpenGL::Modern::glArrayElement", XS_OpenGL__Modern_glArrayElement);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glArrayElementEXT", XS_OpenGL__Modern_glArrayElement);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glArrayObjectATI", XS_OpenGL__Modern_glArrayObjectATI);
        newXS_deffile("OpenGL::Modern::glAsyncCopyBufferSubDataNVX_c", XS_OpenGL__Modern_glAsyncCopyBufferSubDataNVX_c);
        newXS_deffile("OpenGL::Modern::glAsyncCopyBufferSubDataNVX_p", XS_OpenGL__Modern_glAsyncCopyBufferSubDataNVX_p);
        newXS_deffile("OpenGL::Modern::glAsyncCopyImageSubDataNVX_c", XS_OpenGL__Modern_glAsyncCopyImageSubDataNVX_c);
        newXS_deffile("OpenGL::Modern::glAsyncCopyImageSubDataNVX_p", XS_OpenGL__Modern_glAsyncCopyImageSubDataNVX_p);
        newXS_deffile("OpenGL::Modern::glAsyncMarkerSGIX", XS_OpenGL__Modern_glAsyncMarkerSGIX);
        newXS_deffile("OpenGL::Modern::glAttachObjectARB", XS_OpenGL__Modern_glAttachObjectARB);
        newXS_deffile("OpenGL::Modern::glAttachShader", XS_OpenGL__Modern_glAttachShader);
        newXS_deffile("OpenGL::Modern::glBegin", XS_OpenGL__Modern_glBegin);
        cv = newXS_deffile("OpenGL::Modern::glBeginConditionalRender", XS_OpenGL__Modern_glBeginConditionalRender);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glBeginConditionalRenderNV", XS_OpenGL__Modern_glBeginConditionalRender);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glBeginConditionalRenderNVX", XS_OpenGL__Modern_glBeginConditionalRenderNVX);
        newXS_deffile("OpenGL::Modern::glBeginFragmentShaderATI", XS_OpenGL__Modern_glBeginFragmentShaderATI);
        newXS_deffile("OpenGL::Modern::glBeginOcclusionQueryNV", XS_OpenGL__Modern_glBeginOcclusionQueryNV);
        newXS_deffile("OpenGL::Modern::glBeginPerfMonitorAMD", XS_OpenGL__Modern_glBeginPerfMonitorAMD);
        newXS_deffile("OpenGL::Modern::glBeginPerfQueryINTEL", XS_OpenGL__Modern_glBeginPerfQueryINTEL);
        cv = newXS_deffile("OpenGL::Modern::glBeginQuery", XS_OpenGL__Modern_glBeginQuery);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glBeginQueryARB", XS_OpenGL__Modern_glBeginQuery);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glBeginQueryANGLE", XS_OpenGL__Modern_glBeginQueryANGLE);
        newXS_deffile("OpenGL::Modern::glBeginQueryEXT", XS_OpenGL__Modern_glBeginQueryEXT);
        newXS_deffile("OpenGL::Modern::glBeginQueryIndexed", XS_OpenGL__Modern_glBeginQueryIndexed);
        newXS_deffile("OpenGL::Modern::glBeginSceneEXT", XS_OpenGL__Modern_glBeginSceneEXT);
        cv = newXS_deffile("OpenGL::Modern::glBeginTransformFeedback", XS_OpenGL__Modern_glBeginTransformFeedback);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glBeginTransformFeedbackEXT", XS_OpenGL__Modern_glBeginTransformFeedback);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glBeginTransformFeedbackNV", XS_OpenGL__Modern_glBeginTransformFeedback);
        XSANY.any_i32 = 2;
        newXS_deffile("OpenGL::Modern::glBeginVertexShaderEXT", XS_OpenGL__Modern_glBeginVertexShaderEXT);
        newXS_deffile("OpenGL::Modern::glBeginVideoCaptureNV", XS_OpenGL__Modern_glBeginVideoCaptureNV);
        newXS_deffile("OpenGL::Modern::glBindArraySetEXT_c", XS_OpenGL__Modern_glBindArraySetEXT_c);
        newXS_deffile("OpenGL::Modern::glBindAttribLocation", XS_OpenGL__Modern_glBindAttribLocation);
        newXS_deffile("OpenGL::Modern::glBindAttribLocationARB", XS_OpenGL__Modern_glBindAttribLocationARB);
        cv = newXS_deffile("OpenGL::Modern::glBindBuffer", XS_OpenGL__Modern_glBindBuffer);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glBindBufferARB", XS_OpenGL__Modern_glBindBuffer);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glBindBufferBase", XS_OpenGL__Modern_glBindBufferBase);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glBindBufferBaseEXT", XS_OpenGL__Modern_glBindBufferBase);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glBindBufferBaseNV", XS_OpenGL__Modern_glBindBufferBase);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glBindBufferOffsetEXT", XS_OpenGL__Modern_glBindBufferOffsetEXT);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glBindBufferOffsetNV", XS_OpenGL__Modern_glBindBufferOffsetEXT);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glBindBufferRange", XS_OpenGL__Modern_glBindBufferRange);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glBindBufferRangeEXT", XS_OpenGL__Modern_glBindBufferRange);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glBindBufferRangeNV", XS_OpenGL__Modern_glBindBufferRange);
        XSANY.any_i32 = 2;
        newXS_deffile("OpenGL::Modern::glBindBuffersBase_c", XS_OpenGL__Modern_glBindBuffersBase_c);
        newXS_deffile("OpenGL::Modern::glBindBuffersBase_p", XS_OpenGL__Modern_glBindBuffersBase_p);
        newXS_deffile("OpenGL::Modern::glBindBuffersRange_c", XS_OpenGL__Modern_glBindBuffersRange_c);
        cv = newXS_deffile("OpenGL::Modern::glBindFragDataLocation", XS_OpenGL__Modern_glBindFragDataLocation);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glBindFragDataLocationEXT", XS_OpenGL__Modern_glBindFragDataLocation);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glBindFragDataLocationIndexed", XS_OpenGL__Modern_glBindFragDataLocationIndexed);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glBindFragDataLocationIndexedEXT", XS_OpenGL__Modern_glBindFragDataLocationIndexed);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glBindFragmentShaderATI", XS_OpenGL__Modern_glBindFragmentShaderATI);
        newXS_deffile("OpenGL::Modern::glBindFramebuffer", XS_OpenGL__Modern_glBindFramebuffer);
        newXS_deffile("OpenGL::Modern::glBindFramebufferEXT", XS_OpenGL__Modern_glBindFramebufferEXT);
        newXS_deffile("OpenGL::Modern::glBindFramebufferOES", XS_OpenGL__Modern_glBindFramebufferOES);
        newXS_deffile("OpenGL::Modern::glBindImageTexture", XS_OpenGL__Modern_glBindImageTexture);
        newXS_deffile("OpenGL::Modern::glBindImageTextureEXT", XS_OpenGL__Modern_glBindImageTextureEXT);
        newXS_deffile("OpenGL::Modern::glBindImageTextures_c", XS_OpenGL__Modern_glBindImageTextures_c);
        newXS_deffile("OpenGL::Modern::glBindImageTextures_p", XS_OpenGL__Modern_glBindImageTextures_p);
        newXS_deffile("OpenGL::Modern::glBindLightParameterEXT", XS_OpenGL__Modern_glBindLightParameterEXT);
        newXS_deffile("OpenGL::Modern::glBindMaterialParameterEXT", XS_OpenGL__Modern_glBindMaterialParameterEXT);
        newXS_deffile("OpenGL::Modern::glBindMultiTextureEXT", XS_OpenGL__Modern_glBindMultiTextureEXT);
        newXS_deffile("OpenGL::Modern::glBindParameterEXT", XS_OpenGL__Modern_glBindParameterEXT);
        cv = newXS_deffile("OpenGL::Modern::glBindProgramARB", XS_OpenGL__Modern_glBindProgramARB);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glBindProgramNV", XS_OpenGL__Modern_glBindProgramARB);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glBindProgramPipeline", XS_OpenGL__Modern_glBindProgramPipeline);
        newXS_deffile("OpenGL::Modern::glBindRenderbuffer", XS_OpenGL__Modern_glBindRenderbuffer);
        newXS_deffile("OpenGL::Modern::glBindRenderbufferEXT", XS_OpenGL__Modern_glBindRenderbufferEXT);
        newXS_deffile("OpenGL::Modern::glBindRenderbufferOES", XS_OpenGL__Modern_glBindRenderbufferOES);
        newXS_deffile("OpenGL::Modern::glBindSampler", XS_OpenGL__Modern_glBindSampler);
        newXS_deffile("OpenGL::Modern::glBindSamplers_c", XS_OpenGL__Modern_glBindSamplers_c);
        newXS_deffile("OpenGL::Modern::glBindSamplers_p", XS_OpenGL__Modern_glBindSamplers_p);
        newXS_deffile("OpenGL::Modern::glBindShadingRateImageNV", XS_OpenGL__Modern_glBindShadingRateImageNV);
        newXS_deffile("OpenGL::Modern::glBindTexGenParameterEXT", XS_OpenGL__Modern_glBindTexGenParameterEXT);
        cv = newXS_deffile("OpenGL::Modern::glBindTexture", XS_OpenGL__Modern_glBindTexture);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glBindTextureEXT", XS_OpenGL__Modern_glBindTexture);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glBindTextureUnit", XS_OpenGL__Modern_glBindTextureUnit);
        newXS_deffile("OpenGL::Modern::glBindTextureUnitParameterEXT", XS_OpenGL__Modern_glBindTextureUnitParameterEXT);
        newXS_deffile("OpenGL::Modern::glBindTextures_c", XS_OpenGL__Modern_glBindTextures_c);
        newXS_deffile("OpenGL::Modern::glBindTextures_p", XS_OpenGL__Modern_glBindTextures_p);
        newXS_deffile("OpenGL::Modern::glBindTransformFeedback", XS_OpenGL__Modern_glBindTransformFeedback);
        newXS_deffile("OpenGL::Modern::glBindTransformFeedbackNV", XS_OpenGL__Modern_glBindTransformFeedbackNV);
        newXS_deffile("OpenGL::Modern::glBindVertexArray", XS_OpenGL__Modern_glBindVertexArray);
        newXS_deffile("OpenGL::Modern::glBindVertexArrayAPPLE", XS_OpenGL__Modern_glBindVertexArrayAPPLE);
        newXS_deffile("OpenGL::Modern::glBindVertexArrayOES", XS_OpenGL__Modern_glBindVertexArrayOES);
        newXS_deffile("OpenGL::Modern::glBindVertexArraySGIX", XS_OpenGL__Modern_glBindVertexArraySGIX);
        newXS_deffile("OpenGL::Modern::glBindVertexBuffer", XS_OpenGL__Modern_glBindVertexBuffer);
        newXS_deffile("OpenGL::Modern::glBindVertexBuffers_c", XS_OpenGL__Modern_glBindVertexBuffers_c);
        newXS_deffile("OpenGL::Modern::glBindVertexShaderEXT", XS_OpenGL__Modern_glBindVertexShaderEXT);
        newXS_deffile("OpenGL::Modern::glBindVideoCaptureStreamBufferNV", XS_OpenGL__Modern_glBindVideoCaptureStreamBufferNV);
        newXS_deffile("OpenGL::Modern::glBindVideoCaptureStreamTextureNV", XS_OpenGL__Modern_glBindVideoCaptureStreamTextureNV);
        newXS_deffile("OpenGL::Modern::glBinormalPointerEXT_c", XS_OpenGL__Modern_glBinormalPointerEXT_c);
        newXS_deffile("OpenGL::Modern::glBitmap", XS_OpenGL__Modern_glBitmap);
        cv = newXS_deffile("OpenGL::Modern::glBlendBarrier", XS_OpenGL__Modern_glBlendBarrierKHR);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glBlendBarrierKHR", XS_OpenGL__Modern_glBlendBarrierKHR);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glBlendBarrierNV", XS_OpenGL__Modern_glBlendBarrierKHR);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glBlendColor", XS_OpenGL__Modern_glBlendColor);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glBlendColorEXT", XS_OpenGL__Modern_glBlendColor);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glBlendEquation", XS_OpenGL__Modern_glBlendEquation);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glBlendEquationEXT", XS_OpenGL__Modern_glBlendEquation);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glBlendEquationOES", XS_OpenGL__Modern_glBlendEquationOES);
        cv = newXS_deffile("OpenGL::Modern::glBlendEquationSeparate", XS_OpenGL__Modern_glBlendEquationSeparate);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glBlendEquationSeparateEXT", XS_OpenGL__Modern_glBlendEquationSeparate);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glBlendEquationSeparateOES", XS_OpenGL__Modern_glBlendEquationSeparateOES);
        cv = newXS_deffile("OpenGL::Modern::glBlendEquationSeparateIndexedAMD", XS_OpenGL__Modern_glBlendEquationSeparatei);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glBlendEquationSeparatei", XS_OpenGL__Modern_glBlendEquationSeparatei);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glBlendEquationSeparateiARB", XS_OpenGL__Modern_glBlendEquationSeparatei);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glBlendEquationSeparateiEXT", XS_OpenGL__Modern_glBlendEquationSeparatei);
        XSANY.any_i32 = 3;
        newXS_deffile("OpenGL::Modern::glBlendEquationSeparateiOES", XS_OpenGL__Modern_glBlendEquationSeparateiOES);
        cv = newXS_deffile("OpenGL::Modern::glBlendEquationIndexedAMD", XS_OpenGL__Modern_glBlendEquationi);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glBlendEquationi", XS_OpenGL__Modern_glBlendEquationi);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glBlendEquationiARB", XS_OpenGL__Modern_glBlendEquationi);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glBlendEquationiEXT", XS_OpenGL__Modern_glBlendEquationi);
        XSANY.any_i32 = 3;
        newXS_deffile("OpenGL::Modern::glBlendEquationiOES", XS_OpenGL__Modern_glBlendEquationiOES);
        newXS_deffile("OpenGL::Modern::glBlendFunc", XS_OpenGL__Modern_glBlendFunc);
        cv = newXS_deffile("OpenGL::Modern::glBlendFuncSeparate", XS_OpenGL__Modern_glBlendFuncSeparate);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glBlendFuncSeparateEXT", XS_OpenGL__Modern_glBlendFuncSeparate);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glBlendFuncSeparateINGR", XS_OpenGL__Modern_glBlendFuncSeparate);
        XSANY.any_i32 = 2;
        newXS_deffile("OpenGL::Modern::glBlendFuncSeparateOES", XS_OpenGL__Modern_glBlendFuncSeparateOES);
        cv = newXS_deffile("OpenGL::Modern::glBlendFuncSeparateIndexedAMD", XS_OpenGL__Modern_glBlendFuncSeparatei);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glBlendFuncSeparatei", XS_OpenGL__Modern_glBlendFuncSeparatei);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glBlendFuncSeparateiARB", XS_OpenGL__Modern_glBlendFuncSeparatei);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glBlendFuncSeparateiEXT", XS_OpenGL__Modern_glBlendFuncSeparatei);
        XSANY.any_i32 = 3;
        newXS_deffile("OpenGL::Modern::glBlendFuncSeparateiOES", XS_OpenGL__Modern_glBlendFuncSeparateiOES);
        cv = newXS_deffile("OpenGL::Modern::glBlendFuncIndexedAMD", XS_OpenGL__Modern_glBlendFunci);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glBlendFunci", XS_OpenGL__Modern_glBlendFunci);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glBlendFunciARB", XS_OpenGL__Modern_glBlendFunci);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glBlendFunciEXT", XS_OpenGL__Modern_glBlendFunci);
        XSANY.any_i32 = 3;
        newXS_deffile("OpenGL::Modern::glBlendFunciOES", XS_OpenGL__Modern_glBlendFunciOES);
        newXS_deffile("OpenGL::Modern::glBlendParameteriNV", XS_OpenGL__Modern_glBlendParameteriNV);
        cv = newXS_deffile("OpenGL::Modern::glBlitFramebuffer", XS_OpenGL__Modern_glBlitFramebuffer);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glBlitFramebufferEXT", XS_OpenGL__Modern_glBlitFramebuffer);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glBlitFramebufferNV", XS_OpenGL__Modern_glBlitFramebuffer);
        XSANY.any_i32 = 2;
        newXS_deffile("OpenGL::Modern::glBlitFramebufferANGLE", XS_OpenGL__Modern_glBlitFramebufferANGLE);
        newXS_deffile("OpenGL::Modern::glBlitFramebufferLayerEXT", XS_OpenGL__Modern_glBlitFramebufferLayerEXT);
        newXS_deffile("OpenGL::Modern::glBlitFramebufferLayersEXT", XS_OpenGL__Modern_glBlitFramebufferLayersEXT);
        newXS_deffile("OpenGL::Modern::glBlitNamedFramebuffer", XS_OpenGL__Modern_glBlitNamedFramebuffer);
        newXS_deffile("OpenGL::Modern::glBufferAddressRangeNV", XS_OpenGL__Modern_glBufferAddressRangeNV);
        newXS_deffile("OpenGL::Modern::glBufferAttachMemoryNV", XS_OpenGL__Modern_glBufferAttachMemoryNV);
        cv = newXS_deffile("OpenGL::Modern::glBufferDataARB_c", XS_OpenGL__Modern_glBufferData_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glBufferData_c", XS_OpenGL__Modern_glBufferData_c);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glBufferPageCommitmentARB", XS_OpenGL__Modern_glBufferPageCommitmentARB);
        newXS_deffile("OpenGL::Modern::glBufferPageCommitmentMemNV", XS_OpenGL__Modern_glBufferPageCommitmentMemNV);
        newXS_deffile("OpenGL::Modern::glBufferParameteriAPPLE", XS_OpenGL__Modern_glBufferParameteriAPPLE);
        newXS_deffile("OpenGL::Modern::glBufferRegionEnabled", XS_OpenGL__Modern_glBufferRegionEnabled);
        cv = newXS_deffile("OpenGL::Modern::glBufferStorageEXT_c", XS_OpenGL__Modern_glBufferStorage_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glBufferStorage_c", XS_OpenGL__Modern_glBufferStorage_c);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glBufferStorageExternalEXT", XS_OpenGL__Modern_glBufferStorageExternalEXT);
        newXS_deffile("OpenGL::Modern::glBufferStorageMemEXT", XS_OpenGL__Modern_glBufferStorageMemEXT);
        cv = newXS_deffile("OpenGL::Modern::glBufferSubDataARB_c", XS_OpenGL__Modern_glBufferSubData_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glBufferSubData_c", XS_OpenGL__Modern_glBufferSubData_c);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glCallCommandListNV", XS_OpenGL__Modern_glCallCommandListNV);
        newXS_deffile("OpenGL::Modern::glCallList", XS_OpenGL__Modern_glCallList);
        newXS_deffile("OpenGL::Modern::glCallLists_c", XS_OpenGL__Modern_glCallLists_c);
        cv = newXS_deffile("OpenGL::Modern::glCheckFramebufferStatus", XS_OpenGL__Modern_glCheckFramebufferStatus);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glCheckFramebufferStatusEXT", XS_OpenGL__Modern_glCheckFramebufferStatus);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glCheckFramebufferStatusOES", XS_OpenGL__Modern_glCheckFramebufferStatusOES);
        newXS_deffile("OpenGL::Modern::glCheckNamedFramebufferStatus", XS_OpenGL__Modern_glCheckNamedFramebufferStatus);
        newXS_deffile("OpenGL::Modern::glCheckNamedFramebufferStatusEXT", XS_OpenGL__Modern_glCheckNamedFramebufferStatusEXT);
        cv = newXS_deffile("OpenGL::Modern::glClampColor", XS_OpenGL__Modern_glClampColor);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glClampColorARB", XS_OpenGL__Modern_glClampColor);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glClear", XS_OpenGL__Modern_glClear);
        newXS_deffile("OpenGL::Modern::glClearAccum", XS_OpenGL__Modern_glClearAccum);
        newXS_deffile("OpenGL::Modern::glClearBufferData_c", XS_OpenGL__Modern_glClearBufferData_c);
        newXS_deffile("OpenGL::Modern::glClearBufferSubData_c", XS_OpenGL__Modern_glClearBufferSubData_c);
        newXS_deffile("OpenGL::Modern::glClearBufferfi", XS_OpenGL__Modern_glClearBufferfi);
        newXS_deffile("OpenGL::Modern::glClearBufferfv_c", XS_OpenGL__Modern_glClearBufferfv_c);
        newXS_deffile("OpenGL::Modern::glClearBufferfv_p", XS_OpenGL__Modern_glClearBufferfv_p);
        newXS_deffile("OpenGL::Modern::glClearBufferiv_c", XS_OpenGL__Modern_glClearBufferiv_c);
        newXS_deffile("OpenGL::Modern::glClearBufferiv_p", XS_OpenGL__Modern_glClearBufferiv_p);
        newXS_deffile("OpenGL::Modern::glClearBufferuiv_c", XS_OpenGL__Modern_glClearBufferuiv_c);
        newXS_deffile("OpenGL::Modern::glClearBufferuiv_p", XS_OpenGL__Modern_glClearBufferuiv_p);
        newXS_deffile("OpenGL::Modern::glClearColor", XS_OpenGL__Modern_glClearColor);
        newXS_deffile("OpenGL::Modern::glClearColorIiEXT", XS_OpenGL__Modern_glClearColorIiEXT);
        newXS_deffile("OpenGL::Modern::glClearColorIuiEXT", XS_OpenGL__Modern_glClearColorIuiEXT);
        newXS_deffile("OpenGL::Modern::glClearColorx", XS_OpenGL__Modern_glClearColorx);
        newXS_deffile("OpenGL::Modern::glClearDepth", XS_OpenGL__Modern_glClearDepth);
        newXS_deffile("OpenGL::Modern::glClearDepthdNV", XS_OpenGL__Modern_glClearDepthdNV);
        newXS_deffile("OpenGL::Modern::glClearDepthf", XS_OpenGL__Modern_glClearDepthf);
        newXS_deffile("OpenGL::Modern::glClearDepthfOES", XS_OpenGL__Modern_glClearDepthfOES);
        newXS_deffile("OpenGL::Modern::glClearDepthx", XS_OpenGL__Modern_glClearDepthx);
        newXS_deffile("OpenGL::Modern::glClearIndex", XS_OpenGL__Modern_glClearIndex);
        newXS_deffile("OpenGL::Modern::glClearNamedBufferData_c", XS_OpenGL__Modern_glClearNamedBufferData_c);
        newXS_deffile("OpenGL::Modern::glClearNamedBufferDataEXT_c", XS_OpenGL__Modern_glClearNamedBufferDataEXT_c);
        newXS_deffile("OpenGL::Modern::glClearNamedBufferSubData_c", XS_OpenGL__Modern_glClearNamedBufferSubData_c);
        newXS_deffile("OpenGL::Modern::glClearNamedBufferSubDataEXT_c", XS_OpenGL__Modern_glClearNamedBufferSubDataEXT_c);
        newXS_deffile("OpenGL::Modern::glClearNamedFramebufferfi", XS_OpenGL__Modern_glClearNamedFramebufferfi);
        newXS_deffile("OpenGL::Modern::glClearNamedFramebufferfv_c", XS_OpenGL__Modern_glClearNamedFramebufferfv_c);
        newXS_deffile("OpenGL::Modern::glClearNamedFramebufferfv_p", XS_OpenGL__Modern_glClearNamedFramebufferfv_p);
        newXS_deffile("OpenGL::Modern::glClearNamedFramebufferiv_c", XS_OpenGL__Modern_glClearNamedFramebufferiv_c);
        newXS_deffile("OpenGL::Modern::glClearNamedFramebufferiv_p", XS_OpenGL__Modern_glClearNamedFramebufferiv_p);
        newXS_deffile("OpenGL::Modern::glClearNamedFramebufferuiv_c", XS_OpenGL__Modern_glClearNamedFramebufferuiv_c);
        newXS_deffile("OpenGL::Modern::glClearNamedFramebufferuiv_p", XS_OpenGL__Modern_glClearNamedFramebufferuiv_p);
        newXS_deffile("OpenGL::Modern::glClearPixelLocalStorageuiEXT_c", XS_OpenGL__Modern_glClearPixelLocalStorageuiEXT_c);
        newXS_deffile("OpenGL::Modern::glClearPixelLocalStorageuiEXT_p", XS_OpenGL__Modern_glClearPixelLocalStorageuiEXT_p);
        newXS_deffile("OpenGL::Modern::glClearStencil", XS_OpenGL__Modern_glClearStencil);
        cv = newXS_deffile("OpenGL::Modern::glClearTexImageEXT_c", XS_OpenGL__Modern_glClearTexImage_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glClearTexImage_c", XS_OpenGL__Modern_glClearTexImage_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glClearTexSubImageEXT_c", XS_OpenGL__Modern_glClearTexSubImage_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glClearTexSubImage_c", XS_OpenGL__Modern_glClearTexSubImage_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glClientActiveTexture", XS_OpenGL__Modern_glClientActiveTexture);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glClientActiveTextureARB", XS_OpenGL__Modern_glClientActiveTexture);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glClientActiveVertexStreamATI", XS_OpenGL__Modern_glClientActiveVertexStreamATI);
        newXS_deffile("OpenGL::Modern::glClientAttribDefaultEXT", XS_OpenGL__Modern_glClientAttribDefaultEXT);
        newXS_deffile("OpenGL::Modern::glClientWaitSemaphoreui64NVX_c", XS_OpenGL__Modern_glClientWaitSemaphoreui64NVX_c);
        newXS_deffile("OpenGL::Modern::glClientWaitSemaphoreui64NVX_p", XS_OpenGL__Modern_glClientWaitSemaphoreui64NVX_p);
        cv = newXS_deffile("OpenGL::Modern::glClientWaitSync", XS_OpenGL__Modern_glClientWaitSync);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glClientWaitSyncAPPLE", XS_OpenGL__Modern_glClientWaitSync);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glClipControl", XS_OpenGL__Modern_glClipControl);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glClipControlEXT", XS_OpenGL__Modern_glClipControl);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glClipPlane_c", XS_OpenGL__Modern_glClipPlane_c);
        newXS_deffile("OpenGL::Modern::glClipPlane_p", XS_OpenGL__Modern_glClipPlane_p);
        newXS_deffile("OpenGL::Modern::glClipPlanef_c", XS_OpenGL__Modern_glClipPlanef_c);
        newXS_deffile("OpenGL::Modern::glClipPlanef_p", XS_OpenGL__Modern_glClipPlanef_p);
        newXS_deffile("OpenGL::Modern::glClipPlanefOES_c", XS_OpenGL__Modern_glClipPlanefOES_c);
        newXS_deffile("OpenGL::Modern::glClipPlanex_c", XS_OpenGL__Modern_glClipPlanex_c);
        newXS_deffile("OpenGL::Modern::glClipPlanex_p", XS_OpenGL__Modern_glClipPlanex_p);
        newXS_deffile("OpenGL::Modern::glColor3b", XS_OpenGL__Modern_glColor3b);
        newXS_deffile("OpenGL::Modern::glColor3bv_c", XS_OpenGL__Modern_glColor3bv_c);
        newXS_deffile("OpenGL::Modern::glColor3bv_p", XS_OpenGL__Modern_glColor3bv_p);
        newXS_deffile("OpenGL::Modern::glColor3d", XS_OpenGL__Modern_glColor3d);
        newXS_deffile("OpenGL::Modern::glColor3dv_c", XS_OpenGL__Modern_glColor3dv_c);
        newXS_deffile("OpenGL::Modern::glColor3dv_p", XS_OpenGL__Modern_glColor3dv_p);
        newXS_deffile("OpenGL::Modern::glColor3f", XS_OpenGL__Modern_glColor3f);
        newXS_deffile("OpenGL::Modern::glColor3fVertex3fSUN", XS_OpenGL__Modern_glColor3fVertex3fSUN);
        newXS_deffile("OpenGL::Modern::glColor3fVertex3fvSUN_c", XS_OpenGL__Modern_glColor3fVertex3fvSUN_c);
        newXS_deffile("OpenGL::Modern::glColor3fVertex3fvSUN_p", XS_OpenGL__Modern_glColor3fVertex3fvSUN_p);
        newXS_deffile("OpenGL::Modern::glColor3fv_c", XS_OpenGL__Modern_glColor3fv_c);
        newXS_deffile("OpenGL::Modern::glColor3fv_p", XS_OpenGL__Modern_glColor3fv_p);
        newXS_deffile("OpenGL::Modern::glColor3hNV", XS_OpenGL__Modern_glColor3hNV);
        newXS_deffile("OpenGL::Modern::glColor3hvNV_c", XS_OpenGL__Modern_glColor3hvNV_c);
        newXS_deffile("OpenGL::Modern::glColor3hvNV_p", XS_OpenGL__Modern_glColor3hvNV_p);
        newXS_deffile("OpenGL::Modern::glColor3i", XS_OpenGL__Modern_glColor3i);
        newXS_deffile("OpenGL::Modern::glColor3iv_c", XS_OpenGL__Modern_glColor3iv_c);
        newXS_deffile("OpenGL::Modern::glColor3iv_p", XS_OpenGL__Modern_glColor3iv_p);
        newXS_deffile("OpenGL::Modern::glColor3s", XS_OpenGL__Modern_glColor3s);
        newXS_deffile("OpenGL::Modern::glColor3sv_c", XS_OpenGL__Modern_glColor3sv_c);
        newXS_deffile("OpenGL::Modern::glColor3sv_p", XS_OpenGL__Modern_glColor3sv_p);
        newXS_deffile("OpenGL::Modern::glColor3ub", XS_OpenGL__Modern_glColor3ub);
        newXS_deffile("OpenGL::Modern::glColor3ubv_c", XS_OpenGL__Modern_glColor3ubv_c);
        newXS_deffile("OpenGL::Modern::glColor3ubv_p", XS_OpenGL__Modern_glColor3ubv_p);
        newXS_deffile("OpenGL::Modern::glColor3ui", XS_OpenGL__Modern_glColor3ui);
        newXS_deffile("OpenGL::Modern::glColor3uiv_c", XS_OpenGL__Modern_glColor3uiv_c);
        newXS_deffile("OpenGL::Modern::glColor3uiv_p", XS_OpenGL__Modern_glColor3uiv_p);
        newXS_deffile("OpenGL::Modern::glColor3us", XS_OpenGL__Modern_glColor3us);
        newXS_deffile("OpenGL::Modern::glColor3usv_c", XS_OpenGL__Modern_glColor3usv_c);
        newXS_deffile("OpenGL::Modern::glColor3usv_p", XS_OpenGL__Modern_glColor3usv_p);
        newXS_deffile("OpenGL::Modern::glColor4b", XS_OpenGL__Modern_glColor4b);
        newXS_deffile("OpenGL::Modern::glColor4bv_c", XS_OpenGL__Modern_glColor4bv_c);
        newXS_deffile("OpenGL::Modern::glColor4bv_p", XS_OpenGL__Modern_glColor4bv_p);
        newXS_deffile("OpenGL::Modern::glColor4d", XS_OpenGL__Modern_glColor4d);
        newXS_deffile("OpenGL::Modern::glColor4dv_c", XS_OpenGL__Modern_glColor4dv_c);
        newXS_deffile("OpenGL::Modern::glColor4dv_p", XS_OpenGL__Modern_glColor4dv_p);
        newXS_deffile("OpenGL::Modern::glColor4f", XS_OpenGL__Modern_glColor4f);
        newXS_deffile("OpenGL::Modern::glColor4fNormal3fVertex3fSUN", XS_OpenGL__Modern_glColor4fNormal3fVertex3fSUN);
        newXS_deffile("OpenGL::Modern::glColor4fNormal3fVertex3fvSUN_c", XS_OpenGL__Modern_glColor4fNormal3fVertex3fvSUN_c);
        newXS_deffile("OpenGL::Modern::glColor4fNormal3fVertex3fvSUN_p", XS_OpenGL__Modern_glColor4fNormal3fVertex3fvSUN_p);
        newXS_deffile("OpenGL::Modern::glColor4fv_c", XS_OpenGL__Modern_glColor4fv_c);
        newXS_deffile("OpenGL::Modern::glColor4fv_p", XS_OpenGL__Modern_glColor4fv_p);
        newXS_deffile("OpenGL::Modern::glColor4hNV", XS_OpenGL__Modern_glColor4hNV);
        newXS_deffile("OpenGL::Modern::glColor4hvNV_c", XS_OpenGL__Modern_glColor4hvNV_c);
        newXS_deffile("OpenGL::Modern::glColor4hvNV_p", XS_OpenGL__Modern_glColor4hvNV_p);
        newXS_deffile("OpenGL::Modern::glColor4i", XS_OpenGL__Modern_glColor4i);
        newXS_deffile("OpenGL::Modern::glColor4iv_c", XS_OpenGL__Modern_glColor4iv_c);
        newXS_deffile("OpenGL::Modern::glColor4iv_p", XS_OpenGL__Modern_glColor4iv_p);
        newXS_deffile("OpenGL::Modern::glColor4s", XS_OpenGL__Modern_glColor4s);
        newXS_deffile("OpenGL::Modern::glColor4sv_c", XS_OpenGL__Modern_glColor4sv_c);
        newXS_deffile("OpenGL::Modern::glColor4sv_p", XS_OpenGL__Modern_glColor4sv_p);
        newXS_deffile("OpenGL::Modern::glColor4ub", XS_OpenGL__Modern_glColor4ub);
        newXS_deffile("OpenGL::Modern::glColor4ubVertex2fSUN", XS_OpenGL__Modern_glColor4ubVertex2fSUN);
        newXS_deffile("OpenGL::Modern::glColor4ubVertex2fvSUN_c", XS_OpenGL__Modern_glColor4ubVertex2fvSUN_c);
        newXS_deffile("OpenGL::Modern::glColor4ubVertex2fvSUN_p", XS_OpenGL__Modern_glColor4ubVertex2fvSUN_p);
        newXS_deffile("OpenGL::Modern::glColor4ubVertex3fSUN", XS_OpenGL__Modern_glColor4ubVertex3fSUN);
        newXS_deffile("OpenGL::Modern::glColor4ubVertex3fvSUN_c", XS_OpenGL__Modern_glColor4ubVertex3fvSUN_c);
        newXS_deffile("OpenGL::Modern::glColor4ubVertex3fvSUN_p", XS_OpenGL__Modern_glColor4ubVertex3fvSUN_p);
        newXS_deffile("OpenGL::Modern::glColor4ubv_c", XS_OpenGL__Modern_glColor4ubv_c);
        newXS_deffile("OpenGL::Modern::glColor4ubv_p", XS_OpenGL__Modern_glColor4ubv_p);
        newXS_deffile("OpenGL::Modern::glColor4ui", XS_OpenGL__Modern_glColor4ui);
        newXS_deffile("OpenGL::Modern::glColor4uiv_c", XS_OpenGL__Modern_glColor4uiv_c);
        newXS_deffile("OpenGL::Modern::glColor4uiv_p", XS_OpenGL__Modern_glColor4uiv_p);
        newXS_deffile("OpenGL::Modern::glColor4us", XS_OpenGL__Modern_glColor4us);
        newXS_deffile("OpenGL::Modern::glColor4usv_c", XS_OpenGL__Modern_glColor4usv_c);
        newXS_deffile("OpenGL::Modern::glColor4usv_p", XS_OpenGL__Modern_glColor4usv_p);
        newXS_deffile("OpenGL::Modern::glColor4x", XS_OpenGL__Modern_glColor4x);
        newXS_deffile("OpenGL::Modern::glColorFormatNV", XS_OpenGL__Modern_glColorFormatNV);
        newXS_deffile("OpenGL::Modern::glColorFragmentOp1ATI", XS_OpenGL__Modern_glColorFragmentOp1ATI);
        newXS_deffile("OpenGL::Modern::glColorFragmentOp2ATI", XS_OpenGL__Modern_glColorFragmentOp2ATI);
        newXS_deffile("OpenGL::Modern::glColorFragmentOp3ATI", XS_OpenGL__Modern_glColorFragmentOp3ATI);
        newXS_deffile("OpenGL::Modern::glColorMask", XS_OpenGL__Modern_glColorMask);
        cv = newXS_deffile("OpenGL::Modern::glColorMaskIndexedEXT", XS_OpenGL__Modern_glColorMaski);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glColorMaski", XS_OpenGL__Modern_glColorMaski);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glColorMaskiEXT", XS_OpenGL__Modern_glColorMaski);
        XSANY.any_i32 = 2;
        newXS_deffile("OpenGL::Modern::glColorMaskiOES", XS_OpenGL__Modern_glColorMaskiOES);
        newXS_deffile("OpenGL::Modern::glColorMaterial", XS_OpenGL__Modern_glColorMaterial);
        newXS_deffile("OpenGL::Modern::glColorP3ui", XS_OpenGL__Modern_glColorP3ui);
        newXS_deffile("OpenGL::Modern::glColorP3uiv_c", XS_OpenGL__Modern_glColorP3uiv_c);
        newXS_deffile("OpenGL::Modern::glColorP3uiv_p", XS_OpenGL__Modern_glColorP3uiv_p);
        newXS_deffile("OpenGL::Modern::glColorP4ui", XS_OpenGL__Modern_glColorP4ui);
        newXS_deffile("OpenGL::Modern::glColorP4uiv_c", XS_OpenGL__Modern_glColorP4uiv_c);
        newXS_deffile("OpenGL::Modern::glColorP4uiv_p", XS_OpenGL__Modern_glColorP4uiv_p);
        newXS_deffile("OpenGL::Modern::glColorPointer_c", XS_OpenGL__Modern_glColorPointer_c);
        newXS_deffile("OpenGL::Modern::glColorPointerEXT_c", XS_OpenGL__Modern_glColorPointerEXT_c);
        newXS_deffile("OpenGL::Modern::glColorPointerListIBM_c", XS_OpenGL__Modern_glColorPointerListIBM_c);
        newXS_deffile("OpenGL::Modern::glColorPointervINTEL_c", XS_OpenGL__Modern_glColorPointervINTEL_c);
        cv = newXS_deffile("OpenGL::Modern::glColorSubTableEXT_c", XS_OpenGL__Modern_glColorSubTable_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glColorSubTable_c", XS_OpenGL__Modern_glColorSubTable_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glColorTableEXT_c", XS_OpenGL__Modern_glColorTable_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glColorTableSGI_c", XS_OpenGL__Modern_glColorTable_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glColorTable_c", XS_OpenGL__Modern_glColorTable_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glColorTableParameterfvSGI_c", XS_OpenGL__Modern_glColorTableParameterfv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glColorTableParameterfv_c", XS_OpenGL__Modern_glColorTableParameterfv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glColorTableParameterfvSGI_p", XS_OpenGL__Modern_glColorTableParameterfv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glColorTableParameterfv_p", XS_OpenGL__Modern_glColorTableParameterfv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glColorTableParameterivSGI_c", XS_OpenGL__Modern_glColorTableParameteriv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glColorTableParameteriv_c", XS_OpenGL__Modern_glColorTableParameteriv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glColorTableParameterivSGI_p", XS_OpenGL__Modern_glColorTableParameteriv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glColorTableParameteriv_p", XS_OpenGL__Modern_glColorTableParameteriv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glCombinerInputNV", XS_OpenGL__Modern_glCombinerInputNV);
        newXS_deffile("OpenGL::Modern::glCombinerOutputNV", XS_OpenGL__Modern_glCombinerOutputNV);
        newXS_deffile("OpenGL::Modern::glCombinerParameterfNV", XS_OpenGL__Modern_glCombinerParameterfNV);
        newXS_deffile("OpenGL::Modern::glCombinerParameterfvNV_c", XS_OpenGL__Modern_glCombinerParameterfvNV_c);
        newXS_deffile("OpenGL::Modern::glCombinerParameteriNV", XS_OpenGL__Modern_glCombinerParameteriNV);
        newXS_deffile("OpenGL::Modern::glCombinerParameterivNV_c", XS_OpenGL__Modern_glCombinerParameterivNV_c);
        newXS_deffile("OpenGL::Modern::glCombinerStageParameterfvNV_c", XS_OpenGL__Modern_glCombinerStageParameterfvNV_c);
        newXS_deffile("OpenGL::Modern::glCommandListSegmentsNV", XS_OpenGL__Modern_glCommandListSegmentsNV);
        newXS_deffile("OpenGL::Modern::glCompileCommandListNV", XS_OpenGL__Modern_glCompileCommandListNV);
        newXS_deffile("OpenGL::Modern::glCompileShader", XS_OpenGL__Modern_glCompileShader);
        newXS_deffile("OpenGL::Modern::glCompileShaderARB", XS_OpenGL__Modern_glCompileShaderARB);
        newXS_deffile("OpenGL::Modern::glCompileShaderIncludeARB_c", XS_OpenGL__Modern_glCompileShaderIncludeARB_c);
        newXS_deffile("OpenGL::Modern::glCompileShaderIncludeARB_p", XS_OpenGL__Modern_glCompileShaderIncludeARB_p);
        newXS_deffile("OpenGL::Modern::glCompressedMultiTexImage1DEXT_c", XS_OpenGL__Modern_glCompressedMultiTexImage1DEXT_c);
        newXS_deffile("OpenGL::Modern::glCompressedMultiTexImage2DEXT_c", XS_OpenGL__Modern_glCompressedMultiTexImage2DEXT_c);
        newXS_deffile("OpenGL::Modern::glCompressedMultiTexImage3DEXT_c", XS_OpenGL__Modern_glCompressedMultiTexImage3DEXT_c);
        newXS_deffile("OpenGL::Modern::glCompressedMultiTexSubImage1DEXT_c", XS_OpenGL__Modern_glCompressedMultiTexSubImage1DEXT_c);
        newXS_deffile("OpenGL::Modern::glCompressedMultiTexSubImage2DEXT_c", XS_OpenGL__Modern_glCompressedMultiTexSubImage2DEXT_c);
        newXS_deffile("OpenGL::Modern::glCompressedMultiTexSubImage3DEXT_c", XS_OpenGL__Modern_glCompressedMultiTexSubImage3DEXT_c);
        cv = newXS_deffile("OpenGL::Modern::glCompressedTexImage1DARB_c", XS_OpenGL__Modern_glCompressedTexImage1D_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glCompressedTexImage1D_c", XS_OpenGL__Modern_glCompressedTexImage1D_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glCompressedTexImage2DARB_c", XS_OpenGL__Modern_glCompressedTexImage2D_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glCompressedTexImage2D_c", XS_OpenGL__Modern_glCompressedTexImage2D_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glCompressedTexImage3DARB_c", XS_OpenGL__Modern_glCompressedTexImage3D_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glCompressedTexImage3D_c", XS_OpenGL__Modern_glCompressedTexImage3D_c);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glCompressedTexImage3DNV_c", XS_OpenGL__Modern_glCompressedTexImage3DNV_c);
        newXS_deffile("OpenGL::Modern::glCompressedTexImage3DOES_c", XS_OpenGL__Modern_glCompressedTexImage3DOES_c);
        cv = newXS_deffile("OpenGL::Modern::glCompressedTexSubImage1DARB_c", XS_OpenGL__Modern_glCompressedTexSubImage1D_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glCompressedTexSubImage1D_c", XS_OpenGL__Modern_glCompressedTexSubImage1D_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glCompressedTexSubImage2DARB_c", XS_OpenGL__Modern_glCompressedTexSubImage2D_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glCompressedTexSubImage2D_c", XS_OpenGL__Modern_glCompressedTexSubImage2D_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glCompressedTexSubImage3DARB_c", XS_OpenGL__Modern_glCompressedTexSubImage3D_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glCompressedTexSubImage3D_c", XS_OpenGL__Modern_glCompressedTexSubImage3D_c);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glCompressedTexSubImage3DNV_c", XS_OpenGL__Modern_glCompressedTexSubImage3DNV_c);
        newXS_deffile("OpenGL::Modern::glCompressedTexSubImage3DOES_c", XS_OpenGL__Modern_glCompressedTexSubImage3DOES_c);
        newXS_deffile("OpenGL::Modern::glCompressedTextureImage1DEXT_c", XS_OpenGL__Modern_glCompressedTextureImage1DEXT_c);
        newXS_deffile("OpenGL::Modern::glCompressedTextureImage2DEXT_c", XS_OpenGL__Modern_glCompressedTextureImage2DEXT_c);
        newXS_deffile("OpenGL::Modern::glCompressedTextureImage3DEXT_c", XS_OpenGL__Modern_glCompressedTextureImage3DEXT_c);
        newXS_deffile("OpenGL::Modern::glCompressedTextureSubImage1D_c", XS_OpenGL__Modern_glCompressedTextureSubImage1D_c);
        newXS_deffile("OpenGL::Modern::glCompressedTextureSubImage1DEXT_c", XS_OpenGL__Modern_glCompressedTextureSubImage1DEXT_c);
        newXS_deffile("OpenGL::Modern::glCompressedTextureSubImage2D_c", XS_OpenGL__Modern_glCompressedTextureSubImage2D_c);
        newXS_deffile("OpenGL::Modern::glCompressedTextureSubImage2DEXT_c", XS_OpenGL__Modern_glCompressedTextureSubImage2DEXT_c);
        newXS_deffile("OpenGL::Modern::glCompressedTextureSubImage3D_c", XS_OpenGL__Modern_glCompressedTextureSubImage3D_c);
        newXS_deffile("OpenGL::Modern::glCompressedTextureSubImage3DEXT_c", XS_OpenGL__Modern_glCompressedTextureSubImage3DEXT_c);
        newXS_deffile("OpenGL::Modern::glConservativeRasterParameterfNV", XS_OpenGL__Modern_glConservativeRasterParameterfNV);
        newXS_deffile("OpenGL::Modern::glConservativeRasterParameteriNV", XS_OpenGL__Modern_glConservativeRasterParameteriNV);
        cv = newXS_deffile("OpenGL::Modern::glConvolutionFilter1DEXT_c", XS_OpenGL__Modern_glConvolutionFilter1D_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glConvolutionFilter1D_c", XS_OpenGL__Modern_glConvolutionFilter1D_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glConvolutionFilter2DEXT_c", XS_OpenGL__Modern_glConvolutionFilter2D_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glConvolutionFilter2D_c", XS_OpenGL__Modern_glConvolutionFilter2D_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glConvolutionParameterf", XS_OpenGL__Modern_glConvolutionParameterf);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glConvolutionParameterfEXT", XS_OpenGL__Modern_glConvolutionParameterf);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glConvolutionParameterfvEXT_c", XS_OpenGL__Modern_glConvolutionParameterfv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glConvolutionParameterfv_c", XS_OpenGL__Modern_glConvolutionParameterfv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glConvolutionParameterfvEXT_p", XS_OpenGL__Modern_glConvolutionParameterfv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glConvolutionParameterfv_p", XS_OpenGL__Modern_glConvolutionParameterfv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glConvolutionParameteri", XS_OpenGL__Modern_glConvolutionParameteri);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glConvolutionParameteriEXT", XS_OpenGL__Modern_glConvolutionParameteri);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glConvolutionParameterivEXT_c", XS_OpenGL__Modern_glConvolutionParameteriv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glConvolutionParameteriv_c", XS_OpenGL__Modern_glConvolutionParameteriv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glConvolutionParameterivEXT_p", XS_OpenGL__Modern_glConvolutionParameteriv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glConvolutionParameteriv_p", XS_OpenGL__Modern_glConvolutionParameteriv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glCopyBufferSubData", XS_OpenGL__Modern_glCopyBufferSubData);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glCopyBufferSubDataNV", XS_OpenGL__Modern_glCopyBufferSubData);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glCopyColorSubTable", XS_OpenGL__Modern_glCopyColorSubTable);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glCopyColorSubTableEXT", XS_OpenGL__Modern_glCopyColorSubTable);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glCopyColorTable", XS_OpenGL__Modern_glCopyColorTable);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glCopyColorTableSGI", XS_OpenGL__Modern_glCopyColorTable);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glCopyConvolutionFilter1D", XS_OpenGL__Modern_glCopyConvolutionFilter1D);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glCopyConvolutionFilter1DEXT", XS_OpenGL__Modern_glCopyConvolutionFilter1D);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glCopyConvolutionFilter2D", XS_OpenGL__Modern_glCopyConvolutionFilter2D);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glCopyConvolutionFilter2DEXT", XS_OpenGL__Modern_glCopyConvolutionFilter2D);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glCopyImageSubData", XS_OpenGL__Modern_glCopyImageSubData);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glCopyImageSubDataEXT", XS_OpenGL__Modern_glCopyImageSubData);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glCopyImageSubDataNV", XS_OpenGL__Modern_glCopyImageSubDataNV);
        newXS_deffile("OpenGL::Modern::glCopyImageSubDataOES", XS_OpenGL__Modern_glCopyImageSubDataOES);
        newXS_deffile("OpenGL::Modern::glCopyMultiTexImage1DEXT", XS_OpenGL__Modern_glCopyMultiTexImage1DEXT);
        newXS_deffile("OpenGL::Modern::glCopyMultiTexImage2DEXT", XS_OpenGL__Modern_glCopyMultiTexImage2DEXT);
        newXS_deffile("OpenGL::Modern::glCopyMultiTexSubImage1DEXT", XS_OpenGL__Modern_glCopyMultiTexSubImage1DEXT);
        newXS_deffile("OpenGL::Modern::glCopyMultiTexSubImage2DEXT", XS_OpenGL__Modern_glCopyMultiTexSubImage2DEXT);
        newXS_deffile("OpenGL::Modern::glCopyMultiTexSubImage3DEXT", XS_OpenGL__Modern_glCopyMultiTexSubImage3DEXT);
        newXS_deffile("OpenGL::Modern::glCopyNamedBufferSubData", XS_OpenGL__Modern_glCopyNamedBufferSubData);
        newXS_deffile("OpenGL::Modern::glCopyPathNV", XS_OpenGL__Modern_glCopyPathNV);
        newXS_deffile("OpenGL::Modern::glCopyPixels", XS_OpenGL__Modern_glCopyPixels);
        cv = newXS_deffile("OpenGL::Modern::glCopyTexImage1D", XS_OpenGL__Modern_glCopyTexImage1D);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glCopyTexImage1DEXT", XS_OpenGL__Modern_glCopyTexImage1D);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glCopyTexImage2D", XS_OpenGL__Modern_glCopyTexImage2D);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glCopyTexImage2DEXT", XS_OpenGL__Modern_glCopyTexImage2D);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glCopyTexSubImage1D", XS_OpenGL__Modern_glCopyTexSubImage1D);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glCopyTexSubImage1DEXT", XS_OpenGL__Modern_glCopyTexSubImage1D);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glCopyTexSubImage2D", XS_OpenGL__Modern_glCopyTexSubImage2D);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glCopyTexSubImage2DEXT", XS_OpenGL__Modern_glCopyTexSubImage2D);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glCopyTexSubImage3D", XS_OpenGL__Modern_glCopyTexSubImage3D);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glCopyTexSubImage3DEXT", XS_OpenGL__Modern_glCopyTexSubImage3D);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glCopyTexSubImage3DNV", XS_OpenGL__Modern_glCopyTexSubImage3DNV);
        newXS_deffile("OpenGL::Modern::glCopyTexSubImage3DOES", XS_OpenGL__Modern_glCopyTexSubImage3DOES);
        newXS_deffile("OpenGL::Modern::glCopyTextureImage1DEXT", XS_OpenGL__Modern_glCopyTextureImage1DEXT);
        newXS_deffile("OpenGL::Modern::glCopyTextureImage2DEXT", XS_OpenGL__Modern_glCopyTextureImage2DEXT);
        newXS_deffile("OpenGL::Modern::glCopyTextureLevelsAPPLE", XS_OpenGL__Modern_glCopyTextureLevelsAPPLE);
        newXS_deffile("OpenGL::Modern::glCopyTextureSubImage1D", XS_OpenGL__Modern_glCopyTextureSubImage1D);
        newXS_deffile("OpenGL::Modern::glCopyTextureSubImage1DEXT", XS_OpenGL__Modern_glCopyTextureSubImage1DEXT);
        newXS_deffile("OpenGL::Modern::glCopyTextureSubImage2D", XS_OpenGL__Modern_glCopyTextureSubImage2D);
        newXS_deffile("OpenGL::Modern::glCopyTextureSubImage2DEXT", XS_OpenGL__Modern_glCopyTextureSubImage2DEXT);
        newXS_deffile("OpenGL::Modern::glCopyTextureSubImage3D", XS_OpenGL__Modern_glCopyTextureSubImage3D);
        newXS_deffile("OpenGL::Modern::glCopyTextureSubImage3DEXT", XS_OpenGL__Modern_glCopyTextureSubImage3DEXT);
        newXS_deffile("OpenGL::Modern::glCoverFillPathInstancedNV_c", XS_OpenGL__Modern_glCoverFillPathInstancedNV_c);
        newXS_deffile("OpenGL::Modern::glCoverFillPathNV", XS_OpenGL__Modern_glCoverFillPathNV);
        newXS_deffile("OpenGL::Modern::glCoverStrokePathInstancedNV_c", XS_OpenGL__Modern_glCoverStrokePathInstancedNV_c);
        newXS_deffile("OpenGL::Modern::glCoverStrokePathNV", XS_OpenGL__Modern_glCoverStrokePathNV);
        newXS_deffile("OpenGL::Modern::glCoverageModulationNV", XS_OpenGL__Modern_glCoverageModulationNV);
        newXS_deffile("OpenGL::Modern::glCoverageModulationTableNV_c", XS_OpenGL__Modern_glCoverageModulationTableNV_c);
        newXS_deffile("OpenGL::Modern::glCoverageModulationTableNV_p", XS_OpenGL__Modern_glCoverageModulationTableNV_p);
        newXS_deffile("OpenGL::Modern::glCreateBuffers_c", XS_OpenGL__Modern_glCreateBuffers_c);
        newXS_deffile("OpenGL::Modern::glCreateBuffers_p", XS_OpenGL__Modern_glCreateBuffers_p);
        newXS_deffile("OpenGL::Modern::glCreateCommandListsNV_c", XS_OpenGL__Modern_glCreateCommandListsNV_c);
        newXS_deffile("OpenGL::Modern::glCreateCommandListsNV_p", XS_OpenGL__Modern_glCreateCommandListsNV_p);
        newXS_deffile("OpenGL::Modern::glCreateFramebuffers_c", XS_OpenGL__Modern_glCreateFramebuffers_c);
        newXS_deffile("OpenGL::Modern::glCreateFramebuffers_p", XS_OpenGL__Modern_glCreateFramebuffers_p);
        newXS_deffile("OpenGL::Modern::glCreateMemoryObjectsEXT_c", XS_OpenGL__Modern_glCreateMemoryObjectsEXT_c);
        newXS_deffile("OpenGL::Modern::glCreatePerfQueryINTEL_c", XS_OpenGL__Modern_glCreatePerfQueryINTEL_c);
        cv = newXS_deffile("OpenGL::Modern::glCreateProgram", XS_OpenGL__Modern_glCreateProgram);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glCreateProgramObjectARB", XS_OpenGL__Modern_glCreateProgram);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glCreateProgramPipelines_c", XS_OpenGL__Modern_glCreateProgramPipelines_c);
        newXS_deffile("OpenGL::Modern::glCreateProgramPipelines_p", XS_OpenGL__Modern_glCreateProgramPipelines_p);
        newXS_deffile("OpenGL::Modern::glCreateProgressFenceNVX", XS_OpenGL__Modern_glCreateProgressFenceNVX);
        newXS_deffile("OpenGL::Modern::glCreateQueries_c", XS_OpenGL__Modern_glCreateQueries_c);
        newXS_deffile("OpenGL::Modern::glCreateQueries_p", XS_OpenGL__Modern_glCreateQueries_p);
        newXS_deffile("OpenGL::Modern::glCreateRenderbuffers_c", XS_OpenGL__Modern_glCreateRenderbuffers_c);
        newXS_deffile("OpenGL::Modern::glCreateRenderbuffers_p", XS_OpenGL__Modern_glCreateRenderbuffers_p);
        newXS_deffile("OpenGL::Modern::glCreateSamplers_c", XS_OpenGL__Modern_glCreateSamplers_c);
        newXS_deffile("OpenGL::Modern::glCreateSamplers_p", XS_OpenGL__Modern_glCreateSamplers_p);
        newXS_deffile("OpenGL::Modern::glCreateSemaphoresNV_c", XS_OpenGL__Modern_glCreateSemaphoresNV_c);
        newXS_deffile("OpenGL::Modern::glCreateSemaphoresNV_p", XS_OpenGL__Modern_glCreateSemaphoresNV_p);
        cv = newXS_deffile("OpenGL::Modern::glCreateShader", XS_OpenGL__Modern_glCreateShader);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glCreateShaderObjectARB", XS_OpenGL__Modern_glCreateShader);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glCreateShaderProgramEXT", XS_OpenGL__Modern_glCreateShaderProgramEXT);
        newXS_deffile("OpenGL::Modern::glCreateShaderProgramv_c", XS_OpenGL__Modern_glCreateShaderProgramv_c);
        newXS_deffile("OpenGL::Modern::glCreateShaderProgramv_p", XS_OpenGL__Modern_glCreateShaderProgramv_p);
        newXS_deffile("OpenGL::Modern::glCreateStatesNV_c", XS_OpenGL__Modern_glCreateStatesNV_c);
        newXS_deffile("OpenGL::Modern::glCreateStatesNV_p", XS_OpenGL__Modern_glCreateStatesNV_p);
        newXS_deffile("OpenGL::Modern::glCreateSyncFromCLeventARB", XS_OpenGL__Modern_glCreateSyncFromCLeventARB);
        newXS_deffile("OpenGL::Modern::glCreateTextures_c", XS_OpenGL__Modern_glCreateTextures_c);
        newXS_deffile("OpenGL::Modern::glCreateTextures_p", XS_OpenGL__Modern_glCreateTextures_p);
        newXS_deffile("OpenGL::Modern::glCreateTransformFeedbacks_c", XS_OpenGL__Modern_glCreateTransformFeedbacks_c);
        newXS_deffile("OpenGL::Modern::glCreateTransformFeedbacks_p", XS_OpenGL__Modern_glCreateTransformFeedbacks_p);
        newXS_deffile("OpenGL::Modern::glCreateVertexArrays_c", XS_OpenGL__Modern_glCreateVertexArrays_c);
        newXS_deffile("OpenGL::Modern::glCreateVertexArrays_p", XS_OpenGL__Modern_glCreateVertexArrays_p);
        newXS_deffile("OpenGL::Modern::glCullFace", XS_OpenGL__Modern_glCullFace);
        newXS_deffile("OpenGL::Modern::glCullParameterdvEXT_c", XS_OpenGL__Modern_glCullParameterdvEXT_c);
        newXS_deffile("OpenGL::Modern::glCullParameterdvEXT_p", XS_OpenGL__Modern_glCullParameterdvEXT_p);
        newXS_deffile("OpenGL::Modern::glCullParameterfvEXT_c", XS_OpenGL__Modern_glCullParameterfvEXT_c);
        newXS_deffile("OpenGL::Modern::glCullParameterfvEXT_p", XS_OpenGL__Modern_glCullParameterfvEXT_p);
        newXS_deffile("OpenGL::Modern::glCurrentPaletteMatrixARB", XS_OpenGL__Modern_glCurrentPaletteMatrixARB);
        newXS_deffile("OpenGL::Modern::glCurrentPaletteMatrixOES", XS_OpenGL__Modern_glCurrentPaletteMatrixOES);
        newXS_deffile("OpenGL::Modern::glDataPipe", XS_OpenGL__Modern_glDataPipe);
        cv = newXS_deffile("OpenGL::Modern::glDebugMessageCallbackARB_c", XS_OpenGL__Modern_glDebugMessageCallback_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glDebugMessageCallbackKHR_c", XS_OpenGL__Modern_glDebugMessageCallback_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glDebugMessageCallback_c", XS_OpenGL__Modern_glDebugMessageCallback_c);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glDebugMessageCallbackAMD_c", XS_OpenGL__Modern_glDebugMessageCallbackAMD_c);
        cv = newXS_deffile("OpenGL::Modern::glDebugMessageControlARB_c", XS_OpenGL__Modern_glDebugMessageControl_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glDebugMessageControlKHR_c", XS_OpenGL__Modern_glDebugMessageControl_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glDebugMessageControl_c", XS_OpenGL__Modern_glDebugMessageControl_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glDebugMessageControlARB_p", XS_OpenGL__Modern_glDebugMessageControl_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glDebugMessageControlKHR_p", XS_OpenGL__Modern_glDebugMessageControl_p);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glDebugMessageControl_p", XS_OpenGL__Modern_glDebugMessageControl_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glDebugMessageEnableAMD_c", XS_OpenGL__Modern_glDebugMessageEnableAMD_c);
        newXS_deffile("OpenGL::Modern::glDebugMessageEnableAMD_p", XS_OpenGL__Modern_glDebugMessageEnableAMD_p);
        cv = newXS_deffile("OpenGL::Modern::glDebugMessageInsert", XS_OpenGL__Modern_glDebugMessageInsert);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glDebugMessageInsertARB", XS_OpenGL__Modern_glDebugMessageInsert);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glDebugMessageInsertKHR", XS_OpenGL__Modern_glDebugMessageInsert);
        XSANY.any_i32 = 2;
        newXS_deffile("OpenGL::Modern::glDebugMessageInsertAMD", XS_OpenGL__Modern_glDebugMessageInsertAMD);
        newXS_deffile("OpenGL::Modern::glDeformSGIX", XS_OpenGL__Modern_glDeformSGIX);
        newXS_deffile("OpenGL::Modern::glDeleteArraySetsEXT_c", XS_OpenGL__Modern_glDeleteArraySetsEXT_c);
        newXS_deffile("OpenGL::Modern::glDeleteAsyncMarkersSGIX", XS_OpenGL__Modern_glDeleteAsyncMarkersSGIX);
        newXS_deffile("OpenGL::Modern::glDeleteBufferRegion", XS_OpenGL__Modern_glDeleteBufferRegion);
        cv = newXS_deffile("OpenGL::Modern::glDeleteBuffersARB_c", XS_OpenGL__Modern_glDeleteBuffers_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glDeleteBuffers_c", XS_OpenGL__Modern_glDeleteBuffers_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glDeleteBuffersARB_p", XS_OpenGL__Modern_glDeleteBuffers_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glDeleteBuffers_p", XS_OpenGL__Modern_glDeleteBuffers_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glDeleteCommandListsNV_c", XS_OpenGL__Modern_glDeleteCommandListsNV_c);
        newXS_deffile("OpenGL::Modern::glDeleteCommandListsNV_p", XS_OpenGL__Modern_glDeleteCommandListsNV_p);
        newXS_deffile("OpenGL::Modern::glDeleteFencesAPPLE_c", XS_OpenGL__Modern_glDeleteFencesAPPLE_c);
        newXS_deffile("OpenGL::Modern::glDeleteFencesAPPLE_p", XS_OpenGL__Modern_glDeleteFencesAPPLE_p);
        newXS_deffile("OpenGL::Modern::glDeleteFencesNV_c", XS_OpenGL__Modern_glDeleteFencesNV_c);
        newXS_deffile("OpenGL::Modern::glDeleteFencesNV_p", XS_OpenGL__Modern_glDeleteFencesNV_p);
        newXS_deffile("OpenGL::Modern::glDeleteFragmentShaderATI", XS_OpenGL__Modern_glDeleteFragmentShaderATI);
        cv = newXS_deffile("OpenGL::Modern::glDeleteFramebuffersEXT_c", XS_OpenGL__Modern_glDeleteFramebuffers_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glDeleteFramebuffers_c", XS_OpenGL__Modern_glDeleteFramebuffers_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glDeleteFramebuffersEXT_p", XS_OpenGL__Modern_glDeleteFramebuffers_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glDeleteFramebuffers_p", XS_OpenGL__Modern_glDeleteFramebuffers_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glDeleteFramebuffersOES_c", XS_OpenGL__Modern_glDeleteFramebuffersOES_c);
        newXS_deffile("OpenGL::Modern::glDeleteLists", XS_OpenGL__Modern_glDeleteLists);
        newXS_deffile("OpenGL::Modern::glDeleteMPEGPredictorsSGIX_c", XS_OpenGL__Modern_glDeleteMPEGPredictorsSGIX_c);
        newXS_deffile("OpenGL::Modern::glDeleteMemoryObjectsEXT_c", XS_OpenGL__Modern_glDeleteMemoryObjectsEXT_c);
        newXS_deffile("OpenGL::Modern::glDeleteMemoryObjectsEXT_p", XS_OpenGL__Modern_glDeleteMemoryObjectsEXT_p);
        newXS_deffile("OpenGL::Modern::glDeleteNamedStringARB", XS_OpenGL__Modern_glDeleteNamedStringARB);
        newXS_deffile("OpenGL::Modern::glDeleteNamesAMD_c", XS_OpenGL__Modern_glDeleteNamesAMD_c);
        newXS_deffile("OpenGL::Modern::glDeleteNamesAMD_p", XS_OpenGL__Modern_glDeleteNamesAMD_p);
        newXS_deffile("OpenGL::Modern::glDeleteObjectARB", XS_OpenGL__Modern_glDeleteObjectARB);
        newXS_deffile("OpenGL::Modern::glDeleteOcclusionQueriesNV_c", XS_OpenGL__Modern_glDeleteOcclusionQueriesNV_c);
        newXS_deffile("OpenGL::Modern::glDeleteOcclusionQueriesNV_p", XS_OpenGL__Modern_glDeleteOcclusionQueriesNV_p);
        newXS_deffile("OpenGL::Modern::glDeletePathsNV", XS_OpenGL__Modern_glDeletePathsNV);
        newXS_deffile("OpenGL::Modern::glDeletePerfMonitorsAMD_c", XS_OpenGL__Modern_glDeletePerfMonitorsAMD_c);
        newXS_deffile("OpenGL::Modern::glDeletePerfMonitorsAMD_p", XS_OpenGL__Modern_glDeletePerfMonitorsAMD_p);
        newXS_deffile("OpenGL::Modern::glDeletePerfQueryINTEL", XS_OpenGL__Modern_glDeletePerfQueryINTEL);
        newXS_deffile("OpenGL::Modern::glDeleteProgram", XS_OpenGL__Modern_glDeleteProgram);
        newXS_deffile("OpenGL::Modern::glDeleteProgramPipelines_c", XS_OpenGL__Modern_glDeleteProgramPipelines_c);
        newXS_deffile("OpenGL::Modern::glDeleteProgramPipelines_p", XS_OpenGL__Modern_glDeleteProgramPipelines_p);
        cv = newXS_deffile("OpenGL::Modern::glDeleteProgramsARB_c", XS_OpenGL__Modern_glDeleteProgramsARB_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glDeleteProgramsNV_c", XS_OpenGL__Modern_glDeleteProgramsARB_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glDeleteProgramsARB_p", XS_OpenGL__Modern_glDeleteProgramsARB_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glDeleteProgramsNV_p", XS_OpenGL__Modern_glDeleteProgramsARB_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glDeleteQueriesARB_c", XS_OpenGL__Modern_glDeleteQueries_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glDeleteQueries_c", XS_OpenGL__Modern_glDeleteQueries_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glDeleteQueriesARB_p", XS_OpenGL__Modern_glDeleteQueries_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glDeleteQueries_p", XS_OpenGL__Modern_glDeleteQueries_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glDeleteQueriesANGLE_c", XS_OpenGL__Modern_glDeleteQueriesANGLE_c);
        newXS_deffile("OpenGL::Modern::glDeleteQueriesEXT_c", XS_OpenGL__Modern_glDeleteQueriesEXT_c);
        newXS_deffile("OpenGL::Modern::glDeleteQueriesEXT_p", XS_OpenGL__Modern_glDeleteQueriesEXT_p);
        cv = newXS_deffile("OpenGL::Modern::glDeleteRenderbuffersEXT_c", XS_OpenGL__Modern_glDeleteRenderbuffers_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glDeleteRenderbuffers_c", XS_OpenGL__Modern_glDeleteRenderbuffers_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glDeleteRenderbuffersEXT_p", XS_OpenGL__Modern_glDeleteRenderbuffers_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glDeleteRenderbuffers_p", XS_OpenGL__Modern_glDeleteRenderbuffers_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glDeleteRenderbuffersOES_c", XS_OpenGL__Modern_glDeleteRenderbuffersOES_c);
        newXS_deffile("OpenGL::Modern::glDeleteSamplers_c", XS_OpenGL__Modern_glDeleteSamplers_c);
        newXS_deffile("OpenGL::Modern::glDeleteSamplers_p", XS_OpenGL__Modern_glDeleteSamplers_p);
        newXS_deffile("OpenGL::Modern::glDeleteSemaphoresEXT_c", XS_OpenGL__Modern_glDeleteSemaphoresEXT_c);
        newXS_deffile("OpenGL::Modern::glDeleteSemaphoresEXT_p", XS_OpenGL__Modern_glDeleteSemaphoresEXT_p);
        newXS_deffile("OpenGL::Modern::glDeleteShader", XS_OpenGL__Modern_glDeleteShader);
        newXS_deffile("OpenGL::Modern::glDeleteStatesNV_c", XS_OpenGL__Modern_glDeleteStatesNV_c);
        newXS_deffile("OpenGL::Modern::glDeleteStatesNV_p", XS_OpenGL__Modern_glDeleteStatesNV_p);
        cv = newXS_deffile("OpenGL::Modern::glDeleteSync", XS_OpenGL__Modern_glDeleteSync);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glDeleteSyncAPPLE", XS_OpenGL__Modern_glDeleteSync);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glDeleteTextures_c", XS_OpenGL__Modern_glDeleteTextures_c);
        newXS_deffile("OpenGL::Modern::glDeleteTextures_p", XS_OpenGL__Modern_glDeleteTextures_p);
        newXS_deffile("OpenGL::Modern::glDeleteTexturesEXT_c", XS_OpenGL__Modern_glDeleteTexturesEXT_c);
        newXS_deffile("OpenGL::Modern::glDeleteTexturesEXT_p", XS_OpenGL__Modern_glDeleteTexturesEXT_p);
        cv = newXS_deffile("OpenGL::Modern::glDeleteTransformFeedbacksNV_c", XS_OpenGL__Modern_glDeleteTransformFeedbacks_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glDeleteTransformFeedbacks_c", XS_OpenGL__Modern_glDeleteTransformFeedbacks_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glDeleteTransformFeedbacksNV_p", XS_OpenGL__Modern_glDeleteTransformFeedbacks_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glDeleteTransformFeedbacks_p", XS_OpenGL__Modern_glDeleteTransformFeedbacks_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glDeleteVertexArraysAPPLE_c", XS_OpenGL__Modern_glDeleteVertexArrays_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glDeleteVertexArrays_c", XS_OpenGL__Modern_glDeleteVertexArrays_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glDeleteVertexArraysAPPLE_p", XS_OpenGL__Modern_glDeleteVertexArrays_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glDeleteVertexArrays_p", XS_OpenGL__Modern_glDeleteVertexArrays_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glDeleteVertexArraysOES_c", XS_OpenGL__Modern_glDeleteVertexArraysOES_c);
        newXS_deffile("OpenGL::Modern::glDeleteVertexArraysSGIX_c", XS_OpenGL__Modern_glDeleteVertexArraysSGIX_c);
        newXS_deffile("OpenGL::Modern::glDeleteVertexShaderEXT", XS_OpenGL__Modern_glDeleteVertexShaderEXT);
        newXS_deffile("OpenGL::Modern::glDepthBoundsEXT", XS_OpenGL__Modern_glDepthBoundsEXT);
        newXS_deffile("OpenGL::Modern::glDepthBoundsdNV", XS_OpenGL__Modern_glDepthBoundsdNV);
        newXS_deffile("OpenGL::Modern::glDepthFunc", XS_OpenGL__Modern_glDepthFunc);
        newXS_deffile("OpenGL::Modern::glDepthMask", XS_OpenGL__Modern_glDepthMask);
        newXS_deffile("OpenGL::Modern::glDepthRange", XS_OpenGL__Modern_glDepthRange);
        newXS_deffile("OpenGL::Modern::glDepthRangeArrayfvNV_c", XS_OpenGL__Modern_glDepthRangeArrayfvNV_c);
        newXS_deffile("OpenGL::Modern::glDepthRangeArrayv_c", XS_OpenGL__Modern_glDepthRangeArrayv_c);
        newXS_deffile("OpenGL::Modern::glDepthRangeArrayv_p", XS_OpenGL__Modern_glDepthRangeArrayv_p);
        newXS_deffile("OpenGL::Modern::glDepthRangeIndexed", XS_OpenGL__Modern_glDepthRangeIndexed);
        newXS_deffile("OpenGL::Modern::glDepthRangeIndexedfNV", XS_OpenGL__Modern_glDepthRangeIndexedfNV);
        newXS_deffile("OpenGL::Modern::glDepthRangedNV", XS_OpenGL__Modern_glDepthRangedNV);
        newXS_deffile("OpenGL::Modern::glDepthRangef", XS_OpenGL__Modern_glDepthRangef);
        newXS_deffile("OpenGL::Modern::glDepthRangefOES", XS_OpenGL__Modern_glDepthRangefOES);
        newXS_deffile("OpenGL::Modern::glDepthRangex", XS_OpenGL__Modern_glDepthRangex);
        newXS_deffile("OpenGL::Modern::glDetachObjectARB", XS_OpenGL__Modern_glDetachObjectARB);
        newXS_deffile("OpenGL::Modern::glDetachShader", XS_OpenGL__Modern_glDetachShader);
        newXS_deffile("OpenGL::Modern::glDetailTexFuncSGIS_c", XS_OpenGL__Modern_glDetailTexFuncSGIS_c);
        newXS_deffile("OpenGL::Modern::glDetailTexFuncSGIS_p", XS_OpenGL__Modern_glDetailTexFuncSGIS_p);
        newXS_deffile("OpenGL::Modern::glDisable", XS_OpenGL__Modern_glDisable);
        newXS_deffile("OpenGL::Modern::glDisableClientState", XS_OpenGL__Modern_glDisableClientState);
        newXS_deffile("OpenGL::Modern::glDisableClientStateIndexedEXT", XS_OpenGL__Modern_glDisableClientStateIndexedEXT);
        newXS_deffile("OpenGL::Modern::glDisableClientStateiEXT", XS_OpenGL__Modern_glDisableClientStateiEXT);
        newXS_deffile("OpenGL::Modern::glDisableDriverControlQCOM", XS_OpenGL__Modern_glDisableDriverControlQCOM);
        newXS_deffile("OpenGL::Modern::glDisableVariantClientStateEXT", XS_OpenGL__Modern_glDisableVariantClientStateEXT);
        newXS_deffile("OpenGL::Modern::glDisableVertexArrayAttrib", XS_OpenGL__Modern_glDisableVertexArrayAttrib);
        newXS_deffile("OpenGL::Modern::glDisableVertexArrayAttribEXT", XS_OpenGL__Modern_glDisableVertexArrayAttribEXT);
        newXS_deffile("OpenGL::Modern::glDisableVertexArrayEXT", XS_OpenGL__Modern_glDisableVertexArrayEXT);
        newXS_deffile("OpenGL::Modern::glDisableVertexAttribAPPLE", XS_OpenGL__Modern_glDisableVertexAttribAPPLE);
        cv = newXS_deffile("OpenGL::Modern::glDisableVertexAttribArray", XS_OpenGL__Modern_glDisableVertexAttribArray);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glDisableVertexAttribArrayARB", XS_OpenGL__Modern_glDisableVertexAttribArray);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glDisableIndexedEXT", XS_OpenGL__Modern_glDisablei);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glDisablei", XS_OpenGL__Modern_glDisablei);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glDisableiEXT", XS_OpenGL__Modern_glDisablei);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glDisableiNV", XS_OpenGL__Modern_glDisablei);
        XSANY.any_i32 = 3;
        newXS_deffile("OpenGL::Modern::glDisableiOES", XS_OpenGL__Modern_glDisableiOES);
        newXS_deffile("OpenGL::Modern::glDiscardFramebufferEXT_c", XS_OpenGL__Modern_glDiscardFramebufferEXT_c);
        newXS_deffile("OpenGL::Modern::glDiscardFramebufferEXT_p", XS_OpenGL__Modern_glDiscardFramebufferEXT_p);
        newXS_deffile("OpenGL::Modern::glDispatchCompute", XS_OpenGL__Modern_glDispatchCompute);
        newXS_deffile("OpenGL::Modern::glDispatchComputeGroupSizeARB", XS_OpenGL__Modern_glDispatchComputeGroupSizeARB);
        newXS_deffile("OpenGL::Modern::glDispatchComputeIndirect", XS_OpenGL__Modern_glDispatchComputeIndirect);
        cv = newXS_deffile("OpenGL::Modern::glDrawArrays", XS_OpenGL__Modern_glDrawArrays);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glDrawArraysEXT", XS_OpenGL__Modern_glDrawArrays);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glDrawArraysIndirect_c", XS_OpenGL__Modern_glDrawArraysIndirect_c);
        cv = newXS_deffile("OpenGL::Modern::glDrawArraysInstanced", XS_OpenGL__Modern_glDrawArraysInstanced);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glDrawArraysInstancedANGLE", XS_OpenGL__Modern_glDrawArraysInstanced);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glDrawArraysInstancedARB", XS_OpenGL__Modern_glDrawArraysInstanced);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glDrawArraysInstancedEXT", XS_OpenGL__Modern_glDrawArraysInstanced);
        XSANY.any_i32 = 3;
        cv = newXS_deffile("OpenGL::Modern::glDrawArraysInstancedNV", XS_OpenGL__Modern_glDrawArraysInstanced);
        XSANY.any_i32 = 4;
        cv = newXS_deffile("OpenGL::Modern::glDrawArraysInstancedBaseInstance", XS_OpenGL__Modern_glDrawArraysInstancedBaseInstance);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glDrawArraysInstancedBaseInstanceEXT", XS_OpenGL__Modern_glDrawArraysInstancedBaseInstance);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glDrawBuffer", XS_OpenGL__Modern_glDrawBuffer);
        newXS_deffile("OpenGL::Modern::glDrawBufferRegion", XS_OpenGL__Modern_glDrawBufferRegion);
        cv = newXS_deffile("OpenGL::Modern::glDrawBuffersARB_c", XS_OpenGL__Modern_glDrawBuffers_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glDrawBuffersATI_c", XS_OpenGL__Modern_glDrawBuffers_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glDrawBuffersEXT_c", XS_OpenGL__Modern_glDrawBuffers_c);
        XSANY.any_i32 = 3;
        cv = newXS_deffile("OpenGL::Modern::glDrawBuffers_c", XS_OpenGL__Modern_glDrawBuffers_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glDrawBuffersARB_p", XS_OpenGL__Modern_glDrawBuffers_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glDrawBuffersATI_p", XS_OpenGL__Modern_glDrawBuffers_p);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glDrawBuffersEXT_p", XS_OpenGL__Modern_glDrawBuffers_p);
        XSANY.any_i32 = 3;
        cv = newXS_deffile("OpenGL::Modern::glDrawBuffers_p", XS_OpenGL__Modern_glDrawBuffers_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glDrawBuffersIndexedEXT_c", XS_OpenGL__Modern_glDrawBuffersIndexedEXT_c);
        newXS_deffile("OpenGL::Modern::glDrawBuffersIndexedEXT_p", XS_OpenGL__Modern_glDrawBuffersIndexedEXT_p);
        newXS_deffile("OpenGL::Modern::glDrawBuffersNV_c", XS_OpenGL__Modern_glDrawBuffersNV_c);
        newXS_deffile("OpenGL::Modern::glDrawBuffersNV_p", XS_OpenGL__Modern_glDrawBuffersNV_p);
        newXS_deffile("OpenGL::Modern::glDrawCommandsAddressNV_c", XS_OpenGL__Modern_glDrawCommandsAddressNV_c);
        newXS_deffile("OpenGL::Modern::glDrawCommandsNV_c", XS_OpenGL__Modern_glDrawCommandsNV_c);
        newXS_deffile("OpenGL::Modern::glDrawCommandsStatesAddressNV_c", XS_OpenGL__Modern_glDrawCommandsStatesAddressNV_c);
        newXS_deffile("OpenGL::Modern::glDrawCommandsStatesNV_c", XS_OpenGL__Modern_glDrawCommandsStatesNV_c);
        newXS_deffile("OpenGL::Modern::glDrawElementArrayAPPLE", XS_OpenGL__Modern_glDrawElementArrayAPPLE);
        newXS_deffile("OpenGL::Modern::glDrawElementArrayATI", XS_OpenGL__Modern_glDrawElementArrayATI);
        newXS_deffile("OpenGL::Modern::glDrawElements_c", XS_OpenGL__Modern_glDrawElements_c);
        cv = newXS_deffile("OpenGL::Modern::glDrawElementsBaseVertexEXT_c", XS_OpenGL__Modern_glDrawElementsBaseVertex_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glDrawElementsBaseVertex_c", XS_OpenGL__Modern_glDrawElementsBaseVertex_c);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glDrawElementsIndirect_c", XS_OpenGL__Modern_glDrawElementsIndirect_c);
        cv = newXS_deffile("OpenGL::Modern::glDrawElementsInstancedANGLE_c", XS_OpenGL__Modern_glDrawElementsInstanced_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glDrawElementsInstancedARB_c", XS_OpenGL__Modern_glDrawElementsInstanced_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glDrawElementsInstancedEXT_c", XS_OpenGL__Modern_glDrawElementsInstanced_c);
        XSANY.any_i32 = 3;
        cv = newXS_deffile("OpenGL::Modern::glDrawElementsInstancedNV_c", XS_OpenGL__Modern_glDrawElementsInstanced_c);
        XSANY.any_i32 = 4;
        cv = newXS_deffile("OpenGL::Modern::glDrawElementsInstanced_c", XS_OpenGL__Modern_glDrawElementsInstanced_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glDrawElementsInstancedBaseInstanceEXT_c", XS_OpenGL__Modern_glDrawElementsInstancedBaseInstance_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glDrawElementsInstancedBaseInstance_c", XS_OpenGL__Modern_glDrawElementsInstancedBaseInstance_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glDrawElementsInstancedBaseVertexEXT_c", XS_OpenGL__Modern_glDrawElementsInstancedBaseVertex_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glDrawElementsInstancedBaseVertex_c", XS_OpenGL__Modern_glDrawElementsInstancedBaseVertex_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glDrawElementsInstancedBaseVertexBaseInstanceEXT_c", XS_OpenGL__Modern_glDrawElementsInstancedBaseVertexBaseInstance_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glDrawElementsInstancedBaseVertexBaseInstance_c", XS_OpenGL__Modern_glDrawElementsInstancedBaseVertexBaseInstance_c);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glDrawMeshTasksEXT", XS_OpenGL__Modern_glDrawMeshTasksEXT);
        newXS_deffile("OpenGL::Modern::glDrawMeshTasksIndirectEXT", XS_OpenGL__Modern_glDrawMeshTasksIndirectEXT);
        newXS_deffile("OpenGL::Modern::glDrawMeshTasksIndirectNV", XS_OpenGL__Modern_glDrawMeshTasksIndirectNV);
        newXS_deffile("OpenGL::Modern::glDrawMeshTasksNV", XS_OpenGL__Modern_glDrawMeshTasksNV);
        newXS_deffile("OpenGL::Modern::glDrawPixels_c", XS_OpenGL__Modern_glDrawPixels_c);
        newXS_deffile("OpenGL::Modern::glDrawRangeElementArrayAPPLE", XS_OpenGL__Modern_glDrawRangeElementArrayAPPLE);
        newXS_deffile("OpenGL::Modern::glDrawRangeElementArrayATI", XS_OpenGL__Modern_glDrawRangeElementArrayATI);
        cv = newXS_deffile("OpenGL::Modern::glDrawRangeElementsEXT_c", XS_OpenGL__Modern_glDrawRangeElements_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glDrawRangeElements_c", XS_OpenGL__Modern_glDrawRangeElements_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glDrawRangeElementsBaseVertexEXT_c", XS_OpenGL__Modern_glDrawRangeElementsBaseVertex_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glDrawRangeElementsBaseVertex_c", XS_OpenGL__Modern_glDrawRangeElementsBaseVertex_c);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glDrawTextureNV", XS_OpenGL__Modern_glDrawTextureNV);
        cv = newXS_deffile("OpenGL::Modern::glDrawTransformFeedback", XS_OpenGL__Modern_glDrawTransformFeedback);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glDrawTransformFeedbackEXT", XS_OpenGL__Modern_glDrawTransformFeedback);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glDrawTransformFeedbackNV", XS_OpenGL__Modern_glDrawTransformFeedback);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glDrawTransformFeedbackInstanced", XS_OpenGL__Modern_glDrawTransformFeedbackInstanced);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glDrawTransformFeedbackInstancedEXT", XS_OpenGL__Modern_glDrawTransformFeedbackInstanced);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glDrawTransformFeedbackStream", XS_OpenGL__Modern_glDrawTransformFeedbackStream);
        newXS_deffile("OpenGL::Modern::glDrawTransformFeedbackStreamInstanced", XS_OpenGL__Modern_glDrawTransformFeedbackStreamInstanced);
        newXS_deffile("OpenGL::Modern::glDrawVkImageNV", XS_OpenGL__Modern_glDrawVkImageNV);
        newXS_deffile("OpenGL::Modern::glEGLImageTargetRenderbufferStorageOES", XS_OpenGL__Modern_glEGLImageTargetRenderbufferStorageOES);
        newXS_deffile("OpenGL::Modern::glEGLImageTargetTexStorageEXT_c", XS_OpenGL__Modern_glEGLImageTargetTexStorageEXT_c);
        newXS_deffile("OpenGL::Modern::glEGLImageTargetTexture2DOES", XS_OpenGL__Modern_glEGLImageTargetTexture2DOES);
        newXS_deffile("OpenGL::Modern::glEGLImageTargetTextureStorageEXT_c", XS_OpenGL__Modern_glEGLImageTargetTextureStorageEXT_c);
        newXS_deffile("OpenGL::Modern::glEdgeFlag", XS_OpenGL__Modern_glEdgeFlag);
        newXS_deffile("OpenGL::Modern::glEdgeFlagFormatNV", XS_OpenGL__Modern_glEdgeFlagFormatNV);
        newXS_deffile("OpenGL::Modern::glEdgeFlagPointer_c", XS_OpenGL__Modern_glEdgeFlagPointer_c);
        newXS_deffile("OpenGL::Modern::glEdgeFlagPointerEXT_c", XS_OpenGL__Modern_glEdgeFlagPointerEXT_c);
        newXS_deffile("OpenGL::Modern::glEdgeFlagPointerListIBM_c", XS_OpenGL__Modern_glEdgeFlagPointerListIBM_c);
        newXS_deffile("OpenGL::Modern::glEdgeFlagv_c", XS_OpenGL__Modern_glEdgeFlagv_c);
        newXS_deffile("OpenGL::Modern::glEdgeFlagv_p", XS_OpenGL__Modern_glEdgeFlagv_p);
        newXS_deffile("OpenGL::Modern::glElementPointerAPPLE_c", XS_OpenGL__Modern_glElementPointerAPPLE_c);
        newXS_deffile("OpenGL::Modern::glElementPointerATI_c", XS_OpenGL__Modern_glElementPointerATI_c);
        newXS_deffile("OpenGL::Modern::glEnable", XS_OpenGL__Modern_glEnable);
        newXS_deffile("OpenGL::Modern::glEnableClientState", XS_OpenGL__Modern_glEnableClientState);
        newXS_deffile("OpenGL::Modern::glEnableClientStateIndexedEXT", XS_OpenGL__Modern_glEnableClientStateIndexedEXT);
        newXS_deffile("OpenGL::Modern::glEnableClientStateiEXT", XS_OpenGL__Modern_glEnableClientStateiEXT);
        newXS_deffile("OpenGL::Modern::glEnableDriverControlQCOM", XS_OpenGL__Modern_glEnableDriverControlQCOM);
        newXS_deffile("OpenGL::Modern::glEnableVariantClientStateEXT", XS_OpenGL__Modern_glEnableVariantClientStateEXT);
        newXS_deffile("OpenGL::Modern::glEnableVertexArrayAttrib", XS_OpenGL__Modern_glEnableVertexArrayAttrib);
        newXS_deffile("OpenGL::Modern::glEnableVertexArrayAttribEXT", XS_OpenGL__Modern_glEnableVertexArrayAttribEXT);
        newXS_deffile("OpenGL::Modern::glEnableVertexArrayEXT", XS_OpenGL__Modern_glEnableVertexArrayEXT);
        newXS_deffile("OpenGL::Modern::glEnableVertexAttribAPPLE", XS_OpenGL__Modern_glEnableVertexAttribAPPLE);
        cv = newXS_deffile("OpenGL::Modern::glEnableVertexAttribArray", XS_OpenGL__Modern_glEnableVertexAttribArray);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glEnableVertexAttribArrayARB", XS_OpenGL__Modern_glEnableVertexAttribArray);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glEnableIndexedEXT", XS_OpenGL__Modern_glEnablei);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glEnablei", XS_OpenGL__Modern_glEnablei);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glEnableiEXT", XS_OpenGL__Modern_glEnablei);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glEnableiNV", XS_OpenGL__Modern_glEnablei);
        XSANY.any_i32 = 3;
        newXS_deffile("OpenGL::Modern::glEnableiOES", XS_OpenGL__Modern_glEnableiOES);
        newXS_deffile("OpenGL::Modern::glEnd", XS_OpenGL__Modern_glEnd);
        cv = newXS_deffile("OpenGL::Modern::glEndConditionalRender", XS_OpenGL__Modern_glEndConditionalRender);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glEndConditionalRenderNV", XS_OpenGL__Modern_glEndConditionalRender);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glEndConditionalRenderNVX", XS_OpenGL__Modern_glEndConditionalRender);
        XSANY.any_i32 = 2;
        newXS_deffile("OpenGL::Modern::glEndFragmentShaderATI", XS_OpenGL__Modern_glEndFragmentShaderATI);
        newXS_deffile("OpenGL::Modern::glEndList", XS_OpenGL__Modern_glEndList);
        newXS_deffile("OpenGL::Modern::glEndOcclusionQueryNV", XS_OpenGL__Modern_glEndOcclusionQueryNV);
        newXS_deffile("OpenGL::Modern::glEndPerfMonitorAMD", XS_OpenGL__Modern_glEndPerfMonitorAMD);
        newXS_deffile("OpenGL::Modern::glEndPerfQueryINTEL", XS_OpenGL__Modern_glEndPerfQueryINTEL);
        cv = newXS_deffile("OpenGL::Modern::glEndQuery", XS_OpenGL__Modern_glEndQuery);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glEndQueryARB", XS_OpenGL__Modern_glEndQuery);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glEndQueryANGLE", XS_OpenGL__Modern_glEndQueryANGLE);
        newXS_deffile("OpenGL::Modern::glEndQueryEXT", XS_OpenGL__Modern_glEndQueryEXT);
        newXS_deffile("OpenGL::Modern::glEndQueryIndexed", XS_OpenGL__Modern_glEndQueryIndexed);
        newXS_deffile("OpenGL::Modern::glEndSceneEXT", XS_OpenGL__Modern_glEndSceneEXT);
        newXS_deffile("OpenGL::Modern::glEndTilingQCOM", XS_OpenGL__Modern_glEndTilingQCOM);
        cv = newXS_deffile("OpenGL::Modern::glEndTransformFeedback", XS_OpenGL__Modern_glEndTransformFeedback);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glEndTransformFeedbackEXT", XS_OpenGL__Modern_glEndTransformFeedback);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glEndTransformFeedbackNV", XS_OpenGL__Modern_glEndTransformFeedback);
        XSANY.any_i32 = 2;
        newXS_deffile("OpenGL::Modern::glEndVertexShaderEXT", XS_OpenGL__Modern_glEndVertexShaderEXT);
        newXS_deffile("OpenGL::Modern::glEndVideoCaptureNV", XS_OpenGL__Modern_glEndVideoCaptureNV);
        newXS_deffile("OpenGL::Modern::glEvalCoord1d", XS_OpenGL__Modern_glEvalCoord1d);
        newXS_deffile("OpenGL::Modern::glEvalCoord1dv_c", XS_OpenGL__Modern_glEvalCoord1dv_c);
        newXS_deffile("OpenGL::Modern::glEvalCoord1dv_p", XS_OpenGL__Modern_glEvalCoord1dv_p);
        newXS_deffile("OpenGL::Modern::glEvalCoord1f", XS_OpenGL__Modern_glEvalCoord1f);
        newXS_deffile("OpenGL::Modern::glEvalCoord1fv_c", XS_OpenGL__Modern_glEvalCoord1fv_c);
        newXS_deffile("OpenGL::Modern::glEvalCoord1fv_p", XS_OpenGL__Modern_glEvalCoord1fv_p);
        newXS_deffile("OpenGL::Modern::glEvalCoord2d", XS_OpenGL__Modern_glEvalCoord2d);
        newXS_deffile("OpenGL::Modern::glEvalCoord2dv_c", XS_OpenGL__Modern_glEvalCoord2dv_c);
        newXS_deffile("OpenGL::Modern::glEvalCoord2dv_p", XS_OpenGL__Modern_glEvalCoord2dv_p);
        newXS_deffile("OpenGL::Modern::glEvalCoord2f", XS_OpenGL__Modern_glEvalCoord2f);
        newXS_deffile("OpenGL::Modern::glEvalCoord2fv_c", XS_OpenGL__Modern_glEvalCoord2fv_c);
        newXS_deffile("OpenGL::Modern::glEvalCoord2fv_p", XS_OpenGL__Modern_glEvalCoord2fv_p);
        newXS_deffile("OpenGL::Modern::glEvalMapsNV", XS_OpenGL__Modern_glEvalMapsNV);
        newXS_deffile("OpenGL::Modern::glEvalMesh1", XS_OpenGL__Modern_glEvalMesh1);
        newXS_deffile("OpenGL::Modern::glEvalMesh2", XS_OpenGL__Modern_glEvalMesh2);
        newXS_deffile("OpenGL::Modern::glEvalPoint1", XS_OpenGL__Modern_glEvalPoint1);
        newXS_deffile("OpenGL::Modern::glEvalPoint2", XS_OpenGL__Modern_glEvalPoint2);
        newXS_deffile("OpenGL::Modern::glEvaluateDepthValuesARB", XS_OpenGL__Modern_glEvaluateDepthValuesARB);
        newXS_deffile("OpenGL::Modern::glExecuteProgramNV_c", XS_OpenGL__Modern_glExecuteProgramNV_c);
        newXS_deffile("OpenGL::Modern::glExecuteProgramNV_p", XS_OpenGL__Modern_glExecuteProgramNV_p);
        newXS_deffile("OpenGL::Modern::glExtGetBufferPointervQCOM_c", XS_OpenGL__Modern_glExtGetBufferPointervQCOM_c);
        newXS_deffile("OpenGL::Modern::glExtGetBuffersQCOM_c", XS_OpenGL__Modern_glExtGetBuffersQCOM_c);
        newXS_deffile("OpenGL::Modern::glExtGetBuffersQCOM_p", XS_OpenGL__Modern_glExtGetBuffersQCOM_p);
        newXS_deffile("OpenGL::Modern::glExtGetFramebuffersQCOM_c", XS_OpenGL__Modern_glExtGetFramebuffersQCOM_c);
        newXS_deffile("OpenGL::Modern::glExtGetFramebuffersQCOM_p", XS_OpenGL__Modern_glExtGetFramebuffersQCOM_p);
        newXS_deffile("OpenGL::Modern::glExtGetProgramBinarySourceQCOM_c", XS_OpenGL__Modern_glExtGetProgramBinarySourceQCOM_c);
        newXS_deffile("OpenGL::Modern::glExtGetProgramsQCOM_c", XS_OpenGL__Modern_glExtGetProgramsQCOM_c);
        newXS_deffile("OpenGL::Modern::glExtGetProgramsQCOM_p", XS_OpenGL__Modern_glExtGetProgramsQCOM_p);
        newXS_deffile("OpenGL::Modern::glExtGetRenderbuffersQCOM_c", XS_OpenGL__Modern_glExtGetRenderbuffersQCOM_c);
        newXS_deffile("OpenGL::Modern::glExtGetRenderbuffersQCOM_p", XS_OpenGL__Modern_glExtGetRenderbuffersQCOM_p);
        newXS_deffile("OpenGL::Modern::glExtGetShadersQCOM_c", XS_OpenGL__Modern_glExtGetShadersQCOM_c);
        newXS_deffile("OpenGL::Modern::glExtGetShadersQCOM_p", XS_OpenGL__Modern_glExtGetShadersQCOM_p);
        newXS_deffile("OpenGL::Modern::glExtGetTexLevelParameterivQCOM_c", XS_OpenGL__Modern_glExtGetTexLevelParameterivQCOM_c);
        newXS_deffile("OpenGL::Modern::glExtGetTexSubImageQCOM_c", XS_OpenGL__Modern_glExtGetTexSubImageQCOM_c);
        newXS_deffile("OpenGL::Modern::glExtGetTexturesQCOM_c", XS_OpenGL__Modern_glExtGetTexturesQCOM_c);
        newXS_deffile("OpenGL::Modern::glExtIsProgramBinaryQCOM", XS_OpenGL__Modern_glExtIsProgramBinaryQCOM);
        newXS_deffile("OpenGL::Modern::glExtTexObjectStateOverrideiQCOM", XS_OpenGL__Modern_glExtTexObjectStateOverrideiQCOM);
        newXS_deffile("OpenGL::Modern::glExtractComponentEXT", XS_OpenGL__Modern_glExtractComponentEXT);
        newXS_deffile("OpenGL::Modern::glExtrapolateTex2DQCOM", XS_OpenGL__Modern_glExtrapolateTex2DQCOM);
        newXS_deffile("OpenGL::Modern::glFeedbackBuffer_c", XS_OpenGL__Modern_glFeedbackBuffer_c);
        newXS_deffile("OpenGL::Modern::glFeedbackBuffer_p", XS_OpenGL__Modern_glFeedbackBuffer_p);
        cv = newXS_deffile("OpenGL::Modern::glFenceSync", XS_OpenGL__Modern_glFenceSync);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glFenceSyncAPPLE", XS_OpenGL__Modern_glFenceSync);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glFinalCombinerInputNV", XS_OpenGL__Modern_glFinalCombinerInputNV);
        newXS_deffile("OpenGL::Modern::glFinish", XS_OpenGL__Modern_glFinish);
        newXS_deffile("OpenGL::Modern::glFinishAsyncSGIX_c", XS_OpenGL__Modern_glFinishAsyncSGIX_c);
        newXS_deffile("OpenGL::Modern::glFinishAsyncSGIX_p", XS_OpenGL__Modern_glFinishAsyncSGIX_p);
        newXS_deffile("OpenGL::Modern::glFinishFenceAPPLE", XS_OpenGL__Modern_glFinishFenceAPPLE);
        newXS_deffile("OpenGL::Modern::glFinishFenceNV", XS_OpenGL__Modern_glFinishFenceNV);
        newXS_deffile("OpenGL::Modern::glFinishObjectAPPLE", XS_OpenGL__Modern_glFinishObjectAPPLE);
        newXS_deffile("OpenGL::Modern::glFinishTextureSUNX", XS_OpenGL__Modern_glFinishTextureSUNX);
        newXS_deffile("OpenGL::Modern::glFlush", XS_OpenGL__Modern_glFlush);
        cv = newXS_deffile("OpenGL::Modern::glFlushMappedBufferRange", XS_OpenGL__Modern_glFlushMappedBufferRange);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glFlushMappedBufferRangeAPPLE", XS_OpenGL__Modern_glFlushMappedBufferRange);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glFlushMappedBufferRangeEXT", XS_OpenGL__Modern_glFlushMappedBufferRange);
        XSANY.any_i32 = 2;
        newXS_deffile("OpenGL::Modern::glFlushMappedNamedBufferRange", XS_OpenGL__Modern_glFlushMappedNamedBufferRange);
        newXS_deffile("OpenGL::Modern::glFlushMappedNamedBufferRangeEXT", XS_OpenGL__Modern_glFlushMappedNamedBufferRangeEXT);
        newXS_deffile("OpenGL::Modern::glFlushPixelDataRangeNV", XS_OpenGL__Modern_glFlushPixelDataRangeNV);
        newXS_deffile("OpenGL::Modern::glFlushRasterSGIX", XS_OpenGL__Modern_glFlushRasterSGIX);
        newXS_deffile("OpenGL::Modern::glFlushVertexArrayRangeAPPLE_c", XS_OpenGL__Modern_glFlushVertexArrayRangeAPPLE_c);
        newXS_deffile("OpenGL::Modern::glFlushVertexArrayRangeNV", XS_OpenGL__Modern_glFlushVertexArrayRangeNV);
        newXS_deffile("OpenGL::Modern::glFogCoordFormatNV", XS_OpenGL__Modern_glFogCoordFormatNV);
        cv = newXS_deffile("OpenGL::Modern::glFogCoordPointerEXT_c", XS_OpenGL__Modern_glFogCoordPointer_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glFogCoordPointer_c", XS_OpenGL__Modern_glFogCoordPointer_c);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glFogCoordPointerListIBM_c", XS_OpenGL__Modern_glFogCoordPointerListIBM_c);
        cv = newXS_deffile("OpenGL::Modern::glFogCoordd", XS_OpenGL__Modern_glFogCoordd);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glFogCoorddEXT", XS_OpenGL__Modern_glFogCoordd);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glFogCoorddvEXT_c", XS_OpenGL__Modern_glFogCoorddv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glFogCoorddv_c", XS_OpenGL__Modern_glFogCoorddv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glFogCoorddvEXT_p", XS_OpenGL__Modern_glFogCoorddv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glFogCoorddv_p", XS_OpenGL__Modern_glFogCoorddv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glFogCoordf", XS_OpenGL__Modern_glFogCoordf);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glFogCoordfEXT", XS_OpenGL__Modern_glFogCoordf);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glFogCoordfvEXT_c", XS_OpenGL__Modern_glFogCoordfv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glFogCoordfv_c", XS_OpenGL__Modern_glFogCoordfv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glFogCoordfvEXT_p", XS_OpenGL__Modern_glFogCoordfv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glFogCoordfv_p", XS_OpenGL__Modern_glFogCoordfv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glFogCoordhNV", XS_OpenGL__Modern_glFogCoordhNV);
        newXS_deffile("OpenGL::Modern::glFogCoordhvNV_c", XS_OpenGL__Modern_glFogCoordhvNV_c);
        newXS_deffile("OpenGL::Modern::glFogCoordhvNV_p", XS_OpenGL__Modern_glFogCoordhvNV_p);
        newXS_deffile("OpenGL::Modern::glFogFuncSGIS_c", XS_OpenGL__Modern_glFogFuncSGIS_c);
        newXS_deffile("OpenGL::Modern::glFogFuncSGIS_p", XS_OpenGL__Modern_glFogFuncSGIS_p);
        newXS_deffile("OpenGL::Modern::glFogLayersSGIX_c", XS_OpenGL__Modern_glFogLayersSGIX_c);
        newXS_deffile("OpenGL::Modern::glFogf", XS_OpenGL__Modern_glFogf);
        newXS_deffile("OpenGL::Modern::glFogfv_c", XS_OpenGL__Modern_glFogfv_c);
        newXS_deffile("OpenGL::Modern::glFogfv_p", XS_OpenGL__Modern_glFogfv_p);
        newXS_deffile("OpenGL::Modern::glFogi", XS_OpenGL__Modern_glFogi);
        newXS_deffile("OpenGL::Modern::glFogiv_c", XS_OpenGL__Modern_glFogiv_c);
        newXS_deffile("OpenGL::Modern::glFogiv_p", XS_OpenGL__Modern_glFogiv_p);
        newXS_deffile("OpenGL::Modern::glFogx", XS_OpenGL__Modern_glFogx);
        newXS_deffile("OpenGL::Modern::glFogxv_c", XS_OpenGL__Modern_glFogxv_c);
        newXS_deffile("OpenGL::Modern::glFogxv_p", XS_OpenGL__Modern_glFogxv_p);
        newXS_deffile("OpenGL::Modern::glFragmentColorMaterialEXT", XS_OpenGL__Modern_glFragmentColorMaterialEXT);
        newXS_deffile("OpenGL::Modern::glFragmentColorMaterialSGIX", XS_OpenGL__Modern_glFragmentColorMaterialSGIX);
        newXS_deffile("OpenGL::Modern::glFragmentCoverageColorNV", XS_OpenGL__Modern_glFragmentCoverageColorNV);
        newXS_deffile("OpenGL::Modern::glFragmentLightModelfEXT", XS_OpenGL__Modern_glFragmentLightModelfEXT);
        newXS_deffile("OpenGL::Modern::glFragmentLightModelfSGIX", XS_OpenGL__Modern_glFragmentLightModelfSGIX);
        newXS_deffile("OpenGL::Modern::glFragmentLightModelfvEXT_c", XS_OpenGL__Modern_glFragmentLightModelfvEXT_c);
        newXS_deffile("OpenGL::Modern::glFragmentLightModelfvSGIX_c", XS_OpenGL__Modern_glFragmentLightModelfvSGIX_c);
        newXS_deffile("OpenGL::Modern::glFragmentLightModeliEXT", XS_OpenGL__Modern_glFragmentLightModeliEXT);
        newXS_deffile("OpenGL::Modern::glFragmentLightModeliSGIX", XS_OpenGL__Modern_glFragmentLightModeliSGIX);
        newXS_deffile("OpenGL::Modern::glFragmentLightModelivEXT_c", XS_OpenGL__Modern_glFragmentLightModelivEXT_c);
        newXS_deffile("OpenGL::Modern::glFragmentLightModelivSGIX_c", XS_OpenGL__Modern_glFragmentLightModelivSGIX_c);
        newXS_deffile("OpenGL::Modern::glFragmentLightfEXT", XS_OpenGL__Modern_glFragmentLightfEXT);
        newXS_deffile("OpenGL::Modern::glFragmentLightfSGIX", XS_OpenGL__Modern_glFragmentLightfSGIX);
        newXS_deffile("OpenGL::Modern::glFragmentLightfvEXT_c", XS_OpenGL__Modern_glFragmentLightfvEXT_c);
        newXS_deffile("OpenGL::Modern::glFragmentLightfvSGIX_c", XS_OpenGL__Modern_glFragmentLightfvSGIX_c);
        newXS_deffile("OpenGL::Modern::glFragmentLightfvSGIX_p", XS_OpenGL__Modern_glFragmentLightfvSGIX_p);
        newXS_deffile("OpenGL::Modern::glFragmentLightiEXT", XS_OpenGL__Modern_glFragmentLightiEXT);
        newXS_deffile("OpenGL::Modern::glFragmentLightiSGIX", XS_OpenGL__Modern_glFragmentLightiSGIX);
        newXS_deffile("OpenGL::Modern::glFragmentLightivEXT_c", XS_OpenGL__Modern_glFragmentLightivEXT_c);
        newXS_deffile("OpenGL::Modern::glFragmentLightivSGIX_c", XS_OpenGL__Modern_glFragmentLightivSGIX_c);
        newXS_deffile("OpenGL::Modern::glFragmentLightivSGIX_p", XS_OpenGL__Modern_glFragmentLightivSGIX_p);
        newXS_deffile("OpenGL::Modern::glFragmentMaterialfEXT", XS_OpenGL__Modern_glFragmentMaterialfEXT);
        newXS_deffile("OpenGL::Modern::glFragmentMaterialfSGIX", XS_OpenGL__Modern_glFragmentMaterialfSGIX);
        newXS_deffile("OpenGL::Modern::glFragmentMaterialfvEXT_c", XS_OpenGL__Modern_glFragmentMaterialfvEXT_c);
        newXS_deffile("OpenGL::Modern::glFragmentMaterialfvSGIX_c", XS_OpenGL__Modern_glFragmentMaterialfvSGIX_c);
        newXS_deffile("OpenGL::Modern::glFragmentMaterialfvSGIX_p", XS_OpenGL__Modern_glFragmentMaterialfvSGIX_p);
        newXS_deffile("OpenGL::Modern::glFragmentMaterialiEXT", XS_OpenGL__Modern_glFragmentMaterialiEXT);
        newXS_deffile("OpenGL::Modern::glFragmentMaterialiSGIX", XS_OpenGL__Modern_glFragmentMaterialiSGIX);
        newXS_deffile("OpenGL::Modern::glFragmentMaterialivEXT_c", XS_OpenGL__Modern_glFragmentMaterialivEXT_c);
        newXS_deffile("OpenGL::Modern::glFragmentMaterialivSGIX_c", XS_OpenGL__Modern_glFragmentMaterialivSGIX_c);
        newXS_deffile("OpenGL::Modern::glFragmentMaterialivSGIX_p", XS_OpenGL__Modern_glFragmentMaterialivSGIX_p);
        newXS_deffile("OpenGL::Modern::glFrameTerminatorGREMEDY", XS_OpenGL__Modern_glFrameTerminatorGREMEDY);
        newXS_deffile("OpenGL::Modern::glFrameZoomSGIX", XS_OpenGL__Modern_glFrameZoomSGIX);
        newXS_deffile("OpenGL::Modern::glFramebufferDrawBufferEXT", XS_OpenGL__Modern_glFramebufferDrawBufferEXT);
        newXS_deffile("OpenGL::Modern::glFramebufferDrawBuffersEXT_c", XS_OpenGL__Modern_glFramebufferDrawBuffersEXT_c);
        newXS_deffile("OpenGL::Modern::glFramebufferDrawBuffersEXT_p", XS_OpenGL__Modern_glFramebufferDrawBuffersEXT_p);
        newXS_deffile("OpenGL::Modern::glFramebufferFetchBarrierEXT", XS_OpenGL__Modern_glFramebufferFetchBarrierEXT);
        newXS_deffile("OpenGL::Modern::glFramebufferFetchBarrierQCOM", XS_OpenGL__Modern_glFramebufferFetchBarrierQCOM);
        newXS_deffile("OpenGL::Modern::glFramebufferFoveationConfigQCOM_c", XS_OpenGL__Modern_glFramebufferFoveationConfigQCOM_c);
        newXS_deffile("OpenGL::Modern::glFramebufferFoveationConfigQCOM_p", XS_OpenGL__Modern_glFramebufferFoveationConfigQCOM_p);
        newXS_deffile("OpenGL::Modern::glFramebufferFoveationParametersQCOM", XS_OpenGL__Modern_glFramebufferFoveationParametersQCOM);
        newXS_deffile("OpenGL::Modern::glFramebufferParameteri", XS_OpenGL__Modern_glFramebufferParameteri);
        newXS_deffile("OpenGL::Modern::glFramebufferParameteriMESA", XS_OpenGL__Modern_glFramebufferParameteriMESA);
        newXS_deffile("OpenGL::Modern::glFramebufferPixelLocalStorageSizeEXT", XS_OpenGL__Modern_glFramebufferPixelLocalStorageSizeEXT);
        newXS_deffile("OpenGL::Modern::glFramebufferReadBufferEXT", XS_OpenGL__Modern_glFramebufferReadBufferEXT);
        cv = newXS_deffile("OpenGL::Modern::glFramebufferRenderbuffer", XS_OpenGL__Modern_glFramebufferRenderbuffer);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glFramebufferRenderbufferEXT", XS_OpenGL__Modern_glFramebufferRenderbuffer);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glFramebufferRenderbufferOES", XS_OpenGL__Modern_glFramebufferRenderbufferOES);
        newXS_deffile("OpenGL::Modern::glFramebufferSampleLocationsfvARB_c", XS_OpenGL__Modern_glFramebufferSampleLocationsfvARB_c);
        newXS_deffile("OpenGL::Modern::glFramebufferSampleLocationsfvNV_c", XS_OpenGL__Modern_glFramebufferSampleLocationsfvNV_c);
        newXS_deffile("OpenGL::Modern::glFramebufferSamplePositionsfvAMD_c", XS_OpenGL__Modern_glFramebufferSamplePositionsfvAMD_c);
        newXS_deffile("OpenGL::Modern::glFramebufferShadingRateEXT", XS_OpenGL__Modern_glFramebufferShadingRateEXT);
        cv = newXS_deffile("OpenGL::Modern::glFramebufferTexture", XS_OpenGL__Modern_glFramebufferTexture);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glFramebufferTextureARB", XS_OpenGL__Modern_glFramebufferTexture);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glFramebufferTextureEXT", XS_OpenGL__Modern_glFramebufferTexture);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glFramebufferTexture1D", XS_OpenGL__Modern_glFramebufferTexture1D);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glFramebufferTexture1DEXT", XS_OpenGL__Modern_glFramebufferTexture1D);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glFramebufferTexture2D", XS_OpenGL__Modern_glFramebufferTexture2D);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glFramebufferTexture2DEXT", XS_OpenGL__Modern_glFramebufferTexture2D);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glFramebufferTexture2DDownsampleIMG", XS_OpenGL__Modern_glFramebufferTexture2DDownsampleIMG);
        newXS_deffile("OpenGL::Modern::glFramebufferTexture2DMultisampleEXT", XS_OpenGL__Modern_glFramebufferTexture2DMultisampleEXT);
        newXS_deffile("OpenGL::Modern::glFramebufferTexture2DMultisampleIMG", XS_OpenGL__Modern_glFramebufferTexture2DMultisampleIMG);
        newXS_deffile("OpenGL::Modern::glFramebufferTexture2DOES", XS_OpenGL__Modern_glFramebufferTexture2DOES);
        cv = newXS_deffile("OpenGL::Modern::glFramebufferTexture3D", XS_OpenGL__Modern_glFramebufferTexture3D);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glFramebufferTexture3DEXT", XS_OpenGL__Modern_glFramebufferTexture3D);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glFramebufferTexture3DOES", XS_OpenGL__Modern_glFramebufferTexture3DOES);
        cv = newXS_deffile("OpenGL::Modern::glFramebufferTextureFaceARB", XS_OpenGL__Modern_glFramebufferTextureFaceARB);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glFramebufferTextureFaceEXT", XS_OpenGL__Modern_glFramebufferTextureFaceARB);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glFramebufferTextureLayer", XS_OpenGL__Modern_glFramebufferTextureLayer);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glFramebufferTextureLayerARB", XS_OpenGL__Modern_glFramebufferTextureLayer);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glFramebufferTextureLayerEXT", XS_OpenGL__Modern_glFramebufferTextureLayer);
        XSANY.any_i32 = 2;
        newXS_deffile("OpenGL::Modern::glFramebufferTextureLayerDownsampleIMG", XS_OpenGL__Modern_glFramebufferTextureLayerDownsampleIMG);
        newXS_deffile("OpenGL::Modern::glFramebufferTextureLayerNV", XS_OpenGL__Modern_glFramebufferTextureLayerNV);
        newXS_deffile("OpenGL::Modern::glFramebufferTextureMultisampleMultiviewOVR", XS_OpenGL__Modern_glFramebufferTextureMultisampleMultiviewOVR);
        newXS_deffile("OpenGL::Modern::glFramebufferTextureMultiviewOVR", XS_OpenGL__Modern_glFramebufferTextureMultiviewOVR);
        newXS_deffile("OpenGL::Modern::glFreeObjectBufferATI", XS_OpenGL__Modern_glFreeObjectBufferATI);
        newXS_deffile("OpenGL::Modern::glFrontFace", XS_OpenGL__Modern_glFrontFace);
        newXS_deffile("OpenGL::Modern::glFrustum", XS_OpenGL__Modern_glFrustum);
        newXS_deffile("OpenGL::Modern::glFrustumf", XS_OpenGL__Modern_glFrustumf);
        newXS_deffile("OpenGL::Modern::glFrustumfOES", XS_OpenGL__Modern_glFrustumfOES);
        newXS_deffile("OpenGL::Modern::glFrustumx", XS_OpenGL__Modern_glFrustumx);
        newXS_deffile("OpenGL::Modern::glGenAsyncMarkersSGIX", XS_OpenGL__Modern_glGenAsyncMarkersSGIX);
        cv = newXS_deffile("OpenGL::Modern::glGenBuffersARB_c", XS_OpenGL__Modern_glGenBuffers_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGenBuffers_c", XS_OpenGL__Modern_glGenBuffers_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGenBuffersARB_p", XS_OpenGL__Modern_glGenBuffers_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGenBuffers_p", XS_OpenGL__Modern_glGenBuffers_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGenFencesAPPLE_c", XS_OpenGL__Modern_glGenFencesAPPLE_c);
        newXS_deffile("OpenGL::Modern::glGenFencesAPPLE_p", XS_OpenGL__Modern_glGenFencesAPPLE_p);
        newXS_deffile("OpenGL::Modern::glGenFencesNV_c", XS_OpenGL__Modern_glGenFencesNV_c);
        newXS_deffile("OpenGL::Modern::glGenFencesNV_p", XS_OpenGL__Modern_glGenFencesNV_p);
        newXS_deffile("OpenGL::Modern::glGenFragmentShadersATI", XS_OpenGL__Modern_glGenFragmentShadersATI);
        cv = newXS_deffile("OpenGL::Modern::glGenFramebuffersEXT_c", XS_OpenGL__Modern_glGenFramebuffers_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGenFramebuffers_c", XS_OpenGL__Modern_glGenFramebuffers_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGenFramebuffersEXT_p", XS_OpenGL__Modern_glGenFramebuffers_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGenFramebuffers_p", XS_OpenGL__Modern_glGenFramebuffers_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGenFramebuffersOES_c", XS_OpenGL__Modern_glGenFramebuffersOES_c);
        newXS_deffile("OpenGL::Modern::glGenLists", XS_OpenGL__Modern_glGenLists);
        newXS_deffile("OpenGL::Modern::glGenMPEGPredictorsSGIX_c", XS_OpenGL__Modern_glGenMPEGPredictorsSGIX_c);
        newXS_deffile("OpenGL::Modern::glGenNamesAMD_c", XS_OpenGL__Modern_glGenNamesAMD_c);
        newXS_deffile("OpenGL::Modern::glGenNamesAMD_p", XS_OpenGL__Modern_glGenNamesAMD_p);
        newXS_deffile("OpenGL::Modern::glGenOcclusionQueriesNV_c", XS_OpenGL__Modern_glGenOcclusionQueriesNV_c);
        newXS_deffile("OpenGL::Modern::glGenOcclusionQueriesNV_p", XS_OpenGL__Modern_glGenOcclusionQueriesNV_p);
        newXS_deffile("OpenGL::Modern::glGenPathsNV", XS_OpenGL__Modern_glGenPathsNV);
        newXS_deffile("OpenGL::Modern::glGenPerfMonitorsAMD_c", XS_OpenGL__Modern_glGenPerfMonitorsAMD_c);
        newXS_deffile("OpenGL::Modern::glGenPerfMonitorsAMD_p", XS_OpenGL__Modern_glGenPerfMonitorsAMD_p);
        newXS_deffile("OpenGL::Modern::glGenProgramPipelines_c", XS_OpenGL__Modern_glGenProgramPipelines_c);
        newXS_deffile("OpenGL::Modern::glGenProgramPipelines_p", XS_OpenGL__Modern_glGenProgramPipelines_p);
        cv = newXS_deffile("OpenGL::Modern::glGenProgramsARB_c", XS_OpenGL__Modern_glGenProgramsARB_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGenProgramsNV_c", XS_OpenGL__Modern_glGenProgramsARB_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGenProgramsARB_p", XS_OpenGL__Modern_glGenProgramsARB_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGenProgramsNV_p", XS_OpenGL__Modern_glGenProgramsARB_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGenQueriesARB_c", XS_OpenGL__Modern_glGenQueries_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGenQueries_c", XS_OpenGL__Modern_glGenQueries_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGenQueriesARB_p", XS_OpenGL__Modern_glGenQueries_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGenQueries_p", XS_OpenGL__Modern_glGenQueries_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGenQueriesANGLE_c", XS_OpenGL__Modern_glGenQueriesANGLE_c);
        newXS_deffile("OpenGL::Modern::glGenQueriesEXT_c", XS_OpenGL__Modern_glGenQueriesEXT_c);
        newXS_deffile("OpenGL::Modern::glGenQueriesEXT_p", XS_OpenGL__Modern_glGenQueriesEXT_p);
        cv = newXS_deffile("OpenGL::Modern::glGenRenderbuffersEXT_c", XS_OpenGL__Modern_glGenRenderbuffers_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGenRenderbuffers_c", XS_OpenGL__Modern_glGenRenderbuffers_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGenRenderbuffersEXT_p", XS_OpenGL__Modern_glGenRenderbuffers_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGenRenderbuffers_p", XS_OpenGL__Modern_glGenRenderbuffers_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGenRenderbuffersOES_c", XS_OpenGL__Modern_glGenRenderbuffersOES_c);
        newXS_deffile("OpenGL::Modern::glGenSamplers_c", XS_OpenGL__Modern_glGenSamplers_c);
        newXS_deffile("OpenGL::Modern::glGenSamplers_p", XS_OpenGL__Modern_glGenSamplers_p);
        newXS_deffile("OpenGL::Modern::glGenSemaphoresEXT_c", XS_OpenGL__Modern_glGenSemaphoresEXT_c);
        newXS_deffile("OpenGL::Modern::glGenSemaphoresEXT_p", XS_OpenGL__Modern_glGenSemaphoresEXT_p);
        newXS_deffile("OpenGL::Modern::glGenSymbolsEXT", XS_OpenGL__Modern_glGenSymbolsEXT);
        newXS_deffile("OpenGL::Modern::glGenTextures_c", XS_OpenGL__Modern_glGenTextures_c);
        newXS_deffile("OpenGL::Modern::glGenTextures_p", XS_OpenGL__Modern_glGenTextures_p);
        newXS_deffile("OpenGL::Modern::glGenTexturesEXT_c", XS_OpenGL__Modern_glGenTexturesEXT_c);
        newXS_deffile("OpenGL::Modern::glGenTexturesEXT_p", XS_OpenGL__Modern_glGenTexturesEXT_p);
        cv = newXS_deffile("OpenGL::Modern::glGenTransformFeedbacksNV_c", XS_OpenGL__Modern_glGenTransformFeedbacks_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGenTransformFeedbacks_c", XS_OpenGL__Modern_glGenTransformFeedbacks_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGenTransformFeedbacksNV_p", XS_OpenGL__Modern_glGenTransformFeedbacks_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGenTransformFeedbacks_p", XS_OpenGL__Modern_glGenTransformFeedbacks_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGenVertexArraysAPPLE_c", XS_OpenGL__Modern_glGenVertexArrays_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGenVertexArrays_c", XS_OpenGL__Modern_glGenVertexArrays_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGenVertexArraysAPPLE_p", XS_OpenGL__Modern_glGenVertexArrays_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGenVertexArrays_p", XS_OpenGL__Modern_glGenVertexArrays_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGenVertexArraysOES_c", XS_OpenGL__Modern_glGenVertexArraysOES_c);
        newXS_deffile("OpenGL::Modern::glGenVertexArraysSGIX_c", XS_OpenGL__Modern_glGenVertexArraysSGIX_c);
        newXS_deffile("OpenGL::Modern::glGenVertexShadersEXT", XS_OpenGL__Modern_glGenVertexShadersEXT);
        cv = newXS_deffile("OpenGL::Modern::glGenerateMipmap", XS_OpenGL__Modern_glGenerateMipmap);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGenerateMipmapEXT", XS_OpenGL__Modern_glGenerateMipmap);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glGenerateMipmapOES", XS_OpenGL__Modern_glGenerateMipmapOES);
        newXS_deffile("OpenGL::Modern::glGenerateMultiTexMipmapEXT", XS_OpenGL__Modern_glGenerateMultiTexMipmapEXT);
        newXS_deffile("OpenGL::Modern::glGenerateTextureMipmap", XS_OpenGL__Modern_glGenerateTextureMipmap);
        newXS_deffile("OpenGL::Modern::glGenerateTextureMipmapEXT", XS_OpenGL__Modern_glGenerateTextureMipmapEXT);
        newXS_deffile("OpenGL::Modern::glGetActiveAtomicCounterBufferiv_c", XS_OpenGL__Modern_glGetActiveAtomicCounterBufferiv_c);
        newXS_deffile("OpenGL::Modern::glGetActiveAtomicCounterBufferiv_p", XS_OpenGL__Modern_glGetActiveAtomicCounterBufferiv_p);
        newXS_deffile("OpenGL::Modern::glGetActiveAttrib_c", XS_OpenGL__Modern_glGetActiveAttrib_c);
        newXS_deffile("OpenGL::Modern::glGetActiveAttrib_p", XS_OpenGL__Modern_glGetActiveAttrib_p);
        newXS_deffile("OpenGL::Modern::glGetActiveAttribARB_c", XS_OpenGL__Modern_glGetActiveAttribARB_c);
        newXS_deffile("OpenGL::Modern::glGetActiveAttribARB_p", XS_OpenGL__Modern_glGetActiveAttribARB_p);
        newXS_deffile("OpenGL::Modern::glGetActiveSubroutineName_c", XS_OpenGL__Modern_glGetActiveSubroutineName_c);
        newXS_deffile("OpenGL::Modern::glGetActiveSubroutineName_p", XS_OpenGL__Modern_glGetActiveSubroutineName_p);
        newXS_deffile("OpenGL::Modern::glGetActiveSubroutineUniformName_c", XS_OpenGL__Modern_glGetActiveSubroutineUniformName_c);
        newXS_deffile("OpenGL::Modern::glGetActiveSubroutineUniformName_p", XS_OpenGL__Modern_glGetActiveSubroutineUniformName_p);
        newXS_deffile("OpenGL::Modern::glGetActiveSubroutineUniformiv_c", XS_OpenGL__Modern_glGetActiveSubroutineUniformiv_c);
        newXS_deffile("OpenGL::Modern::glGetActiveSubroutineUniformiv_p", XS_OpenGL__Modern_glGetActiveSubroutineUniformiv_p);
        newXS_deffile("OpenGL::Modern::glGetActiveUniform_c", XS_OpenGL__Modern_glGetActiveUniform_c);
        newXS_deffile("OpenGL::Modern::glGetActiveUniform_p", XS_OpenGL__Modern_glGetActiveUniform_p);
        newXS_deffile("OpenGL::Modern::glGetActiveUniformARB_c", XS_OpenGL__Modern_glGetActiveUniformARB_c);
        newXS_deffile("OpenGL::Modern::glGetActiveUniformARB_p", XS_OpenGL__Modern_glGetActiveUniformARB_p);
        newXS_deffile("OpenGL::Modern::glGetActiveUniformBlockName_c", XS_OpenGL__Modern_glGetActiveUniformBlockName_c);
        newXS_deffile("OpenGL::Modern::glGetActiveUniformBlockName_p", XS_OpenGL__Modern_glGetActiveUniformBlockName_p);
        newXS_deffile("OpenGL::Modern::glGetActiveUniformBlockiv_c", XS_OpenGL__Modern_glGetActiveUniformBlockiv_c);
        newXS_deffile("OpenGL::Modern::glGetActiveUniformName_c", XS_OpenGL__Modern_glGetActiveUniformName_c);
        newXS_deffile("OpenGL::Modern::glGetActiveUniformName_p", XS_OpenGL__Modern_glGetActiveUniformName_p);
        newXS_deffile("OpenGL::Modern::glGetActiveUniformsiv_c", XS_OpenGL__Modern_glGetActiveUniformsiv_c);
        newXS_deffile("OpenGL::Modern::glGetActiveUniformsiv_p", XS_OpenGL__Modern_glGetActiveUniformsiv_p);
        newXS_deffile("OpenGL::Modern::glGetActiveVaryingNV_c", XS_OpenGL__Modern_glGetActiveVaryingNV_c);
        newXS_deffile("OpenGL::Modern::glGetActiveVaryingNV_p", XS_OpenGL__Modern_glGetActiveVaryingNV_p);
        newXS_deffile("OpenGL::Modern::glGetArrayObjectfvATI_c", XS_OpenGL__Modern_glGetArrayObjectfvATI_c);
        newXS_deffile("OpenGL::Modern::glGetArrayObjectfvATI_p", XS_OpenGL__Modern_glGetArrayObjectfvATI_p);
        newXS_deffile("OpenGL::Modern::glGetArrayObjectivATI_c", XS_OpenGL__Modern_glGetArrayObjectivATI_c);
        newXS_deffile("OpenGL::Modern::glGetArrayObjectivATI_p", XS_OpenGL__Modern_glGetArrayObjectivATI_p);
        newXS_deffile("OpenGL::Modern::glGetAttachedObjectsARB_c", XS_OpenGL__Modern_glGetAttachedObjectsARB_c);
        newXS_deffile("OpenGL::Modern::glGetAttachedShaders_c", XS_OpenGL__Modern_glGetAttachedShaders_c);
        newXS_deffile("OpenGL::Modern::glGetAttachedShaders_p", XS_OpenGL__Modern_glGetAttachedShaders_p);
        newXS_deffile("OpenGL::Modern::glGetAttribLocation", XS_OpenGL__Modern_glGetAttribLocation);
        newXS_deffile("OpenGL::Modern::glGetAttribLocationARB", XS_OpenGL__Modern_glGetAttribLocationARB);
        cv = newXS_deffile("OpenGL::Modern::glGetBooleanIndexedvEXT_c", XS_OpenGL__Modern_glGetBooleani_v_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetBooleani_v_c", XS_OpenGL__Modern_glGetBooleani_v_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetBooleanIndexedvEXT_p", XS_OpenGL__Modern_glGetBooleani_v_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetBooleani_v_p", XS_OpenGL__Modern_glGetBooleani_v_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGetBooleanv_c", XS_OpenGL__Modern_glGetBooleanv_c);
        newXS_deffile("OpenGL::Modern::glGetBooleanv_p", XS_OpenGL__Modern_glGetBooleanv_p);
        newXS_deffile("OpenGL::Modern::glGetBufferParameteri64v_c", XS_OpenGL__Modern_glGetBufferParameteri64v_c);
        newXS_deffile("OpenGL::Modern::glGetBufferParameteri64v_p", XS_OpenGL__Modern_glGetBufferParameteri64v_p);
        cv = newXS_deffile("OpenGL::Modern::glGetBufferParameterivARB_c", XS_OpenGL__Modern_glGetBufferParameteriv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetBufferParameteriv_c", XS_OpenGL__Modern_glGetBufferParameteriv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetBufferParameterivARB_p", XS_OpenGL__Modern_glGetBufferParameteriv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetBufferParameteriv_p", XS_OpenGL__Modern_glGetBufferParameteriv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGetBufferParameterui64vNV_c", XS_OpenGL__Modern_glGetBufferParameterui64vNV_c);
        cv = newXS_deffile("OpenGL::Modern::glGetBufferPointervARB_c", XS_OpenGL__Modern_glGetBufferPointerv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetBufferPointerv_c", XS_OpenGL__Modern_glGetBufferPointerv_c);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGetBufferPointervOES_c", XS_OpenGL__Modern_glGetBufferPointervOES_c);
        cv = newXS_deffile("OpenGL::Modern::glGetBufferSubDataARB_c", XS_OpenGL__Modern_glGetBufferSubData_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetBufferSubData_c", XS_OpenGL__Modern_glGetBufferSubData_c);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGetClipPlane_c", XS_OpenGL__Modern_glGetClipPlane_c);
        newXS_deffile("OpenGL::Modern::glGetClipPlane_p", XS_OpenGL__Modern_glGetClipPlane_p);
        newXS_deffile("OpenGL::Modern::glGetClipPlanef_c", XS_OpenGL__Modern_glGetClipPlanef_c);
        newXS_deffile("OpenGL::Modern::glGetClipPlanef_p", XS_OpenGL__Modern_glGetClipPlanef_p);
        newXS_deffile("OpenGL::Modern::glGetClipPlanefOES_c", XS_OpenGL__Modern_glGetClipPlanefOES_c);
        newXS_deffile("OpenGL::Modern::glGetClipPlanex_c", XS_OpenGL__Modern_glGetClipPlanex_c);
        newXS_deffile("OpenGL::Modern::glGetClipPlanex_p", XS_OpenGL__Modern_glGetClipPlanex_p);
        cv = newXS_deffile("OpenGL::Modern::glGetColorTableEXT_c", XS_OpenGL__Modern_glGetColorTable_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetColorTable_c", XS_OpenGL__Modern_glGetColorTable_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetColorTableParameterfvEXT_c", XS_OpenGL__Modern_glGetColorTableParameterfv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetColorTableParameterfv_c", XS_OpenGL__Modern_glGetColorTableParameterfv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetColorTableParameterfvEXT_p", XS_OpenGL__Modern_glGetColorTableParameterfv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetColorTableParameterfv_p", XS_OpenGL__Modern_glGetColorTableParameterfv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGetColorTableParameterfvSGI_c", XS_OpenGL__Modern_glGetColorTableParameterfvSGI_c);
        newXS_deffile("OpenGL::Modern::glGetColorTableParameterfvSGI_p", XS_OpenGL__Modern_glGetColorTableParameterfvSGI_p);
        cv = newXS_deffile("OpenGL::Modern::glGetColorTableParameterivEXT_c", XS_OpenGL__Modern_glGetColorTableParameteriv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetColorTableParameteriv_c", XS_OpenGL__Modern_glGetColorTableParameteriv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetColorTableParameterivEXT_p", XS_OpenGL__Modern_glGetColorTableParameteriv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetColorTableParameteriv_p", XS_OpenGL__Modern_glGetColorTableParameteriv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGetColorTableParameterivSGI_c", XS_OpenGL__Modern_glGetColorTableParameterivSGI_c);
        newXS_deffile("OpenGL::Modern::glGetColorTableParameterivSGI_p", XS_OpenGL__Modern_glGetColorTableParameterivSGI_p);
        newXS_deffile("OpenGL::Modern::glGetColorTableSGI_c", XS_OpenGL__Modern_glGetColorTableSGI_c);
        newXS_deffile("OpenGL::Modern::glGetCombinerInputParameterfvNV_c", XS_OpenGL__Modern_glGetCombinerInputParameterfvNV_c);
        newXS_deffile("OpenGL::Modern::glGetCombinerInputParameterivNV_c", XS_OpenGL__Modern_glGetCombinerInputParameterivNV_c);
        newXS_deffile("OpenGL::Modern::glGetCombinerOutputParameterfvNV_c", XS_OpenGL__Modern_glGetCombinerOutputParameterfvNV_c);
        newXS_deffile("OpenGL::Modern::glGetCombinerOutputParameterivNV_c", XS_OpenGL__Modern_glGetCombinerOutputParameterivNV_c);
        newXS_deffile("OpenGL::Modern::glGetCombinerStageParameterfvNV_c", XS_OpenGL__Modern_glGetCombinerStageParameterfvNV_c);
        newXS_deffile("OpenGL::Modern::glGetCommandHeaderNV", XS_OpenGL__Modern_glGetCommandHeaderNV);
        newXS_deffile("OpenGL::Modern::glGetCompressedMultiTexImageEXT_c", XS_OpenGL__Modern_glGetCompressedMultiTexImageEXT_c);
        cv = newXS_deffile("OpenGL::Modern::glGetCompressedTexImageARB_c", XS_OpenGL__Modern_glGetCompressedTexImage_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetCompressedTexImage_c", XS_OpenGL__Modern_glGetCompressedTexImage_c);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGetCompressedTextureImage_c", XS_OpenGL__Modern_glGetCompressedTextureImage_c);
        newXS_deffile("OpenGL::Modern::glGetCompressedTextureImageEXT_c", XS_OpenGL__Modern_glGetCompressedTextureImageEXT_c);
        newXS_deffile("OpenGL::Modern::glGetCompressedTextureSubImage_c", XS_OpenGL__Modern_glGetCompressedTextureSubImage_c);
        newXS_deffile("OpenGL::Modern::glGetConvolutionFilter_c", XS_OpenGL__Modern_glGetConvolutionFilter_c);
        newXS_deffile("OpenGL::Modern::glGetConvolutionFilterEXT_c", XS_OpenGL__Modern_glGetConvolutionFilterEXT_c);
        newXS_deffile("OpenGL::Modern::glGetConvolutionParameterfv_c", XS_OpenGL__Modern_glGetConvolutionParameterfv_c);
        newXS_deffile("OpenGL::Modern::glGetConvolutionParameterfv_p", XS_OpenGL__Modern_glGetConvolutionParameterfv_p);
        newXS_deffile("OpenGL::Modern::glGetConvolutionParameterfvEXT_c", XS_OpenGL__Modern_glGetConvolutionParameterfvEXT_c);
        newXS_deffile("OpenGL::Modern::glGetConvolutionParameterfvEXT_p", XS_OpenGL__Modern_glGetConvolutionParameterfvEXT_p);
        newXS_deffile("OpenGL::Modern::glGetConvolutionParameteriv_c", XS_OpenGL__Modern_glGetConvolutionParameteriv_c);
        newXS_deffile("OpenGL::Modern::glGetConvolutionParameteriv_p", XS_OpenGL__Modern_glGetConvolutionParameteriv_p);
        newXS_deffile("OpenGL::Modern::glGetConvolutionParameterivEXT_c", XS_OpenGL__Modern_glGetConvolutionParameterivEXT_c);
        newXS_deffile("OpenGL::Modern::glGetConvolutionParameterivEXT_p", XS_OpenGL__Modern_glGetConvolutionParameterivEXT_p);
        newXS_deffile("OpenGL::Modern::glGetCoverageModulationTableNV_c", XS_OpenGL__Modern_glGetCoverageModulationTableNV_c);
        cv = newXS_deffile("OpenGL::Modern::glGetDebugMessageLogARB_c", XS_OpenGL__Modern_glGetDebugMessageLog_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetDebugMessageLogKHR_c", XS_OpenGL__Modern_glGetDebugMessageLog_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glGetDebugMessageLog_c", XS_OpenGL__Modern_glGetDebugMessageLog_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetDebugMessageLogARB_p", XS_OpenGL__Modern_glGetDebugMessageLog_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetDebugMessageLogKHR_p", XS_OpenGL__Modern_glGetDebugMessageLog_p);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glGetDebugMessageLog_p", XS_OpenGL__Modern_glGetDebugMessageLog_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGetDebugMessageLogAMD_c", XS_OpenGL__Modern_glGetDebugMessageLogAMD_c);
        newXS_deffile("OpenGL::Modern::glGetDebugMessageLogAMD_p", XS_OpenGL__Modern_glGetDebugMessageLogAMD_p);
        newXS_deffile("OpenGL::Modern::glGetDetailTexFuncSGIS_c", XS_OpenGL__Modern_glGetDetailTexFuncSGIS_c);
        newXS_deffile("OpenGL::Modern::glGetDetailTexFuncSGIS_p", XS_OpenGL__Modern_glGetDetailTexFuncSGIS_p);
        cv = newXS_deffile("OpenGL::Modern::glGetDoubleIndexedvEXT_c", XS_OpenGL__Modern_glGetDoublei_v_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetDoublei_vEXT_c", XS_OpenGL__Modern_glGetDoublei_v_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glGetDoublei_v_c", XS_OpenGL__Modern_glGetDoublei_v_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetDoubleIndexedvEXT_p", XS_OpenGL__Modern_glGetDoublei_v_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetDoublei_vEXT_p", XS_OpenGL__Modern_glGetDoublei_v_p);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glGetDoublei_v_p", XS_OpenGL__Modern_glGetDoublei_v_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGetDoublev_c", XS_OpenGL__Modern_glGetDoublev_c);
        newXS_deffile("OpenGL::Modern::glGetDoublev_p", XS_OpenGL__Modern_glGetDoublev_p);
        newXS_deffile("OpenGL::Modern::glGetDriverControlStringQCOM_c", XS_OpenGL__Modern_glGetDriverControlStringQCOM_c);
        newXS_deffile("OpenGL::Modern::glGetDriverControlsQCOM_c", XS_OpenGL__Modern_glGetDriverControlsQCOM_c);
        newXS_deffile("OpenGL::Modern::glGetError", XS_OpenGL__Modern_glGetError);
        newXS_deffile("OpenGL::Modern::glGetExtensionREGAL", XS_OpenGL__Modern_glGetExtensionREGAL);
        newXS_deffile("OpenGL::Modern::glGetFenceivNV_c", XS_OpenGL__Modern_glGetFenceivNV_c);
        newXS_deffile("OpenGL::Modern::glGetFinalCombinerInputParameterfvNV_c", XS_OpenGL__Modern_glGetFinalCombinerInputParameterfvNV_c);
        newXS_deffile("OpenGL::Modern::glGetFinalCombinerInputParameterivNV_c", XS_OpenGL__Modern_glGetFinalCombinerInputParameterivNV_c);
        newXS_deffile("OpenGL::Modern::glGetFirstPerfQueryIdINTEL_c", XS_OpenGL__Modern_glGetFirstPerfQueryIdINTEL_c);
        newXS_deffile("OpenGL::Modern::glGetFixedv_c", XS_OpenGL__Modern_glGetFixedv_c);
        cv = newXS_deffile("OpenGL::Modern::glGetFloatIndexedvEXT_c", XS_OpenGL__Modern_glGetFloati_v_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetFloati_vEXT_c", XS_OpenGL__Modern_glGetFloati_v_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glGetFloati_vNV_c", XS_OpenGL__Modern_glGetFloati_v_c);
        XSANY.any_i32 = 3;
        cv = newXS_deffile("OpenGL::Modern::glGetFloati_v_c", XS_OpenGL__Modern_glGetFloati_v_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetFloatIndexedvEXT_p", XS_OpenGL__Modern_glGetFloati_v_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetFloati_vEXT_p", XS_OpenGL__Modern_glGetFloati_v_p);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glGetFloati_vNV_p", XS_OpenGL__Modern_glGetFloati_v_p);
        XSANY.any_i32 = 3;
        cv = newXS_deffile("OpenGL::Modern::glGetFloati_v_p", XS_OpenGL__Modern_glGetFloati_v_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGetFloatv_c", XS_OpenGL__Modern_glGetFloatv_c);
        newXS_deffile("OpenGL::Modern::glGetFloatv_p", XS_OpenGL__Modern_glGetFloatv_p);
        newXS_deffile("OpenGL::Modern::glGetFogFuncSGIS_c", XS_OpenGL__Modern_glGetFogFuncSGIS_c);
        newXS_deffile("OpenGL::Modern::glGetFogLayersSGIX_c", XS_OpenGL__Modern_glGetFogLayersSGIX_c);
        cv = newXS_deffile("OpenGL::Modern::glGetFragDataIndex", XS_OpenGL__Modern_glGetFragDataIndex);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetFragDataIndexEXT", XS_OpenGL__Modern_glGetFragDataIndex);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetFragDataLocation", XS_OpenGL__Modern_glGetFragDataLocation);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetFragDataLocationEXT", XS_OpenGL__Modern_glGetFragDataLocation);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glGetFragmentLightfvEXT_c", XS_OpenGL__Modern_glGetFragmentLightfvEXT_c);
        newXS_deffile("OpenGL::Modern::glGetFragmentLightfvSGIX_c", XS_OpenGL__Modern_glGetFragmentLightfvSGIX_c);
        newXS_deffile("OpenGL::Modern::glGetFragmentLightfvSGIX_p", XS_OpenGL__Modern_glGetFragmentLightfvSGIX_p);
        newXS_deffile("OpenGL::Modern::glGetFragmentLightivEXT_c", XS_OpenGL__Modern_glGetFragmentLightivEXT_c);
        newXS_deffile("OpenGL::Modern::glGetFragmentLightivSGIX_c", XS_OpenGL__Modern_glGetFragmentLightivSGIX_c);
        newXS_deffile("OpenGL::Modern::glGetFragmentLightivSGIX_p", XS_OpenGL__Modern_glGetFragmentLightivSGIX_p);
        newXS_deffile("OpenGL::Modern::glGetFragmentMaterialfvEXT_c", XS_OpenGL__Modern_glGetFragmentMaterialfvEXT_c);
        newXS_deffile("OpenGL::Modern::glGetFragmentMaterialfvSGIX_c", XS_OpenGL__Modern_glGetFragmentMaterialfvSGIX_c);
        newXS_deffile("OpenGL::Modern::glGetFragmentMaterialfvSGIX_p", XS_OpenGL__Modern_glGetFragmentMaterialfvSGIX_p);
        newXS_deffile("OpenGL::Modern::glGetFragmentMaterialivEXT_c", XS_OpenGL__Modern_glGetFragmentMaterialivEXT_c);
        newXS_deffile("OpenGL::Modern::glGetFragmentMaterialivSGIX_c", XS_OpenGL__Modern_glGetFragmentMaterialivSGIX_c);
        newXS_deffile("OpenGL::Modern::glGetFragmentMaterialivSGIX_p", XS_OpenGL__Modern_glGetFragmentMaterialivSGIX_p);
        newXS_deffile("OpenGL::Modern::glGetFragmentShadingRatesEXT_c", XS_OpenGL__Modern_glGetFragmentShadingRatesEXT_c);
        newXS_deffile("OpenGL::Modern::glGetFragmentShadingRatesEXT_p", XS_OpenGL__Modern_glGetFragmentShadingRatesEXT_p);
        cv = newXS_deffile("OpenGL::Modern::glGetFramebufferAttachmentParameterivEXT_c", XS_OpenGL__Modern_glGetFramebufferAttachmentParameteriv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetFramebufferAttachmentParameteriv_c", XS_OpenGL__Modern_glGetFramebufferAttachmentParameteriv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetFramebufferAttachmentParameterivEXT_p", XS_OpenGL__Modern_glGetFramebufferAttachmentParameteriv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetFramebufferAttachmentParameteriv_p", XS_OpenGL__Modern_glGetFramebufferAttachmentParameteriv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGetFramebufferAttachmentParameterivOES_c", XS_OpenGL__Modern_glGetFramebufferAttachmentParameterivOES_c);
        newXS_deffile("OpenGL::Modern::glGetFramebufferParameterfvAMD_c", XS_OpenGL__Modern_glGetFramebufferParameterfvAMD_c);
        newXS_deffile("OpenGL::Modern::glGetFramebufferParameteriv_c", XS_OpenGL__Modern_glGetFramebufferParameteriv_c);
        newXS_deffile("OpenGL::Modern::glGetFramebufferParameteriv_p", XS_OpenGL__Modern_glGetFramebufferParameteriv_p);
        newXS_deffile("OpenGL::Modern::glGetFramebufferParameterivEXT_c", XS_OpenGL__Modern_glGetFramebufferParameterivEXT_c);
        newXS_deffile("OpenGL::Modern::glGetFramebufferParameterivEXT_p", XS_OpenGL__Modern_glGetFramebufferParameterivEXT_p);
        newXS_deffile("OpenGL::Modern::glGetFramebufferParameterivMESA_c", XS_OpenGL__Modern_glGetFramebufferParameterivMESA_c);
        newXS_deffile("OpenGL::Modern::glGetFramebufferParameterivMESA_p", XS_OpenGL__Modern_glGetFramebufferParameterivMESA_p);
        newXS_deffile("OpenGL::Modern::glGetFramebufferPixelLocalStorageSizeEXT", XS_OpenGL__Modern_glGetFramebufferPixelLocalStorageSizeEXT);
        cv = newXS_deffile("OpenGL::Modern::glGetGraphicsResetStatus", XS_OpenGL__Modern_glGetGraphicsResetStatus);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetGraphicsResetStatusEXT", XS_OpenGL__Modern_glGetGraphicsResetStatus);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetGraphicsResetStatusKHR", XS_OpenGL__Modern_glGetGraphicsResetStatus);
        XSANY.any_i32 = 2;
        newXS_deffile("OpenGL::Modern::glGetGraphicsResetStatusARB", XS_OpenGL__Modern_glGetGraphicsResetStatusARB);
        newXS_deffile("OpenGL::Modern::glGetHandleARB", XS_OpenGL__Modern_glGetHandleARB);
        newXS_deffile("OpenGL::Modern::glGetHistogram_c", XS_OpenGL__Modern_glGetHistogram_c);
        newXS_deffile("OpenGL::Modern::glGetHistogramEXT_c", XS_OpenGL__Modern_glGetHistogramEXT_c);
        newXS_deffile("OpenGL::Modern::glGetHistogramParameterfv_c", XS_OpenGL__Modern_glGetHistogramParameterfv_c);
        newXS_deffile("OpenGL::Modern::glGetHistogramParameterfv_p", XS_OpenGL__Modern_glGetHistogramParameterfv_p);
        newXS_deffile("OpenGL::Modern::glGetHistogramParameterfvEXT_c", XS_OpenGL__Modern_glGetHistogramParameterfvEXT_c);
        newXS_deffile("OpenGL::Modern::glGetHistogramParameterfvEXT_p", XS_OpenGL__Modern_glGetHistogramParameterfvEXT_p);
        newXS_deffile("OpenGL::Modern::glGetHistogramParameteriv_c", XS_OpenGL__Modern_glGetHistogramParameteriv_c);
        newXS_deffile("OpenGL::Modern::glGetHistogramParameteriv_p", XS_OpenGL__Modern_glGetHistogramParameteriv_p);
        newXS_deffile("OpenGL::Modern::glGetHistogramParameterivEXT_c", XS_OpenGL__Modern_glGetHistogramParameterivEXT_c);
        newXS_deffile("OpenGL::Modern::glGetHistogramParameterivEXT_p", XS_OpenGL__Modern_glGetHistogramParameterivEXT_p);
        newXS_deffile("OpenGL::Modern::glGetImageHandleARB", XS_OpenGL__Modern_glGetImageHandleARB);
        newXS_deffile("OpenGL::Modern::glGetImageHandleNV", XS_OpenGL__Modern_glGetImageHandleNV);
        newXS_deffile("OpenGL::Modern::glGetImageTransformParameterfvHP_c", XS_OpenGL__Modern_glGetImageTransformParameterfvHP_c);
        newXS_deffile("OpenGL::Modern::glGetImageTransformParameterivHP_c", XS_OpenGL__Modern_glGetImageTransformParameterivHP_c);
        newXS_deffile("OpenGL::Modern::glGetInfoLogARB_c", XS_OpenGL__Modern_glGetInfoLogARB_c);
        newXS_deffile("OpenGL::Modern::glGetInfoLogARB_p", XS_OpenGL__Modern_glGetInfoLogARB_p);
        newXS_deffile("OpenGL::Modern::glGetInteger64i_v_c", XS_OpenGL__Modern_glGetInteger64i_v_c);
        newXS_deffile("OpenGL::Modern::glGetInteger64i_v_p", XS_OpenGL__Modern_glGetInteger64i_v_p);
        cv = newXS_deffile("OpenGL::Modern::glGetInteger64vAPPLE_c", XS_OpenGL__Modern_glGetInteger64v_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetInteger64vEXT_c", XS_OpenGL__Modern_glGetInteger64v_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glGetInteger64v_c", XS_OpenGL__Modern_glGetInteger64v_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetInteger64vAPPLE_p", XS_OpenGL__Modern_glGetInteger64v_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetInteger64vEXT_p", XS_OpenGL__Modern_glGetInteger64v_p);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glGetInteger64v_p", XS_OpenGL__Modern_glGetInteger64v_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetIntegerIndexedvEXT_c", XS_OpenGL__Modern_glGetIntegeri_v_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetIntegeri_v_c", XS_OpenGL__Modern_glGetIntegeri_v_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetIntegerIndexedvEXT_p", XS_OpenGL__Modern_glGetIntegeri_v_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetIntegeri_v_p", XS_OpenGL__Modern_glGetIntegeri_v_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGetIntegeri_vEXT_c", XS_OpenGL__Modern_glGetIntegeri_vEXT_c);
        newXS_deffile("OpenGL::Modern::glGetIntegerui64i_vNV_c", XS_OpenGL__Modern_glGetIntegerui64i_vNV_c);
        newXS_deffile("OpenGL::Modern::glGetIntegerui64vNV_c", XS_OpenGL__Modern_glGetIntegerui64vNV_c);
        newXS_deffile("OpenGL::Modern::glGetIntegerv_c", XS_OpenGL__Modern_glGetIntegerv_c);
        newXS_deffile("OpenGL::Modern::glGetIntegerv_p", XS_OpenGL__Modern_glGetIntegerv_p);
        newXS_deffile("OpenGL::Modern::glGetInternalformatSampleivNV_c", XS_OpenGL__Modern_glGetInternalformatSampleivNV_c);
        newXS_deffile("OpenGL::Modern::glGetInternalformatSampleivNV_p", XS_OpenGL__Modern_glGetInternalformatSampleivNV_p);
        newXS_deffile("OpenGL::Modern::glGetInternalformati64v_c", XS_OpenGL__Modern_glGetInternalformati64v_c);
        newXS_deffile("OpenGL::Modern::glGetInternalformati64v_p", XS_OpenGL__Modern_glGetInternalformati64v_p);
        newXS_deffile("OpenGL::Modern::glGetInternalformativ_c", XS_OpenGL__Modern_glGetInternalformativ_c);
        newXS_deffile("OpenGL::Modern::glGetInternalformativ_p", XS_OpenGL__Modern_glGetInternalformativ_p);
        newXS_deffile("OpenGL::Modern::glGetInvariantBooleanvEXT_c", XS_OpenGL__Modern_glGetInvariantBooleanvEXT_c);
        newXS_deffile("OpenGL::Modern::glGetInvariantFloatvEXT_c", XS_OpenGL__Modern_glGetInvariantFloatvEXT_c);
        newXS_deffile("OpenGL::Modern::glGetInvariantIntegervEXT_c", XS_OpenGL__Modern_glGetInvariantIntegervEXT_c);
        newXS_deffile("OpenGL::Modern::glGetLightfv_c", XS_OpenGL__Modern_glGetLightfv_c);
        newXS_deffile("OpenGL::Modern::glGetLightfv_p", XS_OpenGL__Modern_glGetLightfv_p);
        newXS_deffile("OpenGL::Modern::glGetLightiv_c", XS_OpenGL__Modern_glGetLightiv_c);
        newXS_deffile("OpenGL::Modern::glGetLightiv_p", XS_OpenGL__Modern_glGetLightiv_p);
        newXS_deffile("OpenGL::Modern::glGetLightxv_c", XS_OpenGL__Modern_glGetLightxv_c);
        newXS_deffile("OpenGL::Modern::glGetLightxv_p", XS_OpenGL__Modern_glGetLightxv_p);
        newXS_deffile("OpenGL::Modern::glGetLocalConstantBooleanvEXT_c", XS_OpenGL__Modern_glGetLocalConstantBooleanvEXT_c);
        newXS_deffile("OpenGL::Modern::glGetLocalConstantFloatvEXT_c", XS_OpenGL__Modern_glGetLocalConstantFloatvEXT_c);
        newXS_deffile("OpenGL::Modern::glGetLocalConstantIntegervEXT_c", XS_OpenGL__Modern_glGetLocalConstantIntegervEXT_c);
        newXS_deffile("OpenGL::Modern::glGetMPEGParameterfvSGIX_c", XS_OpenGL__Modern_glGetMPEGParameterfvSGIX_c);
        newXS_deffile("OpenGL::Modern::glGetMPEGParameterivSGIX_c", XS_OpenGL__Modern_glGetMPEGParameterivSGIX_c);
        newXS_deffile("OpenGL::Modern::glGetMPEGPredictorSGIX_c", XS_OpenGL__Modern_glGetMPEGPredictorSGIX_c);
        newXS_deffile("OpenGL::Modern::glGetMPEGQuantTableubv_c", XS_OpenGL__Modern_glGetMPEGQuantTableubv_c);
        newXS_deffile("OpenGL::Modern::glGetMapAttribParameterfvNV_c", XS_OpenGL__Modern_glGetMapAttribParameterfvNV_c);
        newXS_deffile("OpenGL::Modern::glGetMapAttribParameterivNV_c", XS_OpenGL__Modern_glGetMapAttribParameterivNV_c);
        newXS_deffile("OpenGL::Modern::glGetMapControlPointsNV_c", XS_OpenGL__Modern_glGetMapControlPointsNV_c);
        newXS_deffile("OpenGL::Modern::glGetMapParameterfvNV_c", XS_OpenGL__Modern_glGetMapParameterfvNV_c);
        newXS_deffile("OpenGL::Modern::glGetMapParameterivNV_c", XS_OpenGL__Modern_glGetMapParameterivNV_c);
        newXS_deffile("OpenGL::Modern::glGetMapdv_c", XS_OpenGL__Modern_glGetMapdv_c);
        newXS_deffile("OpenGL::Modern::glGetMapfv_c", XS_OpenGL__Modern_glGetMapfv_c);
        newXS_deffile("OpenGL::Modern::glGetMapiv_c", XS_OpenGL__Modern_glGetMapiv_c);
        newXS_deffile("OpenGL::Modern::glGetMaterialfv_c", XS_OpenGL__Modern_glGetMaterialfv_c);
        newXS_deffile("OpenGL::Modern::glGetMaterialfv_p", XS_OpenGL__Modern_glGetMaterialfv_p);
        newXS_deffile("OpenGL::Modern::glGetMaterialiv_c", XS_OpenGL__Modern_glGetMaterialiv_c);
        newXS_deffile("OpenGL::Modern::glGetMaterialiv_p", XS_OpenGL__Modern_glGetMaterialiv_p);
        newXS_deffile("OpenGL::Modern::glGetMaterialxv_c", XS_OpenGL__Modern_glGetMaterialxv_c);
        newXS_deffile("OpenGL::Modern::glGetMaterialxv_p", XS_OpenGL__Modern_glGetMaterialxv_p);
        newXS_deffile("OpenGL::Modern::glGetMemoryObjectDetachedResourcesuivNV_c", XS_OpenGL__Modern_glGetMemoryObjectDetachedResourcesuivNV_c);
        newXS_deffile("OpenGL::Modern::glGetMemoryObjectParameterivEXT_c", XS_OpenGL__Modern_glGetMemoryObjectParameterivEXT_c);
        newXS_deffile("OpenGL::Modern::glGetMinmax_c", XS_OpenGL__Modern_glGetMinmax_c);
        newXS_deffile("OpenGL::Modern::glGetMinmaxEXT_c", XS_OpenGL__Modern_glGetMinmaxEXT_c);
        newXS_deffile("OpenGL::Modern::glGetMinmaxParameterfv_c", XS_OpenGL__Modern_glGetMinmaxParameterfv_c);
        newXS_deffile("OpenGL::Modern::glGetMinmaxParameterfv_p", XS_OpenGL__Modern_glGetMinmaxParameterfv_p);
        newXS_deffile("OpenGL::Modern::glGetMinmaxParameterfvEXT_c", XS_OpenGL__Modern_glGetMinmaxParameterfvEXT_c);
        newXS_deffile("OpenGL::Modern::glGetMinmaxParameterfvEXT_p", XS_OpenGL__Modern_glGetMinmaxParameterfvEXT_p);
        newXS_deffile("OpenGL::Modern::glGetMinmaxParameteriv_c", XS_OpenGL__Modern_glGetMinmaxParameteriv_c);
        newXS_deffile("OpenGL::Modern::glGetMinmaxParameteriv_p", XS_OpenGL__Modern_glGetMinmaxParameteriv_p);
        newXS_deffile("OpenGL::Modern::glGetMinmaxParameterivEXT_c", XS_OpenGL__Modern_glGetMinmaxParameterivEXT_c);
        newXS_deffile("OpenGL::Modern::glGetMinmaxParameterivEXT_p", XS_OpenGL__Modern_glGetMinmaxParameterivEXT_p);
        newXS_deffile("OpenGL::Modern::glGetMultiTexEnvfvEXT_c", XS_OpenGL__Modern_glGetMultiTexEnvfvEXT_c);
        newXS_deffile("OpenGL::Modern::glGetMultiTexEnvfvEXT_p", XS_OpenGL__Modern_glGetMultiTexEnvfvEXT_p);
        newXS_deffile("OpenGL::Modern::glGetMultiTexEnvivEXT_c", XS_OpenGL__Modern_glGetMultiTexEnvivEXT_c);
        newXS_deffile("OpenGL::Modern::glGetMultiTexEnvivEXT_p", XS_OpenGL__Modern_glGetMultiTexEnvivEXT_p);
        newXS_deffile("OpenGL::Modern::glGetMultiTexGendvEXT_c", XS_OpenGL__Modern_glGetMultiTexGendvEXT_c);
        newXS_deffile("OpenGL::Modern::glGetMultiTexGendvEXT_p", XS_OpenGL__Modern_glGetMultiTexGendvEXT_p);
        newXS_deffile("OpenGL::Modern::glGetMultiTexGenfvEXT_c", XS_OpenGL__Modern_glGetMultiTexGenfvEXT_c);
        newXS_deffile("OpenGL::Modern::glGetMultiTexGenfvEXT_p", XS_OpenGL__Modern_glGetMultiTexGenfvEXT_p);
        newXS_deffile("OpenGL::Modern::glGetMultiTexGenivEXT_c", XS_OpenGL__Modern_glGetMultiTexGenivEXT_c);
        newXS_deffile("OpenGL::Modern::glGetMultiTexGenivEXT_p", XS_OpenGL__Modern_glGetMultiTexGenivEXT_p);
        newXS_deffile("OpenGL::Modern::glGetMultiTexImageEXT_c", XS_OpenGL__Modern_glGetMultiTexImageEXT_c);
        newXS_deffile("OpenGL::Modern::glGetMultiTexLevelParameterfvEXT_c", XS_OpenGL__Modern_glGetMultiTexLevelParameterfvEXT_c);
        newXS_deffile("OpenGL::Modern::glGetMultiTexLevelParameterfvEXT_p", XS_OpenGL__Modern_glGetMultiTexLevelParameterfvEXT_p);
        newXS_deffile("OpenGL::Modern::glGetMultiTexLevelParameterivEXT_c", XS_OpenGL__Modern_glGetMultiTexLevelParameterivEXT_c);
        newXS_deffile("OpenGL::Modern::glGetMultiTexLevelParameterivEXT_p", XS_OpenGL__Modern_glGetMultiTexLevelParameterivEXT_p);
        newXS_deffile("OpenGL::Modern::glGetMultiTexParameterIivEXT_c", XS_OpenGL__Modern_glGetMultiTexParameterIivEXT_c);
        newXS_deffile("OpenGL::Modern::glGetMultiTexParameterIivEXT_p", XS_OpenGL__Modern_glGetMultiTexParameterIivEXT_p);
        newXS_deffile("OpenGL::Modern::glGetMultiTexParameterIuivEXT_c", XS_OpenGL__Modern_glGetMultiTexParameterIuivEXT_c);
        newXS_deffile("OpenGL::Modern::glGetMultiTexParameterIuivEXT_p", XS_OpenGL__Modern_glGetMultiTexParameterIuivEXT_p);
        newXS_deffile("OpenGL::Modern::glGetMultiTexParameterfvEXT_c", XS_OpenGL__Modern_glGetMultiTexParameterfvEXT_c);
        newXS_deffile("OpenGL::Modern::glGetMultiTexParameterfvEXT_p", XS_OpenGL__Modern_glGetMultiTexParameterfvEXT_p);
        newXS_deffile("OpenGL::Modern::glGetMultiTexParameterivEXT_c", XS_OpenGL__Modern_glGetMultiTexParameterivEXT_c);
        newXS_deffile("OpenGL::Modern::glGetMultiTexParameterivEXT_p", XS_OpenGL__Modern_glGetMultiTexParameterivEXT_p);
        cv = newXS_deffile("OpenGL::Modern::glGetMultisamplefvNV_c", XS_OpenGL__Modern_glGetMultisamplefv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetMultisamplefv_c", XS_OpenGL__Modern_glGetMultisamplefv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetMultisamplefvNV_p", XS_OpenGL__Modern_glGetMultisamplefv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetMultisamplefv_p", XS_OpenGL__Modern_glGetMultisamplefv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGetNamedBufferParameteri64v_c", XS_OpenGL__Modern_glGetNamedBufferParameteri64v_c);
        newXS_deffile("OpenGL::Modern::glGetNamedBufferParameteriv_c", XS_OpenGL__Modern_glGetNamedBufferParameteriv_c);
        newXS_deffile("OpenGL::Modern::glGetNamedBufferParameterivEXT_c", XS_OpenGL__Modern_glGetNamedBufferParameterivEXT_c);
        newXS_deffile("OpenGL::Modern::glGetNamedBufferParameterivEXT_p", XS_OpenGL__Modern_glGetNamedBufferParameterivEXT_p);
        newXS_deffile("OpenGL::Modern::glGetNamedBufferParameterui64vNV_c", XS_OpenGL__Modern_glGetNamedBufferParameterui64vNV_c);
        newXS_deffile("OpenGL::Modern::glGetNamedBufferParameterui64vNV_p", XS_OpenGL__Modern_glGetNamedBufferParameterui64vNV_p);
        newXS_deffile("OpenGL::Modern::glGetNamedBufferPointerv_c", XS_OpenGL__Modern_glGetNamedBufferPointerv_c);
        newXS_deffile("OpenGL::Modern::glGetNamedBufferPointervEXT_c", XS_OpenGL__Modern_glGetNamedBufferPointervEXT_c);
        newXS_deffile("OpenGL::Modern::glGetNamedBufferSubData_c", XS_OpenGL__Modern_glGetNamedBufferSubData_c);
        newXS_deffile("OpenGL::Modern::glGetNamedBufferSubDataEXT_c", XS_OpenGL__Modern_glGetNamedBufferSubDataEXT_c);
        newXS_deffile("OpenGL::Modern::glGetNamedFramebufferAttachmentParameteriv_c", XS_OpenGL__Modern_glGetNamedFramebufferAttachmentParameteriv_c);
        newXS_deffile("OpenGL::Modern::glGetNamedFramebufferAttachmentParameterivEXT_c", XS_OpenGL__Modern_glGetNamedFramebufferAttachmentParameterivEXT_c);
        newXS_deffile("OpenGL::Modern::glGetNamedFramebufferAttachmentParameterivEXT_p", XS_OpenGL__Modern_glGetNamedFramebufferAttachmentParameterivEXT_p);
        newXS_deffile("OpenGL::Modern::glGetNamedFramebufferParameterfvAMD_c", XS_OpenGL__Modern_glGetNamedFramebufferParameterfvAMD_c);
        newXS_deffile("OpenGL::Modern::glGetNamedFramebufferParameteriv_c", XS_OpenGL__Modern_glGetNamedFramebufferParameteriv_c);
        newXS_deffile("OpenGL::Modern::glGetNamedFramebufferParameterivEXT_c", XS_OpenGL__Modern_glGetNamedFramebufferParameterivEXT_c);
        newXS_deffile("OpenGL::Modern::glGetNamedFramebufferParameterivEXT_p", XS_OpenGL__Modern_glGetNamedFramebufferParameterivEXT_p);
        newXS_deffile("OpenGL::Modern::glGetNamedProgramLocalParameterIivEXT_c", XS_OpenGL__Modern_glGetNamedProgramLocalParameterIivEXT_c);
        newXS_deffile("OpenGL::Modern::glGetNamedProgramLocalParameterIivEXT_p", XS_OpenGL__Modern_glGetNamedProgramLocalParameterIivEXT_p);
        newXS_deffile("OpenGL::Modern::glGetNamedProgramLocalParameterIuivEXT_c", XS_OpenGL__Modern_glGetNamedProgramLocalParameterIuivEXT_c);
        newXS_deffile("OpenGL::Modern::glGetNamedProgramLocalParameterIuivEXT_p", XS_OpenGL__Modern_glGetNamedProgramLocalParameterIuivEXT_p);
        newXS_deffile("OpenGL::Modern::glGetNamedProgramLocalParameterdvEXT_c", XS_OpenGL__Modern_glGetNamedProgramLocalParameterdvEXT_c);
        newXS_deffile("OpenGL::Modern::glGetNamedProgramLocalParameterdvEXT_p", XS_OpenGL__Modern_glGetNamedProgramLocalParameterdvEXT_p);
        newXS_deffile("OpenGL::Modern::glGetNamedProgramLocalParameterfvEXT_c", XS_OpenGL__Modern_glGetNamedProgramLocalParameterfvEXT_c);
        newXS_deffile("OpenGL::Modern::glGetNamedProgramLocalParameterfvEXT_p", XS_OpenGL__Modern_glGetNamedProgramLocalParameterfvEXT_p);
        newXS_deffile("OpenGL::Modern::glGetNamedProgramStringEXT_c", XS_OpenGL__Modern_glGetNamedProgramStringEXT_c);
        newXS_deffile("OpenGL::Modern::glGetNamedProgramivEXT_c", XS_OpenGL__Modern_glGetNamedProgramivEXT_c);
        newXS_deffile("OpenGL::Modern::glGetNamedProgramivEXT_p", XS_OpenGL__Modern_glGetNamedProgramivEXT_p);
        newXS_deffile("OpenGL::Modern::glGetNamedRenderbufferParameteriv_c", XS_OpenGL__Modern_glGetNamedRenderbufferParameteriv_c);
        newXS_deffile("OpenGL::Modern::glGetNamedRenderbufferParameterivEXT_c", XS_OpenGL__Modern_glGetNamedRenderbufferParameterivEXT_c);
        newXS_deffile("OpenGL::Modern::glGetNamedRenderbufferParameterivEXT_p", XS_OpenGL__Modern_glGetNamedRenderbufferParameterivEXT_p);
        newXS_deffile("OpenGL::Modern::glGetNamedStringARB_c", XS_OpenGL__Modern_glGetNamedStringARB_c);
        newXS_deffile("OpenGL::Modern::glGetNamedStringARB_p", XS_OpenGL__Modern_glGetNamedStringARB_p);
        newXS_deffile("OpenGL::Modern::glGetNamedStringivARB_c", XS_OpenGL__Modern_glGetNamedStringivARB_c);
        newXS_deffile("OpenGL::Modern::glGetNextPerfQueryIdINTEL_c", XS_OpenGL__Modern_glGetNextPerfQueryIdINTEL_c);
        newXS_deffile("OpenGL::Modern::glGetNonlinLightfvSGIX_c", XS_OpenGL__Modern_glGetNonlinLightfvSGIX_c);
        newXS_deffile("OpenGL::Modern::glGetNonlinMaterialfvSGIX_c", XS_OpenGL__Modern_glGetNonlinMaterialfvSGIX_c);
        newXS_deffile("OpenGL::Modern::glGetObjectBufferfvATI_c", XS_OpenGL__Modern_glGetObjectBufferfvATI_c);
        newXS_deffile("OpenGL::Modern::glGetObjectBufferfvATI_p", XS_OpenGL__Modern_glGetObjectBufferfvATI_p);
        newXS_deffile("OpenGL::Modern::glGetObjectBufferivATI_c", XS_OpenGL__Modern_glGetObjectBufferivATI_c);
        newXS_deffile("OpenGL::Modern::glGetObjectBufferivATI_p", XS_OpenGL__Modern_glGetObjectBufferivATI_p);
        cv = newXS_deffile("OpenGL::Modern::glGetObjectLabelKHR_c", XS_OpenGL__Modern_glGetObjectLabel_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetObjectLabel_c", XS_OpenGL__Modern_glGetObjectLabel_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetObjectLabelKHR_p", XS_OpenGL__Modern_glGetObjectLabel_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetObjectLabel_p", XS_OpenGL__Modern_glGetObjectLabel_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGetObjectLabelEXT_c", XS_OpenGL__Modern_glGetObjectLabelEXT_c);
        newXS_deffile("OpenGL::Modern::glGetObjectLabelEXT_p", XS_OpenGL__Modern_glGetObjectLabelEXT_p);
        newXS_deffile("OpenGL::Modern::glGetObjectParameterfvARB_c", XS_OpenGL__Modern_glGetObjectParameterfvARB_c);
        newXS_deffile("OpenGL::Modern::glGetObjectParameterivAPPLE_c", XS_OpenGL__Modern_glGetObjectParameterivAPPLE_c);
        newXS_deffile("OpenGL::Modern::glGetObjectParameterivARB_c", XS_OpenGL__Modern_glGetObjectParameterivARB_c);
        cv = newXS_deffile("OpenGL::Modern::glGetObjectPtrLabelKHR_c", XS_OpenGL__Modern_glGetObjectPtrLabel_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetObjectPtrLabel_c", XS_OpenGL__Modern_glGetObjectPtrLabel_c);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGetOcclusionQueryivNV_c", XS_OpenGL__Modern_glGetOcclusionQueryivNV_c);
        newXS_deffile("OpenGL::Modern::glGetOcclusionQueryuivNV_c", XS_OpenGL__Modern_glGetOcclusionQueryuivNV_c);
        newXS_deffile("OpenGL::Modern::glGetPathColorGenfvNV_c", XS_OpenGL__Modern_glGetPathColorGenfvNV_c);
        newXS_deffile("OpenGL::Modern::glGetPathColorGenivNV_c", XS_OpenGL__Modern_glGetPathColorGenivNV_c);
        newXS_deffile("OpenGL::Modern::glGetPathCommandsNV_c", XS_OpenGL__Modern_glGetPathCommandsNV_c);
        newXS_deffile("OpenGL::Modern::glGetPathCoordsNV_c", XS_OpenGL__Modern_glGetPathCoordsNV_c);
        newXS_deffile("OpenGL::Modern::glGetPathDashArrayNV_c", XS_OpenGL__Modern_glGetPathDashArrayNV_c);
        newXS_deffile("OpenGL::Modern::glGetPathLengthNV", XS_OpenGL__Modern_glGetPathLengthNV);
        newXS_deffile("OpenGL::Modern::glGetPathMetricRangeNV_c", XS_OpenGL__Modern_glGetPathMetricRangeNV_c);
        newXS_deffile("OpenGL::Modern::glGetPathMetricsNV_c", XS_OpenGL__Modern_glGetPathMetricsNV_c);
        newXS_deffile("OpenGL::Modern::glGetPathParameterfvNV_c", XS_OpenGL__Modern_glGetPathParameterfvNV_c);
        newXS_deffile("OpenGL::Modern::glGetPathParameterfvNV_p", XS_OpenGL__Modern_glGetPathParameterfvNV_p);
        newXS_deffile("OpenGL::Modern::glGetPathParameterivNV_c", XS_OpenGL__Modern_glGetPathParameterivNV_c);
        newXS_deffile("OpenGL::Modern::glGetPathParameterivNV_p", XS_OpenGL__Modern_glGetPathParameterivNV_p);
        newXS_deffile("OpenGL::Modern::glGetPathSpacingNV_c", XS_OpenGL__Modern_glGetPathSpacingNV_c);
        newXS_deffile("OpenGL::Modern::glGetPathTexGenfvNV_c", XS_OpenGL__Modern_glGetPathTexGenfvNV_c);
        newXS_deffile("OpenGL::Modern::glGetPathTexGenivNV_c", XS_OpenGL__Modern_glGetPathTexGenivNV_c);
        newXS_deffile("OpenGL::Modern::glGetPerfCounterInfoINTEL_c", XS_OpenGL__Modern_glGetPerfCounterInfoINTEL_c);
        newXS_deffile("OpenGL::Modern::glGetPerfMonitorCounterDataAMD_c", XS_OpenGL__Modern_glGetPerfMonitorCounterDataAMD_c);
        newXS_deffile("OpenGL::Modern::glGetPerfMonitorCounterDataAMD_p", XS_OpenGL__Modern_glGetPerfMonitorCounterDataAMD_p);
        newXS_deffile("OpenGL::Modern::glGetPerfMonitorCounterInfoAMD_c", XS_OpenGL__Modern_glGetPerfMonitorCounterInfoAMD_c);
        newXS_deffile("OpenGL::Modern::glGetPerfMonitorCounterStringAMD_c", XS_OpenGL__Modern_glGetPerfMonitorCounterStringAMD_c);
        newXS_deffile("OpenGL::Modern::glGetPerfMonitorCounterStringAMD_p", XS_OpenGL__Modern_glGetPerfMonitorCounterStringAMD_p);
        newXS_deffile("OpenGL::Modern::glGetPerfMonitorCountersAMD_c", XS_OpenGL__Modern_glGetPerfMonitorCountersAMD_c);
        newXS_deffile("OpenGL::Modern::glGetPerfMonitorCountersAMD_p", XS_OpenGL__Modern_glGetPerfMonitorCountersAMD_p);
        newXS_deffile("OpenGL::Modern::glGetPerfMonitorGroupStringAMD_c", XS_OpenGL__Modern_glGetPerfMonitorGroupStringAMD_c);
        newXS_deffile("OpenGL::Modern::glGetPerfMonitorGroupStringAMD_p", XS_OpenGL__Modern_glGetPerfMonitorGroupStringAMD_p);
        newXS_deffile("OpenGL::Modern::glGetPerfMonitorGroupsAMD_c", XS_OpenGL__Modern_glGetPerfMonitorGroupsAMD_c);
        newXS_deffile("OpenGL::Modern::glGetPerfMonitorGroupsAMD_p", XS_OpenGL__Modern_glGetPerfMonitorGroupsAMD_p);
        newXS_deffile("OpenGL::Modern::glGetPerfQueryDataINTEL_c", XS_OpenGL__Modern_glGetPerfQueryDataINTEL_c);
        newXS_deffile("OpenGL::Modern::glGetPerfQueryIdByNameINTEL_c", XS_OpenGL__Modern_glGetPerfQueryIdByNameINTEL_c);
        newXS_deffile("OpenGL::Modern::glGetPerfQueryInfoINTEL_c", XS_OpenGL__Modern_glGetPerfQueryInfoINTEL_c);
        newXS_deffile("OpenGL::Modern::glGetPixelMapfv_c", XS_OpenGL__Modern_glGetPixelMapfv_c);
        newXS_deffile("OpenGL::Modern::glGetPixelMapuiv_c", XS_OpenGL__Modern_glGetPixelMapuiv_c);
        newXS_deffile("OpenGL::Modern::glGetPixelMapusv_c", XS_OpenGL__Modern_glGetPixelMapusv_c);
        newXS_deffile("OpenGL::Modern::glGetPixelTransformParameterfvEXT_c", XS_OpenGL__Modern_glGetPixelTransformParameterfvEXT_c);
        newXS_deffile("OpenGL::Modern::glGetPixelTransformParameterfvSGI_c", XS_OpenGL__Modern_glGetPixelTransformParameterfvSGI_c);
        newXS_deffile("OpenGL::Modern::glGetPixelTransformParameterivEXT_c", XS_OpenGL__Modern_glGetPixelTransformParameterivEXT_c);
        newXS_deffile("OpenGL::Modern::glGetPixelTransformParameterivSGI_c", XS_OpenGL__Modern_glGetPixelTransformParameterivSGI_c);
        newXS_deffile("OpenGL::Modern::glGetPointerIndexedvEXT_c", XS_OpenGL__Modern_glGetPointerIndexedvEXT_c);
        newXS_deffile("OpenGL::Modern::glGetPointeri_vEXT_c", XS_OpenGL__Modern_glGetPointeri_vEXT_c);
        cv = newXS_deffile("OpenGL::Modern::glGetPointervEXT_c", XS_OpenGL__Modern_glGetPointerv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetPointervKHR_c", XS_OpenGL__Modern_glGetPointerv_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glGetPointerv_c", XS_OpenGL__Modern_glGetPointerv_c);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGetPolygonStipple_c", XS_OpenGL__Modern_glGetPolygonStipple_c);
        newXS_deffile("OpenGL::Modern::glGetProcAddressREGAL_c", XS_OpenGL__Modern_glGetProcAddressREGAL_c);
        newXS_deffile("OpenGL::Modern::glGetProgramBinary_c", XS_OpenGL__Modern_glGetProgramBinary_c);
        newXS_deffile("OpenGL::Modern::glGetProgramBinary_p", XS_OpenGL__Modern_glGetProgramBinary_p);
        newXS_deffile("OpenGL::Modern::glGetProgramBinaryOES_c", XS_OpenGL__Modern_glGetProgramBinaryOES_c);
        newXS_deffile("OpenGL::Modern::glGetProgramEnvParameterdvARB_c", XS_OpenGL__Modern_glGetProgramEnvParameterdvARB_c);
        newXS_deffile("OpenGL::Modern::glGetProgramEnvParameterdvARB_p", XS_OpenGL__Modern_glGetProgramEnvParameterdvARB_p);
        newXS_deffile("OpenGL::Modern::glGetProgramEnvParameterfvARB_c", XS_OpenGL__Modern_glGetProgramEnvParameterfvARB_c);
        newXS_deffile("OpenGL::Modern::glGetProgramEnvParameterfvARB_p", XS_OpenGL__Modern_glGetProgramEnvParameterfvARB_p);
        newXS_deffile("OpenGL::Modern::glGetProgramInfoLog_c", XS_OpenGL__Modern_glGetProgramInfoLog_c);
        newXS_deffile("OpenGL::Modern::glGetProgramInfoLog_p", XS_OpenGL__Modern_glGetProgramInfoLog_p);
        newXS_deffile("OpenGL::Modern::glGetProgramInterfaceiv_c", XS_OpenGL__Modern_glGetProgramInterfaceiv_c);
        newXS_deffile("OpenGL::Modern::glGetProgramInterfaceiv_p", XS_OpenGL__Modern_glGetProgramInterfaceiv_p);
        newXS_deffile("OpenGL::Modern::glGetProgramLocalParameterdvARB_c", XS_OpenGL__Modern_glGetProgramLocalParameterdvARB_c);
        newXS_deffile("OpenGL::Modern::glGetProgramLocalParameterdvARB_p", XS_OpenGL__Modern_glGetProgramLocalParameterdvARB_p);
        newXS_deffile("OpenGL::Modern::glGetProgramLocalParameterfvARB_c", XS_OpenGL__Modern_glGetProgramLocalParameterfvARB_c);
        newXS_deffile("OpenGL::Modern::glGetProgramLocalParameterfvARB_p", XS_OpenGL__Modern_glGetProgramLocalParameterfvARB_p);
        newXS_deffile("OpenGL::Modern::glGetProgramNamedParameterdvNV_c", XS_OpenGL__Modern_glGetProgramNamedParameterdvNV_c);
        newXS_deffile("OpenGL::Modern::glGetProgramNamedParameterdvNV_p", XS_OpenGL__Modern_glGetProgramNamedParameterdvNV_p);
        newXS_deffile("OpenGL::Modern::glGetProgramNamedParameterfvNV_c", XS_OpenGL__Modern_glGetProgramNamedParameterfvNV_c);
        newXS_deffile("OpenGL::Modern::glGetProgramNamedParameterfvNV_p", XS_OpenGL__Modern_glGetProgramNamedParameterfvNV_p);
        newXS_deffile("OpenGL::Modern::glGetProgramParameterdvNV_c", XS_OpenGL__Modern_glGetProgramParameterdvNV_c);
        newXS_deffile("OpenGL::Modern::glGetProgramParameterdvNV_p", XS_OpenGL__Modern_glGetProgramParameterdvNV_p);
        newXS_deffile("OpenGL::Modern::glGetProgramParameterfvNV_c", XS_OpenGL__Modern_glGetProgramParameterfvNV_c);
        newXS_deffile("OpenGL::Modern::glGetProgramParameterfvNV_p", XS_OpenGL__Modern_glGetProgramParameterfvNV_p);
        newXS_deffile("OpenGL::Modern::glGetProgramPipelineInfoLog_c", XS_OpenGL__Modern_glGetProgramPipelineInfoLog_c);
        newXS_deffile("OpenGL::Modern::glGetProgramPipelineInfoLog_p", XS_OpenGL__Modern_glGetProgramPipelineInfoLog_p);
        newXS_deffile("OpenGL::Modern::glGetProgramPipelineiv_c", XS_OpenGL__Modern_glGetProgramPipelineiv_c);
        newXS_deffile("OpenGL::Modern::glGetProgramPipelineiv_p", XS_OpenGL__Modern_glGetProgramPipelineiv_p);
        newXS_deffile("OpenGL::Modern::glGetProgramResourceIndex", XS_OpenGL__Modern_glGetProgramResourceIndex);
        newXS_deffile("OpenGL::Modern::glGetProgramResourceLocation", XS_OpenGL__Modern_glGetProgramResourceLocation);
        newXS_deffile("OpenGL::Modern::glGetProgramResourceLocationIndex", XS_OpenGL__Modern_glGetProgramResourceLocationIndex);
        newXS_deffile("OpenGL::Modern::glGetProgramResourceLocationIndexEXT", XS_OpenGL__Modern_glGetProgramResourceLocationIndexEXT);
        newXS_deffile("OpenGL::Modern::glGetProgramResourceName_c", XS_OpenGL__Modern_glGetProgramResourceName_c);
        newXS_deffile("OpenGL::Modern::glGetProgramResourceName_p", XS_OpenGL__Modern_glGetProgramResourceName_p);
        newXS_deffile("OpenGL::Modern::glGetProgramResourcefvNV_c", XS_OpenGL__Modern_glGetProgramResourcefvNV_c);
        newXS_deffile("OpenGL::Modern::glGetProgramResourcefvNV_p", XS_OpenGL__Modern_glGetProgramResourcefvNV_p);
        newXS_deffile("OpenGL::Modern::glGetProgramResourceiv_c", XS_OpenGL__Modern_glGetProgramResourceiv_c);
        newXS_deffile("OpenGL::Modern::glGetProgramResourceiv_p", XS_OpenGL__Modern_glGetProgramResourceiv_p);
        newXS_deffile("OpenGL::Modern::glGetProgramStageiv_c", XS_OpenGL__Modern_glGetProgramStageiv_c);
        newXS_deffile("OpenGL::Modern::glGetProgramStageiv_p", XS_OpenGL__Modern_glGetProgramStageiv_p);
        newXS_deffile("OpenGL::Modern::glGetProgramStringARB_c", XS_OpenGL__Modern_glGetProgramStringARB_c);
        newXS_deffile("OpenGL::Modern::glGetProgramStringNV_c", XS_OpenGL__Modern_glGetProgramStringNV_c);
        newXS_deffile("OpenGL::Modern::glGetProgramiv_c", XS_OpenGL__Modern_glGetProgramiv_c);
        newXS_deffile("OpenGL::Modern::glGetProgramiv_p", XS_OpenGL__Modern_glGetProgramiv_p);
        newXS_deffile("OpenGL::Modern::glGetProgramivARB_c", XS_OpenGL__Modern_glGetProgramivARB_c);
        newXS_deffile("OpenGL::Modern::glGetProgramivARB_p", XS_OpenGL__Modern_glGetProgramivARB_p);
        newXS_deffile("OpenGL::Modern::glGetProgramivNV_c", XS_OpenGL__Modern_glGetProgramivNV_c);
        newXS_deffile("OpenGL::Modern::glGetProgramivNV_p", XS_OpenGL__Modern_glGetProgramivNV_p);
        newXS_deffile("OpenGL::Modern::glGetQueryBufferObjecti64v", XS_OpenGL__Modern_glGetQueryBufferObjecti64v);
        newXS_deffile("OpenGL::Modern::glGetQueryBufferObjectiv", XS_OpenGL__Modern_glGetQueryBufferObjectiv);
        newXS_deffile("OpenGL::Modern::glGetQueryBufferObjectui64v", XS_OpenGL__Modern_glGetQueryBufferObjectui64v);
        newXS_deffile("OpenGL::Modern::glGetQueryBufferObjectuiv", XS_OpenGL__Modern_glGetQueryBufferObjectuiv);
        newXS_deffile("OpenGL::Modern::glGetQueryIndexediv_c", XS_OpenGL__Modern_glGetQueryIndexediv_c);
        newXS_deffile("OpenGL::Modern::glGetQueryIndexediv_p", XS_OpenGL__Modern_glGetQueryIndexediv_p);
        cv = newXS_deffile("OpenGL::Modern::glGetQueryObjecti64vEXT_c", XS_OpenGL__Modern_glGetQueryObjecti64v_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetQueryObjecti64v_c", XS_OpenGL__Modern_glGetQueryObjecti64v_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetQueryObjecti64vEXT_p", XS_OpenGL__Modern_glGetQueryObjecti64v_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetQueryObjecti64v_p", XS_OpenGL__Modern_glGetQueryObjecti64v_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGetQueryObjecti64vANGLE_c", XS_OpenGL__Modern_glGetQueryObjecti64vANGLE_c);
        cv = newXS_deffile("OpenGL::Modern::glGetQueryObjectivARB_c", XS_OpenGL__Modern_glGetQueryObjectiv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetQueryObjectivEXT_c", XS_OpenGL__Modern_glGetQueryObjectiv_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glGetQueryObjectiv_c", XS_OpenGL__Modern_glGetQueryObjectiv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetQueryObjectivARB_p", XS_OpenGL__Modern_glGetQueryObjectiv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetQueryObjectivEXT_p", XS_OpenGL__Modern_glGetQueryObjectiv_p);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glGetQueryObjectiv_p", XS_OpenGL__Modern_glGetQueryObjectiv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGetQueryObjectivANGLE_c", XS_OpenGL__Modern_glGetQueryObjectivANGLE_c);
        cv = newXS_deffile("OpenGL::Modern::glGetQueryObjectui64vEXT_c", XS_OpenGL__Modern_glGetQueryObjectui64v_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetQueryObjectui64v_c", XS_OpenGL__Modern_glGetQueryObjectui64v_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetQueryObjectui64vEXT_p", XS_OpenGL__Modern_glGetQueryObjectui64v_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetQueryObjectui64v_p", XS_OpenGL__Modern_glGetQueryObjectui64v_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGetQueryObjectui64vANGLE_c", XS_OpenGL__Modern_glGetQueryObjectui64vANGLE_c);
        cv = newXS_deffile("OpenGL::Modern::glGetQueryObjectuivARB_c", XS_OpenGL__Modern_glGetQueryObjectuiv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetQueryObjectuiv_c", XS_OpenGL__Modern_glGetQueryObjectuiv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetQueryObjectuivARB_p", XS_OpenGL__Modern_glGetQueryObjectuiv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetQueryObjectuiv_p", XS_OpenGL__Modern_glGetQueryObjectuiv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGetQueryObjectuivANGLE_c", XS_OpenGL__Modern_glGetQueryObjectuivANGLE_c);
        newXS_deffile("OpenGL::Modern::glGetQueryObjectuivEXT_c", XS_OpenGL__Modern_glGetQueryObjectuivEXT_c);
        newXS_deffile("OpenGL::Modern::glGetQueryObjectuivEXT_p", XS_OpenGL__Modern_glGetQueryObjectuivEXT_p);
        cv = newXS_deffile("OpenGL::Modern::glGetQueryivARB_c", XS_OpenGL__Modern_glGetQueryiv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetQueryiv_c", XS_OpenGL__Modern_glGetQueryiv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetQueryivARB_p", XS_OpenGL__Modern_glGetQueryiv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetQueryiv_p", XS_OpenGL__Modern_glGetQueryiv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGetQueryivANGLE_c", XS_OpenGL__Modern_glGetQueryivANGLE_c);
        newXS_deffile("OpenGL::Modern::glGetQueryivEXT_c", XS_OpenGL__Modern_glGetQueryivEXT_c);
        newXS_deffile("OpenGL::Modern::glGetQueryivEXT_p", XS_OpenGL__Modern_glGetQueryivEXT_p);
        cv = newXS_deffile("OpenGL::Modern::glGetRenderbufferParameterivEXT_c", XS_OpenGL__Modern_glGetRenderbufferParameteriv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetRenderbufferParameteriv_c", XS_OpenGL__Modern_glGetRenderbufferParameteriv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetRenderbufferParameterivEXT_p", XS_OpenGL__Modern_glGetRenderbufferParameteriv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetRenderbufferParameteriv_p", XS_OpenGL__Modern_glGetRenderbufferParameteriv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGetRenderbufferParameterivOES_c", XS_OpenGL__Modern_glGetRenderbufferParameterivOES_c);
        cv = newXS_deffile("OpenGL::Modern::glGetSamplerParameterIivEXT_c", XS_OpenGL__Modern_glGetSamplerParameterIiv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetSamplerParameterIiv_c", XS_OpenGL__Modern_glGetSamplerParameterIiv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetSamplerParameterIivEXT_p", XS_OpenGL__Modern_glGetSamplerParameterIiv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetSamplerParameterIiv_p", XS_OpenGL__Modern_glGetSamplerParameterIiv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGetSamplerParameterIivOES_c", XS_OpenGL__Modern_glGetSamplerParameterIivOES_c);
        cv = newXS_deffile("OpenGL::Modern::glGetSamplerParameterIuivEXT_c", XS_OpenGL__Modern_glGetSamplerParameterIuiv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetSamplerParameterIuiv_c", XS_OpenGL__Modern_glGetSamplerParameterIuiv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetSamplerParameterIuivEXT_p", XS_OpenGL__Modern_glGetSamplerParameterIuiv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetSamplerParameterIuiv_p", XS_OpenGL__Modern_glGetSamplerParameterIuiv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGetSamplerParameterIuivOES_c", XS_OpenGL__Modern_glGetSamplerParameterIuivOES_c);
        newXS_deffile("OpenGL::Modern::glGetSamplerParameterfv_c", XS_OpenGL__Modern_glGetSamplerParameterfv_c);
        newXS_deffile("OpenGL::Modern::glGetSamplerParameterfv_p", XS_OpenGL__Modern_glGetSamplerParameterfv_p);
        newXS_deffile("OpenGL::Modern::glGetSamplerParameteriv_c", XS_OpenGL__Modern_glGetSamplerParameteriv_c);
        newXS_deffile("OpenGL::Modern::glGetSamplerParameteriv_p", XS_OpenGL__Modern_glGetSamplerParameteriv_p);
        newXS_deffile("OpenGL::Modern::glGetSemaphoreParameterivNV_c", XS_OpenGL__Modern_glGetSemaphoreParameterivNV_c);
        newXS_deffile("OpenGL::Modern::glGetSemaphoreParameterui64vEXT_c", XS_OpenGL__Modern_glGetSemaphoreParameterui64vEXT_c);
        newXS_deffile("OpenGL::Modern::glGetSeparableFilter_c", XS_OpenGL__Modern_glGetSeparableFilter_c);
        newXS_deffile("OpenGL::Modern::glGetSeparableFilterEXT_c", XS_OpenGL__Modern_glGetSeparableFilterEXT_c);
        newXS_deffile("OpenGL::Modern::glGetShaderInfoLog_c", XS_OpenGL__Modern_glGetShaderInfoLog_c);
        newXS_deffile("OpenGL::Modern::glGetShaderInfoLog_p", XS_OpenGL__Modern_glGetShaderInfoLog_p);
        newXS_deffile("OpenGL::Modern::glGetShaderPrecisionFormat_c", XS_OpenGL__Modern_glGetShaderPrecisionFormat_c);
        newXS_deffile("OpenGL::Modern::glGetShaderPrecisionFormat_p", XS_OpenGL__Modern_glGetShaderPrecisionFormat_p);
        newXS_deffile("OpenGL::Modern::glGetShaderSource_c", XS_OpenGL__Modern_glGetShaderSource_c);
        newXS_deffile("OpenGL::Modern::glGetShaderSource_p", XS_OpenGL__Modern_glGetShaderSource_p);
        newXS_deffile("OpenGL::Modern::glGetShaderSourceARB_c", XS_OpenGL__Modern_glGetShaderSourceARB_c);
        newXS_deffile("OpenGL::Modern::glGetShaderSourceARB_p", XS_OpenGL__Modern_glGetShaderSourceARB_p);
        newXS_deffile("OpenGL::Modern::glGetShaderiv_c", XS_OpenGL__Modern_glGetShaderiv_c);
        newXS_deffile("OpenGL::Modern::glGetShaderiv_p", XS_OpenGL__Modern_glGetShaderiv_p);
        newXS_deffile("OpenGL::Modern::glGetShadingRateImagePaletteNV_c", XS_OpenGL__Modern_glGetShadingRateImagePaletteNV_c);
        newXS_deffile("OpenGL::Modern::glGetShadingRateImagePaletteNV_p", XS_OpenGL__Modern_glGetShadingRateImagePaletteNV_p);
        newXS_deffile("OpenGL::Modern::glGetShadingRateSampleLocationivNV_c", XS_OpenGL__Modern_glGetShadingRateSampleLocationivNV_c);
        newXS_deffile("OpenGL::Modern::glGetShadingRateSampleLocationivNV_p", XS_OpenGL__Modern_glGetShadingRateSampleLocationivNV_p);
        newXS_deffile("OpenGL::Modern::glGetSharpenTexFuncSGIS_c", XS_OpenGL__Modern_glGetSharpenTexFuncSGIS_c);
        newXS_deffile("OpenGL::Modern::glGetSharpenTexFuncSGIS_p", XS_OpenGL__Modern_glGetSharpenTexFuncSGIS_p);
        newXS_deffile("OpenGL::Modern::glGetStageIndexNV", XS_OpenGL__Modern_glGetStageIndexNV);
        newXS_deffile("OpenGL::Modern::glGetString", XS_OpenGL__Modern_glGetString);
        newXS_deffile("OpenGL::Modern::glGetSubroutineIndex", XS_OpenGL__Modern_glGetSubroutineIndex);
        newXS_deffile("OpenGL::Modern::glGetSubroutineUniformLocation", XS_OpenGL__Modern_glGetSubroutineUniformLocation);
        cv = newXS_deffile("OpenGL::Modern::glGetSyncivAPPLE_c", XS_OpenGL__Modern_glGetSynciv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetSynciv_c", XS_OpenGL__Modern_glGetSynciv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetSyncivAPPLE_p", XS_OpenGL__Modern_glGetSynciv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetSynciv_p", XS_OpenGL__Modern_glGetSynciv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGetTexBumpParameterfvATI_c", XS_OpenGL__Modern_glGetTexBumpParameterfvATI_c);
        newXS_deffile("OpenGL::Modern::glGetTexBumpParameterivATI_c", XS_OpenGL__Modern_glGetTexBumpParameterivATI_c);
        newXS_deffile("OpenGL::Modern::glGetTexEnvfv_c", XS_OpenGL__Modern_glGetTexEnvfv_c);
        newXS_deffile("OpenGL::Modern::glGetTexEnvfv_p", XS_OpenGL__Modern_glGetTexEnvfv_p);
        newXS_deffile("OpenGL::Modern::glGetTexEnviv_c", XS_OpenGL__Modern_glGetTexEnviv_c);
        newXS_deffile("OpenGL::Modern::glGetTexEnviv_p", XS_OpenGL__Modern_glGetTexEnviv_p);
        newXS_deffile("OpenGL::Modern::glGetTexEnvxv_c", XS_OpenGL__Modern_glGetTexEnvxv_c);
        newXS_deffile("OpenGL::Modern::glGetTexEnvxv_p", XS_OpenGL__Modern_glGetTexEnvxv_p);
        newXS_deffile("OpenGL::Modern::glGetTexFilterFuncSGIS_c", XS_OpenGL__Modern_glGetTexFilterFuncSGIS_c);
        newXS_deffile("OpenGL::Modern::glGetTexGendv_c", XS_OpenGL__Modern_glGetTexGendv_c);
        newXS_deffile("OpenGL::Modern::glGetTexGendv_p", XS_OpenGL__Modern_glGetTexGendv_p);
        newXS_deffile("OpenGL::Modern::glGetTexGenfv_c", XS_OpenGL__Modern_glGetTexGenfv_c);
        newXS_deffile("OpenGL::Modern::glGetTexGenfv_p", XS_OpenGL__Modern_glGetTexGenfv_p);
        newXS_deffile("OpenGL::Modern::glGetTexGenfvOES_c", XS_OpenGL__Modern_glGetTexGenfvOES_c);
        newXS_deffile("OpenGL::Modern::glGetTexGeniv_c", XS_OpenGL__Modern_glGetTexGeniv_c);
        newXS_deffile("OpenGL::Modern::glGetTexGeniv_p", XS_OpenGL__Modern_glGetTexGeniv_p);
        newXS_deffile("OpenGL::Modern::glGetTexGenivOES_c", XS_OpenGL__Modern_glGetTexGenivOES_c);
        newXS_deffile("OpenGL::Modern::glGetTexGenxvOES_c", XS_OpenGL__Modern_glGetTexGenxvOES_c);
        newXS_deffile("OpenGL::Modern::glGetTexImage_c", XS_OpenGL__Modern_glGetTexImage_c);
        newXS_deffile("OpenGL::Modern::glGetTexLevelParameterfv_c", XS_OpenGL__Modern_glGetTexLevelParameterfv_c);
        newXS_deffile("OpenGL::Modern::glGetTexLevelParameterfv_p", XS_OpenGL__Modern_glGetTexLevelParameterfv_p);
        newXS_deffile("OpenGL::Modern::glGetTexLevelParameteriv_c", XS_OpenGL__Modern_glGetTexLevelParameteriv_c);
        newXS_deffile("OpenGL::Modern::glGetTexLevelParameteriv_p", XS_OpenGL__Modern_glGetTexLevelParameteriv_p);
        cv = newXS_deffile("OpenGL::Modern::glGetTexParameterIivEXT_c", XS_OpenGL__Modern_glGetTexParameterIiv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetTexParameterIiv_c", XS_OpenGL__Modern_glGetTexParameterIiv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetTexParameterIivEXT_p", XS_OpenGL__Modern_glGetTexParameterIiv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetTexParameterIiv_p", XS_OpenGL__Modern_glGetTexParameterIiv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGetTexParameterIivOES_c", XS_OpenGL__Modern_glGetTexParameterIivOES_c);
        cv = newXS_deffile("OpenGL::Modern::glGetTexParameterIuivEXT_c", XS_OpenGL__Modern_glGetTexParameterIuiv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetTexParameterIuiv_c", XS_OpenGL__Modern_glGetTexParameterIuiv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetTexParameterIuivEXT_p", XS_OpenGL__Modern_glGetTexParameterIuiv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetTexParameterIuiv_p", XS_OpenGL__Modern_glGetTexParameterIuiv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGetTexParameterIuivOES_c", XS_OpenGL__Modern_glGetTexParameterIuivOES_c);
        newXS_deffile("OpenGL::Modern::glGetTexParameterPointervAPPLE_c", XS_OpenGL__Modern_glGetTexParameterPointervAPPLE_c);
        newXS_deffile("OpenGL::Modern::glGetTexParameterfv_c", XS_OpenGL__Modern_glGetTexParameterfv_c);
        newXS_deffile("OpenGL::Modern::glGetTexParameterfv_p", XS_OpenGL__Modern_glGetTexParameterfv_p);
        newXS_deffile("OpenGL::Modern::glGetTexParameteriv_c", XS_OpenGL__Modern_glGetTexParameteriv_c);
        newXS_deffile("OpenGL::Modern::glGetTexParameteriv_p", XS_OpenGL__Modern_glGetTexParameteriv_p);
        newXS_deffile("OpenGL::Modern::glGetTexParameterxv_c", XS_OpenGL__Modern_glGetTexParameterxv_c);
        newXS_deffile("OpenGL::Modern::glGetTexParameterxv_p", XS_OpenGL__Modern_glGetTexParameterxv_p);
        cv = newXS_deffile("OpenGL::Modern::glGetTextureHandleARB", XS_OpenGL__Modern_glGetTextureHandleARB);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetTextureHandleIMG", XS_OpenGL__Modern_glGetTextureHandleARB);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glGetTextureHandleNV", XS_OpenGL__Modern_glGetTextureHandleNV);
        newXS_deffile("OpenGL::Modern::glGetTextureImage_c", XS_OpenGL__Modern_glGetTextureImage_c);
        newXS_deffile("OpenGL::Modern::glGetTextureImageEXT_c", XS_OpenGL__Modern_glGetTextureImageEXT_c);
        newXS_deffile("OpenGL::Modern::glGetTextureLevelParameterfv_c", XS_OpenGL__Modern_glGetTextureLevelParameterfv_c);
        newXS_deffile("OpenGL::Modern::glGetTextureLevelParameterfvEXT_c", XS_OpenGL__Modern_glGetTextureLevelParameterfvEXT_c);
        newXS_deffile("OpenGL::Modern::glGetTextureLevelParameterfvEXT_p", XS_OpenGL__Modern_glGetTextureLevelParameterfvEXT_p);
        newXS_deffile("OpenGL::Modern::glGetTextureLevelParameteriv_c", XS_OpenGL__Modern_glGetTextureLevelParameteriv_c);
        newXS_deffile("OpenGL::Modern::glGetTextureLevelParameterivEXT_c", XS_OpenGL__Modern_glGetTextureLevelParameterivEXT_c);
        newXS_deffile("OpenGL::Modern::glGetTextureLevelParameterivEXT_p", XS_OpenGL__Modern_glGetTextureLevelParameterivEXT_p);
        newXS_deffile("OpenGL::Modern::glGetTextureParameterIiv_c", XS_OpenGL__Modern_glGetTextureParameterIiv_c);
        newXS_deffile("OpenGL::Modern::glGetTextureParameterIivEXT_c", XS_OpenGL__Modern_glGetTextureParameterIivEXT_c);
        newXS_deffile("OpenGL::Modern::glGetTextureParameterIivEXT_p", XS_OpenGL__Modern_glGetTextureParameterIivEXT_p);
        newXS_deffile("OpenGL::Modern::glGetTextureParameterIuiv_c", XS_OpenGL__Modern_glGetTextureParameterIuiv_c);
        newXS_deffile("OpenGL::Modern::glGetTextureParameterIuivEXT_c", XS_OpenGL__Modern_glGetTextureParameterIuivEXT_c);
        newXS_deffile("OpenGL::Modern::glGetTextureParameterIuivEXT_p", XS_OpenGL__Modern_glGetTextureParameterIuivEXT_p);
        newXS_deffile("OpenGL::Modern::glGetTextureParameterfv_c", XS_OpenGL__Modern_glGetTextureParameterfv_c);
        newXS_deffile("OpenGL::Modern::glGetTextureParameterfvEXT_c", XS_OpenGL__Modern_glGetTextureParameterfvEXT_c);
        newXS_deffile("OpenGL::Modern::glGetTextureParameterfvEXT_p", XS_OpenGL__Modern_glGetTextureParameterfvEXT_p);
        newXS_deffile("OpenGL::Modern::glGetTextureParameteriv_c", XS_OpenGL__Modern_glGetTextureParameteriv_c);
        newXS_deffile("OpenGL::Modern::glGetTextureParameterivEXT_c", XS_OpenGL__Modern_glGetTextureParameterivEXT_c);
        newXS_deffile("OpenGL::Modern::glGetTextureParameterivEXT_p", XS_OpenGL__Modern_glGetTextureParameterivEXT_p);
        cv = newXS_deffile("OpenGL::Modern::glGetTextureSamplerHandleARB", XS_OpenGL__Modern_glGetTextureSamplerHandleARB);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetTextureSamplerHandleIMG", XS_OpenGL__Modern_glGetTextureSamplerHandleARB);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glGetTextureSamplerHandleNV", XS_OpenGL__Modern_glGetTextureSamplerHandleNV);
        newXS_deffile("OpenGL::Modern::glGetTextureSubImage_c", XS_OpenGL__Modern_glGetTextureSubImage_c);
        newXS_deffile("OpenGL::Modern::glGetTrackMatrixivNV_c", XS_OpenGL__Modern_glGetTrackMatrixivNV_c);
        newXS_deffile("OpenGL::Modern::glGetTrackMatrixivNV_p", XS_OpenGL__Modern_glGetTrackMatrixivNV_p);
        cv = newXS_deffile("OpenGL::Modern::glGetTransformFeedbackVaryingEXT_c", XS_OpenGL__Modern_glGetTransformFeedbackVarying_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetTransformFeedbackVarying_c", XS_OpenGL__Modern_glGetTransformFeedbackVarying_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetTransformFeedbackVaryingEXT_p", XS_OpenGL__Modern_glGetTransformFeedbackVarying_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetTransformFeedbackVarying_p", XS_OpenGL__Modern_glGetTransformFeedbackVarying_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGetTransformFeedbackVaryingNV_c", XS_OpenGL__Modern_glGetTransformFeedbackVaryingNV_c);
        newXS_deffile("OpenGL::Modern::glGetTransformFeedbackVaryingNV_p", XS_OpenGL__Modern_glGetTransformFeedbackVaryingNV_p);
        newXS_deffile("OpenGL::Modern::glGetTransformFeedbacki64_v_c", XS_OpenGL__Modern_glGetTransformFeedbacki64_v_c);
        newXS_deffile("OpenGL::Modern::glGetTransformFeedbacki_v_c", XS_OpenGL__Modern_glGetTransformFeedbacki_v_c);
        newXS_deffile("OpenGL::Modern::glGetTransformFeedbackiv_c", XS_OpenGL__Modern_glGetTransformFeedbackiv_c);
        newXS_deffile("OpenGL::Modern::glGetTranslatedShaderSourceANGLE_c", XS_OpenGL__Modern_glGetTranslatedShaderSourceANGLE_c);
        newXS_deffile("OpenGL::Modern::glGetTranslatedShaderSourceANGLE_p", XS_OpenGL__Modern_glGetTranslatedShaderSourceANGLE_p);
        newXS_deffile("OpenGL::Modern::glGetUniformBlockIndex", XS_OpenGL__Modern_glGetUniformBlockIndex);
        newXS_deffile("OpenGL::Modern::glGetUniformBufferSizeEXT", XS_OpenGL__Modern_glGetUniformBufferSizeEXT);
        newXS_deffile("OpenGL::Modern::glGetUniformIndices_c", XS_OpenGL__Modern_glGetUniformIndices_c);
        newXS_deffile("OpenGL::Modern::glGetUniformIndices_p", XS_OpenGL__Modern_glGetUniformIndices_p);
        newXS_deffile("OpenGL::Modern::glGetUniformLocation", XS_OpenGL__Modern_glGetUniformLocation);
        newXS_deffile("OpenGL::Modern::glGetUniformLocationARB", XS_OpenGL__Modern_glGetUniformLocationARB);
        newXS_deffile("OpenGL::Modern::glGetUniformOffsetEXT", XS_OpenGL__Modern_glGetUniformOffsetEXT);
        newXS_deffile("OpenGL::Modern::glGetUniformSubroutineuiv_c", XS_OpenGL__Modern_glGetUniformSubroutineuiv_c);
        newXS_deffile("OpenGL::Modern::glGetUniformSubroutineuiv_p", XS_OpenGL__Modern_glGetUniformSubroutineuiv_p);
        newXS_deffile("OpenGL::Modern::glGetUniformdv_c", XS_OpenGL__Modern_glGetUniformdv_c);
        newXS_deffile("OpenGL::Modern::glGetUniformfv_c", XS_OpenGL__Modern_glGetUniformfv_c);
        newXS_deffile("OpenGL::Modern::glGetUniformfvARB_c", XS_OpenGL__Modern_glGetUniformfvARB_c);
        newXS_deffile("OpenGL::Modern::glGetUniformi64vARB_c", XS_OpenGL__Modern_glGetUniformi64vARB_c);
        newXS_deffile("OpenGL::Modern::glGetUniformi64vNV_c", XS_OpenGL__Modern_glGetUniformi64vNV_c);
        newXS_deffile("OpenGL::Modern::glGetUniformiv_c", XS_OpenGL__Modern_glGetUniformiv_c);
        newXS_deffile("OpenGL::Modern::glGetUniformivARB_c", XS_OpenGL__Modern_glGetUniformivARB_c);
        newXS_deffile("OpenGL::Modern::glGetUniformui64vARB_c", XS_OpenGL__Modern_glGetUniformui64vARB_c);
        newXS_deffile("OpenGL::Modern::glGetUniformui64vNV_c", XS_OpenGL__Modern_glGetUniformui64vNV_c);
        cv = newXS_deffile("OpenGL::Modern::glGetUniformuivEXT_c", XS_OpenGL__Modern_glGetUniformuiv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetUniformuiv_c", XS_OpenGL__Modern_glGetUniformuiv_c);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGetUnsignedBytei_vEXT_c", XS_OpenGL__Modern_glGetUnsignedBytei_vEXT_c);
        newXS_deffile("OpenGL::Modern::glGetUnsignedBytevEXT_c", XS_OpenGL__Modern_glGetUnsignedBytevEXT_c);
        newXS_deffile("OpenGL::Modern::glGetUnsignedBytevEXT_p", XS_OpenGL__Modern_glGetUnsignedBytevEXT_p);
        newXS_deffile("OpenGL::Modern::glGetVariantArrayObjectfvATI_c", XS_OpenGL__Modern_glGetVariantArrayObjectfvATI_c);
        newXS_deffile("OpenGL::Modern::glGetVariantArrayObjectfvATI_p", XS_OpenGL__Modern_glGetVariantArrayObjectfvATI_p);
        newXS_deffile("OpenGL::Modern::glGetVariantArrayObjectivATI_c", XS_OpenGL__Modern_glGetVariantArrayObjectivATI_c);
        newXS_deffile("OpenGL::Modern::glGetVariantArrayObjectivATI_p", XS_OpenGL__Modern_glGetVariantArrayObjectivATI_p);
        newXS_deffile("OpenGL::Modern::glGetVariantBooleanvEXT_c", XS_OpenGL__Modern_glGetVariantBooleanvEXT_c);
        newXS_deffile("OpenGL::Modern::glGetVariantFloatvEXT_c", XS_OpenGL__Modern_glGetVariantFloatvEXT_c);
        newXS_deffile("OpenGL::Modern::glGetVariantIntegervEXT_c", XS_OpenGL__Modern_glGetVariantIntegervEXT_c);
        newXS_deffile("OpenGL::Modern::glGetVariantPointervEXT_c", XS_OpenGL__Modern_glGetVariantPointervEXT_c);
        newXS_deffile("OpenGL::Modern::glGetVaryingLocationNV", XS_OpenGL__Modern_glGetVaryingLocationNV);
        newXS_deffile("OpenGL::Modern::glGetVectorOperationSGIX", XS_OpenGL__Modern_glGetVectorOperationSGIX);
        newXS_deffile("OpenGL::Modern::glGetVertexArrayIndexed64iv_c", XS_OpenGL__Modern_glGetVertexArrayIndexed64iv_c);
        newXS_deffile("OpenGL::Modern::glGetVertexArrayIndexediv_c", XS_OpenGL__Modern_glGetVertexArrayIndexediv_c);
        newXS_deffile("OpenGL::Modern::glGetVertexArrayIntegeri_vEXT_c", XS_OpenGL__Modern_glGetVertexArrayIntegeri_vEXT_c);
        newXS_deffile("OpenGL::Modern::glGetVertexArrayIntegervEXT_c", XS_OpenGL__Modern_glGetVertexArrayIntegervEXT_c);
        newXS_deffile("OpenGL::Modern::glGetVertexArrayPointeri_vEXT_c", XS_OpenGL__Modern_glGetVertexArrayPointeri_vEXT_c);
        newXS_deffile("OpenGL::Modern::glGetVertexArrayPointervEXT_c", XS_OpenGL__Modern_glGetVertexArrayPointervEXT_c);
        newXS_deffile("OpenGL::Modern::glGetVertexArrayiv_c", XS_OpenGL__Modern_glGetVertexArrayiv_c);
        newXS_deffile("OpenGL::Modern::glGetVertexAttribArrayObjectfvATI_c", XS_OpenGL__Modern_glGetVertexAttribArrayObjectfvATI_c);
        newXS_deffile("OpenGL::Modern::glGetVertexAttribArrayObjectfvATI_p", XS_OpenGL__Modern_glGetVertexAttribArrayObjectfvATI_p);
        newXS_deffile("OpenGL::Modern::glGetVertexAttribArrayObjectivATI_c", XS_OpenGL__Modern_glGetVertexAttribArrayObjectivATI_c);
        newXS_deffile("OpenGL::Modern::glGetVertexAttribArrayObjectivATI_p", XS_OpenGL__Modern_glGetVertexAttribArrayObjectivATI_p);
        cv = newXS_deffile("OpenGL::Modern::glGetVertexAttribIivEXT_c", XS_OpenGL__Modern_glGetVertexAttribIiv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetVertexAttribIiv_c", XS_OpenGL__Modern_glGetVertexAttribIiv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetVertexAttribIivEXT_p", XS_OpenGL__Modern_glGetVertexAttribIiv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetVertexAttribIiv_p", XS_OpenGL__Modern_glGetVertexAttribIiv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetVertexAttribIuivEXT_c", XS_OpenGL__Modern_glGetVertexAttribIuiv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetVertexAttribIuiv_c", XS_OpenGL__Modern_glGetVertexAttribIuiv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetVertexAttribIuivEXT_p", XS_OpenGL__Modern_glGetVertexAttribIuiv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetVertexAttribIuiv_p", XS_OpenGL__Modern_glGetVertexAttribIuiv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetVertexAttribLdvEXT_c", XS_OpenGL__Modern_glGetVertexAttribLdv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetVertexAttribLdv_c", XS_OpenGL__Modern_glGetVertexAttribLdv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetVertexAttribLdvEXT_p", XS_OpenGL__Modern_glGetVertexAttribLdv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetVertexAttribLdv_p", XS_OpenGL__Modern_glGetVertexAttribLdv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGetVertexAttribLi64vNV_c", XS_OpenGL__Modern_glGetVertexAttribLi64vNV_c);
        newXS_deffile("OpenGL::Modern::glGetVertexAttribLi64vNV_p", XS_OpenGL__Modern_glGetVertexAttribLi64vNV_p);
        newXS_deffile("OpenGL::Modern::glGetVertexAttribLui64vARB_c", XS_OpenGL__Modern_glGetVertexAttribLui64vARB_c);
        newXS_deffile("OpenGL::Modern::glGetVertexAttribLui64vNV_c", XS_OpenGL__Modern_glGetVertexAttribLui64vNV_c);
        newXS_deffile("OpenGL::Modern::glGetVertexAttribLui64vNV_p", XS_OpenGL__Modern_glGetVertexAttribLui64vNV_p);
        cv = newXS_deffile("OpenGL::Modern::glGetVertexAttribPointervARB_c", XS_OpenGL__Modern_glGetVertexAttribPointerv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetVertexAttribPointervNV_c", XS_OpenGL__Modern_glGetVertexAttribPointerv_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glGetVertexAttribPointerv_c", XS_OpenGL__Modern_glGetVertexAttribPointerv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetVertexAttribdvARB_c", XS_OpenGL__Modern_glGetVertexAttribdv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetVertexAttribdvNV_c", XS_OpenGL__Modern_glGetVertexAttribdv_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glGetVertexAttribdv_c", XS_OpenGL__Modern_glGetVertexAttribdv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetVertexAttribdvARB_p", XS_OpenGL__Modern_glGetVertexAttribdv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetVertexAttribdvNV_p", XS_OpenGL__Modern_glGetVertexAttribdv_p);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glGetVertexAttribdv_p", XS_OpenGL__Modern_glGetVertexAttribdv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetVertexAttribfvARB_c", XS_OpenGL__Modern_glGetVertexAttribfv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetVertexAttribfvNV_c", XS_OpenGL__Modern_glGetVertexAttribfv_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glGetVertexAttribfv_c", XS_OpenGL__Modern_glGetVertexAttribfv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetVertexAttribfvARB_p", XS_OpenGL__Modern_glGetVertexAttribfv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetVertexAttribfvNV_p", XS_OpenGL__Modern_glGetVertexAttribfv_p);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glGetVertexAttribfv_p", XS_OpenGL__Modern_glGetVertexAttribfv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetVertexAttribivARB_c", XS_OpenGL__Modern_glGetVertexAttribiv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetVertexAttribivNV_c", XS_OpenGL__Modern_glGetVertexAttribiv_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glGetVertexAttribiv_c", XS_OpenGL__Modern_glGetVertexAttribiv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetVertexAttribivARB_p", XS_OpenGL__Modern_glGetVertexAttribiv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetVertexAttribivNV_p", XS_OpenGL__Modern_glGetVertexAttribiv_p);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glGetVertexAttribiv_p", XS_OpenGL__Modern_glGetVertexAttribiv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGetVideoCaptureStreamdvNV_c", XS_OpenGL__Modern_glGetVideoCaptureStreamdvNV_c);
        newXS_deffile("OpenGL::Modern::glGetVideoCaptureStreamfvNV_c", XS_OpenGL__Modern_glGetVideoCaptureStreamfvNV_c);
        newXS_deffile("OpenGL::Modern::glGetVideoCaptureStreamivNV_c", XS_OpenGL__Modern_glGetVideoCaptureStreamivNV_c);
        newXS_deffile("OpenGL::Modern::glGetVideoCaptureivNV_c", XS_OpenGL__Modern_glGetVideoCaptureivNV_c);
        newXS_deffile("OpenGL::Modern::glGetVideoi64vNV_c", XS_OpenGL__Modern_glGetVideoi64vNV_c);
        newXS_deffile("OpenGL::Modern::glGetVideoivNV_c", XS_OpenGL__Modern_glGetVideoivNV_c);
        newXS_deffile("OpenGL::Modern::glGetVideoui64vNV_c", XS_OpenGL__Modern_glGetVideoui64vNV_c);
        newXS_deffile("OpenGL::Modern::glGetVideouivNV_c", XS_OpenGL__Modern_glGetVideouivNV_c);
        newXS_deffile("OpenGL::Modern::glGetVkProcAddrNV", XS_OpenGL__Modern_glGetVkProcAddrNV);
        newXS_deffile("OpenGL::Modern::glGetnColorTableARB_c", XS_OpenGL__Modern_glGetnColorTableARB_c);
        newXS_deffile("OpenGL::Modern::glGetnCompressedTexImage_c", XS_OpenGL__Modern_glGetnCompressedTexImage_c);
        newXS_deffile("OpenGL::Modern::glGetnCompressedTexImageARB_c", XS_OpenGL__Modern_glGetnCompressedTexImageARB_c);
        newXS_deffile("OpenGL::Modern::glGetnConvolutionFilterARB_c", XS_OpenGL__Modern_glGetnConvolutionFilterARB_c);
        newXS_deffile("OpenGL::Modern::glGetnHistogramARB_c", XS_OpenGL__Modern_glGetnHistogramARB_c);
        newXS_deffile("OpenGL::Modern::glGetnMapdvARB_c", XS_OpenGL__Modern_glGetnMapdvARB_c);
        newXS_deffile("OpenGL::Modern::glGetnMapdvARB_p", XS_OpenGL__Modern_glGetnMapdvARB_p);
        newXS_deffile("OpenGL::Modern::glGetnMapfvARB_c", XS_OpenGL__Modern_glGetnMapfvARB_c);
        newXS_deffile("OpenGL::Modern::glGetnMapfvARB_p", XS_OpenGL__Modern_glGetnMapfvARB_p);
        newXS_deffile("OpenGL::Modern::glGetnMapivARB_c", XS_OpenGL__Modern_glGetnMapivARB_c);
        newXS_deffile("OpenGL::Modern::glGetnMapivARB_p", XS_OpenGL__Modern_glGetnMapivARB_p);
        newXS_deffile("OpenGL::Modern::glGetnMinmaxARB_c", XS_OpenGL__Modern_glGetnMinmaxARB_c);
        newXS_deffile("OpenGL::Modern::glGetnPixelMapfvARB_c", XS_OpenGL__Modern_glGetnPixelMapfvARB_c);
        newXS_deffile("OpenGL::Modern::glGetnPixelMapfvARB_p", XS_OpenGL__Modern_glGetnPixelMapfvARB_p);
        newXS_deffile("OpenGL::Modern::glGetnPixelMapuivARB_c", XS_OpenGL__Modern_glGetnPixelMapuivARB_c);
        newXS_deffile("OpenGL::Modern::glGetnPixelMapuivARB_p", XS_OpenGL__Modern_glGetnPixelMapuivARB_p);
        newXS_deffile("OpenGL::Modern::glGetnPixelMapusvARB_c", XS_OpenGL__Modern_glGetnPixelMapusvARB_c);
        newXS_deffile("OpenGL::Modern::glGetnPixelMapusvARB_p", XS_OpenGL__Modern_glGetnPixelMapusvARB_p);
        newXS_deffile("OpenGL::Modern::glGetnPolygonStippleARB_c", XS_OpenGL__Modern_glGetnPolygonStippleARB_c);
        newXS_deffile("OpenGL::Modern::glGetnPolygonStippleARB_p", XS_OpenGL__Modern_glGetnPolygonStippleARB_p);
        newXS_deffile("OpenGL::Modern::glGetnSeparableFilterARB_c", XS_OpenGL__Modern_glGetnSeparableFilterARB_c);
        newXS_deffile("OpenGL::Modern::glGetnTexImage_c", XS_OpenGL__Modern_glGetnTexImage_c);
        newXS_deffile("OpenGL::Modern::glGetnTexImageARB_c", XS_OpenGL__Modern_glGetnTexImageARB_c);
        newXS_deffile("OpenGL::Modern::glGetnUniformdv_c", XS_OpenGL__Modern_glGetnUniformdv_c);
        newXS_deffile("OpenGL::Modern::glGetnUniformdv_p", XS_OpenGL__Modern_glGetnUniformdv_p);
        newXS_deffile("OpenGL::Modern::glGetnUniformdvARB_c", XS_OpenGL__Modern_glGetnUniformdvARB_c);
        newXS_deffile("OpenGL::Modern::glGetnUniformdvARB_p", XS_OpenGL__Modern_glGetnUniformdvARB_p);
        cv = newXS_deffile("OpenGL::Modern::glGetnUniformfvEXT_c", XS_OpenGL__Modern_glGetnUniformfv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetnUniformfvKHR_c", XS_OpenGL__Modern_glGetnUniformfv_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glGetnUniformfv_c", XS_OpenGL__Modern_glGetnUniformfv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetnUniformfvEXT_p", XS_OpenGL__Modern_glGetnUniformfv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetnUniformfvKHR_p", XS_OpenGL__Modern_glGetnUniformfv_p);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glGetnUniformfv_p", XS_OpenGL__Modern_glGetnUniformfv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGetnUniformfvARB_c", XS_OpenGL__Modern_glGetnUniformfvARB_c);
        newXS_deffile("OpenGL::Modern::glGetnUniformfvARB_p", XS_OpenGL__Modern_glGetnUniformfvARB_p);
        newXS_deffile("OpenGL::Modern::glGetnUniformi64vARB_c", XS_OpenGL__Modern_glGetnUniformi64vARB_c);
        newXS_deffile("OpenGL::Modern::glGetnUniformi64vARB_p", XS_OpenGL__Modern_glGetnUniformi64vARB_p);
        cv = newXS_deffile("OpenGL::Modern::glGetnUniformivEXT_c", XS_OpenGL__Modern_glGetnUniformiv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetnUniformivKHR_c", XS_OpenGL__Modern_glGetnUniformiv_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glGetnUniformiv_c", XS_OpenGL__Modern_glGetnUniformiv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetnUniformivEXT_p", XS_OpenGL__Modern_glGetnUniformiv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetnUniformivKHR_p", XS_OpenGL__Modern_glGetnUniformiv_p);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glGetnUniformiv_p", XS_OpenGL__Modern_glGetnUniformiv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGetnUniformivARB_c", XS_OpenGL__Modern_glGetnUniformivARB_c);
        newXS_deffile("OpenGL::Modern::glGetnUniformivARB_p", XS_OpenGL__Modern_glGetnUniformivARB_p);
        newXS_deffile("OpenGL::Modern::glGetnUniformui64vARB_c", XS_OpenGL__Modern_glGetnUniformui64vARB_c);
        newXS_deffile("OpenGL::Modern::glGetnUniformui64vARB_p", XS_OpenGL__Modern_glGetnUniformui64vARB_p);
        cv = newXS_deffile("OpenGL::Modern::glGetnUniformuivKHR_c", XS_OpenGL__Modern_glGetnUniformuiv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetnUniformuiv_c", XS_OpenGL__Modern_glGetnUniformuiv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glGetnUniformuivKHR_p", XS_OpenGL__Modern_glGetnUniformuiv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glGetnUniformuiv_p", XS_OpenGL__Modern_glGetnUniformuiv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glGetnUniformuivARB_c", XS_OpenGL__Modern_glGetnUniformuivARB_c);
        newXS_deffile("OpenGL::Modern::glGetnUniformuivARB_p", XS_OpenGL__Modern_glGetnUniformuivARB_p);
        newXS_deffile("OpenGL::Modern::glGlobalAlphaFactorbSUN", XS_OpenGL__Modern_glGlobalAlphaFactorbSUN);
        newXS_deffile("OpenGL::Modern::glGlobalAlphaFactordSUN", XS_OpenGL__Modern_glGlobalAlphaFactordSUN);
        newXS_deffile("OpenGL::Modern::glGlobalAlphaFactorfSUN", XS_OpenGL__Modern_glGlobalAlphaFactorfSUN);
        newXS_deffile("OpenGL::Modern::glGlobalAlphaFactoriSUN", XS_OpenGL__Modern_glGlobalAlphaFactoriSUN);
        newXS_deffile("OpenGL::Modern::glGlobalAlphaFactorsSUN", XS_OpenGL__Modern_glGlobalAlphaFactorsSUN);
        newXS_deffile("OpenGL::Modern::glGlobalAlphaFactorubSUN", XS_OpenGL__Modern_glGlobalAlphaFactorubSUN);
        newXS_deffile("OpenGL::Modern::glGlobalAlphaFactoruiSUN", XS_OpenGL__Modern_glGlobalAlphaFactoruiSUN);
        newXS_deffile("OpenGL::Modern::glGlobalAlphaFactorusSUN", XS_OpenGL__Modern_glGlobalAlphaFactorusSUN);
        newXS_deffile("OpenGL::Modern::glHint", XS_OpenGL__Modern_glHint);
        cv = newXS_deffile("OpenGL::Modern::glHistogram", XS_OpenGL__Modern_glHistogram);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glHistogramEXT", XS_OpenGL__Modern_glHistogram);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glIglooInterfaceSGIX_c", XS_OpenGL__Modern_glIglooInterfaceSGIX_c);
        newXS_deffile("OpenGL::Modern::glImageTransformParameterfHP", XS_OpenGL__Modern_glImageTransformParameterfHP);
        newXS_deffile("OpenGL::Modern::glImageTransformParameterfvHP_c", XS_OpenGL__Modern_glImageTransformParameterfvHP_c);
        newXS_deffile("OpenGL::Modern::glImageTransformParameteriHP", XS_OpenGL__Modern_glImageTransformParameteriHP);
        newXS_deffile("OpenGL::Modern::glImageTransformParameterivHP_c", XS_OpenGL__Modern_glImageTransformParameterivHP_c);
        newXS_deffile("OpenGL::Modern::glImportMemoryFdEXT", XS_OpenGL__Modern_glImportMemoryFdEXT);
        newXS_deffile("OpenGL::Modern::glImportMemoryWin32HandleEXT_c", XS_OpenGL__Modern_glImportMemoryWin32HandleEXT_c);
        newXS_deffile("OpenGL::Modern::glImportMemoryWin32NameEXT_c", XS_OpenGL__Modern_glImportMemoryWin32NameEXT_c);
        newXS_deffile("OpenGL::Modern::glImportSemaphoreFdEXT", XS_OpenGL__Modern_glImportSemaphoreFdEXT);
        newXS_deffile("OpenGL::Modern::glImportSemaphoreWin32HandleEXT_c", XS_OpenGL__Modern_glImportSemaphoreWin32HandleEXT_c);
        newXS_deffile("OpenGL::Modern::glImportSemaphoreWin32NameEXT_c", XS_OpenGL__Modern_glImportSemaphoreWin32NameEXT_c);
        newXS_deffile("OpenGL::Modern::glImportSyncEXT", XS_OpenGL__Modern_glImportSyncEXT);
        newXS_deffile("OpenGL::Modern::glIndexFormatNV", XS_OpenGL__Modern_glIndexFormatNV);
        newXS_deffile("OpenGL::Modern::glIndexFuncEXT", XS_OpenGL__Modern_glIndexFuncEXT);
        newXS_deffile("OpenGL::Modern::glIndexMask", XS_OpenGL__Modern_glIndexMask);
        newXS_deffile("OpenGL::Modern::glIndexMaterialEXT", XS_OpenGL__Modern_glIndexMaterialEXT);
        newXS_deffile("OpenGL::Modern::glIndexPointer_c", XS_OpenGL__Modern_glIndexPointer_c);
        newXS_deffile("OpenGL::Modern::glIndexPointerEXT_c", XS_OpenGL__Modern_glIndexPointerEXT_c);
        newXS_deffile("OpenGL::Modern::glIndexPointerListIBM_c", XS_OpenGL__Modern_glIndexPointerListIBM_c);
        newXS_deffile("OpenGL::Modern::glIndexd", XS_OpenGL__Modern_glIndexd);
        newXS_deffile("OpenGL::Modern::glIndexdv_c", XS_OpenGL__Modern_glIndexdv_c);
        newXS_deffile("OpenGL::Modern::glIndexdv_p", XS_OpenGL__Modern_glIndexdv_p);
        newXS_deffile("OpenGL::Modern::glIndexf", XS_OpenGL__Modern_glIndexf);
        newXS_deffile("OpenGL::Modern::glIndexfv_c", XS_OpenGL__Modern_glIndexfv_c);
        newXS_deffile("OpenGL::Modern::glIndexfv_p", XS_OpenGL__Modern_glIndexfv_p);
        newXS_deffile("OpenGL::Modern::glIndexi", XS_OpenGL__Modern_glIndexi);
        newXS_deffile("OpenGL::Modern::glIndexiv_c", XS_OpenGL__Modern_glIndexiv_c);
        newXS_deffile("OpenGL::Modern::glIndexiv_p", XS_OpenGL__Modern_glIndexiv_p);
        newXS_deffile("OpenGL::Modern::glIndexs", XS_OpenGL__Modern_glIndexs);
        newXS_deffile("OpenGL::Modern::glIndexsv_c", XS_OpenGL__Modern_glIndexsv_c);
        newXS_deffile("OpenGL::Modern::glIndexsv_p", XS_OpenGL__Modern_glIndexsv_p);
        newXS_deffile("OpenGL::Modern::glIndexub", XS_OpenGL__Modern_glIndexub);
        newXS_deffile("OpenGL::Modern::glIndexubv_c", XS_OpenGL__Modern_glIndexubv_c);
        newXS_deffile("OpenGL::Modern::glIndexubv_p", XS_OpenGL__Modern_glIndexubv_p);
        newXS_deffile("OpenGL::Modern::glInitNames", XS_OpenGL__Modern_glInitNames);
        newXS_deffile("OpenGL::Modern::glInsertComponentEXT", XS_OpenGL__Modern_glInsertComponentEXT);
        newXS_deffile("OpenGL::Modern::glInsertEventMarkerEXT", XS_OpenGL__Modern_glInsertEventMarkerEXT);
        newXS_deffile("OpenGL::Modern::glInterleavedArrays_c", XS_OpenGL__Modern_glInterleavedArrays_c);
        newXS_deffile("OpenGL::Modern::glInterleavedTextureCoordSetsSGIS", XS_OpenGL__Modern_glInterleavedTextureCoordSetsSGIS);
        newXS_deffile("OpenGL::Modern::glInterpolatePathsNV", XS_OpenGL__Modern_glInterpolatePathsNV);
        newXS_deffile("OpenGL::Modern::glInvalidateBufferData", XS_OpenGL__Modern_glInvalidateBufferData);
        newXS_deffile("OpenGL::Modern::glInvalidateBufferSubData", XS_OpenGL__Modern_glInvalidateBufferSubData);
        newXS_deffile("OpenGL::Modern::glInvalidateFramebuffer_c", XS_OpenGL__Modern_glInvalidateFramebuffer_c);
        newXS_deffile("OpenGL::Modern::glInvalidateFramebuffer_p", XS_OpenGL__Modern_glInvalidateFramebuffer_p);
        newXS_deffile("OpenGL::Modern::glInvalidateNamedFramebufferData_c", XS_OpenGL__Modern_glInvalidateNamedFramebufferData_c);
        newXS_deffile("OpenGL::Modern::glInvalidateNamedFramebufferData_p", XS_OpenGL__Modern_glInvalidateNamedFramebufferData_p);
        newXS_deffile("OpenGL::Modern::glInvalidateNamedFramebufferSubData_c", XS_OpenGL__Modern_glInvalidateNamedFramebufferSubData_c);
        newXS_deffile("OpenGL::Modern::glInvalidateNamedFramebufferSubData_p", XS_OpenGL__Modern_glInvalidateNamedFramebufferSubData_p);
        newXS_deffile("OpenGL::Modern::glInvalidateSubFramebuffer_c", XS_OpenGL__Modern_glInvalidateSubFramebuffer_c);
        newXS_deffile("OpenGL::Modern::glInvalidateSubFramebuffer_p", XS_OpenGL__Modern_glInvalidateSubFramebuffer_p);
        newXS_deffile("OpenGL::Modern::glInvalidateTexImage", XS_OpenGL__Modern_glInvalidateTexImage);
        newXS_deffile("OpenGL::Modern::glInvalidateTexSubImage", XS_OpenGL__Modern_glInvalidateTexSubImage);
        newXS_deffile("OpenGL::Modern::glIsAsyncMarkerSGIX", XS_OpenGL__Modern_glIsAsyncMarkerSGIX);
        cv = newXS_deffile("OpenGL::Modern::glIsBuffer", XS_OpenGL__Modern_glIsBuffer);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glIsBufferARB", XS_OpenGL__Modern_glIsBuffer);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glIsBufferResidentNV", XS_OpenGL__Modern_glIsBufferResidentNV);
        newXS_deffile("OpenGL::Modern::glIsCommandListNV", XS_OpenGL__Modern_glIsCommandListNV);
        newXS_deffile("OpenGL::Modern::glIsEnabled", XS_OpenGL__Modern_glIsEnabled);
        cv = newXS_deffile("OpenGL::Modern::glIsEnabledIndexedEXT", XS_OpenGL__Modern_glIsEnabledi);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glIsEnabledi", XS_OpenGL__Modern_glIsEnabledi);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glIsEnablediEXT", XS_OpenGL__Modern_glIsEnabledi);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glIsEnablediNV", XS_OpenGL__Modern_glIsEnabledi);
        XSANY.any_i32 = 3;
        newXS_deffile("OpenGL::Modern::glIsEnablediOES", XS_OpenGL__Modern_glIsEnablediOES);
        newXS_deffile("OpenGL::Modern::glIsFenceAPPLE", XS_OpenGL__Modern_glIsFenceAPPLE);
        newXS_deffile("OpenGL::Modern::glIsFenceNV", XS_OpenGL__Modern_glIsFenceNV);
        cv = newXS_deffile("OpenGL::Modern::glIsFramebuffer", XS_OpenGL__Modern_glIsFramebuffer);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glIsFramebufferEXT", XS_OpenGL__Modern_glIsFramebuffer);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glIsFramebufferOES", XS_OpenGL__Modern_glIsFramebufferOES);
        newXS_deffile("OpenGL::Modern::glIsImageHandleResidentARB", XS_OpenGL__Modern_glIsImageHandleResidentARB);
        newXS_deffile("OpenGL::Modern::glIsImageHandleResidentNV", XS_OpenGL__Modern_glIsImageHandleResidentNV);
        newXS_deffile("OpenGL::Modern::glIsList", XS_OpenGL__Modern_glIsList);
        newXS_deffile("OpenGL::Modern::glIsMPEGPredictorSGIX", XS_OpenGL__Modern_glIsMPEGPredictorSGIX);
        newXS_deffile("OpenGL::Modern::glIsMemoryObjectEXT", XS_OpenGL__Modern_glIsMemoryObjectEXT);
        newXS_deffile("OpenGL::Modern::glIsNameAMD", XS_OpenGL__Modern_glIsNameAMD);
        newXS_deffile("OpenGL::Modern::glIsNamedBufferResidentNV", XS_OpenGL__Modern_glIsNamedBufferResidentNV);
        newXS_deffile("OpenGL::Modern::glIsNamedStringARB", XS_OpenGL__Modern_glIsNamedStringARB);
        newXS_deffile("OpenGL::Modern::glIsObjectBufferATI", XS_OpenGL__Modern_glIsObjectBufferATI);
        newXS_deffile("OpenGL::Modern::glIsOcclusionQueryNV", XS_OpenGL__Modern_glIsOcclusionQueryNV);
        newXS_deffile("OpenGL::Modern::glIsPathNV", XS_OpenGL__Modern_glIsPathNV);
        newXS_deffile("OpenGL::Modern::glIsPointInFillPathNV", XS_OpenGL__Modern_glIsPointInFillPathNV);
        newXS_deffile("OpenGL::Modern::glIsPointInStrokePathNV", XS_OpenGL__Modern_glIsPointInStrokePathNV);
        newXS_deffile("OpenGL::Modern::glIsProgram", XS_OpenGL__Modern_glIsProgram);
        cv = newXS_deffile("OpenGL::Modern::glIsProgramARB", XS_OpenGL__Modern_glIsProgramARB);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glIsProgramNV", XS_OpenGL__Modern_glIsProgramARB);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glIsProgramPipeline", XS_OpenGL__Modern_glIsProgramPipeline);
        cv = newXS_deffile("OpenGL::Modern::glIsQuery", XS_OpenGL__Modern_glIsQuery);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glIsQueryARB", XS_OpenGL__Modern_glIsQuery);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glIsQueryANGLE", XS_OpenGL__Modern_glIsQueryANGLE);
        newXS_deffile("OpenGL::Modern::glIsQueryEXT", XS_OpenGL__Modern_glIsQueryEXT);
        cv = newXS_deffile("OpenGL::Modern::glIsRenderbuffer", XS_OpenGL__Modern_glIsRenderbuffer);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glIsRenderbufferEXT", XS_OpenGL__Modern_glIsRenderbuffer);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glIsRenderbufferOES", XS_OpenGL__Modern_glIsRenderbufferOES);
        newXS_deffile("OpenGL::Modern::glIsSampler", XS_OpenGL__Modern_glIsSampler);
        newXS_deffile("OpenGL::Modern::glIsSemaphoreEXT", XS_OpenGL__Modern_glIsSemaphoreEXT);
        newXS_deffile("OpenGL::Modern::glIsShader", XS_OpenGL__Modern_glIsShader);
        newXS_deffile("OpenGL::Modern::glIsStateNV", XS_OpenGL__Modern_glIsStateNV);
        newXS_deffile("OpenGL::Modern::glIsSupportedREGAL", XS_OpenGL__Modern_glIsSupportedREGAL);
        cv = newXS_deffile("OpenGL::Modern::glIsSync", XS_OpenGL__Modern_glIsSync);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glIsSyncAPPLE", XS_OpenGL__Modern_glIsSync);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glIsTexture", XS_OpenGL__Modern_glIsTexture);
        newXS_deffile("OpenGL::Modern::glIsTextureEXT", XS_OpenGL__Modern_glIsTextureEXT);
        newXS_deffile("OpenGL::Modern::glIsTextureHandleResidentARB", XS_OpenGL__Modern_glIsTextureHandleResidentARB);
        newXS_deffile("OpenGL::Modern::glIsTextureHandleResidentNV", XS_OpenGL__Modern_glIsTextureHandleResidentNV);
        cv = newXS_deffile("OpenGL::Modern::glIsTransformFeedback", XS_OpenGL__Modern_glIsTransformFeedback);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glIsTransformFeedbackNV", XS_OpenGL__Modern_glIsTransformFeedback);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glIsVariantEnabledEXT", XS_OpenGL__Modern_glIsVariantEnabledEXT);
        cv = newXS_deffile("OpenGL::Modern::glIsVertexArray", XS_OpenGL__Modern_glIsVertexArray);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glIsVertexArrayAPPLE", XS_OpenGL__Modern_glIsVertexArray);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glIsVertexArrayOES", XS_OpenGL__Modern_glIsVertexArrayOES);
        newXS_deffile("OpenGL::Modern::glIsVertexArraySGIX", XS_OpenGL__Modern_glIsVertexArraySGIX);
        newXS_deffile("OpenGL::Modern::glIsVertexAttribEnabledAPPLE", XS_OpenGL__Modern_glIsVertexAttribEnabledAPPLE);
        newXS_deffile("OpenGL::Modern::glLGPUCopyImageSubDataNVX", XS_OpenGL__Modern_glLGPUCopyImageSubDataNVX);
        newXS_deffile("OpenGL::Modern::glLGPUInterlockNVX", XS_OpenGL__Modern_glLGPUInterlockNVX);
        newXS_deffile("OpenGL::Modern::glLGPUNamedBufferSubDataNVX_c", XS_OpenGL__Modern_glLGPUNamedBufferSubDataNVX_c);
        newXS_deffile("OpenGL::Modern::glLabelObjectEXT", XS_OpenGL__Modern_glLabelObjectEXT);
        newXS_deffile("OpenGL::Modern::glLightEnviEXT", XS_OpenGL__Modern_glLightEnviEXT);
        newXS_deffile("OpenGL::Modern::glLightModelf", XS_OpenGL__Modern_glLightModelf);
        newXS_deffile("OpenGL::Modern::glLightModelfv_c", XS_OpenGL__Modern_glLightModelfv_c);
        newXS_deffile("OpenGL::Modern::glLightModelfv_p", XS_OpenGL__Modern_glLightModelfv_p);
        newXS_deffile("OpenGL::Modern::glLightModeli", XS_OpenGL__Modern_glLightModeli);
        newXS_deffile("OpenGL::Modern::glLightModeliv_c", XS_OpenGL__Modern_glLightModeliv_c);
        newXS_deffile("OpenGL::Modern::glLightModeliv_p", XS_OpenGL__Modern_glLightModeliv_p);
        newXS_deffile("OpenGL::Modern::glLightModelx", XS_OpenGL__Modern_glLightModelx);
        newXS_deffile("OpenGL::Modern::glLightModelxv_c", XS_OpenGL__Modern_glLightModelxv_c);
        newXS_deffile("OpenGL::Modern::glLightModelxv_p", XS_OpenGL__Modern_glLightModelxv_p);
        newXS_deffile("OpenGL::Modern::glLightf", XS_OpenGL__Modern_glLightf);
        newXS_deffile("OpenGL::Modern::glLightfv_c", XS_OpenGL__Modern_glLightfv_c);
        newXS_deffile("OpenGL::Modern::glLightfv_p", XS_OpenGL__Modern_glLightfv_p);
        newXS_deffile("OpenGL::Modern::glLighti", XS_OpenGL__Modern_glLighti);
        newXS_deffile("OpenGL::Modern::glLightiv_c", XS_OpenGL__Modern_glLightiv_c);
        newXS_deffile("OpenGL::Modern::glLightiv_p", XS_OpenGL__Modern_glLightiv_p);
        newXS_deffile("OpenGL::Modern::glLightx", XS_OpenGL__Modern_glLightx);
        newXS_deffile("OpenGL::Modern::glLightxv_c", XS_OpenGL__Modern_glLightxv_c);
        newXS_deffile("OpenGL::Modern::glLightxv_p", XS_OpenGL__Modern_glLightxv_p);
        newXS_deffile("OpenGL::Modern::glLineStipple", XS_OpenGL__Modern_glLineStipple);
        newXS_deffile("OpenGL::Modern::glLineWidth", XS_OpenGL__Modern_glLineWidth);
        newXS_deffile("OpenGL::Modern::glLineWidthx", XS_OpenGL__Modern_glLineWidthx);
        newXS_deffile("OpenGL::Modern::glLinkProgram", XS_OpenGL__Modern_glLinkProgram);
        newXS_deffile("OpenGL::Modern::glLinkProgramARB", XS_OpenGL__Modern_glLinkProgramARB);
        newXS_deffile("OpenGL::Modern::glListBase", XS_OpenGL__Modern_glListBase);
        newXS_deffile("OpenGL::Modern::glListDrawCommandsStatesClientNV_c", XS_OpenGL__Modern_glListDrawCommandsStatesClientNV_c);
        newXS_deffile("OpenGL::Modern::glLoadIdentity", XS_OpenGL__Modern_glLoadIdentity);
        newXS_deffile("OpenGL::Modern::glLoadIdentityDeformationMapSGIX", XS_OpenGL__Modern_glLoadIdentityDeformationMapSGIX);
        newXS_deffile("OpenGL::Modern::glLoadMatrixd_c", XS_OpenGL__Modern_glLoadMatrixd_c);
        newXS_deffile("OpenGL::Modern::glLoadMatrixd_p", XS_OpenGL__Modern_glLoadMatrixd_p);
        newXS_deffile("OpenGL::Modern::glLoadMatrixf_c", XS_OpenGL__Modern_glLoadMatrixf_c);
        newXS_deffile("OpenGL::Modern::glLoadMatrixf_p", XS_OpenGL__Modern_glLoadMatrixf_p);
        newXS_deffile("OpenGL::Modern::glLoadMatrixx_c", XS_OpenGL__Modern_glLoadMatrixx_c);
        newXS_deffile("OpenGL::Modern::glLoadMatrixx_p", XS_OpenGL__Modern_glLoadMatrixx_p);
        newXS_deffile("OpenGL::Modern::glLoadName", XS_OpenGL__Modern_glLoadName);
        newXS_deffile("OpenGL::Modern::glLoadPaletteFromModelViewMatrixOES", XS_OpenGL__Modern_glLoadPaletteFromModelViewMatrixOES);
        newXS_deffile("OpenGL::Modern::glLoadProgramNV", XS_OpenGL__Modern_glLoadProgramNV);
        cv = newXS_deffile("OpenGL::Modern::glLoadTransposeMatrixdARB_c", XS_OpenGL__Modern_glLoadTransposeMatrixd_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glLoadTransposeMatrixd_c", XS_OpenGL__Modern_glLoadTransposeMatrixd_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glLoadTransposeMatrixdARB_p", XS_OpenGL__Modern_glLoadTransposeMatrixd_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glLoadTransposeMatrixd_p", XS_OpenGL__Modern_glLoadTransposeMatrixd_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glLoadTransposeMatrixfARB_c", XS_OpenGL__Modern_glLoadTransposeMatrixf_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glLoadTransposeMatrixf_c", XS_OpenGL__Modern_glLoadTransposeMatrixf_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glLoadTransposeMatrixfARB_p", XS_OpenGL__Modern_glLoadTransposeMatrixf_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glLoadTransposeMatrixf_p", XS_OpenGL__Modern_glLoadTransposeMatrixf_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glLockArraysEXT", XS_OpenGL__Modern_glLockArraysEXT);
        newXS_deffile("OpenGL::Modern::glLogMessageCallbackREGAL", XS_OpenGL__Modern_glLogMessageCallbackREGAL);
        newXS_deffile("OpenGL::Modern::glLogicOp", XS_OpenGL__Modern_glLogicOp);
        newXS_deffile("OpenGL::Modern::glMPEGPredictorSGIX_c", XS_OpenGL__Modern_glMPEGPredictorSGIX_c);
        newXS_deffile("OpenGL::Modern::glMPEGQuantTableubv_c", XS_OpenGL__Modern_glMPEGQuantTableubv_c);
        newXS_deffile("OpenGL::Modern::glMakeBufferNonResidentNV", XS_OpenGL__Modern_glMakeBufferNonResidentNV);
        newXS_deffile("OpenGL::Modern::glMakeBufferResidentNV", XS_OpenGL__Modern_glMakeBufferResidentNV);
        newXS_deffile("OpenGL::Modern::glMakeImageHandleNonResidentARB", XS_OpenGL__Modern_glMakeImageHandleNonResidentARB);
        newXS_deffile("OpenGL::Modern::glMakeImageHandleNonResidentNV", XS_OpenGL__Modern_glMakeImageHandleNonResidentNV);
        newXS_deffile("OpenGL::Modern::glMakeImageHandleResidentARB", XS_OpenGL__Modern_glMakeImageHandleResidentARB);
        newXS_deffile("OpenGL::Modern::glMakeImageHandleResidentNV", XS_OpenGL__Modern_glMakeImageHandleResidentNV);
        newXS_deffile("OpenGL::Modern::glMakeNamedBufferNonResidentNV", XS_OpenGL__Modern_glMakeNamedBufferNonResidentNV);
        newXS_deffile("OpenGL::Modern::glMakeNamedBufferResidentNV", XS_OpenGL__Modern_glMakeNamedBufferResidentNV);
        newXS_deffile("OpenGL::Modern::glMakeTextureHandleNonResidentARB", XS_OpenGL__Modern_glMakeTextureHandleNonResidentARB);
        newXS_deffile("OpenGL::Modern::glMakeTextureHandleNonResidentNV", XS_OpenGL__Modern_glMakeTextureHandleNonResidentNV);
        newXS_deffile("OpenGL::Modern::glMakeTextureHandleResidentARB", XS_OpenGL__Modern_glMakeTextureHandleResidentARB);
        newXS_deffile("OpenGL::Modern::glMakeTextureHandleResidentNV", XS_OpenGL__Modern_glMakeTextureHandleResidentNV);
        newXS_deffile("OpenGL::Modern::glMap1d_c", XS_OpenGL__Modern_glMap1d_c);
        newXS_deffile("OpenGL::Modern::glMap1f_c", XS_OpenGL__Modern_glMap1f_c);
        newXS_deffile("OpenGL::Modern::glMap2d_c", XS_OpenGL__Modern_glMap2d_c);
        newXS_deffile("OpenGL::Modern::glMap2f_c", XS_OpenGL__Modern_glMap2f_c);
        cv = newXS_deffile("OpenGL::Modern::glMapBufferARB_c", XS_OpenGL__Modern_glMapBuffer_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMapBuffer_c", XS_OpenGL__Modern_glMapBuffer_c);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glMapBufferOES_c", XS_OpenGL__Modern_glMapBufferOES_c);
        cv = newXS_deffile("OpenGL::Modern::glMapBufferRangeEXT_c", XS_OpenGL__Modern_glMapBufferRange_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMapBufferRange_c", XS_OpenGL__Modern_glMapBufferRange_c);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glMapControlPointsNV_c", XS_OpenGL__Modern_glMapControlPointsNV_c);
        newXS_deffile("OpenGL::Modern::glMapGrid1d", XS_OpenGL__Modern_glMapGrid1d);
        newXS_deffile("OpenGL::Modern::glMapGrid1f", XS_OpenGL__Modern_glMapGrid1f);
        newXS_deffile("OpenGL::Modern::glMapGrid2d", XS_OpenGL__Modern_glMapGrid2d);
        newXS_deffile("OpenGL::Modern::glMapGrid2f", XS_OpenGL__Modern_glMapGrid2f);
        newXS_deffile("OpenGL::Modern::glMapNamedBuffer_c", XS_OpenGL__Modern_glMapNamedBuffer_c);
        newXS_deffile("OpenGL::Modern::glMapNamedBufferEXT_c", XS_OpenGL__Modern_glMapNamedBufferEXT_c);
        newXS_deffile("OpenGL::Modern::glMapNamedBufferRange_c", XS_OpenGL__Modern_glMapNamedBufferRange_c);
        newXS_deffile("OpenGL::Modern::glMapNamedBufferRangeEXT_c", XS_OpenGL__Modern_glMapNamedBufferRangeEXT_c);
        newXS_deffile("OpenGL::Modern::glMapObjectBufferATI_c", XS_OpenGL__Modern_glMapObjectBufferATI_c);
        newXS_deffile("OpenGL::Modern::glMapParameterfvNV_c", XS_OpenGL__Modern_glMapParameterfvNV_c);
        newXS_deffile("OpenGL::Modern::glMapParameterivNV_c", XS_OpenGL__Modern_glMapParameterivNV_c);
        newXS_deffile("OpenGL::Modern::glMapTexture2DINTEL_c", XS_OpenGL__Modern_glMapTexture2DINTEL_c);
        newXS_deffile("OpenGL::Modern::glMapTexture2DINTEL_p", XS_OpenGL__Modern_glMapTexture2DINTEL_p);
        newXS_deffile("OpenGL::Modern::glMapVertexAttrib1dAPPLE_c", XS_OpenGL__Modern_glMapVertexAttrib1dAPPLE_c);
        newXS_deffile("OpenGL::Modern::glMapVertexAttrib1fAPPLE_c", XS_OpenGL__Modern_glMapVertexAttrib1fAPPLE_c);
        newXS_deffile("OpenGL::Modern::glMapVertexAttrib2dAPPLE_c", XS_OpenGL__Modern_glMapVertexAttrib2dAPPLE_c);
        newXS_deffile("OpenGL::Modern::glMapVertexAttrib2fAPPLE_c", XS_OpenGL__Modern_glMapVertexAttrib2fAPPLE_c);
        newXS_deffile("OpenGL::Modern::glMaterialf", XS_OpenGL__Modern_glMaterialf);
        newXS_deffile("OpenGL::Modern::glMaterialfv_c", XS_OpenGL__Modern_glMaterialfv_c);
        newXS_deffile("OpenGL::Modern::glMaterialfv_p", XS_OpenGL__Modern_glMaterialfv_p);
        newXS_deffile("OpenGL::Modern::glMateriali", XS_OpenGL__Modern_glMateriali);
        newXS_deffile("OpenGL::Modern::glMaterialiv_c", XS_OpenGL__Modern_glMaterialiv_c);
        newXS_deffile("OpenGL::Modern::glMaterialiv_p", XS_OpenGL__Modern_glMaterialiv_p);
        newXS_deffile("OpenGL::Modern::glMaterialx", XS_OpenGL__Modern_glMaterialx);
        newXS_deffile("OpenGL::Modern::glMaterialxv_c", XS_OpenGL__Modern_glMaterialxv_c);
        newXS_deffile("OpenGL::Modern::glMaterialxv_p", XS_OpenGL__Modern_glMaterialxv_p);
        newXS_deffile("OpenGL::Modern::glMatrixFrustumEXT", XS_OpenGL__Modern_glMatrixFrustumEXT);
        newXS_deffile("OpenGL::Modern::glMatrixIndexPointerARB_c", XS_OpenGL__Modern_glMatrixIndexPointerARB_c);
        newXS_deffile("OpenGL::Modern::glMatrixIndexPointerOES_c", XS_OpenGL__Modern_glMatrixIndexPointerOES_c);
        newXS_deffile("OpenGL::Modern::glMatrixIndexubvARB_c", XS_OpenGL__Modern_glMatrixIndexubvARB_c);
        newXS_deffile("OpenGL::Modern::glMatrixIndexubvARB_p", XS_OpenGL__Modern_glMatrixIndexubvARB_p);
        newXS_deffile("OpenGL::Modern::glMatrixIndexuivARB_c", XS_OpenGL__Modern_glMatrixIndexuivARB_c);
        newXS_deffile("OpenGL::Modern::glMatrixIndexuivARB_p", XS_OpenGL__Modern_glMatrixIndexuivARB_p);
        newXS_deffile("OpenGL::Modern::glMatrixIndexusvARB_c", XS_OpenGL__Modern_glMatrixIndexusvARB_c);
        newXS_deffile("OpenGL::Modern::glMatrixIndexusvARB_p", XS_OpenGL__Modern_glMatrixIndexusvARB_p);
        newXS_deffile("OpenGL::Modern::glMatrixLoad3x2fNV_c", XS_OpenGL__Modern_glMatrixLoad3x2fNV_c);
        newXS_deffile("OpenGL::Modern::glMatrixLoad3x3fNV_c", XS_OpenGL__Modern_glMatrixLoad3x3fNV_c);
        newXS_deffile("OpenGL::Modern::glMatrixLoadIdentityEXT", XS_OpenGL__Modern_glMatrixLoadIdentityEXT);
        newXS_deffile("OpenGL::Modern::glMatrixLoadTranspose3x3fNV_c", XS_OpenGL__Modern_glMatrixLoadTranspose3x3fNV_c);
        newXS_deffile("OpenGL::Modern::glMatrixLoadTransposedEXT_c", XS_OpenGL__Modern_glMatrixLoadTransposedEXT_c);
        newXS_deffile("OpenGL::Modern::glMatrixLoadTransposedEXT_p", XS_OpenGL__Modern_glMatrixLoadTransposedEXT_p);
        newXS_deffile("OpenGL::Modern::glMatrixLoadTransposefEXT_c", XS_OpenGL__Modern_glMatrixLoadTransposefEXT_c);
        newXS_deffile("OpenGL::Modern::glMatrixLoadTransposefEXT_p", XS_OpenGL__Modern_glMatrixLoadTransposefEXT_p);
        newXS_deffile("OpenGL::Modern::glMatrixLoaddEXT_c", XS_OpenGL__Modern_glMatrixLoaddEXT_c);
        newXS_deffile("OpenGL::Modern::glMatrixLoaddEXT_p", XS_OpenGL__Modern_glMatrixLoaddEXT_p);
        newXS_deffile("OpenGL::Modern::glMatrixLoadfEXT_c", XS_OpenGL__Modern_glMatrixLoadfEXT_c);
        newXS_deffile("OpenGL::Modern::glMatrixLoadfEXT_p", XS_OpenGL__Modern_glMatrixLoadfEXT_p);
        newXS_deffile("OpenGL::Modern::glMatrixMode", XS_OpenGL__Modern_glMatrixMode);
        newXS_deffile("OpenGL::Modern::glMatrixMult3x2fNV_c", XS_OpenGL__Modern_glMatrixMult3x2fNV_c);
        newXS_deffile("OpenGL::Modern::glMatrixMult3x3fNV_c", XS_OpenGL__Modern_glMatrixMult3x3fNV_c);
        newXS_deffile("OpenGL::Modern::glMatrixMultTranspose3x3fNV_c", XS_OpenGL__Modern_glMatrixMultTranspose3x3fNV_c);
        newXS_deffile("OpenGL::Modern::glMatrixMultTransposedEXT_c", XS_OpenGL__Modern_glMatrixMultTransposedEXT_c);
        newXS_deffile("OpenGL::Modern::glMatrixMultTransposedEXT_p", XS_OpenGL__Modern_glMatrixMultTransposedEXT_p);
        newXS_deffile("OpenGL::Modern::glMatrixMultTransposefEXT_c", XS_OpenGL__Modern_glMatrixMultTransposefEXT_c);
        newXS_deffile("OpenGL::Modern::glMatrixMultTransposefEXT_p", XS_OpenGL__Modern_glMatrixMultTransposefEXT_p);
        newXS_deffile("OpenGL::Modern::glMatrixMultdEXT_c", XS_OpenGL__Modern_glMatrixMultdEXT_c);
        newXS_deffile("OpenGL::Modern::glMatrixMultdEXT_p", XS_OpenGL__Modern_glMatrixMultdEXT_p);
        newXS_deffile("OpenGL::Modern::glMatrixMultfEXT_c", XS_OpenGL__Modern_glMatrixMultfEXT_c);
        newXS_deffile("OpenGL::Modern::glMatrixMultfEXT_p", XS_OpenGL__Modern_glMatrixMultfEXT_p);
        newXS_deffile("OpenGL::Modern::glMatrixOrthoEXT", XS_OpenGL__Modern_glMatrixOrthoEXT);
        newXS_deffile("OpenGL::Modern::glMatrixPopEXT", XS_OpenGL__Modern_glMatrixPopEXT);
        newXS_deffile("OpenGL::Modern::glMatrixPushEXT", XS_OpenGL__Modern_glMatrixPushEXT);
        newXS_deffile("OpenGL::Modern::glMatrixRotatedEXT", XS_OpenGL__Modern_glMatrixRotatedEXT);
        newXS_deffile("OpenGL::Modern::glMatrixRotatefEXT", XS_OpenGL__Modern_glMatrixRotatefEXT);
        newXS_deffile("OpenGL::Modern::glMatrixScaledEXT", XS_OpenGL__Modern_glMatrixScaledEXT);
        newXS_deffile("OpenGL::Modern::glMatrixScalefEXT", XS_OpenGL__Modern_glMatrixScalefEXT);
        newXS_deffile("OpenGL::Modern::glMatrixTranslatedEXT", XS_OpenGL__Modern_glMatrixTranslatedEXT);
        newXS_deffile("OpenGL::Modern::glMatrixTranslatefEXT", XS_OpenGL__Modern_glMatrixTranslatefEXT);
        newXS_deffile("OpenGL::Modern::glMaxActiveShaderCoresARM", XS_OpenGL__Modern_glMaxActiveShaderCoresARM);
        cv = newXS_deffile("OpenGL::Modern::glMaxShaderCompilerThreadsARB", XS_OpenGL__Modern_glMaxShaderCompilerThreadsKHR);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMaxShaderCompilerThreadsKHR", XS_OpenGL__Modern_glMaxShaderCompilerThreadsKHR);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMemoryBarrier", XS_OpenGL__Modern_glMemoryBarrier);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMemoryBarrierEXT", XS_OpenGL__Modern_glMemoryBarrier);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glMemoryBarrierByRegion", XS_OpenGL__Modern_glMemoryBarrierByRegion);
        newXS_deffile("OpenGL::Modern::glMemoryObjectParameterivEXT_c", XS_OpenGL__Modern_glMemoryObjectParameterivEXT_c);
        newXS_deffile("OpenGL::Modern::glMeshBreadthSGIX", XS_OpenGL__Modern_glMeshBreadthSGIX);
        newXS_deffile("OpenGL::Modern::glMeshStrideSGIX", XS_OpenGL__Modern_glMeshStrideSGIX);
        cv = newXS_deffile("OpenGL::Modern::glMinSampleShading", XS_OpenGL__Modern_glMinSampleShading);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMinSampleShadingARB", XS_OpenGL__Modern_glMinSampleShading);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glMinSampleShadingOES", XS_OpenGL__Modern_glMinSampleShadingOES);
        cv = newXS_deffile("OpenGL::Modern::glMinmax", XS_OpenGL__Modern_glMinmax);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMinmaxEXT", XS_OpenGL__Modern_glMinmax);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glMultMatrixd_c", XS_OpenGL__Modern_glMultMatrixd_c);
        newXS_deffile("OpenGL::Modern::glMultMatrixd_p", XS_OpenGL__Modern_glMultMatrixd_p);
        newXS_deffile("OpenGL::Modern::glMultMatrixf_c", XS_OpenGL__Modern_glMultMatrixf_c);
        newXS_deffile("OpenGL::Modern::glMultMatrixf_p", XS_OpenGL__Modern_glMultMatrixf_p);
        newXS_deffile("OpenGL::Modern::glMultMatrixx_c", XS_OpenGL__Modern_glMultMatrixx_c);
        newXS_deffile("OpenGL::Modern::glMultMatrixx_p", XS_OpenGL__Modern_glMultMatrixx_p);
        cv = newXS_deffile("OpenGL::Modern::glMultTransposeMatrixdARB_c", XS_OpenGL__Modern_glMultTransposeMatrixd_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultTransposeMatrixd_c", XS_OpenGL__Modern_glMultTransposeMatrixd_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultTransposeMatrixdARB_p", XS_OpenGL__Modern_glMultTransposeMatrixd_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultTransposeMatrixd_p", XS_OpenGL__Modern_glMultTransposeMatrixd_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultTransposeMatrixfARB_c", XS_OpenGL__Modern_glMultTransposeMatrixf_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultTransposeMatrixf_c", XS_OpenGL__Modern_glMultTransposeMatrixf_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultTransposeMatrixfARB_p", XS_OpenGL__Modern_glMultTransposeMatrixf_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultTransposeMatrixf_p", XS_OpenGL__Modern_glMultTransposeMatrixf_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiDrawArraysEXT_c", XS_OpenGL__Modern_glMultiDrawArrays_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiDrawArrays_c", XS_OpenGL__Modern_glMultiDrawArrays_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiDrawArraysEXT_p", XS_OpenGL__Modern_glMultiDrawArrays_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiDrawArrays_p", XS_OpenGL__Modern_glMultiDrawArrays_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiDrawArraysIndirectAMD_c", XS_OpenGL__Modern_glMultiDrawArraysIndirect_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiDrawArraysIndirectEXT_c", XS_OpenGL__Modern_glMultiDrawArraysIndirect_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glMultiDrawArraysIndirect_c", XS_OpenGL__Modern_glMultiDrawArraysIndirect_c);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glMultiDrawArraysIndirectBindlessCountNV_c", XS_OpenGL__Modern_glMultiDrawArraysIndirectBindlessCountNV_c);
        newXS_deffile("OpenGL::Modern::glMultiDrawArraysIndirectBindlessNV_c", XS_OpenGL__Modern_glMultiDrawArraysIndirectBindlessNV_c);
        cv = newXS_deffile("OpenGL::Modern::glMultiDrawArraysIndirectCountARB_c", XS_OpenGL__Modern_glMultiDrawArraysIndirectCount_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiDrawArraysIndirectCount_c", XS_OpenGL__Modern_glMultiDrawArraysIndirectCount_c);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glMultiDrawElementArrayAPPLE_c", XS_OpenGL__Modern_glMultiDrawElementArrayAPPLE_c);
        newXS_deffile("OpenGL::Modern::glMultiDrawElementArrayAPPLE_p", XS_OpenGL__Modern_glMultiDrawElementArrayAPPLE_p);
        cv = newXS_deffile("OpenGL::Modern::glMultiDrawElementsEXT_c", XS_OpenGL__Modern_glMultiDrawElements_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiDrawElements_c", XS_OpenGL__Modern_glMultiDrawElements_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiDrawElementsBaseVertexEXT_c", XS_OpenGL__Modern_glMultiDrawElementsBaseVertex_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiDrawElementsBaseVertex_c", XS_OpenGL__Modern_glMultiDrawElementsBaseVertex_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiDrawElementsIndirectAMD_c", XS_OpenGL__Modern_glMultiDrawElementsIndirect_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiDrawElementsIndirectEXT_c", XS_OpenGL__Modern_glMultiDrawElementsIndirect_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glMultiDrawElementsIndirect_c", XS_OpenGL__Modern_glMultiDrawElementsIndirect_c);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glMultiDrawElementsIndirectBindlessCountNV_c", XS_OpenGL__Modern_glMultiDrawElementsIndirectBindlessCountNV_c);
        newXS_deffile("OpenGL::Modern::glMultiDrawElementsIndirectBindlessNV_c", XS_OpenGL__Modern_glMultiDrawElementsIndirectBindlessNV_c);
        cv = newXS_deffile("OpenGL::Modern::glMultiDrawElementsIndirectCountARB_c", XS_OpenGL__Modern_glMultiDrawElementsIndirectCount_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiDrawElementsIndirectCount_c", XS_OpenGL__Modern_glMultiDrawElementsIndirectCount_c);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glMultiDrawMeshTasksIndirectCountEXT", XS_OpenGL__Modern_glMultiDrawMeshTasksIndirectCountEXT);
        newXS_deffile("OpenGL::Modern::glMultiDrawMeshTasksIndirectCountNV", XS_OpenGL__Modern_glMultiDrawMeshTasksIndirectCountNV);
        newXS_deffile("OpenGL::Modern::glMultiDrawMeshTasksIndirectEXT", XS_OpenGL__Modern_glMultiDrawMeshTasksIndirectEXT);
        newXS_deffile("OpenGL::Modern::glMultiDrawMeshTasksIndirectNV", XS_OpenGL__Modern_glMultiDrawMeshTasksIndirectNV);
        newXS_deffile("OpenGL::Modern::glMultiDrawRangeElementArrayAPPLE_c", XS_OpenGL__Modern_glMultiDrawRangeElementArrayAPPLE_c);
        newXS_deffile("OpenGL::Modern::glMultiDrawRangeElementArrayAPPLE_p", XS_OpenGL__Modern_glMultiDrawRangeElementArrayAPPLE_p);
        newXS_deffile("OpenGL::Modern::glMultiModeDrawArraysIBM_c", XS_OpenGL__Modern_glMultiModeDrawArraysIBM_c);
        newXS_deffile("OpenGL::Modern::glMultiModeDrawElementsIBM_c", XS_OpenGL__Modern_glMultiModeDrawElementsIBM_c);
        newXS_deffile("OpenGL::Modern::glMultiTexBufferEXT", XS_OpenGL__Modern_glMultiTexBufferEXT);
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord1d", XS_OpenGL__Modern_glMultiTexCoord1d);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord1dARB", XS_OpenGL__Modern_glMultiTexCoord1d);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord1dvARB_c", XS_OpenGL__Modern_glMultiTexCoord1dv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord1dv_c", XS_OpenGL__Modern_glMultiTexCoord1dv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord1dvARB_p", XS_OpenGL__Modern_glMultiTexCoord1dv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord1dv_p", XS_OpenGL__Modern_glMultiTexCoord1dv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord1f", XS_OpenGL__Modern_glMultiTexCoord1f);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord1fARB", XS_OpenGL__Modern_glMultiTexCoord1f);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord1fvARB_c", XS_OpenGL__Modern_glMultiTexCoord1fv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord1fv_c", XS_OpenGL__Modern_glMultiTexCoord1fv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord1fvARB_p", XS_OpenGL__Modern_glMultiTexCoord1fv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord1fv_p", XS_OpenGL__Modern_glMultiTexCoord1fv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glMultiTexCoord1hNV", XS_OpenGL__Modern_glMultiTexCoord1hNV);
        newXS_deffile("OpenGL::Modern::glMultiTexCoord1hvNV_c", XS_OpenGL__Modern_glMultiTexCoord1hvNV_c);
        newXS_deffile("OpenGL::Modern::glMultiTexCoord1hvNV_p", XS_OpenGL__Modern_glMultiTexCoord1hvNV_p);
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord1i", XS_OpenGL__Modern_glMultiTexCoord1i);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord1iARB", XS_OpenGL__Modern_glMultiTexCoord1i);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord1ivARB_c", XS_OpenGL__Modern_glMultiTexCoord1iv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord1iv_c", XS_OpenGL__Modern_glMultiTexCoord1iv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord1ivARB_p", XS_OpenGL__Modern_glMultiTexCoord1iv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord1iv_p", XS_OpenGL__Modern_glMultiTexCoord1iv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord1s", XS_OpenGL__Modern_glMultiTexCoord1s);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord1sARB", XS_OpenGL__Modern_glMultiTexCoord1s);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord1svARB_c", XS_OpenGL__Modern_glMultiTexCoord1sv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord1sv_c", XS_OpenGL__Modern_glMultiTexCoord1sv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord1svARB_p", XS_OpenGL__Modern_glMultiTexCoord1sv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord1sv_p", XS_OpenGL__Modern_glMultiTexCoord1sv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord2d", XS_OpenGL__Modern_glMultiTexCoord2d);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord2dARB", XS_OpenGL__Modern_glMultiTexCoord2d);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord2dvARB_c", XS_OpenGL__Modern_glMultiTexCoord2dv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord2dv_c", XS_OpenGL__Modern_glMultiTexCoord2dv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord2dvARB_p", XS_OpenGL__Modern_glMultiTexCoord2dv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord2dv_p", XS_OpenGL__Modern_glMultiTexCoord2dv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord2f", XS_OpenGL__Modern_glMultiTexCoord2f);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord2fARB", XS_OpenGL__Modern_glMultiTexCoord2f);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord2fvARB_c", XS_OpenGL__Modern_glMultiTexCoord2fv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord2fv_c", XS_OpenGL__Modern_glMultiTexCoord2fv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord2fvARB_p", XS_OpenGL__Modern_glMultiTexCoord2fv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord2fv_p", XS_OpenGL__Modern_glMultiTexCoord2fv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glMultiTexCoord2hNV", XS_OpenGL__Modern_glMultiTexCoord2hNV);
        newXS_deffile("OpenGL::Modern::glMultiTexCoord2hvNV_c", XS_OpenGL__Modern_glMultiTexCoord2hvNV_c);
        newXS_deffile("OpenGL::Modern::glMultiTexCoord2hvNV_p", XS_OpenGL__Modern_glMultiTexCoord2hvNV_p);
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord2i", XS_OpenGL__Modern_glMultiTexCoord2i);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord2iARB", XS_OpenGL__Modern_glMultiTexCoord2i);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord2ivARB_c", XS_OpenGL__Modern_glMultiTexCoord2iv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord2iv_c", XS_OpenGL__Modern_glMultiTexCoord2iv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord2ivARB_p", XS_OpenGL__Modern_glMultiTexCoord2iv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord2iv_p", XS_OpenGL__Modern_glMultiTexCoord2iv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord2s", XS_OpenGL__Modern_glMultiTexCoord2s);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord2sARB", XS_OpenGL__Modern_glMultiTexCoord2s);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord2svARB_c", XS_OpenGL__Modern_glMultiTexCoord2sv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord2sv_c", XS_OpenGL__Modern_glMultiTexCoord2sv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord2svARB_p", XS_OpenGL__Modern_glMultiTexCoord2sv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord2sv_p", XS_OpenGL__Modern_glMultiTexCoord2sv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord3d", XS_OpenGL__Modern_glMultiTexCoord3d);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord3dARB", XS_OpenGL__Modern_glMultiTexCoord3d);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord3dvARB_c", XS_OpenGL__Modern_glMultiTexCoord3dv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord3dv_c", XS_OpenGL__Modern_glMultiTexCoord3dv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord3dvARB_p", XS_OpenGL__Modern_glMultiTexCoord3dv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord3dv_p", XS_OpenGL__Modern_glMultiTexCoord3dv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord3f", XS_OpenGL__Modern_glMultiTexCoord3f);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord3fARB", XS_OpenGL__Modern_glMultiTexCoord3f);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord3fvARB_c", XS_OpenGL__Modern_glMultiTexCoord3fv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord3fv_c", XS_OpenGL__Modern_glMultiTexCoord3fv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord3fvARB_p", XS_OpenGL__Modern_glMultiTexCoord3fv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord3fv_p", XS_OpenGL__Modern_glMultiTexCoord3fv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glMultiTexCoord3hNV", XS_OpenGL__Modern_glMultiTexCoord3hNV);
        newXS_deffile("OpenGL::Modern::glMultiTexCoord3hvNV_c", XS_OpenGL__Modern_glMultiTexCoord3hvNV_c);
        newXS_deffile("OpenGL::Modern::glMultiTexCoord3hvNV_p", XS_OpenGL__Modern_glMultiTexCoord3hvNV_p);
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord3i", XS_OpenGL__Modern_glMultiTexCoord3i);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord3iARB", XS_OpenGL__Modern_glMultiTexCoord3i);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord3ivARB_c", XS_OpenGL__Modern_glMultiTexCoord3iv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord3iv_c", XS_OpenGL__Modern_glMultiTexCoord3iv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord3ivARB_p", XS_OpenGL__Modern_glMultiTexCoord3iv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord3iv_p", XS_OpenGL__Modern_glMultiTexCoord3iv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord3s", XS_OpenGL__Modern_glMultiTexCoord3s);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord3sARB", XS_OpenGL__Modern_glMultiTexCoord3s);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord3svARB_c", XS_OpenGL__Modern_glMultiTexCoord3sv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord3sv_c", XS_OpenGL__Modern_glMultiTexCoord3sv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord3svARB_p", XS_OpenGL__Modern_glMultiTexCoord3sv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord3sv_p", XS_OpenGL__Modern_glMultiTexCoord3sv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord4d", XS_OpenGL__Modern_glMultiTexCoord4d);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord4dARB", XS_OpenGL__Modern_glMultiTexCoord4d);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord4dvARB_c", XS_OpenGL__Modern_glMultiTexCoord4dv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord4dv_c", XS_OpenGL__Modern_glMultiTexCoord4dv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord4dvARB_p", XS_OpenGL__Modern_glMultiTexCoord4dv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord4dv_p", XS_OpenGL__Modern_glMultiTexCoord4dv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord4f", XS_OpenGL__Modern_glMultiTexCoord4f);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord4fARB", XS_OpenGL__Modern_glMultiTexCoord4f);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord4fvARB_c", XS_OpenGL__Modern_glMultiTexCoord4fv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord4fv_c", XS_OpenGL__Modern_glMultiTexCoord4fv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord4fvARB_p", XS_OpenGL__Modern_glMultiTexCoord4fv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord4fv_p", XS_OpenGL__Modern_glMultiTexCoord4fv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glMultiTexCoord4hNV", XS_OpenGL__Modern_glMultiTexCoord4hNV);
        newXS_deffile("OpenGL::Modern::glMultiTexCoord4hvNV_c", XS_OpenGL__Modern_glMultiTexCoord4hvNV_c);
        newXS_deffile("OpenGL::Modern::glMultiTexCoord4hvNV_p", XS_OpenGL__Modern_glMultiTexCoord4hvNV_p);
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord4i", XS_OpenGL__Modern_glMultiTexCoord4i);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord4iARB", XS_OpenGL__Modern_glMultiTexCoord4i);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord4ivARB_c", XS_OpenGL__Modern_glMultiTexCoord4iv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord4iv_c", XS_OpenGL__Modern_glMultiTexCoord4iv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord4ivARB_p", XS_OpenGL__Modern_glMultiTexCoord4iv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord4iv_p", XS_OpenGL__Modern_glMultiTexCoord4iv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord4s", XS_OpenGL__Modern_glMultiTexCoord4s);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord4sARB", XS_OpenGL__Modern_glMultiTexCoord4s);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord4svARB_c", XS_OpenGL__Modern_glMultiTexCoord4sv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord4sv_c", XS_OpenGL__Modern_glMultiTexCoord4sv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord4svARB_p", XS_OpenGL__Modern_glMultiTexCoord4sv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glMultiTexCoord4sv_p", XS_OpenGL__Modern_glMultiTexCoord4sv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glMultiTexCoord4x", XS_OpenGL__Modern_glMultiTexCoord4x);
        newXS_deffile("OpenGL::Modern::glMultiTexCoordP1ui", XS_OpenGL__Modern_glMultiTexCoordP1ui);
        newXS_deffile("OpenGL::Modern::glMultiTexCoordP1uiv_c", XS_OpenGL__Modern_glMultiTexCoordP1uiv_c);
        newXS_deffile("OpenGL::Modern::glMultiTexCoordP1uiv_p", XS_OpenGL__Modern_glMultiTexCoordP1uiv_p);
        newXS_deffile("OpenGL::Modern::glMultiTexCoordP2ui", XS_OpenGL__Modern_glMultiTexCoordP2ui);
        newXS_deffile("OpenGL::Modern::glMultiTexCoordP2uiv_c", XS_OpenGL__Modern_glMultiTexCoordP2uiv_c);
        newXS_deffile("OpenGL::Modern::glMultiTexCoordP2uiv_p", XS_OpenGL__Modern_glMultiTexCoordP2uiv_p);
        newXS_deffile("OpenGL::Modern::glMultiTexCoordP3ui", XS_OpenGL__Modern_glMultiTexCoordP3ui);
        newXS_deffile("OpenGL::Modern::glMultiTexCoordP3uiv_c", XS_OpenGL__Modern_glMultiTexCoordP3uiv_c);
        newXS_deffile("OpenGL::Modern::glMultiTexCoordP3uiv_p", XS_OpenGL__Modern_glMultiTexCoordP3uiv_p);
        newXS_deffile("OpenGL::Modern::glMultiTexCoordP4ui", XS_OpenGL__Modern_glMultiTexCoordP4ui);
        newXS_deffile("OpenGL::Modern::glMultiTexCoordP4uiv_c", XS_OpenGL__Modern_glMultiTexCoordP4uiv_c);
        newXS_deffile("OpenGL::Modern::glMultiTexCoordP4uiv_p", XS_OpenGL__Modern_glMultiTexCoordP4uiv_p);
        newXS_deffile("OpenGL::Modern::glMultiTexCoordPointerEXT_c", XS_OpenGL__Modern_glMultiTexCoordPointerEXT_c);
        newXS_deffile("OpenGL::Modern::glMultiTexEnvfEXT", XS_OpenGL__Modern_glMultiTexEnvfEXT);
        newXS_deffile("OpenGL::Modern::glMultiTexEnvfvEXT_c", XS_OpenGL__Modern_glMultiTexEnvfvEXT_c);
        newXS_deffile("OpenGL::Modern::glMultiTexEnvfvEXT_p", XS_OpenGL__Modern_glMultiTexEnvfvEXT_p);
        newXS_deffile("OpenGL::Modern::glMultiTexEnviEXT", XS_OpenGL__Modern_glMultiTexEnviEXT);
        newXS_deffile("OpenGL::Modern::glMultiTexEnvivEXT_c", XS_OpenGL__Modern_glMultiTexEnvivEXT_c);
        newXS_deffile("OpenGL::Modern::glMultiTexEnvivEXT_p", XS_OpenGL__Modern_glMultiTexEnvivEXT_p);
        newXS_deffile("OpenGL::Modern::glMultiTexGendEXT", XS_OpenGL__Modern_glMultiTexGendEXT);
        newXS_deffile("OpenGL::Modern::glMultiTexGendvEXT_c", XS_OpenGL__Modern_glMultiTexGendvEXT_c);
        newXS_deffile("OpenGL::Modern::glMultiTexGendvEXT_p", XS_OpenGL__Modern_glMultiTexGendvEXT_p);
        newXS_deffile("OpenGL::Modern::glMultiTexGenfEXT", XS_OpenGL__Modern_glMultiTexGenfEXT);
        newXS_deffile("OpenGL::Modern::glMultiTexGenfvEXT_c", XS_OpenGL__Modern_glMultiTexGenfvEXT_c);
        newXS_deffile("OpenGL::Modern::glMultiTexGenfvEXT_p", XS_OpenGL__Modern_glMultiTexGenfvEXT_p);
        newXS_deffile("OpenGL::Modern::glMultiTexGeniEXT", XS_OpenGL__Modern_glMultiTexGeniEXT);
        newXS_deffile("OpenGL::Modern::glMultiTexGenivEXT_c", XS_OpenGL__Modern_glMultiTexGenivEXT_c);
        newXS_deffile("OpenGL::Modern::glMultiTexGenivEXT_p", XS_OpenGL__Modern_glMultiTexGenivEXT_p);
        newXS_deffile("OpenGL::Modern::glMultiTexImage1DEXT_c", XS_OpenGL__Modern_glMultiTexImage1DEXT_c);
        newXS_deffile("OpenGL::Modern::glMultiTexImage2DEXT_c", XS_OpenGL__Modern_glMultiTexImage2DEXT_c);
        newXS_deffile("OpenGL::Modern::glMultiTexImage3DEXT_c", XS_OpenGL__Modern_glMultiTexImage3DEXT_c);
        newXS_deffile("OpenGL::Modern::glMultiTexParameterIivEXT_c", XS_OpenGL__Modern_glMultiTexParameterIivEXT_c);
        newXS_deffile("OpenGL::Modern::glMultiTexParameterIivEXT_p", XS_OpenGL__Modern_glMultiTexParameterIivEXT_p);
        newXS_deffile("OpenGL::Modern::glMultiTexParameterIuivEXT_c", XS_OpenGL__Modern_glMultiTexParameterIuivEXT_c);
        newXS_deffile("OpenGL::Modern::glMultiTexParameterIuivEXT_p", XS_OpenGL__Modern_glMultiTexParameterIuivEXT_p);
        newXS_deffile("OpenGL::Modern::glMultiTexParameterfEXT", XS_OpenGL__Modern_glMultiTexParameterfEXT);
        newXS_deffile("OpenGL::Modern::glMultiTexParameterfvEXT_c", XS_OpenGL__Modern_glMultiTexParameterfvEXT_c);
        newXS_deffile("OpenGL::Modern::glMultiTexParameterfvEXT_p", XS_OpenGL__Modern_glMultiTexParameterfvEXT_p);
        newXS_deffile("OpenGL::Modern::glMultiTexParameteriEXT", XS_OpenGL__Modern_glMultiTexParameteriEXT);
        newXS_deffile("OpenGL::Modern::glMultiTexParameterivEXT_c", XS_OpenGL__Modern_glMultiTexParameterivEXT_c);
        newXS_deffile("OpenGL::Modern::glMultiTexParameterivEXT_p", XS_OpenGL__Modern_glMultiTexParameterivEXT_p);
        newXS_deffile("OpenGL::Modern::glMultiTexRenderbufferEXT", XS_OpenGL__Modern_glMultiTexRenderbufferEXT);
        newXS_deffile("OpenGL::Modern::glMultiTexSubImage1DEXT_c", XS_OpenGL__Modern_glMultiTexSubImage1DEXT_c);
        newXS_deffile("OpenGL::Modern::glMultiTexSubImage2DEXT_c", XS_OpenGL__Modern_glMultiTexSubImage2DEXT_c);
        newXS_deffile("OpenGL::Modern::glMultiTexSubImage3DEXT_c", XS_OpenGL__Modern_glMultiTexSubImage3DEXT_c);
        newXS_deffile("OpenGL::Modern::glMulticastBarrierNV", XS_OpenGL__Modern_glMulticastBarrierNV);
        newXS_deffile("OpenGL::Modern::glMulticastBlitFramebufferNV", XS_OpenGL__Modern_glMulticastBlitFramebufferNV);
        newXS_deffile("OpenGL::Modern::glMulticastBufferSubDataNV_c", XS_OpenGL__Modern_glMulticastBufferSubDataNV_c);
        newXS_deffile("OpenGL::Modern::glMulticastCopyBufferSubDataNV", XS_OpenGL__Modern_glMulticastCopyBufferSubDataNV);
        newXS_deffile("OpenGL::Modern::glMulticastCopyImageSubDataNV", XS_OpenGL__Modern_glMulticastCopyImageSubDataNV);
        newXS_deffile("OpenGL::Modern::glMulticastFramebufferSampleLocationsfvNV_c", XS_OpenGL__Modern_glMulticastFramebufferSampleLocationsfvNV_c);
        newXS_deffile("OpenGL::Modern::glMulticastGetQueryObjecti64vNV_c", XS_OpenGL__Modern_glMulticastGetQueryObjecti64vNV_c);
        newXS_deffile("OpenGL::Modern::glMulticastGetQueryObjectivNV_c", XS_OpenGL__Modern_glMulticastGetQueryObjectivNV_c);
        newXS_deffile("OpenGL::Modern::glMulticastGetQueryObjectui64vNV_c", XS_OpenGL__Modern_glMulticastGetQueryObjectui64vNV_c);
        newXS_deffile("OpenGL::Modern::glMulticastGetQueryObjectuivNV_c", XS_OpenGL__Modern_glMulticastGetQueryObjectuivNV_c);
        newXS_deffile("OpenGL::Modern::glMulticastScissorArrayvNVX_c", XS_OpenGL__Modern_glMulticastScissorArrayvNVX_c);
        newXS_deffile("OpenGL::Modern::glMulticastScissorArrayvNVX_p", XS_OpenGL__Modern_glMulticastScissorArrayvNVX_p);
        newXS_deffile("OpenGL::Modern::glMulticastViewportArrayvNVX_c", XS_OpenGL__Modern_glMulticastViewportArrayvNVX_c);
        newXS_deffile("OpenGL::Modern::glMulticastViewportArrayvNVX_p", XS_OpenGL__Modern_glMulticastViewportArrayvNVX_p);
        newXS_deffile("OpenGL::Modern::glMulticastViewportPositionWScaleNVX", XS_OpenGL__Modern_glMulticastViewportPositionWScaleNVX);
        newXS_deffile("OpenGL::Modern::glMulticastWaitSyncNV", XS_OpenGL__Modern_glMulticastWaitSyncNV);
        newXS_deffile("OpenGL::Modern::glMultisampleSubRectPosSGIS", XS_OpenGL__Modern_glMultisampleSubRectPosSGIS);
        newXS_deffile("OpenGL::Modern::glNamedBufferAttachMemoryNV", XS_OpenGL__Modern_glNamedBufferAttachMemoryNV);
        newXS_deffile("OpenGL::Modern::glNamedBufferData_c", XS_OpenGL__Modern_glNamedBufferData_c);
        newXS_deffile("OpenGL::Modern::glNamedBufferDataEXT_c", XS_OpenGL__Modern_glNamedBufferDataEXT_c);
        newXS_deffile("OpenGL::Modern::glNamedBufferPageCommitmentMemNV", XS_OpenGL__Modern_glNamedBufferPageCommitmentMemNV);
        cv = newXS_deffile("OpenGL::Modern::glNamedBufferStorageEXT_c", XS_OpenGL__Modern_glNamedBufferStorage_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glNamedBufferStorage_c", XS_OpenGL__Modern_glNamedBufferStorage_c);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glNamedBufferStorageExternalEXT", XS_OpenGL__Modern_glNamedBufferStorageExternalEXT);
        newXS_deffile("OpenGL::Modern::glNamedBufferStorageMemEXT", XS_OpenGL__Modern_glNamedBufferStorageMemEXT);
        cv = newXS_deffile("OpenGL::Modern::glNamedBufferSubDataEXT_c", XS_OpenGL__Modern_glNamedBufferSubData_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glNamedBufferSubData_c", XS_OpenGL__Modern_glNamedBufferSubData_c);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glNamedCopyBufferSubDataEXT", XS_OpenGL__Modern_glNamedCopyBufferSubDataEXT);
        newXS_deffile("OpenGL::Modern::glNamedFramebufferDrawBuffer", XS_OpenGL__Modern_glNamedFramebufferDrawBuffer);
        newXS_deffile("OpenGL::Modern::glNamedFramebufferDrawBuffers_c", XS_OpenGL__Modern_glNamedFramebufferDrawBuffers_c);
        newXS_deffile("OpenGL::Modern::glNamedFramebufferDrawBuffers_p", XS_OpenGL__Modern_glNamedFramebufferDrawBuffers_p);
        newXS_deffile("OpenGL::Modern::glNamedFramebufferParameteri", XS_OpenGL__Modern_glNamedFramebufferParameteri);
        newXS_deffile("OpenGL::Modern::glNamedFramebufferParameteriEXT", XS_OpenGL__Modern_glNamedFramebufferParameteriEXT);
        newXS_deffile("OpenGL::Modern::glNamedFramebufferReadBuffer", XS_OpenGL__Modern_glNamedFramebufferReadBuffer);
        newXS_deffile("OpenGL::Modern::glNamedFramebufferRenderbuffer", XS_OpenGL__Modern_glNamedFramebufferRenderbuffer);
        newXS_deffile("OpenGL::Modern::glNamedFramebufferRenderbufferEXT", XS_OpenGL__Modern_glNamedFramebufferRenderbufferEXT);
        newXS_deffile("OpenGL::Modern::glNamedFramebufferSampleLocationsfvARB_c", XS_OpenGL__Modern_glNamedFramebufferSampleLocationsfvARB_c);
        newXS_deffile("OpenGL::Modern::glNamedFramebufferSampleLocationsfvNV_c", XS_OpenGL__Modern_glNamedFramebufferSampleLocationsfvNV_c);
        newXS_deffile("OpenGL::Modern::glNamedFramebufferSamplePositionsfvAMD_c", XS_OpenGL__Modern_glNamedFramebufferSamplePositionsfvAMD_c);
        newXS_deffile("OpenGL::Modern::glNamedFramebufferTexture", XS_OpenGL__Modern_glNamedFramebufferTexture);
        newXS_deffile("OpenGL::Modern::glNamedFramebufferTexture1DEXT", XS_OpenGL__Modern_glNamedFramebufferTexture1DEXT);
        newXS_deffile("OpenGL::Modern::glNamedFramebufferTexture2DEXT", XS_OpenGL__Modern_glNamedFramebufferTexture2DEXT);
        newXS_deffile("OpenGL::Modern::glNamedFramebufferTexture3DEXT", XS_OpenGL__Modern_glNamedFramebufferTexture3DEXT);
        newXS_deffile("OpenGL::Modern::glNamedFramebufferTextureEXT", XS_OpenGL__Modern_glNamedFramebufferTextureEXT);
        newXS_deffile("OpenGL::Modern::glNamedFramebufferTextureFaceEXT", XS_OpenGL__Modern_glNamedFramebufferTextureFaceEXT);
        newXS_deffile("OpenGL::Modern::glNamedFramebufferTextureLayer", XS_OpenGL__Modern_glNamedFramebufferTextureLayer);
        newXS_deffile("OpenGL::Modern::glNamedFramebufferTextureLayerEXT", XS_OpenGL__Modern_glNamedFramebufferTextureLayerEXT);
        newXS_deffile("OpenGL::Modern::glNamedFramebufferTextureMultiviewOVR", XS_OpenGL__Modern_glNamedFramebufferTextureMultiviewOVR);
        newXS_deffile("OpenGL::Modern::glNamedProgramLocalParameter4dEXT", XS_OpenGL__Modern_glNamedProgramLocalParameter4dEXT);
        newXS_deffile("OpenGL::Modern::glNamedProgramLocalParameter4dvEXT_c", XS_OpenGL__Modern_glNamedProgramLocalParameter4dvEXT_c);
        newXS_deffile("OpenGL::Modern::glNamedProgramLocalParameter4dvEXT_p", XS_OpenGL__Modern_glNamedProgramLocalParameter4dvEXT_p);
        newXS_deffile("OpenGL::Modern::glNamedProgramLocalParameter4fEXT", XS_OpenGL__Modern_glNamedProgramLocalParameter4fEXT);
        newXS_deffile("OpenGL::Modern::glNamedProgramLocalParameter4fvEXT_c", XS_OpenGL__Modern_glNamedProgramLocalParameter4fvEXT_c);
        newXS_deffile("OpenGL::Modern::glNamedProgramLocalParameter4fvEXT_p", XS_OpenGL__Modern_glNamedProgramLocalParameter4fvEXT_p);
        newXS_deffile("OpenGL::Modern::glNamedProgramLocalParameterI4iEXT", XS_OpenGL__Modern_glNamedProgramLocalParameterI4iEXT);
        newXS_deffile("OpenGL::Modern::glNamedProgramLocalParameterI4ivEXT_c", XS_OpenGL__Modern_glNamedProgramLocalParameterI4ivEXT_c);
        newXS_deffile("OpenGL::Modern::glNamedProgramLocalParameterI4ivEXT_p", XS_OpenGL__Modern_glNamedProgramLocalParameterI4ivEXT_p);
        newXS_deffile("OpenGL::Modern::glNamedProgramLocalParameterI4uiEXT", XS_OpenGL__Modern_glNamedProgramLocalParameterI4uiEXT);
        newXS_deffile("OpenGL::Modern::glNamedProgramLocalParameterI4uivEXT_c", XS_OpenGL__Modern_glNamedProgramLocalParameterI4uivEXT_c);
        newXS_deffile("OpenGL::Modern::glNamedProgramLocalParameterI4uivEXT_p", XS_OpenGL__Modern_glNamedProgramLocalParameterI4uivEXT_p);
        newXS_deffile("OpenGL::Modern::glNamedProgramLocalParameters4fvEXT_c", XS_OpenGL__Modern_glNamedProgramLocalParameters4fvEXT_c);
        newXS_deffile("OpenGL::Modern::glNamedProgramLocalParameters4fvEXT_p", XS_OpenGL__Modern_glNamedProgramLocalParameters4fvEXT_p);
        newXS_deffile("OpenGL::Modern::glNamedProgramLocalParametersI4ivEXT_c", XS_OpenGL__Modern_glNamedProgramLocalParametersI4ivEXT_c);
        newXS_deffile("OpenGL::Modern::glNamedProgramLocalParametersI4ivEXT_p", XS_OpenGL__Modern_glNamedProgramLocalParametersI4ivEXT_p);
        newXS_deffile("OpenGL::Modern::glNamedProgramLocalParametersI4uivEXT_c", XS_OpenGL__Modern_glNamedProgramLocalParametersI4uivEXT_c);
        newXS_deffile("OpenGL::Modern::glNamedProgramLocalParametersI4uivEXT_p", XS_OpenGL__Modern_glNamedProgramLocalParametersI4uivEXT_p);
        newXS_deffile("OpenGL::Modern::glNamedProgramStringEXT_c", XS_OpenGL__Modern_glNamedProgramStringEXT_c);
        newXS_deffile("OpenGL::Modern::glNamedRenderbufferStorage", XS_OpenGL__Modern_glNamedRenderbufferStorage);
        newXS_deffile("OpenGL::Modern::glNamedRenderbufferStorageEXT", XS_OpenGL__Modern_glNamedRenderbufferStorageEXT);
        newXS_deffile("OpenGL::Modern::glNamedRenderbufferStorageMultisample", XS_OpenGL__Modern_glNamedRenderbufferStorageMultisample);
        newXS_deffile("OpenGL::Modern::glNamedRenderbufferStorageMultisampleAdvancedAMD", XS_OpenGL__Modern_glNamedRenderbufferStorageMultisampleAdvancedAMD);
        newXS_deffile("OpenGL::Modern::glNamedRenderbufferStorageMultisampleCoverageEXT", XS_OpenGL__Modern_glNamedRenderbufferStorageMultisampleCoverageEXT);
        newXS_deffile("OpenGL::Modern::glNamedRenderbufferStorageMultisampleEXT", XS_OpenGL__Modern_glNamedRenderbufferStorageMultisampleEXT);
        newXS_deffile("OpenGL::Modern::glNamedStringARB", XS_OpenGL__Modern_glNamedStringARB);
        newXS_deffile("OpenGL::Modern::glNewBufferRegion", XS_OpenGL__Modern_glNewBufferRegion);
        newXS_deffile("OpenGL::Modern::glNewList", XS_OpenGL__Modern_glNewList);
        newXS_deffile("OpenGL::Modern::glNewObjectBufferATI_c", XS_OpenGL__Modern_glNewObjectBufferATI_c);
        newXS_deffile("OpenGL::Modern::glNonlinLightfvSGIX_c", XS_OpenGL__Modern_glNonlinLightfvSGIX_c);
        newXS_deffile("OpenGL::Modern::glNonlinMaterialfvSGIX_c", XS_OpenGL__Modern_glNonlinMaterialfvSGIX_c);
        newXS_deffile("OpenGL::Modern::glNormal3b", XS_OpenGL__Modern_glNormal3b);
        newXS_deffile("OpenGL::Modern::glNormal3bv_c", XS_OpenGL__Modern_glNormal3bv_c);
        newXS_deffile("OpenGL::Modern::glNormal3bv_p", XS_OpenGL__Modern_glNormal3bv_p);
        newXS_deffile("OpenGL::Modern::glNormal3d", XS_OpenGL__Modern_glNormal3d);
        newXS_deffile("OpenGL::Modern::glNormal3dv_c", XS_OpenGL__Modern_glNormal3dv_c);
        newXS_deffile("OpenGL::Modern::glNormal3dv_p", XS_OpenGL__Modern_glNormal3dv_p);
        newXS_deffile("OpenGL::Modern::glNormal3f", XS_OpenGL__Modern_glNormal3f);
        newXS_deffile("OpenGL::Modern::glNormal3fVertex3fSUN", XS_OpenGL__Modern_glNormal3fVertex3fSUN);
        newXS_deffile("OpenGL::Modern::glNormal3fVertex3fvSUN_c", XS_OpenGL__Modern_glNormal3fVertex3fvSUN_c);
        newXS_deffile("OpenGL::Modern::glNormal3fVertex3fvSUN_p", XS_OpenGL__Modern_glNormal3fVertex3fvSUN_p);
        newXS_deffile("OpenGL::Modern::glNormal3fv_c", XS_OpenGL__Modern_glNormal3fv_c);
        newXS_deffile("OpenGL::Modern::glNormal3fv_p", XS_OpenGL__Modern_glNormal3fv_p);
        newXS_deffile("OpenGL::Modern::glNormal3hNV", XS_OpenGL__Modern_glNormal3hNV);
        newXS_deffile("OpenGL::Modern::glNormal3hvNV_c", XS_OpenGL__Modern_glNormal3hvNV_c);
        newXS_deffile("OpenGL::Modern::glNormal3hvNV_p", XS_OpenGL__Modern_glNormal3hvNV_p);
        newXS_deffile("OpenGL::Modern::glNormal3i", XS_OpenGL__Modern_glNormal3i);
        newXS_deffile("OpenGL::Modern::glNormal3iv_c", XS_OpenGL__Modern_glNormal3iv_c);
        newXS_deffile("OpenGL::Modern::glNormal3iv_p", XS_OpenGL__Modern_glNormal3iv_p);
        newXS_deffile("OpenGL::Modern::glNormal3s", XS_OpenGL__Modern_glNormal3s);
        newXS_deffile("OpenGL::Modern::glNormal3sv_c", XS_OpenGL__Modern_glNormal3sv_c);
        newXS_deffile("OpenGL::Modern::glNormal3sv_p", XS_OpenGL__Modern_glNormal3sv_p);
        newXS_deffile("OpenGL::Modern::glNormal3x", XS_OpenGL__Modern_glNormal3x);
        newXS_deffile("OpenGL::Modern::glNormalFormatNV", XS_OpenGL__Modern_glNormalFormatNV);
        newXS_deffile("OpenGL::Modern::glNormalP3ui", XS_OpenGL__Modern_glNormalP3ui);
        newXS_deffile("OpenGL::Modern::glNormalP3uiv_c", XS_OpenGL__Modern_glNormalP3uiv_c);
        newXS_deffile("OpenGL::Modern::glNormalP3uiv_p", XS_OpenGL__Modern_glNormalP3uiv_p);
        newXS_deffile("OpenGL::Modern::glNormalPointer_c", XS_OpenGL__Modern_glNormalPointer_c);
        newXS_deffile("OpenGL::Modern::glNormalPointerEXT_c", XS_OpenGL__Modern_glNormalPointerEXT_c);
        newXS_deffile("OpenGL::Modern::glNormalPointerListIBM_c", XS_OpenGL__Modern_glNormalPointerListIBM_c);
        newXS_deffile("OpenGL::Modern::glNormalPointervINTEL_c", XS_OpenGL__Modern_glNormalPointervINTEL_c);
        newXS_deffile("OpenGL::Modern::glNormalStream3bATI", XS_OpenGL__Modern_glNormalStream3bATI);
        newXS_deffile("OpenGL::Modern::glNormalStream3bvATI_c", XS_OpenGL__Modern_glNormalStream3bvATI_c);
        newXS_deffile("OpenGL::Modern::glNormalStream3bvATI_p", XS_OpenGL__Modern_glNormalStream3bvATI_p);
        newXS_deffile("OpenGL::Modern::glNormalStream3dATI", XS_OpenGL__Modern_glNormalStream3dATI);
        newXS_deffile("OpenGL::Modern::glNormalStream3dvATI_c", XS_OpenGL__Modern_glNormalStream3dvATI_c);
        newXS_deffile("OpenGL::Modern::glNormalStream3dvATI_p", XS_OpenGL__Modern_glNormalStream3dvATI_p);
        newXS_deffile("OpenGL::Modern::glNormalStream3fATI", XS_OpenGL__Modern_glNormalStream3fATI);
        newXS_deffile("OpenGL::Modern::glNormalStream3fvATI_c", XS_OpenGL__Modern_glNormalStream3fvATI_c);
        newXS_deffile("OpenGL::Modern::glNormalStream3fvATI_p", XS_OpenGL__Modern_glNormalStream3fvATI_p);
        newXS_deffile("OpenGL::Modern::glNormalStream3iATI", XS_OpenGL__Modern_glNormalStream3iATI);
        newXS_deffile("OpenGL::Modern::glNormalStream3ivATI_c", XS_OpenGL__Modern_glNormalStream3ivATI_c);
        newXS_deffile("OpenGL::Modern::glNormalStream3ivATI_p", XS_OpenGL__Modern_glNormalStream3ivATI_p);
        newXS_deffile("OpenGL::Modern::glNormalStream3sATI", XS_OpenGL__Modern_glNormalStream3sATI);
        newXS_deffile("OpenGL::Modern::glNormalStream3svATI_c", XS_OpenGL__Modern_glNormalStream3svATI_c);
        newXS_deffile("OpenGL::Modern::glNormalStream3svATI_p", XS_OpenGL__Modern_glNormalStream3svATI_p);
        cv = newXS_deffile("OpenGL::Modern::glObjectLabel", XS_OpenGL__Modern_glObjectLabel);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glObjectLabelKHR", XS_OpenGL__Modern_glObjectLabel);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glObjectPtrLabelKHR_c", XS_OpenGL__Modern_glObjectPtrLabel_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glObjectPtrLabel_c", XS_OpenGL__Modern_glObjectPtrLabel_c);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glObjectPurgeableAPPLE", XS_OpenGL__Modern_glObjectPurgeableAPPLE);
        newXS_deffile("OpenGL::Modern::glObjectUnpurgeableAPPLE", XS_OpenGL__Modern_glObjectUnpurgeableAPPLE);
        newXS_deffile("OpenGL::Modern::glOrtho", XS_OpenGL__Modern_glOrtho);
        newXS_deffile("OpenGL::Modern::glOrthof", XS_OpenGL__Modern_glOrthof);
        newXS_deffile("OpenGL::Modern::glOrthofOES", XS_OpenGL__Modern_glOrthofOES);
        newXS_deffile("OpenGL::Modern::glOrthox", XS_OpenGL__Modern_glOrthox);
        newXS_deffile("OpenGL::Modern::glPNTrianglesfATI", XS_OpenGL__Modern_glPNTrianglesfATI);
        newXS_deffile("OpenGL::Modern::glPNTrianglesiATI", XS_OpenGL__Modern_glPNTrianglesiATI);
        newXS_deffile("OpenGL::Modern::glPassTexCoordATI", XS_OpenGL__Modern_glPassTexCoordATI);
        newXS_deffile("OpenGL::Modern::glPassThrough", XS_OpenGL__Modern_glPassThrough);
        newXS_deffile("OpenGL::Modern::glPatchParameterfv_c", XS_OpenGL__Modern_glPatchParameterfv_c);
        newXS_deffile("OpenGL::Modern::glPatchParameterfv_p", XS_OpenGL__Modern_glPatchParameterfv_p);
        cv = newXS_deffile("OpenGL::Modern::glPatchParameteri", XS_OpenGL__Modern_glPatchParameteri);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glPatchParameteriEXT", XS_OpenGL__Modern_glPatchParameteri);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glPathColorGenNV_c", XS_OpenGL__Modern_glPathColorGenNV_c);
        newXS_deffile("OpenGL::Modern::glPathCommandsNV_c", XS_OpenGL__Modern_glPathCommandsNV_c);
        newXS_deffile("OpenGL::Modern::glPathCoordsNV_c", XS_OpenGL__Modern_glPathCoordsNV_c);
        newXS_deffile("OpenGL::Modern::glPathCoverDepthFuncNV", XS_OpenGL__Modern_glPathCoverDepthFuncNV);
        newXS_deffile("OpenGL::Modern::glPathDashArrayNV_c", XS_OpenGL__Modern_glPathDashArrayNV_c);
        newXS_deffile("OpenGL::Modern::glPathDashArrayNV_p", XS_OpenGL__Modern_glPathDashArrayNV_p);
        newXS_deffile("OpenGL::Modern::glPathFogGenNV", XS_OpenGL__Modern_glPathFogGenNV);
        newXS_deffile("OpenGL::Modern::glPathGlyphIndexArrayNV_c", XS_OpenGL__Modern_glPathGlyphIndexArrayNV_c);
        newXS_deffile("OpenGL::Modern::glPathGlyphIndexRangeNV_c", XS_OpenGL__Modern_glPathGlyphIndexRangeNV_c);
        newXS_deffile("OpenGL::Modern::glPathGlyphIndexRangeNV_p", XS_OpenGL__Modern_glPathGlyphIndexRangeNV_p);
        newXS_deffile("OpenGL::Modern::glPathGlyphRangeNV_c", XS_OpenGL__Modern_glPathGlyphRangeNV_c);
        newXS_deffile("OpenGL::Modern::glPathGlyphsNV_c", XS_OpenGL__Modern_glPathGlyphsNV_c);
        newXS_deffile("OpenGL::Modern::glPathMemoryGlyphIndexArrayNV_c", XS_OpenGL__Modern_glPathMemoryGlyphIndexArrayNV_c);
        newXS_deffile("OpenGL::Modern::glPathParameterfNV", XS_OpenGL__Modern_glPathParameterfNV);
        newXS_deffile("OpenGL::Modern::glPathParameterfvNV_c", XS_OpenGL__Modern_glPathParameterfvNV_c);
        newXS_deffile("OpenGL::Modern::glPathParameteriNV", XS_OpenGL__Modern_glPathParameteriNV);
        newXS_deffile("OpenGL::Modern::glPathParameterivNV_c", XS_OpenGL__Modern_glPathParameterivNV_c);
        newXS_deffile("OpenGL::Modern::glPathStencilDepthOffsetNV", XS_OpenGL__Modern_glPathStencilDepthOffsetNV);
        newXS_deffile("OpenGL::Modern::glPathStencilFuncNV", XS_OpenGL__Modern_glPathStencilFuncNV);
        newXS_deffile("OpenGL::Modern::glPathStringNV_c", XS_OpenGL__Modern_glPathStringNV_c);
        newXS_deffile("OpenGL::Modern::glPathSubCommandsNV_c", XS_OpenGL__Modern_glPathSubCommandsNV_c);
        newXS_deffile("OpenGL::Modern::glPathSubCoordsNV_c", XS_OpenGL__Modern_glPathSubCoordsNV_c);
        newXS_deffile("OpenGL::Modern::glPathTexGenNV_c", XS_OpenGL__Modern_glPathTexGenNV_c);
        cv = newXS_deffile("OpenGL::Modern::glPauseTransformFeedback", XS_OpenGL__Modern_glPauseTransformFeedback);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glPauseTransformFeedbackNV", XS_OpenGL__Modern_glPauseTransformFeedback);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glPixelDataRangeNV_c", XS_OpenGL__Modern_glPixelDataRangeNV_c);
        newXS_deffile("OpenGL::Modern::glPixelMapfv_c", XS_OpenGL__Modern_glPixelMapfv_c);
        newXS_deffile("OpenGL::Modern::glPixelMapfv_p", XS_OpenGL__Modern_glPixelMapfv_p);
        newXS_deffile("OpenGL::Modern::glPixelMapuiv_c", XS_OpenGL__Modern_glPixelMapuiv_c);
        newXS_deffile("OpenGL::Modern::glPixelMapuiv_p", XS_OpenGL__Modern_glPixelMapuiv_p);
        newXS_deffile("OpenGL::Modern::glPixelMapusv_c", XS_OpenGL__Modern_glPixelMapusv_c);
        newXS_deffile("OpenGL::Modern::glPixelMapusv_p", XS_OpenGL__Modern_glPixelMapusv_p);
        newXS_deffile("OpenGL::Modern::glPixelStoref", XS_OpenGL__Modern_glPixelStoref);
        newXS_deffile("OpenGL::Modern::glPixelStorei", XS_OpenGL__Modern_glPixelStorei);
        newXS_deffile("OpenGL::Modern::glPixelTexGenSGIX", XS_OpenGL__Modern_glPixelTexGenSGIX);
        newXS_deffile("OpenGL::Modern::glPixelTransferf", XS_OpenGL__Modern_glPixelTransferf);
        newXS_deffile("OpenGL::Modern::glPixelTransferi", XS_OpenGL__Modern_glPixelTransferi);
        newXS_deffile("OpenGL::Modern::glPixelTransformParameterfEXT", XS_OpenGL__Modern_glPixelTransformParameterfEXT);
        newXS_deffile("OpenGL::Modern::glPixelTransformParameterfSGI", XS_OpenGL__Modern_glPixelTransformParameterfSGI);
        newXS_deffile("OpenGL::Modern::glPixelTransformParameterfvEXT_c", XS_OpenGL__Modern_glPixelTransformParameterfvEXT_c);
        newXS_deffile("OpenGL::Modern::glPixelTransformParameterfvEXT_p", XS_OpenGL__Modern_glPixelTransformParameterfvEXT_p);
        newXS_deffile("OpenGL::Modern::glPixelTransformParameterfvSGI_c", XS_OpenGL__Modern_glPixelTransformParameterfvSGI_c);
        newXS_deffile("OpenGL::Modern::glPixelTransformParameteriEXT", XS_OpenGL__Modern_glPixelTransformParameteriEXT);
        newXS_deffile("OpenGL::Modern::glPixelTransformParameteriSGI", XS_OpenGL__Modern_glPixelTransformParameteriSGI);
        newXS_deffile("OpenGL::Modern::glPixelTransformParameterivEXT_c", XS_OpenGL__Modern_glPixelTransformParameterivEXT_c);
        newXS_deffile("OpenGL::Modern::glPixelTransformParameterivEXT_p", XS_OpenGL__Modern_glPixelTransformParameterivEXT_p);
        newXS_deffile("OpenGL::Modern::glPixelTransformParameterivSGI_c", XS_OpenGL__Modern_glPixelTransformParameterivSGI_c);
        newXS_deffile("OpenGL::Modern::glPixelTransformSGI", XS_OpenGL__Modern_glPixelTransformSGI);
        newXS_deffile("OpenGL::Modern::glPixelZoom", XS_OpenGL__Modern_glPixelZoom);
        newXS_deffile("OpenGL::Modern::glPointAlongPathNV_c", XS_OpenGL__Modern_glPointAlongPathNV_c);
        newXS_deffile("OpenGL::Modern::glPointAlongPathNV_p", XS_OpenGL__Modern_glPointAlongPathNV_p);
        cv = newXS_deffile("OpenGL::Modern::glPointParameterf", XS_OpenGL__Modern_glPointParameterf);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glPointParameterfARB", XS_OpenGL__Modern_glPointParameterf);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glPointParameterfEXT", XS_OpenGL__Modern_glPointParameterf);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glPointParameterfSGIS", XS_OpenGL__Modern_glPointParameterf);
        XSANY.any_i32 = 3;
        cv = newXS_deffile("OpenGL::Modern::glPointParameterfvARB_c", XS_OpenGL__Modern_glPointParameterfv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glPointParameterfvEXT_c", XS_OpenGL__Modern_glPointParameterfv_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glPointParameterfvSGIS_c", XS_OpenGL__Modern_glPointParameterfv_c);
        XSANY.any_i32 = 3;
        cv = newXS_deffile("OpenGL::Modern::glPointParameterfv_c", XS_OpenGL__Modern_glPointParameterfv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glPointParameterfvARB_p", XS_OpenGL__Modern_glPointParameterfv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glPointParameterfvEXT_p", XS_OpenGL__Modern_glPointParameterfv_p);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glPointParameterfvSGIS_p", XS_OpenGL__Modern_glPointParameterfv_p);
        XSANY.any_i32 = 3;
        cv = newXS_deffile("OpenGL::Modern::glPointParameterfv_p", XS_OpenGL__Modern_glPointParameterfv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glPointParameteri", XS_OpenGL__Modern_glPointParameteri);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glPointParameteriNV", XS_OpenGL__Modern_glPointParameteri);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glPointParameterivNV_c", XS_OpenGL__Modern_glPointParameteriv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glPointParameteriv_c", XS_OpenGL__Modern_glPointParameteriv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glPointParameterivNV_p", XS_OpenGL__Modern_glPointParameteriv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glPointParameteriv_p", XS_OpenGL__Modern_glPointParameteriv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glPointParameterx", XS_OpenGL__Modern_glPointParameterx);
        newXS_deffile("OpenGL::Modern::glPointParameterxv_c", XS_OpenGL__Modern_glPointParameterxv_c);
        newXS_deffile("OpenGL::Modern::glPointParameterxv_p", XS_OpenGL__Modern_glPointParameterxv_p);
        newXS_deffile("OpenGL::Modern::glPointSize", XS_OpenGL__Modern_glPointSize);
        newXS_deffile("OpenGL::Modern::glPointSizePointerOES_c", XS_OpenGL__Modern_glPointSizePointerOES_c);
        newXS_deffile("OpenGL::Modern::glPointSizex", XS_OpenGL__Modern_glPointSizex);
        newXS_deffile("OpenGL::Modern::glPollAsyncSGIX_c", XS_OpenGL__Modern_glPollAsyncSGIX_c);
        newXS_deffile("OpenGL::Modern::glPollAsyncSGIX_p", XS_OpenGL__Modern_glPollAsyncSGIX_p);
        cv = newXS_deffile("OpenGL::Modern::glPolygonMode", XS_OpenGL__Modern_glPolygonMode);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glPolygonModeNV", XS_OpenGL__Modern_glPolygonMode);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glPolygonOffset", XS_OpenGL__Modern_glPolygonOffset);
        cv = newXS_deffile("OpenGL::Modern::glPolygonOffsetClamp", XS_OpenGL__Modern_glPolygonOffsetClamp);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glPolygonOffsetClampEXT", XS_OpenGL__Modern_glPolygonOffsetClamp);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glPolygonOffsetEXT", XS_OpenGL__Modern_glPolygonOffsetEXT);
        newXS_deffile("OpenGL::Modern::glPolygonOffsetx", XS_OpenGL__Modern_glPolygonOffsetx);
        newXS_deffile("OpenGL::Modern::glPolygonStipple", XS_OpenGL__Modern_glPolygonStipple);
        newXS_deffile("OpenGL::Modern::glPopAttrib", XS_OpenGL__Modern_glPopAttrib);
        newXS_deffile("OpenGL::Modern::glPopClientAttrib", XS_OpenGL__Modern_glPopClientAttrib);
        cv = newXS_deffile("OpenGL::Modern::glPopDebugGroup", XS_OpenGL__Modern_glPopDebugGroup);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glPopDebugGroupKHR", XS_OpenGL__Modern_glPopDebugGroup);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glPopGroupMarkerEXT", XS_OpenGL__Modern_glPopGroupMarkerEXT);
        newXS_deffile("OpenGL::Modern::glPopMatrix", XS_OpenGL__Modern_glPopMatrix);
        newXS_deffile("OpenGL::Modern::glPopName", XS_OpenGL__Modern_glPopName);
        newXS_deffile("OpenGL::Modern::glPresentFrameDualFillNV", XS_OpenGL__Modern_glPresentFrameDualFillNV);
        newXS_deffile("OpenGL::Modern::glPresentFrameKeyedNV", XS_OpenGL__Modern_glPresentFrameKeyedNV);
        cv = newXS_deffile("OpenGL::Modern::glPrimitiveBoundingBox", XS_OpenGL__Modern_glPrimitiveBoundingBoxARB);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glPrimitiveBoundingBoxARB", XS_OpenGL__Modern_glPrimitiveBoundingBoxARB);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glPrimitiveBoundingBoxEXT", XS_OpenGL__Modern_glPrimitiveBoundingBoxARB);
        XSANY.any_i32 = 2;
        newXS_deffile("OpenGL::Modern::glPrimitiveRestartIndex", XS_OpenGL__Modern_glPrimitiveRestartIndex);
        newXS_deffile("OpenGL::Modern::glPrimitiveRestartIndexNV", XS_OpenGL__Modern_glPrimitiveRestartIndexNV);
        newXS_deffile("OpenGL::Modern::glPrimitiveRestartNV", XS_OpenGL__Modern_glPrimitiveRestartNV);
        cv = newXS_deffile("OpenGL::Modern::glPrioritizeTexturesEXT_c", XS_OpenGL__Modern_glPrioritizeTextures_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glPrioritizeTextures_c", XS_OpenGL__Modern_glPrioritizeTextures_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glPrioritizeTexturesEXT_p", XS_OpenGL__Modern_glPrioritizeTextures_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glPrioritizeTextures_p", XS_OpenGL__Modern_glPrioritizeTextures_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glPrioritizeVertexArraysSGIX_c", XS_OpenGL__Modern_glPrioritizeVertexArraysSGIX_c);
        newXS_deffile("OpenGL::Modern::glProgramBinary_c", XS_OpenGL__Modern_glProgramBinary_c);
        newXS_deffile("OpenGL::Modern::glProgramBinaryOES_c", XS_OpenGL__Modern_glProgramBinaryOES_c);
        newXS_deffile("OpenGL::Modern::glProgramBufferParametersIivNV_c", XS_OpenGL__Modern_glProgramBufferParametersIivNV_c);
        newXS_deffile("OpenGL::Modern::glProgramBufferParametersIivNV_p", XS_OpenGL__Modern_glProgramBufferParametersIivNV_p);
        newXS_deffile("OpenGL::Modern::glProgramBufferParametersIuivNV_c", XS_OpenGL__Modern_glProgramBufferParametersIuivNV_c);
        newXS_deffile("OpenGL::Modern::glProgramBufferParametersIuivNV_p", XS_OpenGL__Modern_glProgramBufferParametersIuivNV_p);
        newXS_deffile("OpenGL::Modern::glProgramBufferParametersfvNV_c", XS_OpenGL__Modern_glProgramBufferParametersfvNV_c);
        newXS_deffile("OpenGL::Modern::glProgramBufferParametersfvNV_p", XS_OpenGL__Modern_glProgramBufferParametersfvNV_p);
        newXS_deffile("OpenGL::Modern::glProgramEnvParameter4dARB", XS_OpenGL__Modern_glProgramEnvParameter4dARB);
        newXS_deffile("OpenGL::Modern::glProgramEnvParameter4dvARB_c", XS_OpenGL__Modern_glProgramEnvParameter4dvARB_c);
        newXS_deffile("OpenGL::Modern::glProgramEnvParameter4dvARB_p", XS_OpenGL__Modern_glProgramEnvParameter4dvARB_p);
        newXS_deffile("OpenGL::Modern::glProgramEnvParameter4fARB", XS_OpenGL__Modern_glProgramEnvParameter4fARB);
        newXS_deffile("OpenGL::Modern::glProgramEnvParameter4fvARB_c", XS_OpenGL__Modern_glProgramEnvParameter4fvARB_c);
        newXS_deffile("OpenGL::Modern::glProgramEnvParameter4fvARB_p", XS_OpenGL__Modern_glProgramEnvParameter4fvARB_p);
        newXS_deffile("OpenGL::Modern::glProgramEnvParameterI4iNV", XS_OpenGL__Modern_glProgramEnvParameterI4iNV);
        newXS_deffile("OpenGL::Modern::glProgramEnvParameterI4ivNV_c", XS_OpenGL__Modern_glProgramEnvParameterI4ivNV_c);
        newXS_deffile("OpenGL::Modern::glProgramEnvParameterI4ivNV_p", XS_OpenGL__Modern_glProgramEnvParameterI4ivNV_p);
        newXS_deffile("OpenGL::Modern::glProgramEnvParameterI4uiNV", XS_OpenGL__Modern_glProgramEnvParameterI4uiNV);
        newXS_deffile("OpenGL::Modern::glProgramEnvParameterI4uivNV_c", XS_OpenGL__Modern_glProgramEnvParameterI4uivNV_c);
        newXS_deffile("OpenGL::Modern::glProgramEnvParameterI4uivNV_p", XS_OpenGL__Modern_glProgramEnvParameterI4uivNV_p);
        newXS_deffile("OpenGL::Modern::glProgramEnvParameters4fvEXT_c", XS_OpenGL__Modern_glProgramEnvParameters4fvEXT_c);
        newXS_deffile("OpenGL::Modern::glProgramEnvParameters4fvEXT_p", XS_OpenGL__Modern_glProgramEnvParameters4fvEXT_p);
        newXS_deffile("OpenGL::Modern::glProgramEnvParametersI4ivNV_c", XS_OpenGL__Modern_glProgramEnvParametersI4ivNV_c);
        newXS_deffile("OpenGL::Modern::glProgramEnvParametersI4ivNV_p", XS_OpenGL__Modern_glProgramEnvParametersI4ivNV_p);
        newXS_deffile("OpenGL::Modern::glProgramEnvParametersI4uivNV_c", XS_OpenGL__Modern_glProgramEnvParametersI4uivNV_c);
        newXS_deffile("OpenGL::Modern::glProgramEnvParametersI4uivNV_p", XS_OpenGL__Modern_glProgramEnvParametersI4uivNV_p);
        newXS_deffile("OpenGL::Modern::glProgramLocalParameter4dARB", XS_OpenGL__Modern_glProgramLocalParameter4dARB);
        newXS_deffile("OpenGL::Modern::glProgramLocalParameter4dvARB_c", XS_OpenGL__Modern_glProgramLocalParameter4dvARB_c);
        newXS_deffile("OpenGL::Modern::glProgramLocalParameter4dvARB_p", XS_OpenGL__Modern_glProgramLocalParameter4dvARB_p);
        newXS_deffile("OpenGL::Modern::glProgramLocalParameter4fARB", XS_OpenGL__Modern_glProgramLocalParameter4fARB);
        newXS_deffile("OpenGL::Modern::glProgramLocalParameter4fvARB_c", XS_OpenGL__Modern_glProgramLocalParameter4fvARB_c);
        newXS_deffile("OpenGL::Modern::glProgramLocalParameter4fvARB_p", XS_OpenGL__Modern_glProgramLocalParameter4fvARB_p);
        newXS_deffile("OpenGL::Modern::glProgramLocalParameterI4iNV", XS_OpenGL__Modern_glProgramLocalParameterI4iNV);
        newXS_deffile("OpenGL::Modern::glProgramLocalParameterI4ivNV_c", XS_OpenGL__Modern_glProgramLocalParameterI4ivNV_c);
        newXS_deffile("OpenGL::Modern::glProgramLocalParameterI4ivNV_p", XS_OpenGL__Modern_glProgramLocalParameterI4ivNV_p);
        newXS_deffile("OpenGL::Modern::glProgramLocalParameterI4uiNV", XS_OpenGL__Modern_glProgramLocalParameterI4uiNV);
        newXS_deffile("OpenGL::Modern::glProgramLocalParameterI4uivNV_c", XS_OpenGL__Modern_glProgramLocalParameterI4uivNV_c);
        newXS_deffile("OpenGL::Modern::glProgramLocalParameterI4uivNV_p", XS_OpenGL__Modern_glProgramLocalParameterI4uivNV_p);
        newXS_deffile("OpenGL::Modern::glProgramLocalParameters4fvEXT_c", XS_OpenGL__Modern_glProgramLocalParameters4fvEXT_c);
        newXS_deffile("OpenGL::Modern::glProgramLocalParameters4fvEXT_p", XS_OpenGL__Modern_glProgramLocalParameters4fvEXT_p);
        newXS_deffile("OpenGL::Modern::glProgramLocalParametersI4ivNV_c", XS_OpenGL__Modern_glProgramLocalParametersI4ivNV_c);
        newXS_deffile("OpenGL::Modern::glProgramLocalParametersI4ivNV_p", XS_OpenGL__Modern_glProgramLocalParametersI4ivNV_p);
        newXS_deffile("OpenGL::Modern::glProgramLocalParametersI4uivNV_c", XS_OpenGL__Modern_glProgramLocalParametersI4uivNV_c);
        newXS_deffile("OpenGL::Modern::glProgramLocalParametersI4uivNV_p", XS_OpenGL__Modern_glProgramLocalParametersI4uivNV_p);
        newXS_deffile("OpenGL::Modern::glProgramNamedParameter4dNV", XS_OpenGL__Modern_glProgramNamedParameter4dNV);
        newXS_deffile("OpenGL::Modern::glProgramNamedParameter4dvNV_c", XS_OpenGL__Modern_glProgramNamedParameter4dvNV_c);
        newXS_deffile("OpenGL::Modern::glProgramNamedParameter4dvNV_p", XS_OpenGL__Modern_glProgramNamedParameter4dvNV_p);
        newXS_deffile("OpenGL::Modern::glProgramNamedParameter4fNV", XS_OpenGL__Modern_glProgramNamedParameter4fNV);
        newXS_deffile("OpenGL::Modern::glProgramNamedParameter4fvNV_c", XS_OpenGL__Modern_glProgramNamedParameter4fvNV_c);
        newXS_deffile("OpenGL::Modern::glProgramNamedParameter4fvNV_p", XS_OpenGL__Modern_glProgramNamedParameter4fvNV_p);
        newXS_deffile("OpenGL::Modern::glProgramParameter4dNV", XS_OpenGL__Modern_glProgramParameter4dNV);
        newXS_deffile("OpenGL::Modern::glProgramParameter4dvNV_c", XS_OpenGL__Modern_glProgramParameter4dvNV_c);
        newXS_deffile("OpenGL::Modern::glProgramParameter4dvNV_p", XS_OpenGL__Modern_glProgramParameter4dvNV_p);
        newXS_deffile("OpenGL::Modern::glProgramParameter4fNV", XS_OpenGL__Modern_glProgramParameter4fNV);
        newXS_deffile("OpenGL::Modern::glProgramParameter4fvNV_c", XS_OpenGL__Modern_glProgramParameter4fvNV_c);
        newXS_deffile("OpenGL::Modern::glProgramParameter4fvNV_p", XS_OpenGL__Modern_glProgramParameter4fvNV_p);
        cv = newXS_deffile("OpenGL::Modern::glProgramParameteri", XS_OpenGL__Modern_glProgramParameteri);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramParameteriARB", XS_OpenGL__Modern_glProgramParameteri);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramParameteriEXT", XS_OpenGL__Modern_glProgramParameteri);
        XSANY.any_i32 = 2;
        newXS_deffile("OpenGL::Modern::glProgramParameters4dvNV_c", XS_OpenGL__Modern_glProgramParameters4dvNV_c);
        newXS_deffile("OpenGL::Modern::glProgramParameters4dvNV_p", XS_OpenGL__Modern_glProgramParameters4dvNV_p);
        newXS_deffile("OpenGL::Modern::glProgramParameters4fvNV_c", XS_OpenGL__Modern_glProgramParameters4fvNV_c);
        newXS_deffile("OpenGL::Modern::glProgramParameters4fvNV_p", XS_OpenGL__Modern_glProgramParameters4fvNV_p);
        newXS_deffile("OpenGL::Modern::glProgramPathFragmentInputGenNV_c", XS_OpenGL__Modern_glProgramPathFragmentInputGenNV_c);
        newXS_deffile("OpenGL::Modern::glProgramStringARB_c", XS_OpenGL__Modern_glProgramStringARB_c);
        newXS_deffile("OpenGL::Modern::glProgramUniform1d", XS_OpenGL__Modern_glProgramUniform1d);
        newXS_deffile("OpenGL::Modern::glProgramUniform1dv_c", XS_OpenGL__Modern_glProgramUniform1dv_c);
        newXS_deffile("OpenGL::Modern::glProgramUniform1dv_p", XS_OpenGL__Modern_glProgramUniform1dv_p);
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform1f", XS_OpenGL__Modern_glProgramUniform1f);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform1fEXT", XS_OpenGL__Modern_glProgramUniform1f);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform1fvEXT_c", XS_OpenGL__Modern_glProgramUniform1fv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform1fv_c", XS_OpenGL__Modern_glProgramUniform1fv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform1fvEXT_p", XS_OpenGL__Modern_glProgramUniform1fv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform1fv_p", XS_OpenGL__Modern_glProgramUniform1fv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform1i", XS_OpenGL__Modern_glProgramUniform1i);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform1iEXT", XS_OpenGL__Modern_glProgramUniform1i);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glProgramUniform1i64ARB", XS_OpenGL__Modern_glProgramUniform1i64ARB);
        newXS_deffile("OpenGL::Modern::glProgramUniform1i64NV", XS_OpenGL__Modern_glProgramUniform1i64NV);
        newXS_deffile("OpenGL::Modern::glProgramUniform1i64vARB_c", XS_OpenGL__Modern_glProgramUniform1i64vARB_c);
        newXS_deffile("OpenGL::Modern::glProgramUniform1i64vARB_p", XS_OpenGL__Modern_glProgramUniform1i64vARB_p);
        newXS_deffile("OpenGL::Modern::glProgramUniform1i64vNV_c", XS_OpenGL__Modern_glProgramUniform1i64vNV_c);
        newXS_deffile("OpenGL::Modern::glProgramUniform1i64vNV_p", XS_OpenGL__Modern_glProgramUniform1i64vNV_p);
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform1ivEXT_c", XS_OpenGL__Modern_glProgramUniform1iv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform1iv_c", XS_OpenGL__Modern_glProgramUniform1iv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform1ivEXT_p", XS_OpenGL__Modern_glProgramUniform1iv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform1iv_p", XS_OpenGL__Modern_glProgramUniform1iv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform1ui", XS_OpenGL__Modern_glProgramUniform1ui);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform1uiEXT", XS_OpenGL__Modern_glProgramUniform1ui);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glProgramUniform1ui64ARB", XS_OpenGL__Modern_glProgramUniform1ui64ARB);
        newXS_deffile("OpenGL::Modern::glProgramUniform1ui64NV", XS_OpenGL__Modern_glProgramUniform1ui64NV);
        newXS_deffile("OpenGL::Modern::glProgramUniform1ui64vARB_c", XS_OpenGL__Modern_glProgramUniform1ui64vARB_c);
        newXS_deffile("OpenGL::Modern::glProgramUniform1ui64vARB_p", XS_OpenGL__Modern_glProgramUniform1ui64vARB_p);
        newXS_deffile("OpenGL::Modern::glProgramUniform1ui64vNV_c", XS_OpenGL__Modern_glProgramUniform1ui64vNV_c);
        newXS_deffile("OpenGL::Modern::glProgramUniform1ui64vNV_p", XS_OpenGL__Modern_glProgramUniform1ui64vNV_p);
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform1uivEXT_c", XS_OpenGL__Modern_glProgramUniform1uiv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform1uiv_c", XS_OpenGL__Modern_glProgramUniform1uiv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform1uivEXT_p", XS_OpenGL__Modern_glProgramUniform1uiv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform1uiv_p", XS_OpenGL__Modern_glProgramUniform1uiv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glProgramUniform2d", XS_OpenGL__Modern_glProgramUniform2d);
        newXS_deffile("OpenGL::Modern::glProgramUniform2dv_c", XS_OpenGL__Modern_glProgramUniform2dv_c);
        newXS_deffile("OpenGL::Modern::glProgramUniform2dv_p", XS_OpenGL__Modern_glProgramUniform2dv_p);
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform2f", XS_OpenGL__Modern_glProgramUniform2f);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform2fEXT", XS_OpenGL__Modern_glProgramUniform2f);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform2fvEXT_c", XS_OpenGL__Modern_glProgramUniform2fv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform2fv_c", XS_OpenGL__Modern_glProgramUniform2fv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform2fvEXT_p", XS_OpenGL__Modern_glProgramUniform2fv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform2fv_p", XS_OpenGL__Modern_glProgramUniform2fv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform2i", XS_OpenGL__Modern_glProgramUniform2i);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform2iEXT", XS_OpenGL__Modern_glProgramUniform2i);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glProgramUniform2i64ARB", XS_OpenGL__Modern_glProgramUniform2i64ARB);
        newXS_deffile("OpenGL::Modern::glProgramUniform2i64NV", XS_OpenGL__Modern_glProgramUniform2i64NV);
        newXS_deffile("OpenGL::Modern::glProgramUniform2i64vARB_c", XS_OpenGL__Modern_glProgramUniform2i64vARB_c);
        newXS_deffile("OpenGL::Modern::glProgramUniform2i64vARB_p", XS_OpenGL__Modern_glProgramUniform2i64vARB_p);
        newXS_deffile("OpenGL::Modern::glProgramUniform2i64vNV_c", XS_OpenGL__Modern_glProgramUniform2i64vNV_c);
        newXS_deffile("OpenGL::Modern::glProgramUniform2i64vNV_p", XS_OpenGL__Modern_glProgramUniform2i64vNV_p);
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform2ivEXT_c", XS_OpenGL__Modern_glProgramUniform2iv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform2iv_c", XS_OpenGL__Modern_glProgramUniform2iv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform2ivEXT_p", XS_OpenGL__Modern_glProgramUniform2iv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform2iv_p", XS_OpenGL__Modern_glProgramUniform2iv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform2ui", XS_OpenGL__Modern_glProgramUniform2ui);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform2uiEXT", XS_OpenGL__Modern_glProgramUniform2ui);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glProgramUniform2ui64ARB", XS_OpenGL__Modern_glProgramUniform2ui64ARB);
        newXS_deffile("OpenGL::Modern::glProgramUniform2ui64NV", XS_OpenGL__Modern_glProgramUniform2ui64NV);
        newXS_deffile("OpenGL::Modern::glProgramUniform2ui64vARB_c", XS_OpenGL__Modern_glProgramUniform2ui64vARB_c);
        newXS_deffile("OpenGL::Modern::glProgramUniform2ui64vARB_p", XS_OpenGL__Modern_glProgramUniform2ui64vARB_p);
        newXS_deffile("OpenGL::Modern::glProgramUniform2ui64vNV_c", XS_OpenGL__Modern_glProgramUniform2ui64vNV_c);
        newXS_deffile("OpenGL::Modern::glProgramUniform2ui64vNV_p", XS_OpenGL__Modern_glProgramUniform2ui64vNV_p);
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform2uivEXT_c", XS_OpenGL__Modern_glProgramUniform2uiv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform2uiv_c", XS_OpenGL__Modern_glProgramUniform2uiv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform2uivEXT_p", XS_OpenGL__Modern_glProgramUniform2uiv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform2uiv_p", XS_OpenGL__Modern_glProgramUniform2uiv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glProgramUniform3d", XS_OpenGL__Modern_glProgramUniform3d);
        newXS_deffile("OpenGL::Modern::glProgramUniform3dv_c", XS_OpenGL__Modern_glProgramUniform3dv_c);
        newXS_deffile("OpenGL::Modern::glProgramUniform3dv_p", XS_OpenGL__Modern_glProgramUniform3dv_p);
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform3f", XS_OpenGL__Modern_glProgramUniform3f);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform3fEXT", XS_OpenGL__Modern_glProgramUniform3f);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform3fvEXT_c", XS_OpenGL__Modern_glProgramUniform3fv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform3fv_c", XS_OpenGL__Modern_glProgramUniform3fv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform3fvEXT_p", XS_OpenGL__Modern_glProgramUniform3fv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform3fv_p", XS_OpenGL__Modern_glProgramUniform3fv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform3i", XS_OpenGL__Modern_glProgramUniform3i);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform3iEXT", XS_OpenGL__Modern_glProgramUniform3i);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glProgramUniform3i64ARB", XS_OpenGL__Modern_glProgramUniform3i64ARB);
        newXS_deffile("OpenGL::Modern::glProgramUniform3i64NV", XS_OpenGL__Modern_glProgramUniform3i64NV);
        newXS_deffile("OpenGL::Modern::glProgramUniform3i64vARB_c", XS_OpenGL__Modern_glProgramUniform3i64vARB_c);
        newXS_deffile("OpenGL::Modern::glProgramUniform3i64vARB_p", XS_OpenGL__Modern_glProgramUniform3i64vARB_p);
        newXS_deffile("OpenGL::Modern::glProgramUniform3i64vNV_c", XS_OpenGL__Modern_glProgramUniform3i64vNV_c);
        newXS_deffile("OpenGL::Modern::glProgramUniform3i64vNV_p", XS_OpenGL__Modern_glProgramUniform3i64vNV_p);
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform3ivEXT_c", XS_OpenGL__Modern_glProgramUniform3iv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform3iv_c", XS_OpenGL__Modern_glProgramUniform3iv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform3ivEXT_p", XS_OpenGL__Modern_glProgramUniform3iv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform3iv_p", XS_OpenGL__Modern_glProgramUniform3iv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform3ui", XS_OpenGL__Modern_glProgramUniform3ui);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform3uiEXT", XS_OpenGL__Modern_glProgramUniform3ui);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glProgramUniform3ui64ARB", XS_OpenGL__Modern_glProgramUniform3ui64ARB);
        newXS_deffile("OpenGL::Modern::glProgramUniform3ui64NV", XS_OpenGL__Modern_glProgramUniform3ui64NV);
        newXS_deffile("OpenGL::Modern::glProgramUniform3ui64vARB_c", XS_OpenGL__Modern_glProgramUniform3ui64vARB_c);
        newXS_deffile("OpenGL::Modern::glProgramUniform3ui64vARB_p", XS_OpenGL__Modern_glProgramUniform3ui64vARB_p);
        newXS_deffile("OpenGL::Modern::glProgramUniform3ui64vNV_c", XS_OpenGL__Modern_glProgramUniform3ui64vNV_c);
        newXS_deffile("OpenGL::Modern::glProgramUniform3ui64vNV_p", XS_OpenGL__Modern_glProgramUniform3ui64vNV_p);
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform3uivEXT_c", XS_OpenGL__Modern_glProgramUniform3uiv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform3uiv_c", XS_OpenGL__Modern_glProgramUniform3uiv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform3uivEXT_p", XS_OpenGL__Modern_glProgramUniform3uiv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform3uiv_p", XS_OpenGL__Modern_glProgramUniform3uiv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glProgramUniform4d", XS_OpenGL__Modern_glProgramUniform4d);
        newXS_deffile("OpenGL::Modern::glProgramUniform4dv_c", XS_OpenGL__Modern_glProgramUniform4dv_c);
        newXS_deffile("OpenGL::Modern::glProgramUniform4dv_p", XS_OpenGL__Modern_glProgramUniform4dv_p);
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform4f", XS_OpenGL__Modern_glProgramUniform4f);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform4fEXT", XS_OpenGL__Modern_glProgramUniform4f);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform4fvEXT_c", XS_OpenGL__Modern_glProgramUniform4fv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform4fv_c", XS_OpenGL__Modern_glProgramUniform4fv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform4fvEXT_p", XS_OpenGL__Modern_glProgramUniform4fv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform4fv_p", XS_OpenGL__Modern_glProgramUniform4fv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform4i", XS_OpenGL__Modern_glProgramUniform4i);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform4iEXT", XS_OpenGL__Modern_glProgramUniform4i);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glProgramUniform4i64ARB", XS_OpenGL__Modern_glProgramUniform4i64ARB);
        newXS_deffile("OpenGL::Modern::glProgramUniform4i64NV", XS_OpenGL__Modern_glProgramUniform4i64NV);
        newXS_deffile("OpenGL::Modern::glProgramUniform4i64vARB_c", XS_OpenGL__Modern_glProgramUniform4i64vARB_c);
        newXS_deffile("OpenGL::Modern::glProgramUniform4i64vARB_p", XS_OpenGL__Modern_glProgramUniform4i64vARB_p);
        newXS_deffile("OpenGL::Modern::glProgramUniform4i64vNV_c", XS_OpenGL__Modern_glProgramUniform4i64vNV_c);
        newXS_deffile("OpenGL::Modern::glProgramUniform4i64vNV_p", XS_OpenGL__Modern_glProgramUniform4i64vNV_p);
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform4ivEXT_c", XS_OpenGL__Modern_glProgramUniform4iv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform4iv_c", XS_OpenGL__Modern_glProgramUniform4iv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform4ivEXT_p", XS_OpenGL__Modern_glProgramUniform4iv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform4iv_p", XS_OpenGL__Modern_glProgramUniform4iv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform4ui", XS_OpenGL__Modern_glProgramUniform4ui);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform4uiEXT", XS_OpenGL__Modern_glProgramUniform4ui);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glProgramUniform4ui64ARB", XS_OpenGL__Modern_glProgramUniform4ui64ARB);
        newXS_deffile("OpenGL::Modern::glProgramUniform4ui64NV", XS_OpenGL__Modern_glProgramUniform4ui64NV);
        newXS_deffile("OpenGL::Modern::glProgramUniform4ui64vARB_c", XS_OpenGL__Modern_glProgramUniform4ui64vARB_c);
        newXS_deffile("OpenGL::Modern::glProgramUniform4ui64vARB_p", XS_OpenGL__Modern_glProgramUniform4ui64vARB_p);
        newXS_deffile("OpenGL::Modern::glProgramUniform4ui64vNV_c", XS_OpenGL__Modern_glProgramUniform4ui64vNV_c);
        newXS_deffile("OpenGL::Modern::glProgramUniform4ui64vNV_p", XS_OpenGL__Modern_glProgramUniform4ui64vNV_p);
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform4uivEXT_c", XS_OpenGL__Modern_glProgramUniform4uiv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform4uiv_c", XS_OpenGL__Modern_glProgramUniform4uiv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform4uivEXT_p", XS_OpenGL__Modern_glProgramUniform4uiv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniform4uiv_p", XS_OpenGL__Modern_glProgramUniform4uiv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformHandleui64ARB", XS_OpenGL__Modern_glProgramUniformHandleui64ARB);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformHandleui64IMG", XS_OpenGL__Modern_glProgramUniformHandleui64ARB);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glProgramUniformHandleui64NV", XS_OpenGL__Modern_glProgramUniformHandleui64NV);
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformHandleui64vARB_c", XS_OpenGL__Modern_glProgramUniformHandleui64vARB_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformHandleui64vIMG_c", XS_OpenGL__Modern_glProgramUniformHandleui64vARB_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformHandleui64vARB_p", XS_OpenGL__Modern_glProgramUniformHandleui64vARB_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformHandleui64vIMG_p", XS_OpenGL__Modern_glProgramUniformHandleui64vARB_p);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glProgramUniformHandleui64vNV_c", XS_OpenGL__Modern_glProgramUniformHandleui64vNV_c);
        newXS_deffile("OpenGL::Modern::glProgramUniformHandleui64vNV_p", XS_OpenGL__Modern_glProgramUniformHandleui64vNV_p);
        newXS_deffile("OpenGL::Modern::glProgramUniformMatrix2dv_c", XS_OpenGL__Modern_glProgramUniformMatrix2dv_c);
        newXS_deffile("OpenGL::Modern::glProgramUniformMatrix2dv_p", XS_OpenGL__Modern_glProgramUniformMatrix2dv_p);
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformMatrix2fvEXT_c", XS_OpenGL__Modern_glProgramUniformMatrix2fv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformMatrix2fv_c", XS_OpenGL__Modern_glProgramUniformMatrix2fv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformMatrix2fvEXT_p", XS_OpenGL__Modern_glProgramUniformMatrix2fv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformMatrix2fv_p", XS_OpenGL__Modern_glProgramUniformMatrix2fv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glProgramUniformMatrix2x3dv_c", XS_OpenGL__Modern_glProgramUniformMatrix2x3dv_c);
        newXS_deffile("OpenGL::Modern::glProgramUniformMatrix2x3dv_p", XS_OpenGL__Modern_glProgramUniformMatrix2x3dv_p);
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformMatrix2x3fvEXT_c", XS_OpenGL__Modern_glProgramUniformMatrix2x3fv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformMatrix2x3fv_c", XS_OpenGL__Modern_glProgramUniformMatrix2x3fv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformMatrix2x3fvEXT_p", XS_OpenGL__Modern_glProgramUniformMatrix2x3fv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformMatrix2x3fv_p", XS_OpenGL__Modern_glProgramUniformMatrix2x3fv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glProgramUniformMatrix2x4dv_c", XS_OpenGL__Modern_glProgramUniformMatrix2x4dv_c);
        newXS_deffile("OpenGL::Modern::glProgramUniformMatrix2x4dv_p", XS_OpenGL__Modern_glProgramUniformMatrix2x4dv_p);
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformMatrix2x4fvEXT_c", XS_OpenGL__Modern_glProgramUniformMatrix2x4fv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformMatrix2x4fv_c", XS_OpenGL__Modern_glProgramUniformMatrix2x4fv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformMatrix2x4fvEXT_p", XS_OpenGL__Modern_glProgramUniformMatrix2x4fv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformMatrix2x4fv_p", XS_OpenGL__Modern_glProgramUniformMatrix2x4fv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glProgramUniformMatrix3dv_c", XS_OpenGL__Modern_glProgramUniformMatrix3dv_c);
        newXS_deffile("OpenGL::Modern::glProgramUniformMatrix3dv_p", XS_OpenGL__Modern_glProgramUniformMatrix3dv_p);
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformMatrix3fvEXT_c", XS_OpenGL__Modern_glProgramUniformMatrix3fv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformMatrix3fv_c", XS_OpenGL__Modern_glProgramUniformMatrix3fv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformMatrix3fvEXT_p", XS_OpenGL__Modern_glProgramUniformMatrix3fv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformMatrix3fv_p", XS_OpenGL__Modern_glProgramUniformMatrix3fv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glProgramUniformMatrix3x2dv_c", XS_OpenGL__Modern_glProgramUniformMatrix3x2dv_c);
        newXS_deffile("OpenGL::Modern::glProgramUniformMatrix3x2dv_p", XS_OpenGL__Modern_glProgramUniformMatrix3x2dv_p);
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformMatrix3x2fvEXT_c", XS_OpenGL__Modern_glProgramUniformMatrix3x2fv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformMatrix3x2fv_c", XS_OpenGL__Modern_glProgramUniformMatrix3x2fv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformMatrix3x2fvEXT_p", XS_OpenGL__Modern_glProgramUniformMatrix3x2fv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformMatrix3x2fv_p", XS_OpenGL__Modern_glProgramUniformMatrix3x2fv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glProgramUniformMatrix3x4dv_c", XS_OpenGL__Modern_glProgramUniformMatrix3x4dv_c);
        newXS_deffile("OpenGL::Modern::glProgramUniformMatrix3x4dv_p", XS_OpenGL__Modern_glProgramUniformMatrix3x4dv_p);
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformMatrix3x4fvEXT_c", XS_OpenGL__Modern_glProgramUniformMatrix3x4fv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformMatrix3x4fv_c", XS_OpenGL__Modern_glProgramUniformMatrix3x4fv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformMatrix3x4fvEXT_p", XS_OpenGL__Modern_glProgramUniformMatrix3x4fv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformMatrix3x4fv_p", XS_OpenGL__Modern_glProgramUniformMatrix3x4fv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glProgramUniformMatrix4dv_c", XS_OpenGL__Modern_glProgramUniformMatrix4dv_c);
        newXS_deffile("OpenGL::Modern::glProgramUniformMatrix4dv_p", XS_OpenGL__Modern_glProgramUniformMatrix4dv_p);
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformMatrix4fvEXT_c", XS_OpenGL__Modern_glProgramUniformMatrix4fv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformMatrix4fv_c", XS_OpenGL__Modern_glProgramUniformMatrix4fv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformMatrix4fvEXT_p", XS_OpenGL__Modern_glProgramUniformMatrix4fv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformMatrix4fv_p", XS_OpenGL__Modern_glProgramUniformMatrix4fv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glProgramUniformMatrix4x2dv_c", XS_OpenGL__Modern_glProgramUniformMatrix4x2dv_c);
        newXS_deffile("OpenGL::Modern::glProgramUniformMatrix4x2dv_p", XS_OpenGL__Modern_glProgramUniformMatrix4x2dv_p);
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformMatrix4x2fvEXT_c", XS_OpenGL__Modern_glProgramUniformMatrix4x2fv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformMatrix4x2fv_c", XS_OpenGL__Modern_glProgramUniformMatrix4x2fv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformMatrix4x2fvEXT_p", XS_OpenGL__Modern_glProgramUniformMatrix4x2fv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformMatrix4x2fv_p", XS_OpenGL__Modern_glProgramUniformMatrix4x2fv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glProgramUniformMatrix4x3dv_c", XS_OpenGL__Modern_glProgramUniformMatrix4x3dv_c);
        newXS_deffile("OpenGL::Modern::glProgramUniformMatrix4x3dv_p", XS_OpenGL__Modern_glProgramUniformMatrix4x3dv_p);
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformMatrix4x3fvEXT_c", XS_OpenGL__Modern_glProgramUniformMatrix4x3fv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformMatrix4x3fv_c", XS_OpenGL__Modern_glProgramUniformMatrix4x3fv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformMatrix4x3fvEXT_p", XS_OpenGL__Modern_glProgramUniformMatrix4x3fv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glProgramUniformMatrix4x3fv_p", XS_OpenGL__Modern_glProgramUniformMatrix4x3fv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glProgramUniformui64NV", XS_OpenGL__Modern_glProgramUniformui64NV);
        newXS_deffile("OpenGL::Modern::glProgramUniformui64vNV_c", XS_OpenGL__Modern_glProgramUniformui64vNV_c);
        newXS_deffile("OpenGL::Modern::glProgramUniformui64vNV_p", XS_OpenGL__Modern_glProgramUniformui64vNV_p);
        newXS_deffile("OpenGL::Modern::glProgramVertexLimitNV", XS_OpenGL__Modern_glProgramVertexLimitNV);
        cv = newXS_deffile("OpenGL::Modern::glProvokingVertex", XS_OpenGL__Modern_glProvokingVertex);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glProvokingVertexEXT", XS_OpenGL__Modern_glProvokingVertex);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glPushAttrib", XS_OpenGL__Modern_glPushAttrib);
        newXS_deffile("OpenGL::Modern::glPushClientAttrib", XS_OpenGL__Modern_glPushClientAttrib);
        newXS_deffile("OpenGL::Modern::glPushClientAttribDefaultEXT", XS_OpenGL__Modern_glPushClientAttribDefaultEXT);
        cv = newXS_deffile("OpenGL::Modern::glPushDebugGroup", XS_OpenGL__Modern_glPushDebugGroup);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glPushDebugGroupKHR", XS_OpenGL__Modern_glPushDebugGroup);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glPushGroupMarkerEXT", XS_OpenGL__Modern_glPushGroupMarkerEXT);
        newXS_deffile("OpenGL::Modern::glPushMatrix", XS_OpenGL__Modern_glPushMatrix);
        newXS_deffile("OpenGL::Modern::glPushName", XS_OpenGL__Modern_glPushName);
        cv = newXS_deffile("OpenGL::Modern::glQueryCounter", XS_OpenGL__Modern_glQueryCounter);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glQueryCounterEXT", XS_OpenGL__Modern_glQueryCounter);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glQueryCounterANGLE", XS_OpenGL__Modern_glQueryCounterANGLE);
        newXS_deffile("OpenGL::Modern::glQueryObjectParameteruiAMD", XS_OpenGL__Modern_glQueryObjectParameteruiAMD);
        newXS_deffile("OpenGL::Modern::glRasterPos2d", XS_OpenGL__Modern_glRasterPos2d);
        newXS_deffile("OpenGL::Modern::glRasterPos2dv_c", XS_OpenGL__Modern_glRasterPos2dv_c);
        newXS_deffile("OpenGL::Modern::glRasterPos2dv_p", XS_OpenGL__Modern_glRasterPos2dv_p);
        newXS_deffile("OpenGL::Modern::glRasterPos2f", XS_OpenGL__Modern_glRasterPos2f);
        newXS_deffile("OpenGL::Modern::glRasterPos2fv_c", XS_OpenGL__Modern_glRasterPos2fv_c);
        newXS_deffile("OpenGL::Modern::glRasterPos2fv_p", XS_OpenGL__Modern_glRasterPos2fv_p);
        newXS_deffile("OpenGL::Modern::glRasterPos2i", XS_OpenGL__Modern_glRasterPos2i);
        newXS_deffile("OpenGL::Modern::glRasterPos2iv_c", XS_OpenGL__Modern_glRasterPos2iv_c);
        newXS_deffile("OpenGL::Modern::glRasterPos2iv_p", XS_OpenGL__Modern_glRasterPos2iv_p);
        newXS_deffile("OpenGL::Modern::glRasterPos2s", XS_OpenGL__Modern_glRasterPos2s);
        newXS_deffile("OpenGL::Modern::glRasterPos2sv_c", XS_OpenGL__Modern_glRasterPos2sv_c);
        newXS_deffile("OpenGL::Modern::glRasterPos2sv_p", XS_OpenGL__Modern_glRasterPos2sv_p);
        newXS_deffile("OpenGL::Modern::glRasterPos3d", XS_OpenGL__Modern_glRasterPos3d);
        newXS_deffile("OpenGL::Modern::glRasterPos3dv_c", XS_OpenGL__Modern_glRasterPos3dv_c);
        newXS_deffile("OpenGL::Modern::glRasterPos3dv_p", XS_OpenGL__Modern_glRasterPos3dv_p);
        newXS_deffile("OpenGL::Modern::glRasterPos3f", XS_OpenGL__Modern_glRasterPos3f);
        newXS_deffile("OpenGL::Modern::glRasterPos3fv_c", XS_OpenGL__Modern_glRasterPos3fv_c);
        newXS_deffile("OpenGL::Modern::glRasterPos3fv_p", XS_OpenGL__Modern_glRasterPos3fv_p);
        newXS_deffile("OpenGL::Modern::glRasterPos3i", XS_OpenGL__Modern_glRasterPos3i);
        newXS_deffile("OpenGL::Modern::glRasterPos3iv_c", XS_OpenGL__Modern_glRasterPos3iv_c);
        newXS_deffile("OpenGL::Modern::glRasterPos3iv_p", XS_OpenGL__Modern_glRasterPos3iv_p);
        newXS_deffile("OpenGL::Modern::glRasterPos3s", XS_OpenGL__Modern_glRasterPos3s);
        newXS_deffile("OpenGL::Modern::glRasterPos3sv_c", XS_OpenGL__Modern_glRasterPos3sv_c);
        newXS_deffile("OpenGL::Modern::glRasterPos3sv_p", XS_OpenGL__Modern_glRasterPos3sv_p);
        newXS_deffile("OpenGL::Modern::glRasterPos4d", XS_OpenGL__Modern_glRasterPos4d);
        newXS_deffile("OpenGL::Modern::glRasterPos4dv_c", XS_OpenGL__Modern_glRasterPos4dv_c);
        newXS_deffile("OpenGL::Modern::glRasterPos4dv_p", XS_OpenGL__Modern_glRasterPos4dv_p);
        newXS_deffile("OpenGL::Modern::glRasterPos4f", XS_OpenGL__Modern_glRasterPos4f);
        newXS_deffile("OpenGL::Modern::glRasterPos4fv_c", XS_OpenGL__Modern_glRasterPos4fv_c);
        newXS_deffile("OpenGL::Modern::glRasterPos4fv_p", XS_OpenGL__Modern_glRasterPos4fv_p);
        newXS_deffile("OpenGL::Modern::glRasterPos4i", XS_OpenGL__Modern_glRasterPos4i);
        newXS_deffile("OpenGL::Modern::glRasterPos4iv_c", XS_OpenGL__Modern_glRasterPos4iv_c);
        newXS_deffile("OpenGL::Modern::glRasterPos4iv_p", XS_OpenGL__Modern_glRasterPos4iv_p);
        newXS_deffile("OpenGL::Modern::glRasterPos4s", XS_OpenGL__Modern_glRasterPos4s);
        newXS_deffile("OpenGL::Modern::glRasterPos4sv_c", XS_OpenGL__Modern_glRasterPos4sv_c);
        newXS_deffile("OpenGL::Modern::glRasterPos4sv_p", XS_OpenGL__Modern_glRasterPos4sv_p);
        newXS_deffile("OpenGL::Modern::glRasterSamplesEXT", XS_OpenGL__Modern_glRasterSamplesEXT);
        newXS_deffile("OpenGL::Modern::glReadBuffer", XS_OpenGL__Modern_glReadBuffer);
        newXS_deffile("OpenGL::Modern::glReadBufferIndexedEXT", XS_OpenGL__Modern_glReadBufferIndexedEXT);
        newXS_deffile("OpenGL::Modern::glReadBufferNV", XS_OpenGL__Modern_glReadBufferNV);
        newXS_deffile("OpenGL::Modern::glReadBufferRegion", XS_OpenGL__Modern_glReadBufferRegion);
        newXS_deffile("OpenGL::Modern::glReadPixels_c", XS_OpenGL__Modern_glReadPixels_c);
        newXS_deffile("OpenGL::Modern::glReadVideoPixelsSUN_c", XS_OpenGL__Modern_glReadVideoPixelsSUN_c);
        cv = newXS_deffile("OpenGL::Modern::glReadnPixelsARB_c", XS_OpenGL__Modern_glReadnPixels_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glReadnPixelsEXT_c", XS_OpenGL__Modern_glReadnPixels_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glReadnPixelsKHR_c", XS_OpenGL__Modern_glReadnPixels_c);
        XSANY.any_i32 = 3;
        cv = newXS_deffile("OpenGL::Modern::glReadnPixels_c", XS_OpenGL__Modern_glReadnPixels_c);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glRectd", XS_OpenGL__Modern_glRectd);
        newXS_deffile("OpenGL::Modern::glRectdv_c", XS_OpenGL__Modern_glRectdv_c);
        newXS_deffile("OpenGL::Modern::glRectdv_p", XS_OpenGL__Modern_glRectdv_p);
        newXS_deffile("OpenGL::Modern::glRectf", XS_OpenGL__Modern_glRectf);
        newXS_deffile("OpenGL::Modern::glRectfv_c", XS_OpenGL__Modern_glRectfv_c);
        newXS_deffile("OpenGL::Modern::glRectfv_p", XS_OpenGL__Modern_glRectfv_p);
        newXS_deffile("OpenGL::Modern::glRecti", XS_OpenGL__Modern_glRecti);
        newXS_deffile("OpenGL::Modern::glRectiv_c", XS_OpenGL__Modern_glRectiv_c);
        newXS_deffile("OpenGL::Modern::glRectiv_p", XS_OpenGL__Modern_glRectiv_p);
        newXS_deffile("OpenGL::Modern::glRects", XS_OpenGL__Modern_glRects);
        newXS_deffile("OpenGL::Modern::glRectsv_c", XS_OpenGL__Modern_glRectsv_c);
        newXS_deffile("OpenGL::Modern::glRectsv_p", XS_OpenGL__Modern_glRectsv_p);
        newXS_deffile("OpenGL::Modern::glReferencePlaneSGIX_c", XS_OpenGL__Modern_glReferencePlaneSGIX_c);
        newXS_deffile("OpenGL::Modern::glReferencePlaneSGIX_p", XS_OpenGL__Modern_glReferencePlaneSGIX_p);
        newXS_deffile("OpenGL::Modern::glReleaseKeyedMutexWin32EXT", XS_OpenGL__Modern_glReleaseKeyedMutexWin32EXT);
        newXS_deffile("OpenGL::Modern::glReleaseShaderCompiler", XS_OpenGL__Modern_glReleaseShaderCompiler);
        newXS_deffile("OpenGL::Modern::glRenderGpuMaskNV", XS_OpenGL__Modern_glRenderGpuMaskNV);
        newXS_deffile("OpenGL::Modern::glRenderMode", XS_OpenGL__Modern_glRenderMode);
        cv = newXS_deffile("OpenGL::Modern::glRenderbufferStorage", XS_OpenGL__Modern_glRenderbufferStorage);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glRenderbufferStorageEXT", XS_OpenGL__Modern_glRenderbufferStorage);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glRenderbufferStorageMultisample", XS_OpenGL__Modern_glRenderbufferStorageMultisample);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glRenderbufferStorageMultisampleEXT", XS_OpenGL__Modern_glRenderbufferStorageMultisample);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glRenderbufferStorageMultisampleNV", XS_OpenGL__Modern_glRenderbufferStorageMultisample);
        XSANY.any_i32 = 2;
        newXS_deffile("OpenGL::Modern::glRenderbufferStorageMultisampleANGLE", XS_OpenGL__Modern_glRenderbufferStorageMultisampleANGLE);
        newXS_deffile("OpenGL::Modern::glRenderbufferStorageMultisampleAPPLE", XS_OpenGL__Modern_glRenderbufferStorageMultisampleAPPLE);
        newXS_deffile("OpenGL::Modern::glRenderbufferStorageMultisampleAdvancedAMD", XS_OpenGL__Modern_glRenderbufferStorageMultisampleAdvancedAMD);
        newXS_deffile("OpenGL::Modern::glRenderbufferStorageMultisampleCoverageNV", XS_OpenGL__Modern_glRenderbufferStorageMultisampleCoverageNV);
        newXS_deffile("OpenGL::Modern::glRenderbufferStorageMultisampleIMG", XS_OpenGL__Modern_glRenderbufferStorageMultisampleIMG);
        newXS_deffile("OpenGL::Modern::glRenderbufferStorageOES", XS_OpenGL__Modern_glRenderbufferStorageOES);
        newXS_deffile("OpenGL::Modern::glReplacementCodePointerSUN_c", XS_OpenGL__Modern_glReplacementCodePointerSUN_c);
        newXS_deffile("OpenGL::Modern::glReplacementCodeubSUN", XS_OpenGL__Modern_glReplacementCodeubSUN);
        newXS_deffile("OpenGL::Modern::glReplacementCodeubvSUN_c", XS_OpenGL__Modern_glReplacementCodeubvSUN_c);
        newXS_deffile("OpenGL::Modern::glReplacementCodeuiColor3fVertex3fSUN", XS_OpenGL__Modern_glReplacementCodeuiColor3fVertex3fSUN);
        newXS_deffile("OpenGL::Modern::glReplacementCodeuiColor3fVertex3fvSUN_c", XS_OpenGL__Modern_glReplacementCodeuiColor3fVertex3fvSUN_c);
        newXS_deffile("OpenGL::Modern::glReplacementCodeuiColor3fVertex3fvSUN_p", XS_OpenGL__Modern_glReplacementCodeuiColor3fVertex3fvSUN_p);
        newXS_deffile("OpenGL::Modern::glReplacementCodeuiColor4fNormal3fVertex3fSUN", XS_OpenGL__Modern_glReplacementCodeuiColor4fNormal3fVertex3fSUN);
        newXS_deffile("OpenGL::Modern::glReplacementCodeuiColor4fNormal3fVertex3fvSUN_c", XS_OpenGL__Modern_glReplacementCodeuiColor4fNormal3fVertex3fvSUN_c);
        newXS_deffile("OpenGL::Modern::glReplacementCodeuiColor4fNormal3fVertex3fvSUN_p", XS_OpenGL__Modern_glReplacementCodeuiColor4fNormal3fVertex3fvSUN_p);
        newXS_deffile("OpenGL::Modern::glReplacementCodeuiColor4ubVertex3fSUN", XS_OpenGL__Modern_glReplacementCodeuiColor4ubVertex3fSUN);
        newXS_deffile("OpenGL::Modern::glReplacementCodeuiColor4ubVertex3fvSUN_c", XS_OpenGL__Modern_glReplacementCodeuiColor4ubVertex3fvSUN_c);
        newXS_deffile("OpenGL::Modern::glReplacementCodeuiColor4ubVertex3fvSUN_p", XS_OpenGL__Modern_glReplacementCodeuiColor4ubVertex3fvSUN_p);
        newXS_deffile("OpenGL::Modern::glReplacementCodeuiNormal3fVertex3fSUN", XS_OpenGL__Modern_glReplacementCodeuiNormal3fVertex3fSUN);
        newXS_deffile("OpenGL::Modern::glReplacementCodeuiNormal3fVertex3fvSUN_c", XS_OpenGL__Modern_glReplacementCodeuiNormal3fVertex3fvSUN_c);
        newXS_deffile("OpenGL::Modern::glReplacementCodeuiNormal3fVertex3fvSUN_p", XS_OpenGL__Modern_glReplacementCodeuiNormal3fVertex3fvSUN_p);
        newXS_deffile("OpenGL::Modern::glReplacementCodeuiSUN", XS_OpenGL__Modern_glReplacementCodeuiSUN);
        newXS_deffile("OpenGL::Modern::glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN", XS_OpenGL__Modern_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN);
        newXS_deffile("OpenGL::Modern::glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN_c", XS_OpenGL__Modern_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN_c);
        newXS_deffile("OpenGL::Modern::glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN_p", XS_OpenGL__Modern_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN_p);
        newXS_deffile("OpenGL::Modern::glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN", XS_OpenGL__Modern_glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN);
        newXS_deffile("OpenGL::Modern::glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN_c", XS_OpenGL__Modern_glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN_c);
        newXS_deffile("OpenGL::Modern::glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN_p", XS_OpenGL__Modern_glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN_p);
        newXS_deffile("OpenGL::Modern::glReplacementCodeuiTexCoord2fVertex3fSUN", XS_OpenGL__Modern_glReplacementCodeuiTexCoord2fVertex3fSUN);
        newXS_deffile("OpenGL::Modern::glReplacementCodeuiTexCoord2fVertex3fvSUN_c", XS_OpenGL__Modern_glReplacementCodeuiTexCoord2fVertex3fvSUN_c);
        newXS_deffile("OpenGL::Modern::glReplacementCodeuiTexCoord2fVertex3fvSUN_p", XS_OpenGL__Modern_glReplacementCodeuiTexCoord2fVertex3fvSUN_p);
        newXS_deffile("OpenGL::Modern::glReplacementCodeuiVertex3fSUN", XS_OpenGL__Modern_glReplacementCodeuiVertex3fSUN);
        newXS_deffile("OpenGL::Modern::glReplacementCodeuiVertex3fvSUN_c", XS_OpenGL__Modern_glReplacementCodeuiVertex3fvSUN_c);
        newXS_deffile("OpenGL::Modern::glReplacementCodeuiVertex3fvSUN_p", XS_OpenGL__Modern_glReplacementCodeuiVertex3fvSUN_p);
        newXS_deffile("OpenGL::Modern::glReplacementCodeuivSUN_c", XS_OpenGL__Modern_glReplacementCodeuivSUN_c);
        newXS_deffile("OpenGL::Modern::glReplacementCodeusSUN", XS_OpenGL__Modern_glReplacementCodeusSUN);
        newXS_deffile("OpenGL::Modern::glReplacementCodeusvSUN_c", XS_OpenGL__Modern_glReplacementCodeusvSUN_c);
        newXS_deffile("OpenGL::Modern::glRequestResidentProgramsNV_c", XS_OpenGL__Modern_glRequestResidentProgramsNV_c);
        newXS_deffile("OpenGL::Modern::glRequestResidentProgramsNV_p", XS_OpenGL__Modern_glRequestResidentProgramsNV_p);
        cv = newXS_deffile("OpenGL::Modern::glResetHistogram", XS_OpenGL__Modern_glResetHistogram);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glResetHistogramEXT", XS_OpenGL__Modern_glResetHistogram);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glResetMemoryObjectParameterNV", XS_OpenGL__Modern_glResetMemoryObjectParameterNV);
        cv = newXS_deffile("OpenGL::Modern::glResetMinmax", XS_OpenGL__Modern_glResetMinmax);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glResetMinmaxEXT", XS_OpenGL__Modern_glResetMinmax);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glResizeBuffersMESA", XS_OpenGL__Modern_glResizeBuffersMESA);
        newXS_deffile("OpenGL::Modern::glResolveDepthValuesNV", XS_OpenGL__Modern_glResolveDepthValuesNV);
        newXS_deffile("OpenGL::Modern::glResolveMultisampleFramebufferAPPLE", XS_OpenGL__Modern_glResolveMultisampleFramebufferAPPLE);
        cv = newXS_deffile("OpenGL::Modern::glResumeTransformFeedback", XS_OpenGL__Modern_glResumeTransformFeedback);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glResumeTransformFeedbackNV", XS_OpenGL__Modern_glResumeTransformFeedback);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glRotated", XS_OpenGL__Modern_glRotated);
        newXS_deffile("OpenGL::Modern::glRotatef", XS_OpenGL__Modern_glRotatef);
        newXS_deffile("OpenGL::Modern::glRotatex", XS_OpenGL__Modern_glRotatex);
        cv = newXS_deffile("OpenGL::Modern::glSampleCoverage", XS_OpenGL__Modern_glSampleCoverage);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glSampleCoverageARB", XS_OpenGL__Modern_glSampleCoverage);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glSampleCoveragex", XS_OpenGL__Modern_glSampleCoveragex);
        newXS_deffile("OpenGL::Modern::glSampleMapATI", XS_OpenGL__Modern_glSampleMapATI);
        cv = newXS_deffile("OpenGL::Modern::glSampleMaskEXT", XS_OpenGL__Modern_glSampleMaskEXT);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glSampleMaskSGIS", XS_OpenGL__Modern_glSampleMaskEXT);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glSampleMaskIndexedNV", XS_OpenGL__Modern_glSampleMaskIndexedNV);
        newXS_deffile("OpenGL::Modern::glSampleMaski", XS_OpenGL__Modern_glSampleMaski);
        cv = newXS_deffile("OpenGL::Modern::glSamplePatternEXT", XS_OpenGL__Modern_glSamplePatternEXT);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glSamplePatternSGIS", XS_OpenGL__Modern_glSamplePatternEXT);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glSamplerParameterIivEXT_c", XS_OpenGL__Modern_glSamplerParameterIiv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glSamplerParameterIiv_c", XS_OpenGL__Modern_glSamplerParameterIiv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glSamplerParameterIivEXT_p", XS_OpenGL__Modern_glSamplerParameterIiv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glSamplerParameterIiv_p", XS_OpenGL__Modern_glSamplerParameterIiv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glSamplerParameterIivOES_c", XS_OpenGL__Modern_glSamplerParameterIivOES_c);
        cv = newXS_deffile("OpenGL::Modern::glSamplerParameterIuivEXT_c", XS_OpenGL__Modern_glSamplerParameterIuiv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glSamplerParameterIuiv_c", XS_OpenGL__Modern_glSamplerParameterIuiv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glSamplerParameterIuivEXT_p", XS_OpenGL__Modern_glSamplerParameterIuiv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glSamplerParameterIuiv_p", XS_OpenGL__Modern_glSamplerParameterIuiv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glSamplerParameterIuivOES_c", XS_OpenGL__Modern_glSamplerParameterIuivOES_c);
        newXS_deffile("OpenGL::Modern::glSamplerParameterf", XS_OpenGL__Modern_glSamplerParameterf);
        newXS_deffile("OpenGL::Modern::glSamplerParameterfv_c", XS_OpenGL__Modern_glSamplerParameterfv_c);
        newXS_deffile("OpenGL::Modern::glSamplerParameterfv_p", XS_OpenGL__Modern_glSamplerParameterfv_p);
        newXS_deffile("OpenGL::Modern::glSamplerParameteri", XS_OpenGL__Modern_glSamplerParameteri);
        newXS_deffile("OpenGL::Modern::glSamplerParameteriv_c", XS_OpenGL__Modern_glSamplerParameteriv_c);
        newXS_deffile("OpenGL::Modern::glSamplerParameteriv_p", XS_OpenGL__Modern_glSamplerParameteriv_p);
        newXS_deffile("OpenGL::Modern::glScaled", XS_OpenGL__Modern_glScaled);
        newXS_deffile("OpenGL::Modern::glScalef", XS_OpenGL__Modern_glScalef);
        newXS_deffile("OpenGL::Modern::glScalex", XS_OpenGL__Modern_glScalex);
        newXS_deffile("OpenGL::Modern::glScissor", XS_OpenGL__Modern_glScissor);
        cv = newXS_deffile("OpenGL::Modern::glScissorArrayvNV_c", XS_OpenGL__Modern_glScissorArrayv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glScissorArrayv_c", XS_OpenGL__Modern_glScissorArrayv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glScissorArrayvNV_p", XS_OpenGL__Modern_glScissorArrayv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glScissorArrayv_p", XS_OpenGL__Modern_glScissorArrayv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glScissorExclusiveArrayvNV_c", XS_OpenGL__Modern_glScissorExclusiveArrayvNV_c);
        newXS_deffile("OpenGL::Modern::glScissorExclusiveArrayvNV_p", XS_OpenGL__Modern_glScissorExclusiveArrayvNV_p);
        newXS_deffile("OpenGL::Modern::glScissorExclusiveNV", XS_OpenGL__Modern_glScissorExclusiveNV);
        cv = newXS_deffile("OpenGL::Modern::glScissorIndexed", XS_OpenGL__Modern_glScissorIndexed);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glScissorIndexedNV", XS_OpenGL__Modern_glScissorIndexed);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glScissorIndexedvNV_c", XS_OpenGL__Modern_glScissorIndexedv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glScissorIndexedv_c", XS_OpenGL__Modern_glScissorIndexedv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glScissorIndexedvNV_p", XS_OpenGL__Modern_glScissorIndexedv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glScissorIndexedv_p", XS_OpenGL__Modern_glScissorIndexedv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3b", XS_OpenGL__Modern_glSecondaryColor3b);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3bEXT", XS_OpenGL__Modern_glSecondaryColor3b);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3bvEXT_c", XS_OpenGL__Modern_glSecondaryColor3bv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3bv_c", XS_OpenGL__Modern_glSecondaryColor3bv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3bvEXT_p", XS_OpenGL__Modern_glSecondaryColor3bv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3bv_p", XS_OpenGL__Modern_glSecondaryColor3bv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3d", XS_OpenGL__Modern_glSecondaryColor3d);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3dEXT", XS_OpenGL__Modern_glSecondaryColor3d);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3dvEXT_c", XS_OpenGL__Modern_glSecondaryColor3dv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3dv_c", XS_OpenGL__Modern_glSecondaryColor3dv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3dvEXT_p", XS_OpenGL__Modern_glSecondaryColor3dv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3dv_p", XS_OpenGL__Modern_glSecondaryColor3dv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3f", XS_OpenGL__Modern_glSecondaryColor3f);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3fEXT", XS_OpenGL__Modern_glSecondaryColor3f);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3fvEXT_c", XS_OpenGL__Modern_glSecondaryColor3fv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3fv_c", XS_OpenGL__Modern_glSecondaryColor3fv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3fvEXT_p", XS_OpenGL__Modern_glSecondaryColor3fv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3fv_p", XS_OpenGL__Modern_glSecondaryColor3fv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glSecondaryColor3hNV", XS_OpenGL__Modern_glSecondaryColor3hNV);
        newXS_deffile("OpenGL::Modern::glSecondaryColor3hvNV_c", XS_OpenGL__Modern_glSecondaryColor3hvNV_c);
        newXS_deffile("OpenGL::Modern::glSecondaryColor3hvNV_p", XS_OpenGL__Modern_glSecondaryColor3hvNV_p);
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3i", XS_OpenGL__Modern_glSecondaryColor3i);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3iEXT", XS_OpenGL__Modern_glSecondaryColor3i);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3ivEXT_c", XS_OpenGL__Modern_glSecondaryColor3iv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3iv_c", XS_OpenGL__Modern_glSecondaryColor3iv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3ivEXT_p", XS_OpenGL__Modern_glSecondaryColor3iv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3iv_p", XS_OpenGL__Modern_glSecondaryColor3iv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3s", XS_OpenGL__Modern_glSecondaryColor3s);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3sEXT", XS_OpenGL__Modern_glSecondaryColor3s);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3svEXT_c", XS_OpenGL__Modern_glSecondaryColor3sv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3sv_c", XS_OpenGL__Modern_glSecondaryColor3sv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3svEXT_p", XS_OpenGL__Modern_glSecondaryColor3sv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3sv_p", XS_OpenGL__Modern_glSecondaryColor3sv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3ub", XS_OpenGL__Modern_glSecondaryColor3ub);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3ubEXT", XS_OpenGL__Modern_glSecondaryColor3ub);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3ubvEXT_c", XS_OpenGL__Modern_glSecondaryColor3ubv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3ubv_c", XS_OpenGL__Modern_glSecondaryColor3ubv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3ubvEXT_p", XS_OpenGL__Modern_glSecondaryColor3ubv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3ubv_p", XS_OpenGL__Modern_glSecondaryColor3ubv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3ui", XS_OpenGL__Modern_glSecondaryColor3ui);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3uiEXT", XS_OpenGL__Modern_glSecondaryColor3ui);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3uivEXT_c", XS_OpenGL__Modern_glSecondaryColor3uiv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3uiv_c", XS_OpenGL__Modern_glSecondaryColor3uiv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3uivEXT_p", XS_OpenGL__Modern_glSecondaryColor3uiv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3uiv_p", XS_OpenGL__Modern_glSecondaryColor3uiv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3us", XS_OpenGL__Modern_glSecondaryColor3us);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3usEXT", XS_OpenGL__Modern_glSecondaryColor3us);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3usvEXT_c", XS_OpenGL__Modern_glSecondaryColor3usv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3usv_c", XS_OpenGL__Modern_glSecondaryColor3usv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3usvEXT_p", XS_OpenGL__Modern_glSecondaryColor3usv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColor3usv_p", XS_OpenGL__Modern_glSecondaryColor3usv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glSecondaryColorFormatNV", XS_OpenGL__Modern_glSecondaryColorFormatNV);
        newXS_deffile("OpenGL::Modern::glSecondaryColorP3ui", XS_OpenGL__Modern_glSecondaryColorP3ui);
        newXS_deffile("OpenGL::Modern::glSecondaryColorP3uiv_c", XS_OpenGL__Modern_glSecondaryColorP3uiv_c);
        newXS_deffile("OpenGL::Modern::glSecondaryColorP3uiv_p", XS_OpenGL__Modern_glSecondaryColorP3uiv_p);
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColorPointerEXT_c", XS_OpenGL__Modern_glSecondaryColorPointer_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glSecondaryColorPointer_c", XS_OpenGL__Modern_glSecondaryColorPointer_c);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glSecondaryColorPointerListIBM_c", XS_OpenGL__Modern_glSecondaryColorPointerListIBM_c);
        newXS_deffile("OpenGL::Modern::glSelectBuffer_c", XS_OpenGL__Modern_glSelectBuffer_c);
        newXS_deffile("OpenGL::Modern::glSelectBuffer_p", XS_OpenGL__Modern_glSelectBuffer_p);
        newXS_deffile("OpenGL::Modern::glSelectPerfMonitorCountersAMD_c", XS_OpenGL__Modern_glSelectPerfMonitorCountersAMD_c);
        newXS_deffile("OpenGL::Modern::glSelectPerfMonitorCountersAMD_p", XS_OpenGL__Modern_glSelectPerfMonitorCountersAMD_p);
        newXS_deffile("OpenGL::Modern::glSelectTextureCoordSetSGIS", XS_OpenGL__Modern_glSelectTextureCoordSetSGIS);
        newXS_deffile("OpenGL::Modern::glSelectTextureSGIS", XS_OpenGL__Modern_glSelectTextureSGIS);
        newXS_deffile("OpenGL::Modern::glSelectTextureTransformSGIS", XS_OpenGL__Modern_glSelectTextureTransformSGIS);
        newXS_deffile("OpenGL::Modern::glSemaphoreParameterivNV_c", XS_OpenGL__Modern_glSemaphoreParameterivNV_c);
        newXS_deffile("OpenGL::Modern::glSemaphoreParameterui64vEXT_c", XS_OpenGL__Modern_glSemaphoreParameterui64vEXT_c);
        cv = newXS_deffile("OpenGL::Modern::glSeparableFilter2DEXT_c", XS_OpenGL__Modern_glSeparableFilter2D_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glSeparableFilter2D_c", XS_OpenGL__Modern_glSeparableFilter2D_c);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glSetFenceAPPLE", XS_OpenGL__Modern_glSetFenceAPPLE);
        newXS_deffile("OpenGL::Modern::glSetFenceNV", XS_OpenGL__Modern_glSetFenceNV);
        newXS_deffile("OpenGL::Modern::glSetFragmentShaderConstantATI_c", XS_OpenGL__Modern_glSetFragmentShaderConstantATI_c);
        newXS_deffile("OpenGL::Modern::glSetFragmentShaderConstantATI_p", XS_OpenGL__Modern_glSetFragmentShaderConstantATI_p);
        newXS_deffile("OpenGL::Modern::glSetInvariantEXT_c", XS_OpenGL__Modern_glSetInvariantEXT_c);
        newXS_deffile("OpenGL::Modern::glSetLocalConstantEXT_c", XS_OpenGL__Modern_glSetLocalConstantEXT_c);
        newXS_deffile("OpenGL::Modern::glSetMultisamplefvAMD_c", XS_OpenGL__Modern_glSetMultisamplefvAMD_c);
        newXS_deffile("OpenGL::Modern::glSetMultisamplefvAMD_p", XS_OpenGL__Modern_glSetMultisamplefvAMD_p);
        newXS_deffile("OpenGL::Modern::glShadeModel", XS_OpenGL__Modern_glShadeModel);
        newXS_deffile("OpenGL::Modern::glShaderBinary_c", XS_OpenGL__Modern_glShaderBinary_c);
        newXS_deffile("OpenGL::Modern::glShaderOp1EXT", XS_OpenGL__Modern_glShaderOp1EXT);
        newXS_deffile("OpenGL::Modern::glShaderOp2EXT", XS_OpenGL__Modern_glShaderOp2EXT);
        newXS_deffile("OpenGL::Modern::glShaderOp3EXT", XS_OpenGL__Modern_glShaderOp3EXT);
        newXS_deffile("OpenGL::Modern::glShaderSource_c", XS_OpenGL__Modern_glShaderSource_c);
        newXS_deffile("OpenGL::Modern::glShaderSource_p", XS_OpenGL__Modern_glShaderSource_p);
        newXS_deffile("OpenGL::Modern::glShaderSourceARB_c", XS_OpenGL__Modern_glShaderSourceARB_c);
        newXS_deffile("OpenGL::Modern::glShaderSourceARB_p", XS_OpenGL__Modern_glShaderSourceARB_p);
        newXS_deffile("OpenGL::Modern::glShaderStorageBlockBinding", XS_OpenGL__Modern_glShaderStorageBlockBinding);
        newXS_deffile("OpenGL::Modern::glShadingRateCombinerOpsEXT", XS_OpenGL__Modern_glShadingRateCombinerOpsEXT);
        newXS_deffile("OpenGL::Modern::glShadingRateEXT", XS_OpenGL__Modern_glShadingRateEXT);
        newXS_deffile("OpenGL::Modern::glShadingRateImageBarrierNV", XS_OpenGL__Modern_glShadingRateImageBarrierNV);
        newXS_deffile("OpenGL::Modern::glShadingRateImagePaletteNV_c", XS_OpenGL__Modern_glShadingRateImagePaletteNV_c);
        newXS_deffile("OpenGL::Modern::glShadingRateImagePaletteNV_p", XS_OpenGL__Modern_glShadingRateImagePaletteNV_p);
        newXS_deffile("OpenGL::Modern::glShadingRateQCOM", XS_OpenGL__Modern_glShadingRateQCOM);
        newXS_deffile("OpenGL::Modern::glShadingRateSampleOrderCustomNV_c", XS_OpenGL__Modern_glShadingRateSampleOrderCustomNV_c);
        newXS_deffile("OpenGL::Modern::glShadingRateSampleOrderNV", XS_OpenGL__Modern_glShadingRateSampleOrderNV);
        newXS_deffile("OpenGL::Modern::glSharpenTexFuncSGIS_c", XS_OpenGL__Modern_glSharpenTexFuncSGIS_c);
        newXS_deffile("OpenGL::Modern::glSharpenTexFuncSGIS_p", XS_OpenGL__Modern_glSharpenTexFuncSGIS_p);
        newXS_deffile("OpenGL::Modern::glSignalSemaphoreEXT_c", XS_OpenGL__Modern_glSignalSemaphoreEXT_c);
        newXS_deffile("OpenGL::Modern::glSignalSemaphoreui64NVX_c", XS_OpenGL__Modern_glSignalSemaphoreui64NVX_c);
        newXS_deffile("OpenGL::Modern::glSignalSemaphoreui64NVX_p", XS_OpenGL__Modern_glSignalSemaphoreui64NVX_p);
        newXS_deffile("OpenGL::Modern::glSignalVkFenceNV", XS_OpenGL__Modern_glSignalVkFenceNV);
        newXS_deffile("OpenGL::Modern::glSignalVkSemaphoreNV", XS_OpenGL__Modern_glSignalVkSemaphoreNV);
        cv = newXS_deffile("OpenGL::Modern::glSpecializeShaderARB_c", XS_OpenGL__Modern_glSpecializeShader_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glSpecializeShader_c", XS_OpenGL__Modern_glSpecializeShader_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glSpecializeShaderARB_p", XS_OpenGL__Modern_glSpecializeShader_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glSpecializeShader_p", XS_OpenGL__Modern_glSpecializeShader_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glSpriteParameterfSGIX", XS_OpenGL__Modern_glSpriteParameterfSGIX);
        newXS_deffile("OpenGL::Modern::glSpriteParameterfvSGIX_c", XS_OpenGL__Modern_glSpriteParameterfvSGIX_c);
        newXS_deffile("OpenGL::Modern::glSpriteParameteriSGIX", XS_OpenGL__Modern_glSpriteParameteriSGIX);
        newXS_deffile("OpenGL::Modern::glSpriteParameterivSGIX_c", XS_OpenGL__Modern_glSpriteParameterivSGIX_c);
        newXS_deffile("OpenGL::Modern::glStartTilingQCOM", XS_OpenGL__Modern_glStartTilingQCOM);
        newXS_deffile("OpenGL::Modern::glStateCaptureNV", XS_OpenGL__Modern_glStateCaptureNV);
        newXS_deffile("OpenGL::Modern::glStencilFillPathInstancedNV_c", XS_OpenGL__Modern_glStencilFillPathInstancedNV_c);
        newXS_deffile("OpenGL::Modern::glStencilFillPathNV", XS_OpenGL__Modern_glStencilFillPathNV);
        newXS_deffile("OpenGL::Modern::glStencilFunc", XS_OpenGL__Modern_glStencilFunc);
        newXS_deffile("OpenGL::Modern::glStencilFuncSeparate", XS_OpenGL__Modern_glStencilFuncSeparate);
        newXS_deffile("OpenGL::Modern::glStencilFuncSeparateATI", XS_OpenGL__Modern_glStencilFuncSeparateATI);
        newXS_deffile("OpenGL::Modern::glStencilMask", XS_OpenGL__Modern_glStencilMask);
        newXS_deffile("OpenGL::Modern::glStencilMaskSeparate", XS_OpenGL__Modern_glStencilMaskSeparate);
        newXS_deffile("OpenGL::Modern::glStencilOp", XS_OpenGL__Modern_glStencilOp);
        cv = newXS_deffile("OpenGL::Modern::glStencilOpSeparate", XS_OpenGL__Modern_glStencilOpSeparate);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glStencilOpSeparateATI", XS_OpenGL__Modern_glStencilOpSeparate);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glStencilOpValueAMD", XS_OpenGL__Modern_glStencilOpValueAMD);
        newXS_deffile("OpenGL::Modern::glStencilStrokePathInstancedNV_c", XS_OpenGL__Modern_glStencilStrokePathInstancedNV_c);
        newXS_deffile("OpenGL::Modern::glStencilStrokePathNV", XS_OpenGL__Modern_glStencilStrokePathNV);
        newXS_deffile("OpenGL::Modern::glStencilThenCoverFillPathInstancedNV_c", XS_OpenGL__Modern_glStencilThenCoverFillPathInstancedNV_c);
        newXS_deffile("OpenGL::Modern::glStencilThenCoverFillPathNV", XS_OpenGL__Modern_glStencilThenCoverFillPathNV);
        newXS_deffile("OpenGL::Modern::glStencilThenCoverStrokePathInstancedNV_c", XS_OpenGL__Modern_glStencilThenCoverStrokePathInstancedNV_c);
        newXS_deffile("OpenGL::Modern::glStencilThenCoverStrokePathNV", XS_OpenGL__Modern_glStencilThenCoverStrokePathNV);
        newXS_deffile("OpenGL::Modern::glStereoParameterfNV", XS_OpenGL__Modern_glStereoParameterfNV);
        newXS_deffile("OpenGL::Modern::glStereoParameteriNV", XS_OpenGL__Modern_glStereoParameteriNV);
        newXS_deffile("OpenGL::Modern::glStringMarkerGREMEDY_c", XS_OpenGL__Modern_glStringMarkerGREMEDY_c);
        newXS_deffile("OpenGL::Modern::glSubpixelPrecisionBiasNV", XS_OpenGL__Modern_glSubpixelPrecisionBiasNV);
        newXS_deffile("OpenGL::Modern::glSwapMPEGPredictorsSGIX", XS_OpenGL__Modern_glSwapMPEGPredictorsSGIX);
        newXS_deffile("OpenGL::Modern::glSwizzleEXT", XS_OpenGL__Modern_glSwizzleEXT);
        newXS_deffile("OpenGL::Modern::glSyncTextureINTEL", XS_OpenGL__Modern_glSyncTextureINTEL);
        newXS_deffile("OpenGL::Modern::glTagSampleBufferSGIX", XS_OpenGL__Modern_glTagSampleBufferSGIX);
        newXS_deffile("OpenGL::Modern::glTangentPointerEXT_c", XS_OpenGL__Modern_glTangentPointerEXT_c);
        newXS_deffile("OpenGL::Modern::glTbufferMask3DFX", XS_OpenGL__Modern_glTbufferMask3DFX);
        newXS_deffile("OpenGL::Modern::glTessellationFactorAMD", XS_OpenGL__Modern_glTessellationFactorAMD);
        newXS_deffile("OpenGL::Modern::glTessellationModeAMD", XS_OpenGL__Modern_glTessellationModeAMD);
        newXS_deffile("OpenGL::Modern::glTestFenceAPPLE", XS_OpenGL__Modern_glTestFenceAPPLE);
        newXS_deffile("OpenGL::Modern::glTestFenceNV", XS_OpenGL__Modern_glTestFenceNV);
        newXS_deffile("OpenGL::Modern::glTestObjectAPPLE", XS_OpenGL__Modern_glTestObjectAPPLE);
        newXS_deffile("OpenGL::Modern::glTexAttachMemoryNV", XS_OpenGL__Modern_glTexAttachMemoryNV);
        cv = newXS_deffile("OpenGL::Modern::glTexBuffer", XS_OpenGL__Modern_glTexBuffer);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glTexBufferARB", XS_OpenGL__Modern_glTexBuffer);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glTexBufferEXT", XS_OpenGL__Modern_glTexBuffer);
        XSANY.any_i32 = 2;
        newXS_deffile("OpenGL::Modern::glTexBufferOES", XS_OpenGL__Modern_glTexBufferOES);
        cv = newXS_deffile("OpenGL::Modern::glTexBufferRange", XS_OpenGL__Modern_glTexBufferRange);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glTexBufferRangeEXT", XS_OpenGL__Modern_glTexBufferRange);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glTexBufferRangeOES", XS_OpenGL__Modern_glTexBufferRangeOES);
        newXS_deffile("OpenGL::Modern::glTexBumpParameterfvATI_c", XS_OpenGL__Modern_glTexBumpParameterfvATI_c);
        newXS_deffile("OpenGL::Modern::glTexBumpParameterivATI_c", XS_OpenGL__Modern_glTexBumpParameterivATI_c);
        newXS_deffile("OpenGL::Modern::glTexCoord1d", XS_OpenGL__Modern_glTexCoord1d);
        newXS_deffile("OpenGL::Modern::glTexCoord1dv_c", XS_OpenGL__Modern_glTexCoord1dv_c);
        newXS_deffile("OpenGL::Modern::glTexCoord1dv_p", XS_OpenGL__Modern_glTexCoord1dv_p);
        newXS_deffile("OpenGL::Modern::glTexCoord1f", XS_OpenGL__Modern_glTexCoord1f);
        newXS_deffile("OpenGL::Modern::glTexCoord1fv_c", XS_OpenGL__Modern_glTexCoord1fv_c);
        newXS_deffile("OpenGL::Modern::glTexCoord1fv_p", XS_OpenGL__Modern_glTexCoord1fv_p);
        newXS_deffile("OpenGL::Modern::glTexCoord1hNV", XS_OpenGL__Modern_glTexCoord1hNV);
        newXS_deffile("OpenGL::Modern::glTexCoord1hvNV_c", XS_OpenGL__Modern_glTexCoord1hvNV_c);
        newXS_deffile("OpenGL::Modern::glTexCoord1hvNV_p", XS_OpenGL__Modern_glTexCoord1hvNV_p);
        newXS_deffile("OpenGL::Modern::glTexCoord1i", XS_OpenGL__Modern_glTexCoord1i);
        newXS_deffile("OpenGL::Modern::glTexCoord1iv_c", XS_OpenGL__Modern_glTexCoord1iv_c);
        newXS_deffile("OpenGL::Modern::glTexCoord1iv_p", XS_OpenGL__Modern_glTexCoord1iv_p);
        newXS_deffile("OpenGL::Modern::glTexCoord1s", XS_OpenGL__Modern_glTexCoord1s);
        newXS_deffile("OpenGL::Modern::glTexCoord1sv_c", XS_OpenGL__Modern_glTexCoord1sv_c);
        newXS_deffile("OpenGL::Modern::glTexCoord1sv_p", XS_OpenGL__Modern_glTexCoord1sv_p);
        newXS_deffile("OpenGL::Modern::glTexCoord2d", XS_OpenGL__Modern_glTexCoord2d);
        newXS_deffile("OpenGL::Modern::glTexCoord2dv_c", XS_OpenGL__Modern_glTexCoord2dv_c);
        newXS_deffile("OpenGL::Modern::glTexCoord2dv_p", XS_OpenGL__Modern_glTexCoord2dv_p);
        newXS_deffile("OpenGL::Modern::glTexCoord2f", XS_OpenGL__Modern_glTexCoord2f);
        newXS_deffile("OpenGL::Modern::glTexCoord2fColor3fVertex3fSUN", XS_OpenGL__Modern_glTexCoord2fColor3fVertex3fSUN);
        newXS_deffile("OpenGL::Modern::glTexCoord2fColor3fVertex3fvSUN_c", XS_OpenGL__Modern_glTexCoord2fColor3fVertex3fvSUN_c);
        newXS_deffile("OpenGL::Modern::glTexCoord2fColor3fVertex3fvSUN_p", XS_OpenGL__Modern_glTexCoord2fColor3fVertex3fvSUN_p);
        newXS_deffile("OpenGL::Modern::glTexCoord2fColor4fNormal3fVertex3fSUN", XS_OpenGL__Modern_glTexCoord2fColor4fNormal3fVertex3fSUN);
        newXS_deffile("OpenGL::Modern::glTexCoord2fColor4fNormal3fVertex3fvSUN_c", XS_OpenGL__Modern_glTexCoord2fColor4fNormal3fVertex3fvSUN_c);
        newXS_deffile("OpenGL::Modern::glTexCoord2fColor4fNormal3fVertex3fvSUN_p", XS_OpenGL__Modern_glTexCoord2fColor4fNormal3fVertex3fvSUN_p);
        newXS_deffile("OpenGL::Modern::glTexCoord2fColor4ubVertex3fSUN", XS_OpenGL__Modern_glTexCoord2fColor4ubVertex3fSUN);
        newXS_deffile("OpenGL::Modern::glTexCoord2fColor4ubVertex3fvSUN_c", XS_OpenGL__Modern_glTexCoord2fColor4ubVertex3fvSUN_c);
        newXS_deffile("OpenGL::Modern::glTexCoord2fColor4ubVertex3fvSUN_p", XS_OpenGL__Modern_glTexCoord2fColor4ubVertex3fvSUN_p);
        newXS_deffile("OpenGL::Modern::glTexCoord2fNormal3fVertex3fSUN", XS_OpenGL__Modern_glTexCoord2fNormal3fVertex3fSUN);
        newXS_deffile("OpenGL::Modern::glTexCoord2fNormal3fVertex3fvSUN_c", XS_OpenGL__Modern_glTexCoord2fNormal3fVertex3fvSUN_c);
        newXS_deffile("OpenGL::Modern::glTexCoord2fNormal3fVertex3fvSUN_p", XS_OpenGL__Modern_glTexCoord2fNormal3fVertex3fvSUN_p);
        newXS_deffile("OpenGL::Modern::glTexCoord2fVertex3fSUN", XS_OpenGL__Modern_glTexCoord2fVertex3fSUN);
        newXS_deffile("OpenGL::Modern::glTexCoord2fVertex3fvSUN_c", XS_OpenGL__Modern_glTexCoord2fVertex3fvSUN_c);
        newXS_deffile("OpenGL::Modern::glTexCoord2fVertex3fvSUN_p", XS_OpenGL__Modern_glTexCoord2fVertex3fvSUN_p);
        newXS_deffile("OpenGL::Modern::glTexCoord2fv_c", XS_OpenGL__Modern_glTexCoord2fv_c);
        newXS_deffile("OpenGL::Modern::glTexCoord2fv_p", XS_OpenGL__Modern_glTexCoord2fv_p);
        newXS_deffile("OpenGL::Modern::glTexCoord2hNV", XS_OpenGL__Modern_glTexCoord2hNV);
        newXS_deffile("OpenGL::Modern::glTexCoord2hvNV_c", XS_OpenGL__Modern_glTexCoord2hvNV_c);
        newXS_deffile("OpenGL::Modern::glTexCoord2hvNV_p", XS_OpenGL__Modern_glTexCoord2hvNV_p);
        newXS_deffile("OpenGL::Modern::glTexCoord2i", XS_OpenGL__Modern_glTexCoord2i);
        newXS_deffile("OpenGL::Modern::glTexCoord2iv_c", XS_OpenGL__Modern_glTexCoord2iv_c);
        newXS_deffile("OpenGL::Modern::glTexCoord2iv_p", XS_OpenGL__Modern_glTexCoord2iv_p);
        newXS_deffile("OpenGL::Modern::glTexCoord2s", XS_OpenGL__Modern_glTexCoord2s);
        newXS_deffile("OpenGL::Modern::glTexCoord2sv_c", XS_OpenGL__Modern_glTexCoord2sv_c);
        newXS_deffile("OpenGL::Modern::glTexCoord2sv_p", XS_OpenGL__Modern_glTexCoord2sv_p);
        newXS_deffile("OpenGL::Modern::glTexCoord3d", XS_OpenGL__Modern_glTexCoord3d);
        newXS_deffile("OpenGL::Modern::glTexCoord3dv_c", XS_OpenGL__Modern_glTexCoord3dv_c);
        newXS_deffile("OpenGL::Modern::glTexCoord3dv_p", XS_OpenGL__Modern_glTexCoord3dv_p);
        newXS_deffile("OpenGL::Modern::glTexCoord3f", XS_OpenGL__Modern_glTexCoord3f);
        newXS_deffile("OpenGL::Modern::glTexCoord3fv_c", XS_OpenGL__Modern_glTexCoord3fv_c);
        newXS_deffile("OpenGL::Modern::glTexCoord3fv_p", XS_OpenGL__Modern_glTexCoord3fv_p);
        newXS_deffile("OpenGL::Modern::glTexCoord3hNV", XS_OpenGL__Modern_glTexCoord3hNV);
        newXS_deffile("OpenGL::Modern::glTexCoord3hvNV_c", XS_OpenGL__Modern_glTexCoord3hvNV_c);
        newXS_deffile("OpenGL::Modern::glTexCoord3hvNV_p", XS_OpenGL__Modern_glTexCoord3hvNV_p);
        newXS_deffile("OpenGL::Modern::glTexCoord3i", XS_OpenGL__Modern_glTexCoord3i);
        newXS_deffile("OpenGL::Modern::glTexCoord3iv_c", XS_OpenGL__Modern_glTexCoord3iv_c);
        newXS_deffile("OpenGL::Modern::glTexCoord3iv_p", XS_OpenGL__Modern_glTexCoord3iv_p);
        newXS_deffile("OpenGL::Modern::glTexCoord3s", XS_OpenGL__Modern_glTexCoord3s);
        newXS_deffile("OpenGL::Modern::glTexCoord3sv_c", XS_OpenGL__Modern_glTexCoord3sv_c);
        newXS_deffile("OpenGL::Modern::glTexCoord3sv_p", XS_OpenGL__Modern_glTexCoord3sv_p);
        newXS_deffile("OpenGL::Modern::glTexCoord4d", XS_OpenGL__Modern_glTexCoord4d);
        newXS_deffile("OpenGL::Modern::glTexCoord4dv_c", XS_OpenGL__Modern_glTexCoord4dv_c);
        newXS_deffile("OpenGL::Modern::glTexCoord4dv_p", XS_OpenGL__Modern_glTexCoord4dv_p);
        newXS_deffile("OpenGL::Modern::glTexCoord4f", XS_OpenGL__Modern_glTexCoord4f);
        newXS_deffile("OpenGL::Modern::glTexCoord4fColor4fNormal3fVertex4fSUN", XS_OpenGL__Modern_glTexCoord4fColor4fNormal3fVertex4fSUN);
        newXS_deffile("OpenGL::Modern::glTexCoord4fColor4fNormal3fVertex4fvSUN_c", XS_OpenGL__Modern_glTexCoord4fColor4fNormal3fVertex4fvSUN_c);
        newXS_deffile("OpenGL::Modern::glTexCoord4fColor4fNormal3fVertex4fvSUN_p", XS_OpenGL__Modern_glTexCoord4fColor4fNormal3fVertex4fvSUN_p);
        newXS_deffile("OpenGL::Modern::glTexCoord4fVertex4fSUN", XS_OpenGL__Modern_glTexCoord4fVertex4fSUN);
        newXS_deffile("OpenGL::Modern::glTexCoord4fVertex4fvSUN_c", XS_OpenGL__Modern_glTexCoord4fVertex4fvSUN_c);
        newXS_deffile("OpenGL::Modern::glTexCoord4fVertex4fvSUN_p", XS_OpenGL__Modern_glTexCoord4fVertex4fvSUN_p);
        newXS_deffile("OpenGL::Modern::glTexCoord4fv_c", XS_OpenGL__Modern_glTexCoord4fv_c);
        newXS_deffile("OpenGL::Modern::glTexCoord4fv_p", XS_OpenGL__Modern_glTexCoord4fv_p);
        newXS_deffile("OpenGL::Modern::glTexCoord4hNV", XS_OpenGL__Modern_glTexCoord4hNV);
        newXS_deffile("OpenGL::Modern::glTexCoord4hvNV_c", XS_OpenGL__Modern_glTexCoord4hvNV_c);
        newXS_deffile("OpenGL::Modern::glTexCoord4hvNV_p", XS_OpenGL__Modern_glTexCoord4hvNV_p);
        newXS_deffile("OpenGL::Modern::glTexCoord4i", XS_OpenGL__Modern_glTexCoord4i);
        newXS_deffile("OpenGL::Modern::glTexCoord4iv_c", XS_OpenGL__Modern_glTexCoord4iv_c);
        newXS_deffile("OpenGL::Modern::glTexCoord4iv_p", XS_OpenGL__Modern_glTexCoord4iv_p);
        newXS_deffile("OpenGL::Modern::glTexCoord4s", XS_OpenGL__Modern_glTexCoord4s);
        newXS_deffile("OpenGL::Modern::glTexCoord4sv_c", XS_OpenGL__Modern_glTexCoord4sv_c);
        newXS_deffile("OpenGL::Modern::glTexCoord4sv_p", XS_OpenGL__Modern_glTexCoord4sv_p);
        newXS_deffile("OpenGL::Modern::glTexCoordFormatNV", XS_OpenGL__Modern_glTexCoordFormatNV);
        newXS_deffile("OpenGL::Modern::glTexCoordP1ui", XS_OpenGL__Modern_glTexCoordP1ui);
        newXS_deffile("OpenGL::Modern::glTexCoordP1uiv_c", XS_OpenGL__Modern_glTexCoordP1uiv_c);
        newXS_deffile("OpenGL::Modern::glTexCoordP1uiv_p", XS_OpenGL__Modern_glTexCoordP1uiv_p);
        newXS_deffile("OpenGL::Modern::glTexCoordP2ui", XS_OpenGL__Modern_glTexCoordP2ui);
        newXS_deffile("OpenGL::Modern::glTexCoordP2uiv_c", XS_OpenGL__Modern_glTexCoordP2uiv_c);
        newXS_deffile("OpenGL::Modern::glTexCoordP2uiv_p", XS_OpenGL__Modern_glTexCoordP2uiv_p);
        newXS_deffile("OpenGL::Modern::glTexCoordP3ui", XS_OpenGL__Modern_glTexCoordP3ui);
        newXS_deffile("OpenGL::Modern::glTexCoordP3uiv_c", XS_OpenGL__Modern_glTexCoordP3uiv_c);
        newXS_deffile("OpenGL::Modern::glTexCoordP3uiv_p", XS_OpenGL__Modern_glTexCoordP3uiv_p);
        newXS_deffile("OpenGL::Modern::glTexCoordP4ui", XS_OpenGL__Modern_glTexCoordP4ui);
        newXS_deffile("OpenGL::Modern::glTexCoordP4uiv_c", XS_OpenGL__Modern_glTexCoordP4uiv_c);
        newXS_deffile("OpenGL::Modern::glTexCoordP4uiv_p", XS_OpenGL__Modern_glTexCoordP4uiv_p);
        newXS_deffile("OpenGL::Modern::glTexCoordPointer_c", XS_OpenGL__Modern_glTexCoordPointer_c);
        newXS_deffile("OpenGL::Modern::glTexCoordPointerEXT_c", XS_OpenGL__Modern_glTexCoordPointerEXT_c);
        newXS_deffile("OpenGL::Modern::glTexCoordPointerListIBM_c", XS_OpenGL__Modern_glTexCoordPointerListIBM_c);
        newXS_deffile("OpenGL::Modern::glTexCoordPointervINTEL_c", XS_OpenGL__Modern_glTexCoordPointervINTEL_c);
        newXS_deffile("OpenGL::Modern::glTexEnvf", XS_OpenGL__Modern_glTexEnvf);
        newXS_deffile("OpenGL::Modern::glTexEnvfv_c", XS_OpenGL__Modern_glTexEnvfv_c);
        newXS_deffile("OpenGL::Modern::glTexEnvfv_p", XS_OpenGL__Modern_glTexEnvfv_p);
        newXS_deffile("OpenGL::Modern::glTexEnvi", XS_OpenGL__Modern_glTexEnvi);
        newXS_deffile("OpenGL::Modern::glTexEnviv_c", XS_OpenGL__Modern_glTexEnviv_c);
        newXS_deffile("OpenGL::Modern::glTexEnviv_p", XS_OpenGL__Modern_glTexEnviv_p);
        newXS_deffile("OpenGL::Modern::glTexEnvx", XS_OpenGL__Modern_glTexEnvx);
        newXS_deffile("OpenGL::Modern::glTexEnvxv_c", XS_OpenGL__Modern_glTexEnvxv_c);
        newXS_deffile("OpenGL::Modern::glTexEnvxv_p", XS_OpenGL__Modern_glTexEnvxv_p);
        newXS_deffile("OpenGL::Modern::glTexEstimateMotionQCOM", XS_OpenGL__Modern_glTexEstimateMotionQCOM);
        newXS_deffile("OpenGL::Modern::glTexEstimateMotionRegionsQCOM", XS_OpenGL__Modern_glTexEstimateMotionRegionsQCOM);
        newXS_deffile("OpenGL::Modern::glTexFilterFuncSGIS_c", XS_OpenGL__Modern_glTexFilterFuncSGIS_c);
        newXS_deffile("OpenGL::Modern::glTexFilterFuncSGIS_p", XS_OpenGL__Modern_glTexFilterFuncSGIS_p);
        newXS_deffile("OpenGL::Modern::glTexGend", XS_OpenGL__Modern_glTexGend);
        newXS_deffile("OpenGL::Modern::glTexGendv_c", XS_OpenGL__Modern_glTexGendv_c);
        newXS_deffile("OpenGL::Modern::glTexGendv_p", XS_OpenGL__Modern_glTexGendv_p);
        newXS_deffile("OpenGL::Modern::glTexGenf", XS_OpenGL__Modern_glTexGenf);
        newXS_deffile("OpenGL::Modern::glTexGenfOES", XS_OpenGL__Modern_glTexGenfOES);
        newXS_deffile("OpenGL::Modern::glTexGenfv_c", XS_OpenGL__Modern_glTexGenfv_c);
        newXS_deffile("OpenGL::Modern::glTexGenfv_p", XS_OpenGL__Modern_glTexGenfv_p);
        newXS_deffile("OpenGL::Modern::glTexGenfvOES_c", XS_OpenGL__Modern_glTexGenfvOES_c);
        newXS_deffile("OpenGL::Modern::glTexGeni", XS_OpenGL__Modern_glTexGeni);
        newXS_deffile("OpenGL::Modern::glTexGeniOES", XS_OpenGL__Modern_glTexGeniOES);
        newXS_deffile("OpenGL::Modern::glTexGeniv_c", XS_OpenGL__Modern_glTexGeniv_c);
        newXS_deffile("OpenGL::Modern::glTexGeniv_p", XS_OpenGL__Modern_glTexGeniv_p);
        newXS_deffile("OpenGL::Modern::glTexGenivOES_c", XS_OpenGL__Modern_glTexGenivOES_c);
        newXS_deffile("OpenGL::Modern::glTexGenxOES", XS_OpenGL__Modern_glTexGenxOES);
        newXS_deffile("OpenGL::Modern::glTexGenxvOES_c", XS_OpenGL__Modern_glTexGenxvOES_c);
        newXS_deffile("OpenGL::Modern::glTexImage1D_c", XS_OpenGL__Modern_glTexImage1D_c);
        newXS_deffile("OpenGL::Modern::glTexImage2D_c", XS_OpenGL__Modern_glTexImage2D_c);
        newXS_deffile("OpenGL::Modern::glTexImage2DMultisample", XS_OpenGL__Modern_glTexImage2DMultisample);
        newXS_deffile("OpenGL::Modern::glTexImage2DMultisampleCoverageNV", XS_OpenGL__Modern_glTexImage2DMultisampleCoverageNV);
        cv = newXS_deffile("OpenGL::Modern::glTexImage3DEXT_c", XS_OpenGL__Modern_glTexImage3D_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glTexImage3D_c", XS_OpenGL__Modern_glTexImage3D_c);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glTexImage3DMultisample", XS_OpenGL__Modern_glTexImage3DMultisample);
        newXS_deffile("OpenGL::Modern::glTexImage3DMultisampleCoverageNV", XS_OpenGL__Modern_glTexImage3DMultisampleCoverageNV);
        newXS_deffile("OpenGL::Modern::glTexImage3DNV_c", XS_OpenGL__Modern_glTexImage3DNV_c);
        newXS_deffile("OpenGL::Modern::glTexImage3DOES_c", XS_OpenGL__Modern_glTexImage3DOES_c);
        newXS_deffile("OpenGL::Modern::glTexImage4DSGIS_c", XS_OpenGL__Modern_glTexImage4DSGIS_c);
        cv = newXS_deffile("OpenGL::Modern::glTexPageCommitmentARB", XS_OpenGL__Modern_glTexPageCommitmentARB);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glTexPageCommitmentEXT", XS_OpenGL__Modern_glTexPageCommitmentARB);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glTexPageCommitmentMemNV", XS_OpenGL__Modern_glTexPageCommitmentMemNV);
        cv = newXS_deffile("OpenGL::Modern::glTexParameterIivEXT_c", XS_OpenGL__Modern_glTexParameterIiv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glTexParameterIiv_c", XS_OpenGL__Modern_glTexParameterIiv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glTexParameterIivEXT_p", XS_OpenGL__Modern_glTexParameterIiv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glTexParameterIiv_p", XS_OpenGL__Modern_glTexParameterIiv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glTexParameterIivOES_c", XS_OpenGL__Modern_glTexParameterIivOES_c);
        cv = newXS_deffile("OpenGL::Modern::glTexParameterIuivEXT_c", XS_OpenGL__Modern_glTexParameterIuiv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glTexParameterIuiv_c", XS_OpenGL__Modern_glTexParameterIuiv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glTexParameterIuivEXT_p", XS_OpenGL__Modern_glTexParameterIuiv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glTexParameterIuiv_p", XS_OpenGL__Modern_glTexParameterIuiv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glTexParameterIuivOES_c", XS_OpenGL__Modern_glTexParameterIuivOES_c);
        newXS_deffile("OpenGL::Modern::glTexParameterf", XS_OpenGL__Modern_glTexParameterf);
        newXS_deffile("OpenGL::Modern::glTexParameterfv_c", XS_OpenGL__Modern_glTexParameterfv_c);
        newXS_deffile("OpenGL::Modern::glTexParameterfv_p", XS_OpenGL__Modern_glTexParameterfv_p);
        newXS_deffile("OpenGL::Modern::glTexParameteri", XS_OpenGL__Modern_glTexParameteri);
        newXS_deffile("OpenGL::Modern::glTexParameteriv_c", XS_OpenGL__Modern_glTexParameteriv_c);
        newXS_deffile("OpenGL::Modern::glTexParameteriv_p", XS_OpenGL__Modern_glTexParameteriv_p);
        newXS_deffile("OpenGL::Modern::glTexParameterx", XS_OpenGL__Modern_glTexParameterx);
        newXS_deffile("OpenGL::Modern::glTexParameterxv_c", XS_OpenGL__Modern_glTexParameterxv_c);
        newXS_deffile("OpenGL::Modern::glTexParameterxv_p", XS_OpenGL__Modern_glTexParameterxv_p);
        newXS_deffile("OpenGL::Modern::glTexRenderbufferNV", XS_OpenGL__Modern_glTexRenderbufferNV);
        newXS_deffile("OpenGL::Modern::glTexScissorFuncINTEL", XS_OpenGL__Modern_glTexScissorFuncINTEL);
        newXS_deffile("OpenGL::Modern::glTexScissorINTEL", XS_OpenGL__Modern_glTexScissorINTEL);
        cv = newXS_deffile("OpenGL::Modern::glTexStorage1D", XS_OpenGL__Modern_glTexStorage1D);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glTexStorage1DEXT", XS_OpenGL__Modern_glTexStorage1D);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glTexStorage2D", XS_OpenGL__Modern_glTexStorage2D);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glTexStorage2DEXT", XS_OpenGL__Modern_glTexStorage2D);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glTexStorage2DMultisample", XS_OpenGL__Modern_glTexStorage2DMultisample);
        cv = newXS_deffile("OpenGL::Modern::glTexStorage3D", XS_OpenGL__Modern_glTexStorage3D);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glTexStorage3DEXT", XS_OpenGL__Modern_glTexStorage3D);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glTexStorage3DMultisample", XS_OpenGL__Modern_glTexStorage3DMultisample);
        newXS_deffile("OpenGL::Modern::glTexStorage3DMultisampleOES", XS_OpenGL__Modern_glTexStorage3DMultisampleOES);
        newXS_deffile("OpenGL::Modern::glTexStorageAttribs2DEXT_c", XS_OpenGL__Modern_glTexStorageAttribs2DEXT_c);
        newXS_deffile("OpenGL::Modern::glTexStorageAttribs3DEXT_c", XS_OpenGL__Modern_glTexStorageAttribs3DEXT_c);
        newXS_deffile("OpenGL::Modern::glTexStorageMem1DEXT", XS_OpenGL__Modern_glTexStorageMem1DEXT);
        newXS_deffile("OpenGL::Modern::glTexStorageMem2DEXT", XS_OpenGL__Modern_glTexStorageMem2DEXT);
        newXS_deffile("OpenGL::Modern::glTexStorageMem2DMultisampleEXT", XS_OpenGL__Modern_glTexStorageMem2DMultisampleEXT);
        newXS_deffile("OpenGL::Modern::glTexStorageMem3DEXT", XS_OpenGL__Modern_glTexStorageMem3DEXT);
        newXS_deffile("OpenGL::Modern::glTexStorageMem3DMultisampleEXT", XS_OpenGL__Modern_glTexStorageMem3DMultisampleEXT);
        newXS_deffile("OpenGL::Modern::glTexStorageSparseAMD", XS_OpenGL__Modern_glTexStorageSparseAMD);
        cv = newXS_deffile("OpenGL::Modern::glTexSubImage1DEXT_c", XS_OpenGL__Modern_glTexSubImage1D_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glTexSubImage1D_c", XS_OpenGL__Modern_glTexSubImage1D_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glTexSubImage2DEXT_c", XS_OpenGL__Modern_glTexSubImage2D_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glTexSubImage2D_c", XS_OpenGL__Modern_glTexSubImage2D_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glTexSubImage3DEXT_c", XS_OpenGL__Modern_glTexSubImage3D_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glTexSubImage3D_c", XS_OpenGL__Modern_glTexSubImage3D_c);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glTexSubImage3DNV_c", XS_OpenGL__Modern_glTexSubImage3DNV_c);
        newXS_deffile("OpenGL::Modern::glTexSubImage3DOES_c", XS_OpenGL__Modern_glTexSubImage3DOES_c);
        newXS_deffile("OpenGL::Modern::glTexSubImage4DSGIS_c", XS_OpenGL__Modern_glTexSubImage4DSGIS_c);
        newXS_deffile("OpenGL::Modern::glTextureAttachMemoryNV", XS_OpenGL__Modern_glTextureAttachMemoryNV);
        newXS_deffile("OpenGL::Modern::glTextureBarrier", XS_OpenGL__Modern_glTextureBarrier);
        newXS_deffile("OpenGL::Modern::glTextureBarrierNV", XS_OpenGL__Modern_glTextureBarrierNV);
        newXS_deffile("OpenGL::Modern::glTextureBuffer", XS_OpenGL__Modern_glTextureBuffer);
        newXS_deffile("OpenGL::Modern::glTextureBufferEXT", XS_OpenGL__Modern_glTextureBufferEXT);
        newXS_deffile("OpenGL::Modern::glTextureBufferRange", XS_OpenGL__Modern_glTextureBufferRange);
        newXS_deffile("OpenGL::Modern::glTextureBufferRangeEXT", XS_OpenGL__Modern_glTextureBufferRangeEXT);
        newXS_deffile("OpenGL::Modern::glTextureFogSGIX", XS_OpenGL__Modern_glTextureFogSGIX);
        newXS_deffile("OpenGL::Modern::glTextureFoveationParametersQCOM", XS_OpenGL__Modern_glTextureFoveationParametersQCOM);
        newXS_deffile("OpenGL::Modern::glTextureImage1DEXT_c", XS_OpenGL__Modern_glTextureImage1DEXT_c);
        newXS_deffile("OpenGL::Modern::glTextureImage2DEXT_c", XS_OpenGL__Modern_glTextureImage2DEXT_c);
        newXS_deffile("OpenGL::Modern::glTextureImage2DMultisampleCoverageNV", XS_OpenGL__Modern_glTextureImage2DMultisampleCoverageNV);
        newXS_deffile("OpenGL::Modern::glTextureImage2DMultisampleNV", XS_OpenGL__Modern_glTextureImage2DMultisampleNV);
        newXS_deffile("OpenGL::Modern::glTextureImage3DEXT_c", XS_OpenGL__Modern_glTextureImage3DEXT_c);
        newXS_deffile("OpenGL::Modern::glTextureImage3DMultisampleCoverageNV", XS_OpenGL__Modern_glTextureImage3DMultisampleCoverageNV);
        newXS_deffile("OpenGL::Modern::glTextureImage3DMultisampleNV", XS_OpenGL__Modern_glTextureImage3DMultisampleNV);
        newXS_deffile("OpenGL::Modern::glTextureLightEXT", XS_OpenGL__Modern_glTextureLightEXT);
        newXS_deffile("OpenGL::Modern::glTextureMaterialEXT", XS_OpenGL__Modern_glTextureMaterialEXT);
        newXS_deffile("OpenGL::Modern::glTextureNormalEXT", XS_OpenGL__Modern_glTextureNormalEXT);
        newXS_deffile("OpenGL::Modern::glTexturePageCommitmentEXT", XS_OpenGL__Modern_glTexturePageCommitmentEXT);
        newXS_deffile("OpenGL::Modern::glTexturePageCommitmentMemNV", XS_OpenGL__Modern_glTexturePageCommitmentMemNV);
        newXS_deffile("OpenGL::Modern::glTextureParameterIiv_c", XS_OpenGL__Modern_glTextureParameterIiv_c);
        newXS_deffile("OpenGL::Modern::glTextureParameterIiv_p", XS_OpenGL__Modern_glTextureParameterIiv_p);
        newXS_deffile("OpenGL::Modern::glTextureParameterIivEXT_c", XS_OpenGL__Modern_glTextureParameterIivEXT_c);
        newXS_deffile("OpenGL::Modern::glTextureParameterIivEXT_p", XS_OpenGL__Modern_glTextureParameterIivEXT_p);
        newXS_deffile("OpenGL::Modern::glTextureParameterIuiv_c", XS_OpenGL__Modern_glTextureParameterIuiv_c);
        newXS_deffile("OpenGL::Modern::glTextureParameterIuiv_p", XS_OpenGL__Modern_glTextureParameterIuiv_p);
        newXS_deffile("OpenGL::Modern::glTextureParameterIuivEXT_c", XS_OpenGL__Modern_glTextureParameterIuivEXT_c);
        newXS_deffile("OpenGL::Modern::glTextureParameterIuivEXT_p", XS_OpenGL__Modern_glTextureParameterIuivEXT_p);
        newXS_deffile("OpenGL::Modern::glTextureParameterf", XS_OpenGL__Modern_glTextureParameterf);
        newXS_deffile("OpenGL::Modern::glTextureParameterfEXT", XS_OpenGL__Modern_glTextureParameterfEXT);
        newXS_deffile("OpenGL::Modern::glTextureParameterfv_c", XS_OpenGL__Modern_glTextureParameterfv_c);
        newXS_deffile("OpenGL::Modern::glTextureParameterfv_p", XS_OpenGL__Modern_glTextureParameterfv_p);
        newXS_deffile("OpenGL::Modern::glTextureParameterfvEXT_c", XS_OpenGL__Modern_glTextureParameterfvEXT_c);
        newXS_deffile("OpenGL::Modern::glTextureParameterfvEXT_p", XS_OpenGL__Modern_glTextureParameterfvEXT_p);
        newXS_deffile("OpenGL::Modern::glTextureParameteri", XS_OpenGL__Modern_glTextureParameteri);
        newXS_deffile("OpenGL::Modern::glTextureParameteriEXT", XS_OpenGL__Modern_glTextureParameteriEXT);
        newXS_deffile("OpenGL::Modern::glTextureParameteriv_c", XS_OpenGL__Modern_glTextureParameteriv_c);
        newXS_deffile("OpenGL::Modern::glTextureParameteriv_p", XS_OpenGL__Modern_glTextureParameteriv_p);
        newXS_deffile("OpenGL::Modern::glTextureParameterivEXT_c", XS_OpenGL__Modern_glTextureParameterivEXT_c);
        newXS_deffile("OpenGL::Modern::glTextureParameterivEXT_p", XS_OpenGL__Modern_glTextureParameterivEXT_p);
        newXS_deffile("OpenGL::Modern::glTextureRangeAPPLE_c", XS_OpenGL__Modern_glTextureRangeAPPLE_c);
        newXS_deffile("OpenGL::Modern::glTextureRenderbufferEXT", XS_OpenGL__Modern_glTextureRenderbufferEXT);
        newXS_deffile("OpenGL::Modern::glTextureStorage1D", XS_OpenGL__Modern_glTextureStorage1D);
        newXS_deffile("OpenGL::Modern::glTextureStorage1DEXT", XS_OpenGL__Modern_glTextureStorage1DEXT);
        newXS_deffile("OpenGL::Modern::glTextureStorage2D", XS_OpenGL__Modern_glTextureStorage2D);
        newXS_deffile("OpenGL::Modern::glTextureStorage2DEXT", XS_OpenGL__Modern_glTextureStorage2DEXT);
        newXS_deffile("OpenGL::Modern::glTextureStorage2DMultisample", XS_OpenGL__Modern_glTextureStorage2DMultisample);
        newXS_deffile("OpenGL::Modern::glTextureStorage2DMultisampleEXT", XS_OpenGL__Modern_glTextureStorage2DMultisampleEXT);
        newXS_deffile("OpenGL::Modern::glTextureStorage3D", XS_OpenGL__Modern_glTextureStorage3D);
        newXS_deffile("OpenGL::Modern::glTextureStorage3DEXT", XS_OpenGL__Modern_glTextureStorage3DEXT);
        newXS_deffile("OpenGL::Modern::glTextureStorage3DMultisample", XS_OpenGL__Modern_glTextureStorage3DMultisample);
        newXS_deffile("OpenGL::Modern::glTextureStorage3DMultisampleEXT", XS_OpenGL__Modern_glTextureStorage3DMultisampleEXT);
        newXS_deffile("OpenGL::Modern::glTextureStorageMem1DEXT", XS_OpenGL__Modern_glTextureStorageMem1DEXT);
        newXS_deffile("OpenGL::Modern::glTextureStorageMem2DEXT", XS_OpenGL__Modern_glTextureStorageMem2DEXT);
        newXS_deffile("OpenGL::Modern::glTextureStorageMem2DMultisampleEXT", XS_OpenGL__Modern_glTextureStorageMem2DMultisampleEXT);
        newXS_deffile("OpenGL::Modern::glTextureStorageMem3DEXT", XS_OpenGL__Modern_glTextureStorageMem3DEXT);
        newXS_deffile("OpenGL::Modern::glTextureStorageMem3DMultisampleEXT", XS_OpenGL__Modern_glTextureStorageMem3DMultisampleEXT);
        newXS_deffile("OpenGL::Modern::glTextureStorageSparseAMD", XS_OpenGL__Modern_glTextureStorageSparseAMD);
        newXS_deffile("OpenGL::Modern::glTextureSubImage1D_c", XS_OpenGL__Modern_glTextureSubImage1D_c);
        newXS_deffile("OpenGL::Modern::glTextureSubImage1DEXT_c", XS_OpenGL__Modern_glTextureSubImage1DEXT_c);
        newXS_deffile("OpenGL::Modern::glTextureSubImage2D_c", XS_OpenGL__Modern_glTextureSubImage2D_c);
        newXS_deffile("OpenGL::Modern::glTextureSubImage2DEXT_c", XS_OpenGL__Modern_glTextureSubImage2DEXT_c);
        newXS_deffile("OpenGL::Modern::glTextureSubImage3D_c", XS_OpenGL__Modern_glTextureSubImage3D_c);
        newXS_deffile("OpenGL::Modern::glTextureSubImage3DEXT_c", XS_OpenGL__Modern_glTextureSubImage3DEXT_c);
        cv = newXS_deffile("OpenGL::Modern::glTextureView", XS_OpenGL__Modern_glTextureView);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glTextureViewEXT", XS_OpenGL__Modern_glTextureView);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glTextureViewOES", XS_OpenGL__Modern_glTextureViewOES);
        newXS_deffile("OpenGL::Modern::glTrackMatrixNV", XS_OpenGL__Modern_glTrackMatrixNV);
        newXS_deffile("OpenGL::Modern::glTransformFeedbackAttribsNV_c", XS_OpenGL__Modern_glTransformFeedbackAttribsNV_c);
        newXS_deffile("OpenGL::Modern::glTransformFeedbackBufferBase", XS_OpenGL__Modern_glTransformFeedbackBufferBase);
        newXS_deffile("OpenGL::Modern::glTransformFeedbackBufferRange", XS_OpenGL__Modern_glTransformFeedbackBufferRange);
        cv = newXS_deffile("OpenGL::Modern::glTransformFeedbackVaryingsEXT_c", XS_OpenGL__Modern_glTransformFeedbackVaryings_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glTransformFeedbackVaryings_c", XS_OpenGL__Modern_glTransformFeedbackVaryings_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glTransformFeedbackVaryingsEXT_p", XS_OpenGL__Modern_glTransformFeedbackVaryings_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glTransformFeedbackVaryings_p", XS_OpenGL__Modern_glTransformFeedbackVaryings_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glTransformFeedbackVaryingsNV_c", XS_OpenGL__Modern_glTransformFeedbackVaryingsNV_c);
        newXS_deffile("OpenGL::Modern::glTransformFeedbackVaryingsNV_p", XS_OpenGL__Modern_glTransformFeedbackVaryingsNV_p);
        newXS_deffile("OpenGL::Modern::glTransformPathNV_c", XS_OpenGL__Modern_glTransformPathNV_c);
        newXS_deffile("OpenGL::Modern::glTranslated", XS_OpenGL__Modern_glTranslated);
        newXS_deffile("OpenGL::Modern::glTranslatef", XS_OpenGL__Modern_glTranslatef);
        newXS_deffile("OpenGL::Modern::glTranslatex", XS_OpenGL__Modern_glTranslatex);
        newXS_deffile("OpenGL::Modern::glUniform1d", XS_OpenGL__Modern_glUniform1d);
        newXS_deffile("OpenGL::Modern::glUniform1dv_c", XS_OpenGL__Modern_glUniform1dv_c);
        newXS_deffile("OpenGL::Modern::glUniform1dv_p", XS_OpenGL__Modern_glUniform1dv_p);
        cv = newXS_deffile("OpenGL::Modern::glUniform1f", XS_OpenGL__Modern_glUniform1f);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniform1fARB", XS_OpenGL__Modern_glUniform1f);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniform1fvARB_c", XS_OpenGL__Modern_glUniform1fv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniform1fv_c", XS_OpenGL__Modern_glUniform1fv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniform1fvARB_p", XS_OpenGL__Modern_glUniform1fv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniform1fv_p", XS_OpenGL__Modern_glUniform1fv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniform1i", XS_OpenGL__Modern_glUniform1i);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniform1iARB", XS_OpenGL__Modern_glUniform1i);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glUniform1i64ARB", XS_OpenGL__Modern_glUniform1i64ARB);
        newXS_deffile("OpenGL::Modern::glUniform1i64NV", XS_OpenGL__Modern_glUniform1i64NV);
        newXS_deffile("OpenGL::Modern::glUniform1i64vARB_c", XS_OpenGL__Modern_glUniform1i64vARB_c);
        newXS_deffile("OpenGL::Modern::glUniform1i64vARB_p", XS_OpenGL__Modern_glUniform1i64vARB_p);
        newXS_deffile("OpenGL::Modern::glUniform1i64vNV_c", XS_OpenGL__Modern_glUniform1i64vNV_c);
        newXS_deffile("OpenGL::Modern::glUniform1i64vNV_p", XS_OpenGL__Modern_glUniform1i64vNV_p);
        cv = newXS_deffile("OpenGL::Modern::glUniform1ivARB_c", XS_OpenGL__Modern_glUniform1iv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniform1iv_c", XS_OpenGL__Modern_glUniform1iv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniform1ivARB_p", XS_OpenGL__Modern_glUniform1iv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniform1iv_p", XS_OpenGL__Modern_glUniform1iv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniform1ui", XS_OpenGL__Modern_glUniform1ui);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniform1uiEXT", XS_OpenGL__Modern_glUniform1ui);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glUniform1ui64ARB", XS_OpenGL__Modern_glUniform1ui64ARB);
        newXS_deffile("OpenGL::Modern::glUniform1ui64NV", XS_OpenGL__Modern_glUniform1ui64NV);
        newXS_deffile("OpenGL::Modern::glUniform1ui64vARB_c", XS_OpenGL__Modern_glUniform1ui64vARB_c);
        newXS_deffile("OpenGL::Modern::glUniform1ui64vARB_p", XS_OpenGL__Modern_glUniform1ui64vARB_p);
        newXS_deffile("OpenGL::Modern::glUniform1ui64vNV_c", XS_OpenGL__Modern_glUniform1ui64vNV_c);
        newXS_deffile("OpenGL::Modern::glUniform1ui64vNV_p", XS_OpenGL__Modern_glUniform1ui64vNV_p);
        cv = newXS_deffile("OpenGL::Modern::glUniform1uivEXT_c", XS_OpenGL__Modern_glUniform1uiv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniform1uiv_c", XS_OpenGL__Modern_glUniform1uiv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniform1uivEXT_p", XS_OpenGL__Modern_glUniform1uiv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniform1uiv_p", XS_OpenGL__Modern_glUniform1uiv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glUniform2d", XS_OpenGL__Modern_glUniform2d);
        newXS_deffile("OpenGL::Modern::glUniform2dv_c", XS_OpenGL__Modern_glUniform2dv_c);
        newXS_deffile("OpenGL::Modern::glUniform2dv_p", XS_OpenGL__Modern_glUniform2dv_p);
        cv = newXS_deffile("OpenGL::Modern::glUniform2f", XS_OpenGL__Modern_glUniform2f);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniform2fARB", XS_OpenGL__Modern_glUniform2f);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniform2fvARB_c", XS_OpenGL__Modern_glUniform2fv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniform2fv_c", XS_OpenGL__Modern_glUniform2fv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniform2fvARB_p", XS_OpenGL__Modern_glUniform2fv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniform2fv_p", XS_OpenGL__Modern_glUniform2fv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniform2i", XS_OpenGL__Modern_glUniform2i);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniform2iARB", XS_OpenGL__Modern_glUniform2i);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glUniform2i64ARB", XS_OpenGL__Modern_glUniform2i64ARB);
        newXS_deffile("OpenGL::Modern::glUniform2i64NV", XS_OpenGL__Modern_glUniform2i64NV);
        newXS_deffile("OpenGL::Modern::glUniform2i64vARB_c", XS_OpenGL__Modern_glUniform2i64vARB_c);
        newXS_deffile("OpenGL::Modern::glUniform2i64vARB_p", XS_OpenGL__Modern_glUniform2i64vARB_p);
        newXS_deffile("OpenGL::Modern::glUniform2i64vNV_c", XS_OpenGL__Modern_glUniform2i64vNV_c);
        newXS_deffile("OpenGL::Modern::glUniform2i64vNV_p", XS_OpenGL__Modern_glUniform2i64vNV_p);
        cv = newXS_deffile("OpenGL::Modern::glUniform2ivARB_c", XS_OpenGL__Modern_glUniform2iv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniform2iv_c", XS_OpenGL__Modern_glUniform2iv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniform2ivARB_p", XS_OpenGL__Modern_glUniform2iv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniform2iv_p", XS_OpenGL__Modern_glUniform2iv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniform2ui", XS_OpenGL__Modern_glUniform2ui);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniform2uiEXT", XS_OpenGL__Modern_glUniform2ui);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glUniform2ui64ARB", XS_OpenGL__Modern_glUniform2ui64ARB);
        newXS_deffile("OpenGL::Modern::glUniform2ui64NV", XS_OpenGL__Modern_glUniform2ui64NV);
        newXS_deffile("OpenGL::Modern::glUniform2ui64vARB_c", XS_OpenGL__Modern_glUniform2ui64vARB_c);
        newXS_deffile("OpenGL::Modern::glUniform2ui64vARB_p", XS_OpenGL__Modern_glUniform2ui64vARB_p);
        newXS_deffile("OpenGL::Modern::glUniform2ui64vNV_c", XS_OpenGL__Modern_glUniform2ui64vNV_c);
        newXS_deffile("OpenGL::Modern::glUniform2ui64vNV_p", XS_OpenGL__Modern_glUniform2ui64vNV_p);
        cv = newXS_deffile("OpenGL::Modern::glUniform2uivEXT_c", XS_OpenGL__Modern_glUniform2uiv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniform2uiv_c", XS_OpenGL__Modern_glUniform2uiv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniform2uivEXT_p", XS_OpenGL__Modern_glUniform2uiv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniform2uiv_p", XS_OpenGL__Modern_glUniform2uiv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glUniform3d", XS_OpenGL__Modern_glUniform3d);
        newXS_deffile("OpenGL::Modern::glUniform3dv_c", XS_OpenGL__Modern_glUniform3dv_c);
        newXS_deffile("OpenGL::Modern::glUniform3dv_p", XS_OpenGL__Modern_glUniform3dv_p);
        cv = newXS_deffile("OpenGL::Modern::glUniform3f", XS_OpenGL__Modern_glUniform3f);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniform3fARB", XS_OpenGL__Modern_glUniform3f);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniform3fvARB_c", XS_OpenGL__Modern_glUniform3fv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniform3fv_c", XS_OpenGL__Modern_glUniform3fv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniform3fvARB_p", XS_OpenGL__Modern_glUniform3fv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniform3fv_p", XS_OpenGL__Modern_glUniform3fv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniform3i", XS_OpenGL__Modern_glUniform3i);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniform3iARB", XS_OpenGL__Modern_glUniform3i);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glUniform3i64ARB", XS_OpenGL__Modern_glUniform3i64ARB);
        newXS_deffile("OpenGL::Modern::glUniform3i64NV", XS_OpenGL__Modern_glUniform3i64NV);
        newXS_deffile("OpenGL::Modern::glUniform3i64vARB_c", XS_OpenGL__Modern_glUniform3i64vARB_c);
        newXS_deffile("OpenGL::Modern::glUniform3i64vARB_p", XS_OpenGL__Modern_glUniform3i64vARB_p);
        newXS_deffile("OpenGL::Modern::glUniform3i64vNV_c", XS_OpenGL__Modern_glUniform3i64vNV_c);
        newXS_deffile("OpenGL::Modern::glUniform3i64vNV_p", XS_OpenGL__Modern_glUniform3i64vNV_p);
        cv = newXS_deffile("OpenGL::Modern::glUniform3ivARB_c", XS_OpenGL__Modern_glUniform3iv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniform3iv_c", XS_OpenGL__Modern_glUniform3iv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniform3ivARB_p", XS_OpenGL__Modern_glUniform3iv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniform3iv_p", XS_OpenGL__Modern_glUniform3iv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniform3ui", XS_OpenGL__Modern_glUniform3ui);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniform3uiEXT", XS_OpenGL__Modern_glUniform3ui);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glUniform3ui64ARB", XS_OpenGL__Modern_glUniform3ui64ARB);
        newXS_deffile("OpenGL::Modern::glUniform3ui64NV", XS_OpenGL__Modern_glUniform3ui64NV);
        newXS_deffile("OpenGL::Modern::glUniform3ui64vARB_c", XS_OpenGL__Modern_glUniform3ui64vARB_c);
        newXS_deffile("OpenGL::Modern::glUniform3ui64vARB_p", XS_OpenGL__Modern_glUniform3ui64vARB_p);
        newXS_deffile("OpenGL::Modern::glUniform3ui64vNV_c", XS_OpenGL__Modern_glUniform3ui64vNV_c);
        newXS_deffile("OpenGL::Modern::glUniform3ui64vNV_p", XS_OpenGL__Modern_glUniform3ui64vNV_p);
        cv = newXS_deffile("OpenGL::Modern::glUniform3uivEXT_c", XS_OpenGL__Modern_glUniform3uiv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniform3uiv_c", XS_OpenGL__Modern_glUniform3uiv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniform3uivEXT_p", XS_OpenGL__Modern_glUniform3uiv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniform3uiv_p", XS_OpenGL__Modern_glUniform3uiv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glUniform4d", XS_OpenGL__Modern_glUniform4d);
        newXS_deffile("OpenGL::Modern::glUniform4dv_c", XS_OpenGL__Modern_glUniform4dv_c);
        newXS_deffile("OpenGL::Modern::glUniform4dv_p", XS_OpenGL__Modern_glUniform4dv_p);
        cv = newXS_deffile("OpenGL::Modern::glUniform4f", XS_OpenGL__Modern_glUniform4f);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniform4fARB", XS_OpenGL__Modern_glUniform4f);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniform4fvARB_c", XS_OpenGL__Modern_glUniform4fv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniform4fv_c", XS_OpenGL__Modern_glUniform4fv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniform4fvARB_p", XS_OpenGL__Modern_glUniform4fv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniform4fv_p", XS_OpenGL__Modern_glUniform4fv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniform4i", XS_OpenGL__Modern_glUniform4i);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniform4iARB", XS_OpenGL__Modern_glUniform4i);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glUniform4i64ARB", XS_OpenGL__Modern_glUniform4i64ARB);
        newXS_deffile("OpenGL::Modern::glUniform4i64NV", XS_OpenGL__Modern_glUniform4i64NV);
        newXS_deffile("OpenGL::Modern::glUniform4i64vARB_c", XS_OpenGL__Modern_glUniform4i64vARB_c);
        newXS_deffile("OpenGL::Modern::glUniform4i64vARB_p", XS_OpenGL__Modern_glUniform4i64vARB_p);
        newXS_deffile("OpenGL::Modern::glUniform4i64vNV_c", XS_OpenGL__Modern_glUniform4i64vNV_c);
        newXS_deffile("OpenGL::Modern::glUniform4i64vNV_p", XS_OpenGL__Modern_glUniform4i64vNV_p);
        cv = newXS_deffile("OpenGL::Modern::glUniform4ivARB_c", XS_OpenGL__Modern_glUniform4iv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniform4iv_c", XS_OpenGL__Modern_glUniform4iv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniform4ivARB_p", XS_OpenGL__Modern_glUniform4iv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniform4iv_p", XS_OpenGL__Modern_glUniform4iv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniform4ui", XS_OpenGL__Modern_glUniform4ui);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniform4uiEXT", XS_OpenGL__Modern_glUniform4ui);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glUniform4ui64ARB", XS_OpenGL__Modern_glUniform4ui64ARB);
        newXS_deffile("OpenGL::Modern::glUniform4ui64NV", XS_OpenGL__Modern_glUniform4ui64NV);
        newXS_deffile("OpenGL::Modern::glUniform4ui64vARB_c", XS_OpenGL__Modern_glUniform4ui64vARB_c);
        newXS_deffile("OpenGL::Modern::glUniform4ui64vARB_p", XS_OpenGL__Modern_glUniform4ui64vARB_p);
        newXS_deffile("OpenGL::Modern::glUniform4ui64vNV_c", XS_OpenGL__Modern_glUniform4ui64vNV_c);
        newXS_deffile("OpenGL::Modern::glUniform4ui64vNV_p", XS_OpenGL__Modern_glUniform4ui64vNV_p);
        cv = newXS_deffile("OpenGL::Modern::glUniform4uivEXT_c", XS_OpenGL__Modern_glUniform4uiv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniform4uiv_c", XS_OpenGL__Modern_glUniform4uiv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniform4uivEXT_p", XS_OpenGL__Modern_glUniform4uiv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniform4uiv_p", XS_OpenGL__Modern_glUniform4uiv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glUniformBlockBinding", XS_OpenGL__Modern_glUniformBlockBinding);
        newXS_deffile("OpenGL::Modern::glUniformBufferEXT", XS_OpenGL__Modern_glUniformBufferEXT);
        cv = newXS_deffile("OpenGL::Modern::glUniformHandleui64ARB", XS_OpenGL__Modern_glUniformHandleui64ARB);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniformHandleui64IMG", XS_OpenGL__Modern_glUniformHandleui64ARB);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glUniformHandleui64NV", XS_OpenGL__Modern_glUniformHandleui64NV);
        cv = newXS_deffile("OpenGL::Modern::glUniformHandleui64vARB_c", XS_OpenGL__Modern_glUniformHandleui64vARB_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniformHandleui64vIMG_c", XS_OpenGL__Modern_glUniformHandleui64vARB_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniformHandleui64vARB_p", XS_OpenGL__Modern_glUniformHandleui64vARB_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniformHandleui64vIMG_p", XS_OpenGL__Modern_glUniformHandleui64vARB_p);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glUniformHandleui64vNV_c", XS_OpenGL__Modern_glUniformHandleui64vNV_c);
        newXS_deffile("OpenGL::Modern::glUniformHandleui64vNV_p", XS_OpenGL__Modern_glUniformHandleui64vNV_p);
        newXS_deffile("OpenGL::Modern::glUniformMatrix2dv_c", XS_OpenGL__Modern_glUniformMatrix2dv_c);
        newXS_deffile("OpenGL::Modern::glUniformMatrix2dv_p", XS_OpenGL__Modern_glUniformMatrix2dv_p);
        cv = newXS_deffile("OpenGL::Modern::glUniformMatrix2fvARB_c", XS_OpenGL__Modern_glUniformMatrix2fv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniformMatrix2fv_c", XS_OpenGL__Modern_glUniformMatrix2fv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniformMatrix2fvARB_p", XS_OpenGL__Modern_glUniformMatrix2fv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniformMatrix2fv_p", XS_OpenGL__Modern_glUniformMatrix2fv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glUniformMatrix2x3dv_c", XS_OpenGL__Modern_glUniformMatrix2x3dv_c);
        newXS_deffile("OpenGL::Modern::glUniformMatrix2x3dv_p", XS_OpenGL__Modern_glUniformMatrix2x3dv_p);
        cv = newXS_deffile("OpenGL::Modern::glUniformMatrix2x3fvNV_c", XS_OpenGL__Modern_glUniformMatrix2x3fv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniformMatrix2x3fv_c", XS_OpenGL__Modern_glUniformMatrix2x3fv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniformMatrix2x3fvNV_p", XS_OpenGL__Modern_glUniformMatrix2x3fv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniformMatrix2x3fv_p", XS_OpenGL__Modern_glUniformMatrix2x3fv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glUniformMatrix2x4dv_c", XS_OpenGL__Modern_glUniformMatrix2x4dv_c);
        newXS_deffile("OpenGL::Modern::glUniformMatrix2x4dv_p", XS_OpenGL__Modern_glUniformMatrix2x4dv_p);
        cv = newXS_deffile("OpenGL::Modern::glUniformMatrix2x4fvNV_c", XS_OpenGL__Modern_glUniformMatrix2x4fv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniformMatrix2x4fv_c", XS_OpenGL__Modern_glUniformMatrix2x4fv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniformMatrix2x4fvNV_p", XS_OpenGL__Modern_glUniformMatrix2x4fv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniformMatrix2x4fv_p", XS_OpenGL__Modern_glUniformMatrix2x4fv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glUniformMatrix3dv_c", XS_OpenGL__Modern_glUniformMatrix3dv_c);
        newXS_deffile("OpenGL::Modern::glUniformMatrix3dv_p", XS_OpenGL__Modern_glUniformMatrix3dv_p);
        cv = newXS_deffile("OpenGL::Modern::glUniformMatrix3fvARB_c", XS_OpenGL__Modern_glUniformMatrix3fv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniformMatrix3fv_c", XS_OpenGL__Modern_glUniformMatrix3fv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniformMatrix3fvARB_p", XS_OpenGL__Modern_glUniformMatrix3fv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniformMatrix3fv_p", XS_OpenGL__Modern_glUniformMatrix3fv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glUniformMatrix3x2dv_c", XS_OpenGL__Modern_glUniformMatrix3x2dv_c);
        newXS_deffile("OpenGL::Modern::glUniformMatrix3x2dv_p", XS_OpenGL__Modern_glUniformMatrix3x2dv_p);
        cv = newXS_deffile("OpenGL::Modern::glUniformMatrix3x2fvNV_c", XS_OpenGL__Modern_glUniformMatrix3x2fv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniformMatrix3x2fv_c", XS_OpenGL__Modern_glUniformMatrix3x2fv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniformMatrix3x2fvNV_p", XS_OpenGL__Modern_glUniformMatrix3x2fv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniformMatrix3x2fv_p", XS_OpenGL__Modern_glUniformMatrix3x2fv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glUniformMatrix3x4dv_c", XS_OpenGL__Modern_glUniformMatrix3x4dv_c);
        newXS_deffile("OpenGL::Modern::glUniformMatrix3x4dv_p", XS_OpenGL__Modern_glUniformMatrix3x4dv_p);
        cv = newXS_deffile("OpenGL::Modern::glUniformMatrix3x4fvNV_c", XS_OpenGL__Modern_glUniformMatrix3x4fv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniformMatrix3x4fv_c", XS_OpenGL__Modern_glUniformMatrix3x4fv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniformMatrix3x4fvNV_p", XS_OpenGL__Modern_glUniformMatrix3x4fv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniformMatrix3x4fv_p", XS_OpenGL__Modern_glUniformMatrix3x4fv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glUniformMatrix4dv_c", XS_OpenGL__Modern_glUniformMatrix4dv_c);
        newXS_deffile("OpenGL::Modern::glUniformMatrix4dv_p", XS_OpenGL__Modern_glUniformMatrix4dv_p);
        cv = newXS_deffile("OpenGL::Modern::glUniformMatrix4fvARB_c", XS_OpenGL__Modern_glUniformMatrix4fv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniformMatrix4fv_c", XS_OpenGL__Modern_glUniformMatrix4fv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniformMatrix4fvARB_p", XS_OpenGL__Modern_glUniformMatrix4fv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniformMatrix4fv_p", XS_OpenGL__Modern_glUniformMatrix4fv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glUniformMatrix4x2dv_c", XS_OpenGL__Modern_glUniformMatrix4x2dv_c);
        newXS_deffile("OpenGL::Modern::glUniformMatrix4x2dv_p", XS_OpenGL__Modern_glUniformMatrix4x2dv_p);
        cv = newXS_deffile("OpenGL::Modern::glUniformMatrix4x2fvNV_c", XS_OpenGL__Modern_glUniformMatrix4x2fv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniformMatrix4x2fv_c", XS_OpenGL__Modern_glUniformMatrix4x2fv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniformMatrix4x2fvNV_p", XS_OpenGL__Modern_glUniformMatrix4x2fv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniformMatrix4x2fv_p", XS_OpenGL__Modern_glUniformMatrix4x2fv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glUniformMatrix4x3dv_c", XS_OpenGL__Modern_glUniformMatrix4x3dv_c);
        newXS_deffile("OpenGL::Modern::glUniformMatrix4x3dv_p", XS_OpenGL__Modern_glUniformMatrix4x3dv_p);
        cv = newXS_deffile("OpenGL::Modern::glUniformMatrix4x3fvNV_c", XS_OpenGL__Modern_glUniformMatrix4x3fv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniformMatrix4x3fv_c", XS_OpenGL__Modern_glUniformMatrix4x3fv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUniformMatrix4x3fvNV_p", XS_OpenGL__Modern_glUniformMatrix4x3fv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glUniformMatrix4x3fv_p", XS_OpenGL__Modern_glUniformMatrix4x3fv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glUniformSubroutinesuiv_c", XS_OpenGL__Modern_glUniformSubroutinesuiv_c);
        newXS_deffile("OpenGL::Modern::glUniformSubroutinesuiv_p", XS_OpenGL__Modern_glUniformSubroutinesuiv_p);
        newXS_deffile("OpenGL::Modern::glUniformui64NV", XS_OpenGL__Modern_glUniformui64NV);
        newXS_deffile("OpenGL::Modern::glUniformui64vNV_c", XS_OpenGL__Modern_glUniformui64vNV_c);
        newXS_deffile("OpenGL::Modern::glUniformui64vNV_p", XS_OpenGL__Modern_glUniformui64vNV_p);
        newXS_deffile("OpenGL::Modern::glUnlockArraysEXT", XS_OpenGL__Modern_glUnlockArraysEXT);
        cv = newXS_deffile("OpenGL::Modern::glUnmapBuffer", XS_OpenGL__Modern_glUnmapBuffer);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glUnmapBufferARB", XS_OpenGL__Modern_glUnmapBuffer);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glUnmapBufferOES", XS_OpenGL__Modern_glUnmapBufferOES);
        newXS_deffile("OpenGL::Modern::glUnmapNamedBuffer", XS_OpenGL__Modern_glUnmapNamedBuffer);
        newXS_deffile("OpenGL::Modern::glUnmapNamedBufferEXT", XS_OpenGL__Modern_glUnmapNamedBufferEXT);
        newXS_deffile("OpenGL::Modern::glUnmapObjectBufferATI", XS_OpenGL__Modern_glUnmapObjectBufferATI);
        newXS_deffile("OpenGL::Modern::glUnmapTexture2DINTEL", XS_OpenGL__Modern_glUnmapTexture2DINTEL);
        newXS_deffile("OpenGL::Modern::glUpdateObjectBufferATI_c", XS_OpenGL__Modern_glUpdateObjectBufferATI_c);
        newXS_deffile("OpenGL::Modern::glUploadGpuMaskNVX", XS_OpenGL__Modern_glUploadGpuMaskNVX);
        newXS_deffile("OpenGL::Modern::glUseProgram", XS_OpenGL__Modern_glUseProgram);
        newXS_deffile("OpenGL::Modern::glUseProgramObjectARB", XS_OpenGL__Modern_glUseProgramObjectARB);
        newXS_deffile("OpenGL::Modern::glUseProgramStages", XS_OpenGL__Modern_glUseProgramStages);
        newXS_deffile("OpenGL::Modern::glUseShaderProgramEXT", XS_OpenGL__Modern_glUseShaderProgramEXT);
        newXS_deffile("OpenGL::Modern::glVDPAUFiniNV", XS_OpenGL__Modern_glVDPAUFiniNV);
        newXS_deffile("OpenGL::Modern::glVDPAUGetSurfaceivNV_c", XS_OpenGL__Modern_glVDPAUGetSurfaceivNV_c);
        newXS_deffile("OpenGL::Modern::glVDPAUInitNV_c", XS_OpenGL__Modern_glVDPAUInitNV_c);
        newXS_deffile("OpenGL::Modern::glVDPAUIsSurfaceNV", XS_OpenGL__Modern_glVDPAUIsSurfaceNV);
        newXS_deffile("OpenGL::Modern::glVDPAUMapSurfacesNV_c", XS_OpenGL__Modern_glVDPAUMapSurfacesNV_c);
        newXS_deffile("OpenGL::Modern::glVDPAURegisterOutputSurfaceNV_c", XS_OpenGL__Modern_glVDPAURegisterOutputSurfaceNV_c);
        newXS_deffile("OpenGL::Modern::glVDPAURegisterVideoSurfaceNV_c", XS_OpenGL__Modern_glVDPAURegisterVideoSurfaceNV_c);
        newXS_deffile("OpenGL::Modern::glVDPAURegisterVideoSurfaceWithPictureStructureNV_c", XS_OpenGL__Modern_glVDPAURegisterVideoSurfaceWithPictureStructureNV_c);
        newXS_deffile("OpenGL::Modern::glVDPAUSurfaceAccessNV", XS_OpenGL__Modern_glVDPAUSurfaceAccessNV);
        newXS_deffile("OpenGL::Modern::glVDPAUUnmapSurfacesNV_c", XS_OpenGL__Modern_glVDPAUUnmapSurfacesNV_c);
        newXS_deffile("OpenGL::Modern::glVDPAUUnregisterSurfaceNV", XS_OpenGL__Modern_glVDPAUUnregisterSurfaceNV);
        newXS_deffile("OpenGL::Modern::glValidateProgram", XS_OpenGL__Modern_glValidateProgram);
        newXS_deffile("OpenGL::Modern::glValidateProgramARB", XS_OpenGL__Modern_glValidateProgramARB);
        newXS_deffile("OpenGL::Modern::glValidateProgramPipeline", XS_OpenGL__Modern_glValidateProgramPipeline);
        newXS_deffile("OpenGL::Modern::glVariantArrayObjectATI", XS_OpenGL__Modern_glVariantArrayObjectATI);
        newXS_deffile("OpenGL::Modern::glVariantPointerEXT_c", XS_OpenGL__Modern_glVariantPointerEXT_c);
        newXS_deffile("OpenGL::Modern::glVariantbvEXT_c", XS_OpenGL__Modern_glVariantbvEXT_c);
        newXS_deffile("OpenGL::Modern::glVariantdvEXT_c", XS_OpenGL__Modern_glVariantdvEXT_c);
        newXS_deffile("OpenGL::Modern::glVariantfvEXT_c", XS_OpenGL__Modern_glVariantfvEXT_c);
        newXS_deffile("OpenGL::Modern::glVariantivEXT_c", XS_OpenGL__Modern_glVariantivEXT_c);
        newXS_deffile("OpenGL::Modern::glVariantsvEXT_c", XS_OpenGL__Modern_glVariantsvEXT_c);
        newXS_deffile("OpenGL::Modern::glVariantubvEXT_c", XS_OpenGL__Modern_glVariantubvEXT_c);
        newXS_deffile("OpenGL::Modern::glVariantuivEXT_c", XS_OpenGL__Modern_glVariantuivEXT_c);
        newXS_deffile("OpenGL::Modern::glVariantusvEXT_c", XS_OpenGL__Modern_glVariantusvEXT_c);
        newXS_deffile("OpenGL::Modern::glVectorOperationSGIX", XS_OpenGL__Modern_glVectorOperationSGIX);
        newXS_deffile("OpenGL::Modern::glVertex2d", XS_OpenGL__Modern_glVertex2d);
        newXS_deffile("OpenGL::Modern::glVertex2dv_c", XS_OpenGL__Modern_glVertex2dv_c);
        newXS_deffile("OpenGL::Modern::glVertex2dv_p", XS_OpenGL__Modern_glVertex2dv_p);
        newXS_deffile("OpenGL::Modern::glVertex2f", XS_OpenGL__Modern_glVertex2f);
        newXS_deffile("OpenGL::Modern::glVertex2fv_c", XS_OpenGL__Modern_glVertex2fv_c);
        newXS_deffile("OpenGL::Modern::glVertex2fv_p", XS_OpenGL__Modern_glVertex2fv_p);
        newXS_deffile("OpenGL::Modern::glVertex2hNV", XS_OpenGL__Modern_glVertex2hNV);
        newXS_deffile("OpenGL::Modern::glVertex2hvNV_c", XS_OpenGL__Modern_glVertex2hvNV_c);
        newXS_deffile("OpenGL::Modern::glVertex2hvNV_p", XS_OpenGL__Modern_glVertex2hvNV_p);
        newXS_deffile("OpenGL::Modern::glVertex2i", XS_OpenGL__Modern_glVertex2i);
        newXS_deffile("OpenGL::Modern::glVertex2iv_c", XS_OpenGL__Modern_glVertex2iv_c);
        newXS_deffile("OpenGL::Modern::glVertex2iv_p", XS_OpenGL__Modern_glVertex2iv_p);
        newXS_deffile("OpenGL::Modern::glVertex2s", XS_OpenGL__Modern_glVertex2s);
        newXS_deffile("OpenGL::Modern::glVertex2sv_c", XS_OpenGL__Modern_glVertex2sv_c);
        newXS_deffile("OpenGL::Modern::glVertex2sv_p", XS_OpenGL__Modern_glVertex2sv_p);
        newXS_deffile("OpenGL::Modern::glVertex3d", XS_OpenGL__Modern_glVertex3d);
        newXS_deffile("OpenGL::Modern::glVertex3dv_c", XS_OpenGL__Modern_glVertex3dv_c);
        newXS_deffile("OpenGL::Modern::glVertex3dv_p", XS_OpenGL__Modern_glVertex3dv_p);
        newXS_deffile("OpenGL::Modern::glVertex3f", XS_OpenGL__Modern_glVertex3f);
        newXS_deffile("OpenGL::Modern::glVertex3fv_c", XS_OpenGL__Modern_glVertex3fv_c);
        newXS_deffile("OpenGL::Modern::glVertex3fv_p", XS_OpenGL__Modern_glVertex3fv_p);
        newXS_deffile("OpenGL::Modern::glVertex3hNV", XS_OpenGL__Modern_glVertex3hNV);
        newXS_deffile("OpenGL::Modern::glVertex3hvNV_c", XS_OpenGL__Modern_glVertex3hvNV_c);
        newXS_deffile("OpenGL::Modern::glVertex3hvNV_p", XS_OpenGL__Modern_glVertex3hvNV_p);
        newXS_deffile("OpenGL::Modern::glVertex3i", XS_OpenGL__Modern_glVertex3i);
        newXS_deffile("OpenGL::Modern::glVertex3iv_c", XS_OpenGL__Modern_glVertex3iv_c);
        newXS_deffile("OpenGL::Modern::glVertex3iv_p", XS_OpenGL__Modern_glVertex3iv_p);
        newXS_deffile("OpenGL::Modern::glVertex3s", XS_OpenGL__Modern_glVertex3s);
        newXS_deffile("OpenGL::Modern::glVertex3sv_c", XS_OpenGL__Modern_glVertex3sv_c);
        newXS_deffile("OpenGL::Modern::glVertex3sv_p", XS_OpenGL__Modern_glVertex3sv_p);
        newXS_deffile("OpenGL::Modern::glVertex4d", XS_OpenGL__Modern_glVertex4d);
        newXS_deffile("OpenGL::Modern::glVertex4dv_c", XS_OpenGL__Modern_glVertex4dv_c);
        newXS_deffile("OpenGL::Modern::glVertex4dv_p", XS_OpenGL__Modern_glVertex4dv_p);
        newXS_deffile("OpenGL::Modern::glVertex4f", XS_OpenGL__Modern_glVertex4f);
        newXS_deffile("OpenGL::Modern::glVertex4fv_c", XS_OpenGL__Modern_glVertex4fv_c);
        newXS_deffile("OpenGL::Modern::glVertex4fv_p", XS_OpenGL__Modern_glVertex4fv_p);
        newXS_deffile("OpenGL::Modern::glVertex4hNV", XS_OpenGL__Modern_glVertex4hNV);
        newXS_deffile("OpenGL::Modern::glVertex4hvNV_c", XS_OpenGL__Modern_glVertex4hvNV_c);
        newXS_deffile("OpenGL::Modern::glVertex4hvNV_p", XS_OpenGL__Modern_glVertex4hvNV_p);
        newXS_deffile("OpenGL::Modern::glVertex4i", XS_OpenGL__Modern_glVertex4i);
        newXS_deffile("OpenGL::Modern::glVertex4iv_c", XS_OpenGL__Modern_glVertex4iv_c);
        newXS_deffile("OpenGL::Modern::glVertex4iv_p", XS_OpenGL__Modern_glVertex4iv_p);
        newXS_deffile("OpenGL::Modern::glVertex4s", XS_OpenGL__Modern_glVertex4s);
        newXS_deffile("OpenGL::Modern::glVertex4sv_c", XS_OpenGL__Modern_glVertex4sv_c);
        newXS_deffile("OpenGL::Modern::glVertex4sv_p", XS_OpenGL__Modern_glVertex4sv_p);
        newXS_deffile("OpenGL::Modern::glVertexArrayAttribBinding", XS_OpenGL__Modern_glVertexArrayAttribBinding);
        newXS_deffile("OpenGL::Modern::glVertexArrayAttribFormat", XS_OpenGL__Modern_glVertexArrayAttribFormat);
        newXS_deffile("OpenGL::Modern::glVertexArrayAttribIFormat", XS_OpenGL__Modern_glVertexArrayAttribIFormat);
        newXS_deffile("OpenGL::Modern::glVertexArrayAttribLFormat", XS_OpenGL__Modern_glVertexArrayAttribLFormat);
        newXS_deffile("OpenGL::Modern::glVertexArrayBindVertexBufferEXT", XS_OpenGL__Modern_glVertexArrayBindVertexBufferEXT);
        newXS_deffile("OpenGL::Modern::glVertexArrayBindingDivisor", XS_OpenGL__Modern_glVertexArrayBindingDivisor);
        newXS_deffile("OpenGL::Modern::glVertexArrayColorOffsetEXT", XS_OpenGL__Modern_glVertexArrayColorOffsetEXT);
        newXS_deffile("OpenGL::Modern::glVertexArrayEdgeFlagOffsetEXT", XS_OpenGL__Modern_glVertexArrayEdgeFlagOffsetEXT);
        newXS_deffile("OpenGL::Modern::glVertexArrayElementBuffer", XS_OpenGL__Modern_glVertexArrayElementBuffer);
        newXS_deffile("OpenGL::Modern::glVertexArrayFogCoordOffsetEXT", XS_OpenGL__Modern_glVertexArrayFogCoordOffsetEXT);
        newXS_deffile("OpenGL::Modern::glVertexArrayIndexOffsetEXT", XS_OpenGL__Modern_glVertexArrayIndexOffsetEXT);
        newXS_deffile("OpenGL::Modern::glVertexArrayMultiTexCoordOffsetEXT", XS_OpenGL__Modern_glVertexArrayMultiTexCoordOffsetEXT);
        newXS_deffile("OpenGL::Modern::glVertexArrayNormalOffsetEXT", XS_OpenGL__Modern_glVertexArrayNormalOffsetEXT);
        newXS_deffile("OpenGL::Modern::glVertexArrayParameteriAPPLE", XS_OpenGL__Modern_glVertexArrayParameteriAPPLE);
        newXS_deffile("OpenGL::Modern::glVertexArrayRangeAPPLE_c", XS_OpenGL__Modern_glVertexArrayRangeAPPLE_c);
        newXS_deffile("OpenGL::Modern::glVertexArrayRangeNV_c", XS_OpenGL__Modern_glVertexArrayRangeNV_c);
        newXS_deffile("OpenGL::Modern::glVertexArraySecondaryColorOffsetEXT", XS_OpenGL__Modern_glVertexArraySecondaryColorOffsetEXT);
        newXS_deffile("OpenGL::Modern::glVertexArrayTexCoordOffsetEXT", XS_OpenGL__Modern_glVertexArrayTexCoordOffsetEXT);
        newXS_deffile("OpenGL::Modern::glVertexArrayVertexAttribBindingEXT", XS_OpenGL__Modern_glVertexArrayVertexAttribBindingEXT);
        newXS_deffile("OpenGL::Modern::glVertexArrayVertexAttribDivisorEXT", XS_OpenGL__Modern_glVertexArrayVertexAttribDivisorEXT);
        newXS_deffile("OpenGL::Modern::glVertexArrayVertexAttribFormatEXT", XS_OpenGL__Modern_glVertexArrayVertexAttribFormatEXT);
        newXS_deffile("OpenGL::Modern::glVertexArrayVertexAttribIFormatEXT", XS_OpenGL__Modern_glVertexArrayVertexAttribIFormatEXT);
        newXS_deffile("OpenGL::Modern::glVertexArrayVertexAttribIOffsetEXT", XS_OpenGL__Modern_glVertexArrayVertexAttribIOffsetEXT);
        newXS_deffile("OpenGL::Modern::glVertexArrayVertexAttribLFormatEXT", XS_OpenGL__Modern_glVertexArrayVertexAttribLFormatEXT);
        newXS_deffile("OpenGL::Modern::glVertexArrayVertexAttribLOffsetEXT", XS_OpenGL__Modern_glVertexArrayVertexAttribLOffsetEXT);
        newXS_deffile("OpenGL::Modern::glVertexArrayVertexAttribOffsetEXT", XS_OpenGL__Modern_glVertexArrayVertexAttribOffsetEXT);
        newXS_deffile("OpenGL::Modern::glVertexArrayVertexBindingDivisorEXT", XS_OpenGL__Modern_glVertexArrayVertexBindingDivisorEXT);
        newXS_deffile("OpenGL::Modern::glVertexArrayVertexBuffer", XS_OpenGL__Modern_glVertexArrayVertexBuffer);
        newXS_deffile("OpenGL::Modern::glVertexArrayVertexBuffers_c", XS_OpenGL__Modern_glVertexArrayVertexBuffers_c);
        newXS_deffile("OpenGL::Modern::glVertexArrayVertexOffsetEXT", XS_OpenGL__Modern_glVertexArrayVertexOffsetEXT);
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib1d", XS_OpenGL__Modern_glVertexAttrib1d);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib1dARB", XS_OpenGL__Modern_glVertexAttrib1d);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib1dNV", XS_OpenGL__Modern_glVertexAttrib1d);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib1dvARB_c", XS_OpenGL__Modern_glVertexAttrib1dv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib1dvNV_c", XS_OpenGL__Modern_glVertexAttrib1dv_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib1dv_c", XS_OpenGL__Modern_glVertexAttrib1dv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib1dvARB_p", XS_OpenGL__Modern_glVertexAttrib1dv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib1dvNV_p", XS_OpenGL__Modern_glVertexAttrib1dv_p);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib1dv_p", XS_OpenGL__Modern_glVertexAttrib1dv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib1f", XS_OpenGL__Modern_glVertexAttrib1f);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib1fARB", XS_OpenGL__Modern_glVertexAttrib1f);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib1fNV", XS_OpenGL__Modern_glVertexAttrib1f);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib1fvARB_c", XS_OpenGL__Modern_glVertexAttrib1fv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib1fvNV_c", XS_OpenGL__Modern_glVertexAttrib1fv_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib1fv_c", XS_OpenGL__Modern_glVertexAttrib1fv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib1fvARB_p", XS_OpenGL__Modern_glVertexAttrib1fv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib1fvNV_p", XS_OpenGL__Modern_glVertexAttrib1fv_p);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib1fv_p", XS_OpenGL__Modern_glVertexAttrib1fv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glVertexAttrib1hNV", XS_OpenGL__Modern_glVertexAttrib1hNV);
        newXS_deffile("OpenGL::Modern::glVertexAttrib1hvNV_c", XS_OpenGL__Modern_glVertexAttrib1hvNV_c);
        newXS_deffile("OpenGL::Modern::glVertexAttrib1hvNV_p", XS_OpenGL__Modern_glVertexAttrib1hvNV_p);
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib1s", XS_OpenGL__Modern_glVertexAttrib1s);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib1sARB", XS_OpenGL__Modern_glVertexAttrib1s);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib1sNV", XS_OpenGL__Modern_glVertexAttrib1s);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib1svARB_c", XS_OpenGL__Modern_glVertexAttrib1sv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib1svNV_c", XS_OpenGL__Modern_glVertexAttrib1sv_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib1sv_c", XS_OpenGL__Modern_glVertexAttrib1sv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib1svARB_p", XS_OpenGL__Modern_glVertexAttrib1sv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib1svNV_p", XS_OpenGL__Modern_glVertexAttrib1sv_p);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib1sv_p", XS_OpenGL__Modern_glVertexAttrib1sv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib2d", XS_OpenGL__Modern_glVertexAttrib2d);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib2dARB", XS_OpenGL__Modern_glVertexAttrib2d);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib2dNV", XS_OpenGL__Modern_glVertexAttrib2d);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib2dvARB_c", XS_OpenGL__Modern_glVertexAttrib2dv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib2dvNV_c", XS_OpenGL__Modern_glVertexAttrib2dv_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib2dv_c", XS_OpenGL__Modern_glVertexAttrib2dv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib2dvARB_p", XS_OpenGL__Modern_glVertexAttrib2dv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib2dvNV_p", XS_OpenGL__Modern_glVertexAttrib2dv_p);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib2dv_p", XS_OpenGL__Modern_glVertexAttrib2dv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib2f", XS_OpenGL__Modern_glVertexAttrib2f);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib2fARB", XS_OpenGL__Modern_glVertexAttrib2f);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib2fNV", XS_OpenGL__Modern_glVertexAttrib2f);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib2fvARB_c", XS_OpenGL__Modern_glVertexAttrib2fv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib2fvNV_c", XS_OpenGL__Modern_glVertexAttrib2fv_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib2fv_c", XS_OpenGL__Modern_glVertexAttrib2fv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib2fvARB_p", XS_OpenGL__Modern_glVertexAttrib2fv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib2fvNV_p", XS_OpenGL__Modern_glVertexAttrib2fv_p);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib2fv_p", XS_OpenGL__Modern_glVertexAttrib2fv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glVertexAttrib2hNV", XS_OpenGL__Modern_glVertexAttrib2hNV);
        newXS_deffile("OpenGL::Modern::glVertexAttrib2hvNV_c", XS_OpenGL__Modern_glVertexAttrib2hvNV_c);
        newXS_deffile("OpenGL::Modern::glVertexAttrib2hvNV_p", XS_OpenGL__Modern_glVertexAttrib2hvNV_p);
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib2s", XS_OpenGL__Modern_glVertexAttrib2s);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib2sARB", XS_OpenGL__Modern_glVertexAttrib2s);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib2sNV", XS_OpenGL__Modern_glVertexAttrib2s);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib2svARB_c", XS_OpenGL__Modern_glVertexAttrib2sv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib2svNV_c", XS_OpenGL__Modern_glVertexAttrib2sv_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib2sv_c", XS_OpenGL__Modern_glVertexAttrib2sv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib2svARB_p", XS_OpenGL__Modern_glVertexAttrib2sv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib2svNV_p", XS_OpenGL__Modern_glVertexAttrib2sv_p);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib2sv_p", XS_OpenGL__Modern_glVertexAttrib2sv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib3d", XS_OpenGL__Modern_glVertexAttrib3d);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib3dARB", XS_OpenGL__Modern_glVertexAttrib3d);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib3dNV", XS_OpenGL__Modern_glVertexAttrib3d);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib3dvARB_c", XS_OpenGL__Modern_glVertexAttrib3dv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib3dvNV_c", XS_OpenGL__Modern_glVertexAttrib3dv_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib3dv_c", XS_OpenGL__Modern_glVertexAttrib3dv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib3dvARB_p", XS_OpenGL__Modern_glVertexAttrib3dv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib3dvNV_p", XS_OpenGL__Modern_glVertexAttrib3dv_p);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib3dv_p", XS_OpenGL__Modern_glVertexAttrib3dv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib3f", XS_OpenGL__Modern_glVertexAttrib3f);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib3fARB", XS_OpenGL__Modern_glVertexAttrib3f);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib3fNV", XS_OpenGL__Modern_glVertexAttrib3f);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib3fvARB_c", XS_OpenGL__Modern_glVertexAttrib3fv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib3fvNV_c", XS_OpenGL__Modern_glVertexAttrib3fv_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib3fv_c", XS_OpenGL__Modern_glVertexAttrib3fv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib3fvARB_p", XS_OpenGL__Modern_glVertexAttrib3fv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib3fvNV_p", XS_OpenGL__Modern_glVertexAttrib3fv_p);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib3fv_p", XS_OpenGL__Modern_glVertexAttrib3fv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glVertexAttrib3hNV", XS_OpenGL__Modern_glVertexAttrib3hNV);
        newXS_deffile("OpenGL::Modern::glVertexAttrib3hvNV_c", XS_OpenGL__Modern_glVertexAttrib3hvNV_c);
        newXS_deffile("OpenGL::Modern::glVertexAttrib3hvNV_p", XS_OpenGL__Modern_glVertexAttrib3hvNV_p);
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib3s", XS_OpenGL__Modern_glVertexAttrib3s);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib3sARB", XS_OpenGL__Modern_glVertexAttrib3s);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib3sNV", XS_OpenGL__Modern_glVertexAttrib3s);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib3svARB_c", XS_OpenGL__Modern_glVertexAttrib3sv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib3svNV_c", XS_OpenGL__Modern_glVertexAttrib3sv_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib3sv_c", XS_OpenGL__Modern_glVertexAttrib3sv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib3svARB_p", XS_OpenGL__Modern_glVertexAttrib3sv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib3svNV_p", XS_OpenGL__Modern_glVertexAttrib3sv_p);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib3sv_p", XS_OpenGL__Modern_glVertexAttrib3sv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4NbvARB_c", XS_OpenGL__Modern_glVertexAttrib4Nbv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4Nbv_c", XS_OpenGL__Modern_glVertexAttrib4Nbv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4NbvARB_p", XS_OpenGL__Modern_glVertexAttrib4Nbv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4Nbv_p", XS_OpenGL__Modern_glVertexAttrib4Nbv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4NivARB_c", XS_OpenGL__Modern_glVertexAttrib4Niv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4Niv_c", XS_OpenGL__Modern_glVertexAttrib4Niv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4NivARB_p", XS_OpenGL__Modern_glVertexAttrib4Niv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4Niv_p", XS_OpenGL__Modern_glVertexAttrib4Niv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4NsvARB_c", XS_OpenGL__Modern_glVertexAttrib4Nsv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4Nsv_c", XS_OpenGL__Modern_glVertexAttrib4Nsv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4NsvARB_p", XS_OpenGL__Modern_glVertexAttrib4Nsv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4Nsv_p", XS_OpenGL__Modern_glVertexAttrib4Nsv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4Nub", XS_OpenGL__Modern_glVertexAttrib4Nub);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4NubARB", XS_OpenGL__Modern_glVertexAttrib4Nub);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4ubNV", XS_OpenGL__Modern_glVertexAttrib4Nub);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4NubvARB_c", XS_OpenGL__Modern_glVertexAttrib4Nubv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4Nubv_c", XS_OpenGL__Modern_glVertexAttrib4Nubv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4ubvNV_c", XS_OpenGL__Modern_glVertexAttrib4Nubv_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4NubvARB_p", XS_OpenGL__Modern_glVertexAttrib4Nubv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4Nubv_p", XS_OpenGL__Modern_glVertexAttrib4Nubv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4ubvNV_p", XS_OpenGL__Modern_glVertexAttrib4Nubv_p);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4NuivARB_c", XS_OpenGL__Modern_glVertexAttrib4Nuiv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4Nuiv_c", XS_OpenGL__Modern_glVertexAttrib4Nuiv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4NuivARB_p", XS_OpenGL__Modern_glVertexAttrib4Nuiv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4Nuiv_p", XS_OpenGL__Modern_glVertexAttrib4Nuiv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4NusvARB_c", XS_OpenGL__Modern_glVertexAttrib4Nusv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4Nusv_c", XS_OpenGL__Modern_glVertexAttrib4Nusv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4NusvARB_p", XS_OpenGL__Modern_glVertexAttrib4Nusv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4Nusv_p", XS_OpenGL__Modern_glVertexAttrib4Nusv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4bvARB_c", XS_OpenGL__Modern_glVertexAttrib4bv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4bv_c", XS_OpenGL__Modern_glVertexAttrib4bv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4bvARB_p", XS_OpenGL__Modern_glVertexAttrib4bv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4bv_p", XS_OpenGL__Modern_glVertexAttrib4bv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4d", XS_OpenGL__Modern_glVertexAttrib4d);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4dARB", XS_OpenGL__Modern_glVertexAttrib4d);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4dNV", XS_OpenGL__Modern_glVertexAttrib4d);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4dvARB_c", XS_OpenGL__Modern_glVertexAttrib4dv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4dvNV_c", XS_OpenGL__Modern_glVertexAttrib4dv_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4dv_c", XS_OpenGL__Modern_glVertexAttrib4dv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4dvARB_p", XS_OpenGL__Modern_glVertexAttrib4dv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4dvNV_p", XS_OpenGL__Modern_glVertexAttrib4dv_p);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4dv_p", XS_OpenGL__Modern_glVertexAttrib4dv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4f", XS_OpenGL__Modern_glVertexAttrib4f);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4fARB", XS_OpenGL__Modern_glVertexAttrib4f);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4fNV", XS_OpenGL__Modern_glVertexAttrib4f);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4fvARB_c", XS_OpenGL__Modern_glVertexAttrib4fv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4fvNV_c", XS_OpenGL__Modern_glVertexAttrib4fv_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4fv_c", XS_OpenGL__Modern_glVertexAttrib4fv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4fvARB_p", XS_OpenGL__Modern_glVertexAttrib4fv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4fvNV_p", XS_OpenGL__Modern_glVertexAttrib4fv_p);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4fv_p", XS_OpenGL__Modern_glVertexAttrib4fv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glVertexAttrib4hNV", XS_OpenGL__Modern_glVertexAttrib4hNV);
        newXS_deffile("OpenGL::Modern::glVertexAttrib4hvNV_c", XS_OpenGL__Modern_glVertexAttrib4hvNV_c);
        newXS_deffile("OpenGL::Modern::glVertexAttrib4hvNV_p", XS_OpenGL__Modern_glVertexAttrib4hvNV_p);
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4ivARB_c", XS_OpenGL__Modern_glVertexAttrib4iv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4iv_c", XS_OpenGL__Modern_glVertexAttrib4iv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4ivARB_p", XS_OpenGL__Modern_glVertexAttrib4iv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4iv_p", XS_OpenGL__Modern_glVertexAttrib4iv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4s", XS_OpenGL__Modern_glVertexAttrib4s);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4sARB", XS_OpenGL__Modern_glVertexAttrib4s);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4sNV", XS_OpenGL__Modern_glVertexAttrib4s);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4svARB_c", XS_OpenGL__Modern_glVertexAttrib4sv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4svNV_c", XS_OpenGL__Modern_glVertexAttrib4sv_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4sv_c", XS_OpenGL__Modern_glVertexAttrib4sv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4svARB_p", XS_OpenGL__Modern_glVertexAttrib4sv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4svNV_p", XS_OpenGL__Modern_glVertexAttrib4sv_p);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4sv_p", XS_OpenGL__Modern_glVertexAttrib4sv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4ubvARB_c", XS_OpenGL__Modern_glVertexAttrib4ubv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4ubv_c", XS_OpenGL__Modern_glVertexAttrib4ubv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4ubvARB_p", XS_OpenGL__Modern_glVertexAttrib4ubv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4ubv_p", XS_OpenGL__Modern_glVertexAttrib4ubv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4uivARB_c", XS_OpenGL__Modern_glVertexAttrib4uiv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4uiv_c", XS_OpenGL__Modern_glVertexAttrib4uiv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4uivARB_p", XS_OpenGL__Modern_glVertexAttrib4uiv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4uiv_p", XS_OpenGL__Modern_glVertexAttrib4uiv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4usvARB_c", XS_OpenGL__Modern_glVertexAttrib4usv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4usv_c", XS_OpenGL__Modern_glVertexAttrib4usv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4usvARB_p", XS_OpenGL__Modern_glVertexAttrib4usv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttrib4usv_p", XS_OpenGL__Modern_glVertexAttrib4usv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glVertexAttribArrayObjectATI", XS_OpenGL__Modern_glVertexAttribArrayObjectATI);
        newXS_deffile("OpenGL::Modern::glVertexAttribBinding", XS_OpenGL__Modern_glVertexAttribBinding);
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribDivisor", XS_OpenGL__Modern_glVertexAttribDivisor);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribDivisorANGLE", XS_OpenGL__Modern_glVertexAttribDivisor);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribDivisorARB", XS_OpenGL__Modern_glVertexAttribDivisor);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribDivisorEXT", XS_OpenGL__Modern_glVertexAttribDivisor);
        XSANY.any_i32 = 3;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribDivisorNV", XS_OpenGL__Modern_glVertexAttribDivisor);
        XSANY.any_i32 = 4;
        newXS_deffile("OpenGL::Modern::glVertexAttribFormat", XS_OpenGL__Modern_glVertexAttribFormat);
        newXS_deffile("OpenGL::Modern::glVertexAttribFormatNV", XS_OpenGL__Modern_glVertexAttribFormatNV);
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI1i", XS_OpenGL__Modern_glVertexAttribI1i);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI1iEXT", XS_OpenGL__Modern_glVertexAttribI1i);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI1ivEXT_c", XS_OpenGL__Modern_glVertexAttribI1iv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI1iv_c", XS_OpenGL__Modern_glVertexAttribI1iv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI1ivEXT_p", XS_OpenGL__Modern_glVertexAttribI1iv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI1iv_p", XS_OpenGL__Modern_glVertexAttribI1iv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI1ui", XS_OpenGL__Modern_glVertexAttribI1ui);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI1uiEXT", XS_OpenGL__Modern_glVertexAttribI1ui);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI1uivEXT_c", XS_OpenGL__Modern_glVertexAttribI1uiv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI1uiv_c", XS_OpenGL__Modern_glVertexAttribI1uiv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI1uivEXT_p", XS_OpenGL__Modern_glVertexAttribI1uiv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI1uiv_p", XS_OpenGL__Modern_glVertexAttribI1uiv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI2i", XS_OpenGL__Modern_glVertexAttribI2i);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI2iEXT", XS_OpenGL__Modern_glVertexAttribI2i);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI2ivEXT_c", XS_OpenGL__Modern_glVertexAttribI2iv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI2iv_c", XS_OpenGL__Modern_glVertexAttribI2iv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI2ivEXT_p", XS_OpenGL__Modern_glVertexAttribI2iv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI2iv_p", XS_OpenGL__Modern_glVertexAttribI2iv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI2ui", XS_OpenGL__Modern_glVertexAttribI2ui);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI2uiEXT", XS_OpenGL__Modern_glVertexAttribI2ui);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI2uivEXT_c", XS_OpenGL__Modern_glVertexAttribI2uiv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI2uiv_c", XS_OpenGL__Modern_glVertexAttribI2uiv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI2uivEXT_p", XS_OpenGL__Modern_glVertexAttribI2uiv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI2uiv_p", XS_OpenGL__Modern_glVertexAttribI2uiv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI3i", XS_OpenGL__Modern_glVertexAttribI3i);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI3iEXT", XS_OpenGL__Modern_glVertexAttribI3i);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI3ivEXT_c", XS_OpenGL__Modern_glVertexAttribI3iv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI3iv_c", XS_OpenGL__Modern_glVertexAttribI3iv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI3ivEXT_p", XS_OpenGL__Modern_glVertexAttribI3iv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI3iv_p", XS_OpenGL__Modern_glVertexAttribI3iv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI3ui", XS_OpenGL__Modern_glVertexAttribI3ui);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI3uiEXT", XS_OpenGL__Modern_glVertexAttribI3ui);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI3uivEXT_c", XS_OpenGL__Modern_glVertexAttribI3uiv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI3uiv_c", XS_OpenGL__Modern_glVertexAttribI3uiv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI3uivEXT_p", XS_OpenGL__Modern_glVertexAttribI3uiv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI3uiv_p", XS_OpenGL__Modern_glVertexAttribI3uiv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI4bvEXT_c", XS_OpenGL__Modern_glVertexAttribI4bv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI4bv_c", XS_OpenGL__Modern_glVertexAttribI4bv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI4bvEXT_p", XS_OpenGL__Modern_glVertexAttribI4bv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI4bv_p", XS_OpenGL__Modern_glVertexAttribI4bv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI4i", XS_OpenGL__Modern_glVertexAttribI4i);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI4iEXT", XS_OpenGL__Modern_glVertexAttribI4i);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI4ivEXT_c", XS_OpenGL__Modern_glVertexAttribI4iv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI4iv_c", XS_OpenGL__Modern_glVertexAttribI4iv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI4ivEXT_p", XS_OpenGL__Modern_glVertexAttribI4iv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI4iv_p", XS_OpenGL__Modern_glVertexAttribI4iv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI4svEXT_c", XS_OpenGL__Modern_glVertexAttribI4sv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI4sv_c", XS_OpenGL__Modern_glVertexAttribI4sv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI4svEXT_p", XS_OpenGL__Modern_glVertexAttribI4sv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI4sv_p", XS_OpenGL__Modern_glVertexAttribI4sv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI4ubvEXT_c", XS_OpenGL__Modern_glVertexAttribI4ubv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI4ubv_c", XS_OpenGL__Modern_glVertexAttribI4ubv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI4ubvEXT_p", XS_OpenGL__Modern_glVertexAttribI4ubv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI4ubv_p", XS_OpenGL__Modern_glVertexAttribI4ubv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI4ui", XS_OpenGL__Modern_glVertexAttribI4ui);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI4uiEXT", XS_OpenGL__Modern_glVertexAttribI4ui);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI4uivEXT_c", XS_OpenGL__Modern_glVertexAttribI4uiv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI4uiv_c", XS_OpenGL__Modern_glVertexAttribI4uiv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI4uivEXT_p", XS_OpenGL__Modern_glVertexAttribI4uiv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI4uiv_p", XS_OpenGL__Modern_glVertexAttribI4uiv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI4usvEXT_c", XS_OpenGL__Modern_glVertexAttribI4usv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI4usv_c", XS_OpenGL__Modern_glVertexAttribI4usv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI4usvEXT_p", XS_OpenGL__Modern_glVertexAttribI4usv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribI4usv_p", XS_OpenGL__Modern_glVertexAttribI4usv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glVertexAttribIFormat", XS_OpenGL__Modern_glVertexAttribIFormat);
        newXS_deffile("OpenGL::Modern::glVertexAttribIFormatNV", XS_OpenGL__Modern_glVertexAttribIFormatNV);
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribIPointerEXT_c", XS_OpenGL__Modern_glVertexAttribIPointer_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribIPointer_c", XS_OpenGL__Modern_glVertexAttribIPointer_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribL1d", XS_OpenGL__Modern_glVertexAttribL1d);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribL1dEXT", XS_OpenGL__Modern_glVertexAttribL1d);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribL1dvEXT_c", XS_OpenGL__Modern_glVertexAttribL1dv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribL1dv_c", XS_OpenGL__Modern_glVertexAttribL1dv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribL1dvEXT_p", XS_OpenGL__Modern_glVertexAttribL1dv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribL1dv_p", XS_OpenGL__Modern_glVertexAttribL1dv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glVertexAttribL1i64NV", XS_OpenGL__Modern_glVertexAttribL1i64NV);
        newXS_deffile("OpenGL::Modern::glVertexAttribL1i64vNV_c", XS_OpenGL__Modern_glVertexAttribL1i64vNV_c);
        newXS_deffile("OpenGL::Modern::glVertexAttribL1i64vNV_p", XS_OpenGL__Modern_glVertexAttribL1i64vNV_p);
        newXS_deffile("OpenGL::Modern::glVertexAttribL1ui64ARB", XS_OpenGL__Modern_glVertexAttribL1ui64ARB);
        newXS_deffile("OpenGL::Modern::glVertexAttribL1ui64NV", XS_OpenGL__Modern_glVertexAttribL1ui64NV);
        newXS_deffile("OpenGL::Modern::glVertexAttribL1ui64vARB_c", XS_OpenGL__Modern_glVertexAttribL1ui64vARB_c);
        newXS_deffile("OpenGL::Modern::glVertexAttribL1ui64vNV_c", XS_OpenGL__Modern_glVertexAttribL1ui64vNV_c);
        newXS_deffile("OpenGL::Modern::glVertexAttribL1ui64vNV_p", XS_OpenGL__Modern_glVertexAttribL1ui64vNV_p);
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribL2d", XS_OpenGL__Modern_glVertexAttribL2d);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribL2dEXT", XS_OpenGL__Modern_glVertexAttribL2d);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribL2dvEXT_c", XS_OpenGL__Modern_glVertexAttribL2dv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribL2dv_c", XS_OpenGL__Modern_glVertexAttribL2dv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribL2dvEXT_p", XS_OpenGL__Modern_glVertexAttribL2dv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribL2dv_p", XS_OpenGL__Modern_glVertexAttribL2dv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glVertexAttribL2i64NV", XS_OpenGL__Modern_glVertexAttribL2i64NV);
        newXS_deffile("OpenGL::Modern::glVertexAttribL2i64vNV_c", XS_OpenGL__Modern_glVertexAttribL2i64vNV_c);
        newXS_deffile("OpenGL::Modern::glVertexAttribL2i64vNV_p", XS_OpenGL__Modern_glVertexAttribL2i64vNV_p);
        newXS_deffile("OpenGL::Modern::glVertexAttribL2ui64NV", XS_OpenGL__Modern_glVertexAttribL2ui64NV);
        newXS_deffile("OpenGL::Modern::glVertexAttribL2ui64vNV_c", XS_OpenGL__Modern_glVertexAttribL2ui64vNV_c);
        newXS_deffile("OpenGL::Modern::glVertexAttribL2ui64vNV_p", XS_OpenGL__Modern_glVertexAttribL2ui64vNV_p);
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribL3d", XS_OpenGL__Modern_glVertexAttribL3d);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribL3dEXT", XS_OpenGL__Modern_glVertexAttribL3d);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribL3dvEXT_c", XS_OpenGL__Modern_glVertexAttribL3dv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribL3dv_c", XS_OpenGL__Modern_glVertexAttribL3dv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribL3dvEXT_p", XS_OpenGL__Modern_glVertexAttribL3dv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribL3dv_p", XS_OpenGL__Modern_glVertexAttribL3dv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glVertexAttribL3i64NV", XS_OpenGL__Modern_glVertexAttribL3i64NV);
        newXS_deffile("OpenGL::Modern::glVertexAttribL3i64vNV_c", XS_OpenGL__Modern_glVertexAttribL3i64vNV_c);
        newXS_deffile("OpenGL::Modern::glVertexAttribL3i64vNV_p", XS_OpenGL__Modern_glVertexAttribL3i64vNV_p);
        newXS_deffile("OpenGL::Modern::glVertexAttribL3ui64NV", XS_OpenGL__Modern_glVertexAttribL3ui64NV);
        newXS_deffile("OpenGL::Modern::glVertexAttribL3ui64vNV_c", XS_OpenGL__Modern_glVertexAttribL3ui64vNV_c);
        newXS_deffile("OpenGL::Modern::glVertexAttribL3ui64vNV_p", XS_OpenGL__Modern_glVertexAttribL3ui64vNV_p);
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribL4d", XS_OpenGL__Modern_glVertexAttribL4d);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribL4dEXT", XS_OpenGL__Modern_glVertexAttribL4d);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribL4dvEXT_c", XS_OpenGL__Modern_glVertexAttribL4dv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribL4dv_c", XS_OpenGL__Modern_glVertexAttribL4dv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribL4dvEXT_p", XS_OpenGL__Modern_glVertexAttribL4dv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribL4dv_p", XS_OpenGL__Modern_glVertexAttribL4dv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glVertexAttribL4i64NV", XS_OpenGL__Modern_glVertexAttribL4i64NV);
        newXS_deffile("OpenGL::Modern::glVertexAttribL4i64vNV_c", XS_OpenGL__Modern_glVertexAttribL4i64vNV_c);
        newXS_deffile("OpenGL::Modern::glVertexAttribL4i64vNV_p", XS_OpenGL__Modern_glVertexAttribL4i64vNV_p);
        newXS_deffile("OpenGL::Modern::glVertexAttribL4ui64NV", XS_OpenGL__Modern_glVertexAttribL4ui64NV);
        newXS_deffile("OpenGL::Modern::glVertexAttribL4ui64vNV_c", XS_OpenGL__Modern_glVertexAttribL4ui64vNV_c);
        newXS_deffile("OpenGL::Modern::glVertexAttribL4ui64vNV_p", XS_OpenGL__Modern_glVertexAttribL4ui64vNV_p);
        newXS_deffile("OpenGL::Modern::glVertexAttribLFormat", XS_OpenGL__Modern_glVertexAttribLFormat);
        newXS_deffile("OpenGL::Modern::glVertexAttribLFormatNV", XS_OpenGL__Modern_glVertexAttribLFormatNV);
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribLPointerEXT_c", XS_OpenGL__Modern_glVertexAttribLPointer_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribLPointer_c", XS_OpenGL__Modern_glVertexAttribLPointer_c);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glVertexAttribP1ui", XS_OpenGL__Modern_glVertexAttribP1ui);
        newXS_deffile("OpenGL::Modern::glVertexAttribP1uiv_c", XS_OpenGL__Modern_glVertexAttribP1uiv_c);
        newXS_deffile("OpenGL::Modern::glVertexAttribP1uiv_p", XS_OpenGL__Modern_glVertexAttribP1uiv_p);
        newXS_deffile("OpenGL::Modern::glVertexAttribP2ui", XS_OpenGL__Modern_glVertexAttribP2ui);
        newXS_deffile("OpenGL::Modern::glVertexAttribP2uiv_c", XS_OpenGL__Modern_glVertexAttribP2uiv_c);
        newXS_deffile("OpenGL::Modern::glVertexAttribP2uiv_p", XS_OpenGL__Modern_glVertexAttribP2uiv_p);
        newXS_deffile("OpenGL::Modern::glVertexAttribP3ui", XS_OpenGL__Modern_glVertexAttribP3ui);
        newXS_deffile("OpenGL::Modern::glVertexAttribP3uiv_c", XS_OpenGL__Modern_glVertexAttribP3uiv_c);
        newXS_deffile("OpenGL::Modern::glVertexAttribP3uiv_p", XS_OpenGL__Modern_glVertexAttribP3uiv_p);
        newXS_deffile("OpenGL::Modern::glVertexAttribP4ui", XS_OpenGL__Modern_glVertexAttribP4ui);
        newXS_deffile("OpenGL::Modern::glVertexAttribP4uiv_c", XS_OpenGL__Modern_glVertexAttribP4uiv_c);
        newXS_deffile("OpenGL::Modern::glVertexAttribP4uiv_p", XS_OpenGL__Modern_glVertexAttribP4uiv_p);
        newXS_deffile("OpenGL::Modern::glVertexAttribParameteriAMD", XS_OpenGL__Modern_glVertexAttribParameteriAMD);
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribPointerARB_c", XS_OpenGL__Modern_glVertexAttribPointer_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glVertexAttribPointer_c", XS_OpenGL__Modern_glVertexAttribPointer_c);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glVertexAttribPointerNV_c", XS_OpenGL__Modern_glVertexAttribPointerNV_c);
        newXS_deffile("OpenGL::Modern::glVertexAttribs1dvNV_c", XS_OpenGL__Modern_glVertexAttribs1dvNV_c);
        newXS_deffile("OpenGL::Modern::glVertexAttribs1dvNV_p", XS_OpenGL__Modern_glVertexAttribs1dvNV_p);
        newXS_deffile("OpenGL::Modern::glVertexAttribs1fvNV_c", XS_OpenGL__Modern_glVertexAttribs1fvNV_c);
        newXS_deffile("OpenGL::Modern::glVertexAttribs1fvNV_p", XS_OpenGL__Modern_glVertexAttribs1fvNV_p);
        newXS_deffile("OpenGL::Modern::glVertexAttribs1hvNV_c", XS_OpenGL__Modern_glVertexAttribs1hvNV_c);
        newXS_deffile("OpenGL::Modern::glVertexAttribs1hvNV_p", XS_OpenGL__Modern_glVertexAttribs1hvNV_p);
        newXS_deffile("OpenGL::Modern::glVertexAttribs1svNV_c", XS_OpenGL__Modern_glVertexAttribs1svNV_c);
        newXS_deffile("OpenGL::Modern::glVertexAttribs1svNV_p", XS_OpenGL__Modern_glVertexAttribs1svNV_p);
        newXS_deffile("OpenGL::Modern::glVertexAttribs2dvNV_c", XS_OpenGL__Modern_glVertexAttribs2dvNV_c);
        newXS_deffile("OpenGL::Modern::glVertexAttribs2dvNV_p", XS_OpenGL__Modern_glVertexAttribs2dvNV_p);
        newXS_deffile("OpenGL::Modern::glVertexAttribs2fvNV_c", XS_OpenGL__Modern_glVertexAttribs2fvNV_c);
        newXS_deffile("OpenGL::Modern::glVertexAttribs2fvNV_p", XS_OpenGL__Modern_glVertexAttribs2fvNV_p);
        newXS_deffile("OpenGL::Modern::glVertexAttribs2hvNV_c", XS_OpenGL__Modern_glVertexAttribs2hvNV_c);
        newXS_deffile("OpenGL::Modern::glVertexAttribs2hvNV_p", XS_OpenGL__Modern_glVertexAttribs2hvNV_p);
        newXS_deffile("OpenGL::Modern::glVertexAttribs2svNV_c", XS_OpenGL__Modern_glVertexAttribs2svNV_c);
        newXS_deffile("OpenGL::Modern::glVertexAttribs2svNV_p", XS_OpenGL__Modern_glVertexAttribs2svNV_p);
        newXS_deffile("OpenGL::Modern::glVertexAttribs3dvNV_c", XS_OpenGL__Modern_glVertexAttribs3dvNV_c);
        newXS_deffile("OpenGL::Modern::glVertexAttribs3dvNV_p", XS_OpenGL__Modern_glVertexAttribs3dvNV_p);
        newXS_deffile("OpenGL::Modern::glVertexAttribs3fvNV_c", XS_OpenGL__Modern_glVertexAttribs3fvNV_c);
        newXS_deffile("OpenGL::Modern::glVertexAttribs3fvNV_p", XS_OpenGL__Modern_glVertexAttribs3fvNV_p);
        newXS_deffile("OpenGL::Modern::glVertexAttribs3hvNV_c", XS_OpenGL__Modern_glVertexAttribs3hvNV_c);
        newXS_deffile("OpenGL::Modern::glVertexAttribs3hvNV_p", XS_OpenGL__Modern_glVertexAttribs3hvNV_p);
        newXS_deffile("OpenGL::Modern::glVertexAttribs3svNV_c", XS_OpenGL__Modern_glVertexAttribs3svNV_c);
        newXS_deffile("OpenGL::Modern::glVertexAttribs3svNV_p", XS_OpenGL__Modern_glVertexAttribs3svNV_p);
        newXS_deffile("OpenGL::Modern::glVertexAttribs4dvNV_c", XS_OpenGL__Modern_glVertexAttribs4dvNV_c);
        newXS_deffile("OpenGL::Modern::glVertexAttribs4dvNV_p", XS_OpenGL__Modern_glVertexAttribs4dvNV_p);
        newXS_deffile("OpenGL::Modern::glVertexAttribs4fvNV_c", XS_OpenGL__Modern_glVertexAttribs4fvNV_c);
        newXS_deffile("OpenGL::Modern::glVertexAttribs4fvNV_p", XS_OpenGL__Modern_glVertexAttribs4fvNV_p);
        newXS_deffile("OpenGL::Modern::glVertexAttribs4hvNV_c", XS_OpenGL__Modern_glVertexAttribs4hvNV_c);
        newXS_deffile("OpenGL::Modern::glVertexAttribs4hvNV_p", XS_OpenGL__Modern_glVertexAttribs4hvNV_p);
        newXS_deffile("OpenGL::Modern::glVertexAttribs4svNV_c", XS_OpenGL__Modern_glVertexAttribs4svNV_c);
        newXS_deffile("OpenGL::Modern::glVertexAttribs4svNV_p", XS_OpenGL__Modern_glVertexAttribs4svNV_p);
        newXS_deffile("OpenGL::Modern::glVertexAttribs4ubvNV_c", XS_OpenGL__Modern_glVertexAttribs4ubvNV_c);
        newXS_deffile("OpenGL::Modern::glVertexAttribs4ubvNV_p", XS_OpenGL__Modern_glVertexAttribs4ubvNV_p);
        newXS_deffile("OpenGL::Modern::glVertexBindingDivisor", XS_OpenGL__Modern_glVertexBindingDivisor);
        newXS_deffile("OpenGL::Modern::glVertexBlendARB", XS_OpenGL__Modern_glVertexBlendARB);
        newXS_deffile("OpenGL::Modern::glVertexBlendEnvfATI", XS_OpenGL__Modern_glVertexBlendEnvfATI);
        newXS_deffile("OpenGL::Modern::glVertexBlendEnviATI", XS_OpenGL__Modern_glVertexBlendEnviATI);
        newXS_deffile("OpenGL::Modern::glVertexFormatNV", XS_OpenGL__Modern_glVertexFormatNV);
        newXS_deffile("OpenGL::Modern::glVertexP2ui", XS_OpenGL__Modern_glVertexP2ui);
        newXS_deffile("OpenGL::Modern::glVertexP2uiv_c", XS_OpenGL__Modern_glVertexP2uiv_c);
        newXS_deffile("OpenGL::Modern::glVertexP2uiv_p", XS_OpenGL__Modern_glVertexP2uiv_p);
        newXS_deffile("OpenGL::Modern::glVertexP3ui", XS_OpenGL__Modern_glVertexP3ui);
        newXS_deffile("OpenGL::Modern::glVertexP3uiv_c", XS_OpenGL__Modern_glVertexP3uiv_c);
        newXS_deffile("OpenGL::Modern::glVertexP3uiv_p", XS_OpenGL__Modern_glVertexP3uiv_p);
        newXS_deffile("OpenGL::Modern::glVertexP4ui", XS_OpenGL__Modern_glVertexP4ui);
        newXS_deffile("OpenGL::Modern::glVertexP4uiv_c", XS_OpenGL__Modern_glVertexP4uiv_c);
        newXS_deffile("OpenGL::Modern::glVertexP4uiv_p", XS_OpenGL__Modern_glVertexP4uiv_p);
        newXS_deffile("OpenGL::Modern::glVertexPointer_c", XS_OpenGL__Modern_glVertexPointer_c);
        newXS_deffile("OpenGL::Modern::glVertexPointerEXT_c", XS_OpenGL__Modern_glVertexPointerEXT_c);
        newXS_deffile("OpenGL::Modern::glVertexPointerListIBM_c", XS_OpenGL__Modern_glVertexPointerListIBM_c);
        newXS_deffile("OpenGL::Modern::glVertexPointervINTEL_c", XS_OpenGL__Modern_glVertexPointervINTEL_c);
        newXS_deffile("OpenGL::Modern::glVertexStream1dATI", XS_OpenGL__Modern_glVertexStream1dATI);
        newXS_deffile("OpenGL::Modern::glVertexStream1dvATI_c", XS_OpenGL__Modern_glVertexStream1dvATI_c);
        newXS_deffile("OpenGL::Modern::glVertexStream1dvATI_p", XS_OpenGL__Modern_glVertexStream1dvATI_p);
        newXS_deffile("OpenGL::Modern::glVertexStream1fATI", XS_OpenGL__Modern_glVertexStream1fATI);
        newXS_deffile("OpenGL::Modern::glVertexStream1fvATI_c", XS_OpenGL__Modern_glVertexStream1fvATI_c);
        newXS_deffile("OpenGL::Modern::glVertexStream1fvATI_p", XS_OpenGL__Modern_glVertexStream1fvATI_p);
        newXS_deffile("OpenGL::Modern::glVertexStream1iATI", XS_OpenGL__Modern_glVertexStream1iATI);
        newXS_deffile("OpenGL::Modern::glVertexStream1ivATI_c", XS_OpenGL__Modern_glVertexStream1ivATI_c);
        newXS_deffile("OpenGL::Modern::glVertexStream1ivATI_p", XS_OpenGL__Modern_glVertexStream1ivATI_p);
        newXS_deffile("OpenGL::Modern::glVertexStream1sATI", XS_OpenGL__Modern_glVertexStream1sATI);
        newXS_deffile("OpenGL::Modern::glVertexStream1svATI_c", XS_OpenGL__Modern_glVertexStream1svATI_c);
        newXS_deffile("OpenGL::Modern::glVertexStream1svATI_p", XS_OpenGL__Modern_glVertexStream1svATI_p);
        newXS_deffile("OpenGL::Modern::glVertexStream2dATI", XS_OpenGL__Modern_glVertexStream2dATI);
        newXS_deffile("OpenGL::Modern::glVertexStream2dvATI_c", XS_OpenGL__Modern_glVertexStream2dvATI_c);
        newXS_deffile("OpenGL::Modern::glVertexStream2dvATI_p", XS_OpenGL__Modern_glVertexStream2dvATI_p);
        newXS_deffile("OpenGL::Modern::glVertexStream2fATI", XS_OpenGL__Modern_glVertexStream2fATI);
        newXS_deffile("OpenGL::Modern::glVertexStream2fvATI_c", XS_OpenGL__Modern_glVertexStream2fvATI_c);
        newXS_deffile("OpenGL::Modern::glVertexStream2fvATI_p", XS_OpenGL__Modern_glVertexStream2fvATI_p);
        newXS_deffile("OpenGL::Modern::glVertexStream2iATI", XS_OpenGL__Modern_glVertexStream2iATI);
        newXS_deffile("OpenGL::Modern::glVertexStream2ivATI_c", XS_OpenGL__Modern_glVertexStream2ivATI_c);
        newXS_deffile("OpenGL::Modern::glVertexStream2ivATI_p", XS_OpenGL__Modern_glVertexStream2ivATI_p);
        newXS_deffile("OpenGL::Modern::glVertexStream2sATI", XS_OpenGL__Modern_glVertexStream2sATI);
        newXS_deffile("OpenGL::Modern::glVertexStream2svATI_c", XS_OpenGL__Modern_glVertexStream2svATI_c);
        newXS_deffile("OpenGL::Modern::glVertexStream2svATI_p", XS_OpenGL__Modern_glVertexStream2svATI_p);
        newXS_deffile("OpenGL::Modern::glVertexStream3dATI", XS_OpenGL__Modern_glVertexStream3dATI);
        newXS_deffile("OpenGL::Modern::glVertexStream3dvATI_c", XS_OpenGL__Modern_glVertexStream3dvATI_c);
        newXS_deffile("OpenGL::Modern::glVertexStream3dvATI_p", XS_OpenGL__Modern_glVertexStream3dvATI_p);
        newXS_deffile("OpenGL::Modern::glVertexStream3fATI", XS_OpenGL__Modern_glVertexStream3fATI);
        newXS_deffile("OpenGL::Modern::glVertexStream3fvATI_c", XS_OpenGL__Modern_glVertexStream3fvATI_c);
        newXS_deffile("OpenGL::Modern::glVertexStream3fvATI_p", XS_OpenGL__Modern_glVertexStream3fvATI_p);
        newXS_deffile("OpenGL::Modern::glVertexStream3iATI", XS_OpenGL__Modern_glVertexStream3iATI);
        newXS_deffile("OpenGL::Modern::glVertexStream3ivATI_c", XS_OpenGL__Modern_glVertexStream3ivATI_c);
        newXS_deffile("OpenGL::Modern::glVertexStream3ivATI_p", XS_OpenGL__Modern_glVertexStream3ivATI_p);
        newXS_deffile("OpenGL::Modern::glVertexStream3sATI", XS_OpenGL__Modern_glVertexStream3sATI);
        newXS_deffile("OpenGL::Modern::glVertexStream3svATI_c", XS_OpenGL__Modern_glVertexStream3svATI_c);
        newXS_deffile("OpenGL::Modern::glVertexStream3svATI_p", XS_OpenGL__Modern_glVertexStream3svATI_p);
        newXS_deffile("OpenGL::Modern::glVertexStream4dATI", XS_OpenGL__Modern_glVertexStream4dATI);
        newXS_deffile("OpenGL::Modern::glVertexStream4dvATI_c", XS_OpenGL__Modern_glVertexStream4dvATI_c);
        newXS_deffile("OpenGL::Modern::glVertexStream4dvATI_p", XS_OpenGL__Modern_glVertexStream4dvATI_p);
        newXS_deffile("OpenGL::Modern::glVertexStream4fATI", XS_OpenGL__Modern_glVertexStream4fATI);
        newXS_deffile("OpenGL::Modern::glVertexStream4fvATI_c", XS_OpenGL__Modern_glVertexStream4fvATI_c);
        newXS_deffile("OpenGL::Modern::glVertexStream4fvATI_p", XS_OpenGL__Modern_glVertexStream4fvATI_p);
        newXS_deffile("OpenGL::Modern::glVertexStream4iATI", XS_OpenGL__Modern_glVertexStream4iATI);
        newXS_deffile("OpenGL::Modern::glVertexStream4ivATI_c", XS_OpenGL__Modern_glVertexStream4ivATI_c);
        newXS_deffile("OpenGL::Modern::glVertexStream4ivATI_p", XS_OpenGL__Modern_glVertexStream4ivATI_p);
        newXS_deffile("OpenGL::Modern::glVertexStream4sATI", XS_OpenGL__Modern_glVertexStream4sATI);
        newXS_deffile("OpenGL::Modern::glVertexStream4svATI_c", XS_OpenGL__Modern_glVertexStream4svATI_c);
        newXS_deffile("OpenGL::Modern::glVertexStream4svATI_p", XS_OpenGL__Modern_glVertexStream4svATI_p);
        newXS_deffile("OpenGL::Modern::glVertexWeightPointerEXT_c", XS_OpenGL__Modern_glVertexWeightPointerEXT_c);
        newXS_deffile("OpenGL::Modern::glVertexWeightfEXT", XS_OpenGL__Modern_glVertexWeightfEXT);
        newXS_deffile("OpenGL::Modern::glVertexWeightfvEXT_c", XS_OpenGL__Modern_glVertexWeightfvEXT_c);
        newXS_deffile("OpenGL::Modern::glVertexWeightfvEXT_p", XS_OpenGL__Modern_glVertexWeightfvEXT_p);
        newXS_deffile("OpenGL::Modern::glVertexWeighthNV", XS_OpenGL__Modern_glVertexWeighthNV);
        newXS_deffile("OpenGL::Modern::glVertexWeighthvNV_c", XS_OpenGL__Modern_glVertexWeighthvNV_c);
        newXS_deffile("OpenGL::Modern::glVertexWeighthvNV_p", XS_OpenGL__Modern_glVertexWeighthvNV_p);
        newXS_deffile("OpenGL::Modern::glVideoCaptureNV_c", XS_OpenGL__Modern_glVideoCaptureNV_c);
        newXS_deffile("OpenGL::Modern::glVideoCaptureStreamParameterdvNV_c", XS_OpenGL__Modern_glVideoCaptureStreamParameterdvNV_c);
        newXS_deffile("OpenGL::Modern::glVideoCaptureStreamParameterfvNV_c", XS_OpenGL__Modern_glVideoCaptureStreamParameterfvNV_c);
        newXS_deffile("OpenGL::Modern::glVideoCaptureStreamParameterivNV_c", XS_OpenGL__Modern_glVideoCaptureStreamParameterivNV_c);
        newXS_deffile("OpenGL::Modern::glViewport", XS_OpenGL__Modern_glViewport);
        cv = newXS_deffile("OpenGL::Modern::glViewportArrayvNV_c", XS_OpenGL__Modern_glViewportArrayv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glViewportArrayv_c", XS_OpenGL__Modern_glViewportArrayv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glViewportArrayvNV_p", XS_OpenGL__Modern_glViewportArrayv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glViewportArrayv_p", XS_OpenGL__Modern_glViewportArrayv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glViewportIndexedf", XS_OpenGL__Modern_glViewportIndexedf);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glViewportIndexedfNV", XS_OpenGL__Modern_glViewportIndexedf);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glViewportIndexedfvNV_c", XS_OpenGL__Modern_glViewportIndexedfv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glViewportIndexedfv_c", XS_OpenGL__Modern_glViewportIndexedfv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glViewportIndexedfvNV_p", XS_OpenGL__Modern_glViewportIndexedfv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glViewportIndexedfv_p", XS_OpenGL__Modern_glViewportIndexedfv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glViewportPositionWScaleNV", XS_OpenGL__Modern_glViewportPositionWScaleNV);
        newXS_deffile("OpenGL::Modern::glViewportSwizzleNV", XS_OpenGL__Modern_glViewportSwizzleNV);
        newXS_deffile("OpenGL::Modern::glWaitSemaphoreEXT_c", XS_OpenGL__Modern_glWaitSemaphoreEXT_c);
        newXS_deffile("OpenGL::Modern::glWaitSemaphoreui64NVX_c", XS_OpenGL__Modern_glWaitSemaphoreui64NVX_c);
        newXS_deffile("OpenGL::Modern::glWaitSemaphoreui64NVX_p", XS_OpenGL__Modern_glWaitSemaphoreui64NVX_p);
        cv = newXS_deffile("OpenGL::Modern::glWaitSync", XS_OpenGL__Modern_glWaitSync);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glWaitSyncAPPLE", XS_OpenGL__Modern_glWaitSync);
        XSANY.any_i32 = 1;
        newXS_deffile("OpenGL::Modern::glWaitVkSemaphoreNV", XS_OpenGL__Modern_glWaitVkSemaphoreNV);
        newXS_deffile("OpenGL::Modern::glWeightPathsNV_c", XS_OpenGL__Modern_glWeightPathsNV_c);
        newXS_deffile("OpenGL::Modern::glWeightPathsNV_p", XS_OpenGL__Modern_glWeightPathsNV_p);
        newXS_deffile("OpenGL::Modern::glWeightPointerARB_c", XS_OpenGL__Modern_glWeightPointerARB_c);
        newXS_deffile("OpenGL::Modern::glWeightPointerOES_c", XS_OpenGL__Modern_glWeightPointerOES_c);
        newXS_deffile("OpenGL::Modern::glWeightbvARB_c", XS_OpenGL__Modern_glWeightbvARB_c);
        newXS_deffile("OpenGL::Modern::glWeightbvARB_p", XS_OpenGL__Modern_glWeightbvARB_p);
        newXS_deffile("OpenGL::Modern::glWeightdvARB_c", XS_OpenGL__Modern_glWeightdvARB_c);
        newXS_deffile("OpenGL::Modern::glWeightdvARB_p", XS_OpenGL__Modern_glWeightdvARB_p);
        newXS_deffile("OpenGL::Modern::glWeightfvARB_c", XS_OpenGL__Modern_glWeightfvARB_c);
        newXS_deffile("OpenGL::Modern::glWeightfvARB_p", XS_OpenGL__Modern_glWeightfvARB_p);
        newXS_deffile("OpenGL::Modern::glWeightivARB_c", XS_OpenGL__Modern_glWeightivARB_c);
        newXS_deffile("OpenGL::Modern::glWeightivARB_p", XS_OpenGL__Modern_glWeightivARB_p);
        newXS_deffile("OpenGL::Modern::glWeightsvARB_c", XS_OpenGL__Modern_glWeightsvARB_c);
        newXS_deffile("OpenGL::Modern::glWeightsvARB_p", XS_OpenGL__Modern_glWeightsvARB_p);
        newXS_deffile("OpenGL::Modern::glWeightubvARB_c", XS_OpenGL__Modern_glWeightubvARB_c);
        newXS_deffile("OpenGL::Modern::glWeightubvARB_p", XS_OpenGL__Modern_glWeightubvARB_p);
        newXS_deffile("OpenGL::Modern::glWeightuivARB_c", XS_OpenGL__Modern_glWeightuivARB_c);
        newXS_deffile("OpenGL::Modern::glWeightuivARB_p", XS_OpenGL__Modern_glWeightuivARB_p);
        newXS_deffile("OpenGL::Modern::glWeightusvARB_c", XS_OpenGL__Modern_glWeightusvARB_c);
        newXS_deffile("OpenGL::Modern::glWeightusvARB_p", XS_OpenGL__Modern_glWeightusvARB_p);
        cv = newXS_deffile("OpenGL::Modern::glWindowPos2d", XS_OpenGL__Modern_glWindowPos2d);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos2dARB", XS_OpenGL__Modern_glWindowPos2d);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos2dMESA", XS_OpenGL__Modern_glWindowPos2d);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos2dvARB_c", XS_OpenGL__Modern_glWindowPos2dv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos2dvMESA_c", XS_OpenGL__Modern_glWindowPos2dv_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos2dv_c", XS_OpenGL__Modern_glWindowPos2dv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos2dvARB_p", XS_OpenGL__Modern_glWindowPos2dv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos2dvMESA_p", XS_OpenGL__Modern_glWindowPos2dv_p);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos2dv_p", XS_OpenGL__Modern_glWindowPos2dv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos2f", XS_OpenGL__Modern_glWindowPos2f);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos2fARB", XS_OpenGL__Modern_glWindowPos2f);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos2fMESA", XS_OpenGL__Modern_glWindowPos2f);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos2fvARB_c", XS_OpenGL__Modern_glWindowPos2fv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos2fvMESA_c", XS_OpenGL__Modern_glWindowPos2fv_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos2fv_c", XS_OpenGL__Modern_glWindowPos2fv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos2fvARB_p", XS_OpenGL__Modern_glWindowPos2fv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos2fvMESA_p", XS_OpenGL__Modern_glWindowPos2fv_p);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos2fv_p", XS_OpenGL__Modern_glWindowPos2fv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos2i", XS_OpenGL__Modern_glWindowPos2i);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos2iARB", XS_OpenGL__Modern_glWindowPos2i);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos2iMESA", XS_OpenGL__Modern_glWindowPos2i);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos2ivARB_c", XS_OpenGL__Modern_glWindowPos2iv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos2ivMESA_c", XS_OpenGL__Modern_glWindowPos2iv_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos2iv_c", XS_OpenGL__Modern_glWindowPos2iv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos2ivARB_p", XS_OpenGL__Modern_glWindowPos2iv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos2ivMESA_p", XS_OpenGL__Modern_glWindowPos2iv_p);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos2iv_p", XS_OpenGL__Modern_glWindowPos2iv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos2s", XS_OpenGL__Modern_glWindowPos2s);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos2sARB", XS_OpenGL__Modern_glWindowPos2s);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos2sMESA", XS_OpenGL__Modern_glWindowPos2s);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos2svARB_c", XS_OpenGL__Modern_glWindowPos2sv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos2svMESA_c", XS_OpenGL__Modern_glWindowPos2sv_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos2sv_c", XS_OpenGL__Modern_glWindowPos2sv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos2svARB_p", XS_OpenGL__Modern_glWindowPos2sv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos2svMESA_p", XS_OpenGL__Modern_glWindowPos2sv_p);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos2sv_p", XS_OpenGL__Modern_glWindowPos2sv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos3d", XS_OpenGL__Modern_glWindowPos3d);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos3dARB", XS_OpenGL__Modern_glWindowPos3d);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos3dMESA", XS_OpenGL__Modern_glWindowPos3d);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos3dvARB_c", XS_OpenGL__Modern_glWindowPos3dv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos3dvMESA_c", XS_OpenGL__Modern_glWindowPos3dv_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos3dv_c", XS_OpenGL__Modern_glWindowPos3dv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos3dvARB_p", XS_OpenGL__Modern_glWindowPos3dv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos3dvMESA_p", XS_OpenGL__Modern_glWindowPos3dv_p);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos3dv_p", XS_OpenGL__Modern_glWindowPos3dv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos3f", XS_OpenGL__Modern_glWindowPos3f);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos3fARB", XS_OpenGL__Modern_glWindowPos3f);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos3fMESA", XS_OpenGL__Modern_glWindowPos3f);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos3fvARB_c", XS_OpenGL__Modern_glWindowPos3fv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos3fvMESA_c", XS_OpenGL__Modern_glWindowPos3fv_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos3fv_c", XS_OpenGL__Modern_glWindowPos3fv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos3fvARB_p", XS_OpenGL__Modern_glWindowPos3fv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos3fvMESA_p", XS_OpenGL__Modern_glWindowPos3fv_p);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos3fv_p", XS_OpenGL__Modern_glWindowPos3fv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos3i", XS_OpenGL__Modern_glWindowPos3i);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos3iARB", XS_OpenGL__Modern_glWindowPos3i);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos3iMESA", XS_OpenGL__Modern_glWindowPos3i);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos3ivARB_c", XS_OpenGL__Modern_glWindowPos3iv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos3ivMESA_c", XS_OpenGL__Modern_glWindowPos3iv_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos3iv_c", XS_OpenGL__Modern_glWindowPos3iv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos3ivARB_p", XS_OpenGL__Modern_glWindowPos3iv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos3ivMESA_p", XS_OpenGL__Modern_glWindowPos3iv_p);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos3iv_p", XS_OpenGL__Modern_glWindowPos3iv_p);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos3s", XS_OpenGL__Modern_glWindowPos3s);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos3sARB", XS_OpenGL__Modern_glWindowPos3s);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos3sMESA", XS_OpenGL__Modern_glWindowPos3s);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos3svARB_c", XS_OpenGL__Modern_glWindowPos3sv_c);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos3svMESA_c", XS_OpenGL__Modern_glWindowPos3sv_c);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos3sv_c", XS_OpenGL__Modern_glWindowPos3sv_c);
        XSANY.any_i32 = 0;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos3svARB_p", XS_OpenGL__Modern_glWindowPos3sv_p);
        XSANY.any_i32 = 1;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos3svMESA_p", XS_OpenGL__Modern_glWindowPos3sv_p);
        XSANY.any_i32 = 2;
        cv = newXS_deffile("OpenGL::Modern::glWindowPos3sv_p", XS_OpenGL__Modern_glWindowPos3sv_p);
        XSANY.any_i32 = 0;
        newXS_deffile("OpenGL::Modern::glWindowPos4dMESA", XS_OpenGL__Modern_glWindowPos4dMESA);
        newXS_deffile("OpenGL::Modern::glWindowPos4dvMESA_c", XS_OpenGL__Modern_glWindowPos4dvMESA_c);
        newXS_deffile("OpenGL::Modern::glWindowPos4dvMESA_p", XS_OpenGL__Modern_glWindowPos4dvMESA_p);
        newXS_deffile("OpenGL::Modern::glWindowPos4fMESA", XS_OpenGL__Modern_glWindowPos4fMESA);
        newXS_deffile("OpenGL::Modern::glWindowPos4fvMESA_c", XS_OpenGL__Modern_glWindowPos4fvMESA_c);
        newXS_deffile("OpenGL::Modern::glWindowPos4fvMESA_p", XS_OpenGL__Modern_glWindowPos4fvMESA_p);
        newXS_deffile("OpenGL::Modern::glWindowPos4iMESA", XS_OpenGL__Modern_glWindowPos4iMESA);
        newXS_deffile("OpenGL::Modern::glWindowPos4ivMESA_c", XS_OpenGL__Modern_glWindowPos4ivMESA_c);
        newXS_deffile("OpenGL::Modern::glWindowPos4ivMESA_p", XS_OpenGL__Modern_glWindowPos4ivMESA_p);
        newXS_deffile("OpenGL::Modern::glWindowPos4sMESA", XS_OpenGL__Modern_glWindowPos4sMESA);
        newXS_deffile("OpenGL::Modern::glWindowPos4svMESA_c", XS_OpenGL__Modern_glWindowPos4svMESA_c);
        newXS_deffile("OpenGL::Modern::glWindowPos4svMESA_p", XS_OpenGL__Modern_glWindowPos4svMESA_p);
        newXS_deffile("OpenGL::Modern::glWindowRectanglesEXT_c", XS_OpenGL__Modern_glWindowRectanglesEXT_c);
        newXS_deffile("OpenGL::Modern::glWindowRectanglesEXT_p", XS_OpenGL__Modern_glWindowRectanglesEXT_p);
        newXS_deffile("OpenGL::Modern::glWriteMaskEXT", XS_OpenGL__Modern_glWriteMaskEXT);
#if PERL_VERSION_LE(5, 21, 5)
#  if PERL_VERSION_GE(5, 9, 0)
    if (PL_unitcheckav)
        call_list(PL_scopestack_ix, PL_unitcheckav);
#  endif
    XSRETURN_YES;
#else
    Perl_xs_boot_epilog(aTHX_ ax);
#endif
}

#ifdef __cplusplus
}
#endif
