docs for enumerated values
authorAndy Wingo <wingo@pobox.com>
Thu, 7 Feb 2013 17:05:10 +0000 (18:05 +0100)
committerAndy Wingo <wingo@pobox.com>
Thu, 7 Feb 2013 17:05:10 +0000 (18:05 +0100)
* maint/update-enumerations: Generate documentation as well.

* doc/low-level-gl-enums.texi: New docs.
* doc/figl.texi: Include the new docs.

doc/figl.texi
doc/low-level-gl-enums.texi [new file with mode: 0644]
maint/update-enumerations

index 2e55afb..2623de7 100644 (file)
@@ -143,6 +143,7 @@ example @code{(figl gl)}.
 * GL Contexts::                 Finding a square of pixels.
 * Rendering::                   How to paint.
 * Low-Level GL::                Primitive interface to OpenGL.
+* GL Enumerations::             Enumerated values.
 * GL Extensions::               Beyond core OpenGL.
 @end menu
 
@@ -305,6 +306,11 @@ thing.
 @include low-level-gl.texi
 
 
+@node GL Enumerations
+@section GL Enumerations
+@include low-level-gl-enums.texi
+
+
 @node GL Extensions
 @section GL Extensions
 
diff --git a/doc/low-level-gl-enums.texi b/doc/low-level-gl-enums.texi
new file mode 100644 (file)
index 0000000..14a6d16
--- /dev/null
@@ -0,0 +1,7892 @@
+
+@c %start of fragment
+
+The functions from this section may be had by loading the module:
+
+@example 
+(use-modules (figl gl enums)
+@end example
+
+@defmac attrib-mask bit...
+Bitfield constructor. The symbolic @var{bit} arguments are replaced with
+their corresponding numeric values and combined with @code{logior} at
+compile-time. The symbolic arguments known to this bitfield constructor
+are:
+
+@code{current}, @code{point}, @code{line}, @code{polygon},
+@code{polygon-stipple}, @code{pixel-mode}, @code{lighting}, @code{fog},
+@code{depth-buffer}, @code{accum-buffer}, @code{stencil-buffer},
+@code{viewport}, @code{transform}, @code{enable}, @code{color-buffer},
+@code{hint}, @code{eval}, @code{list}, @code{texture}, @code{scissor},
+@code{all-attrib}.
+
+@end defmac
+
+@defmac version-1-3 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{multisample-bit}, @code{multisample},
+@code{sample-alpha-to-coverage}, @code{sample-alpha-to-one},
+@code{sample-coverage}, @code{sample-buffers}, @code{samples},
+@code{sample-coverage-value}, @code{sample-coverage-invert},
+@code{clamp-to-border}, @code{texture0}, @code{texture1},
+@code{texture2}, @code{texture3}, @code{texture4}, @code{texture5},
+@code{texture6}, @code{texture7}, @code{texture8}, @code{texture9},
+@code{texture10}, @code{texture11}, @code{texture12}, @code{texture13},
+@code{texture14}, @code{texture15}, @code{texture16}, @code{texture17},
+@code{texture18}, @code{texture19}, @code{texture20}, @code{texture21},
+@code{texture22}, @code{texture23}, @code{texture24}, @code{texture25},
+@code{texture26}, @code{texture27}, @code{texture28}, @code{texture29},
+@code{texture30}, @code{texture31}, @code{active-texture},
+@code{client-active-texture}, @code{max-texture-units},
+@code{transpose-modelview-matrix}, @code{transpose-projection-matrix},
+@code{transpose-texture-matrix}, @code{transpose-color-matrix},
+@code{subtract}, @code{compressed-alpha}, @code{compressed-luminance},
+@code{compressed-luminance-alpha}, @code{compressed-intensity},
+@code{compressed-rgb}, @code{compressed-rgba},
+@code{texture-compression-hint}, @code{texture-compressed-image-size},
+@code{texture-compressed}, @code{num-compressed-texture-formats},
+@code{compressed-texture-formats}, @code{normal-map},
+@code{reflection-map}, @code{texture-cube-map},
+@code{texture-binding-cube-map}, @code{texture-cube-map-positive-x},
+@code{texture-cube-map-negative-x}, @code{texture-cube-map-positive-y},
+@code{texture-cube-map-negative-y}, @code{texture-cube-map-positive-z},
+@code{texture-cube-map-negative-z}, @code{proxy-texture-cube-map},
+@code{max-cube-map-texture-size}, @code{combine}, @code{combine-rgb},
+@code{combine-alpha}, @code{rgb-scale}, @code{add-signed},
+@code{interpolate}, @code{constant}, @code{primary-color},
+@code{previous}, @code{source0-rgb}, @code{source1-rgb},
+@code{source2-rgb}, @code{source0-alpha}, @code{source1-alpha},
+@code{source2-alpha}, @code{operand0-rgb}, @code{operand1-rgb},
+@code{operand2-rgb}, @code{operand0-alpha}, @code{operand1-alpha},
+@code{operand2-alpha}, @code{dot3-rgb}, @code{dot3-rgba}.
+
+@end defmac
+
+@defmac arb-multisample enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{multisample-bit-arb}, @code{multisample-arb},
+@code{sample-alpha-to-coverage-arb}, @code{sample-alpha-to-one-arb},
+@code{sample-coverage-arb}, @code{sample-buffers-arb},
+@code{samples-arb}, @code{sample-coverage-value-arb},
+@code{sample-coverage-invert-arb}.
+
+@end defmac
+
+@defmac ext-multisample enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{multisample-bit-ext}, @code{multisample-ext},
+@code{sample-alpha-to-mask-ext}, @code{sample-alpha-to-one-ext},
+@code{sample-mask-ext}, @code{1pass-ext}, @code{2pass-0-ext},
+@code{2pass-1-ext}, @code{4pass-0-ext}, @code{4pass-1-ext},
+@code{4pass-2-ext}, @code{4pass-3-ext}, @code{sample-buffers-ext},
+@code{samples-ext}, @code{sample-mask-value-ext},
+@code{sample-mask-invert-ext}, @code{sample-pattern-ext},
+@code{multisample-bit-ext}.
+
+@end defmac
+
+@defmac 3dfx-multisample enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{multisample-bit-3dfx}, @code{multisample-3dfx},
+@code{sample-buffers-3dfx}, @code{samples-3dfx},
+@code{multisample-bit-3dfx}.
+
+@end defmac
+
+@defmac clear-buffer-mask enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{depth-buffer-bit}, @code{accum-buffer-bit},
+@code{stencil-buffer-bit}, @code{color-buffer-bit},
+@code{coverage-buffer-bit-nv}.
+
+@end defmac
+
+@defmac client-attrib-mask bit...
+Bitfield constructor. The symbolic @var{bit} arguments are replaced with
+their corresponding numeric values and combined with @code{logior} at
+compile-time. The symbolic arguments known to this bitfield constructor
+are:
+
+@code{client-pixel-store}, @code{client-vertex-array},
+@code{client-all-attrib}.
+
+@end defmac
+
+@defmac version-3-0 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{map-read-bit}, @code{map-write-bit},
+@code{map-invalidate-range-bit}, @code{map-invalidate-buffer-bit},
+@code{map-flush-explicit-bit}, @code{map-unsynchronized-bit},
+@code{context-flag-forward-compatible-bit},
+@code{invalid-framebuffer-operation}, @code{half-float},
+@code{clip-distance0}, @code{clip-distance1}, @code{clip-distance2},
+@code{clip-distance3}, @code{clip-distance4}, @code{clip-distance5},
+@code{clip-distance6}, @code{clip-distance7},
+@code{framebuffer-attachment-color-encoding},
+@code{framebuffer-attachment-component-type},
+@code{framebuffer-attachment-red-size},
+@code{framebuffer-attachment-green-size},
+@code{framebuffer-attachment-blue-size},
+@code{framebuffer-attachment-alpha-size},
+@code{framebuffer-attachment-depth-size},
+@code{framebuffer-attachment-stencil-size}, @code{framebuffer-default},
+@code{framebuffer-undefined}, @code{depth-stencil-attachment},
+@code{major-version}, @code{minor-version}, @code{num-extensions},
+@code{context-flags}, @code{index}, @code{compressed-red},
+@code{compressed-rg}, @code{rg}, @code{rg-integer}, @code{r8},
+@code{r16}, @code{rg8}, @code{rg16}, @code{r16f}, @code{r32f},
+@code{rg16f}, @code{rg32f}, @code{r8i}, @code{r8ui}, @code{r16i},
+@code{r16ui}, @code{r32i}, @code{r32ui}, @code{rg8i}, @code{rg8ui},
+@code{rg16i}, @code{rg16ui}, @code{rg32i}, @code{rg32ui},
+@code{max-renderbuffer-size}, @code{depth-stencil},
+@code{unsigned-int-24-8}, @code{vertex-array-binding}, @code{rgba32f},
+@code{rgb32f}, @code{rgba16f}, @code{rgb16f},
+@code{compare-ref-to-texture}, @code{depth24-stencil8},
+@code{texture-stencil-size}, @code{vertex-attrib-array-integer},
+@code{max-array-texture-layers}, @code{min-program-texel-offset},
+@code{max-program-texel-offset}, @code{clamp-vertex-color},
+@code{clamp-fragment-color}, @code{clamp-read-color}, @code{fixed-only},
+@code{max-varying-components}, @code{texture-red-type},
+@code{texture-green-type}, @code{texture-blue-type},
+@code{texture-alpha-type}, @code{texture-luminance-type},
+@code{texture-intensity-type}, @code{texture-depth-type},
+@code{unsigned-normalized}, @code{texture-1d-array},
+@code{proxy-texture-1d-array}, @code{texture-2d-array},
+@code{proxy-texture-2d-array}, @code{texture-binding-1d-array},
+@code{texture-binding-2d-array}, @code{r11f-g11f-b10f},
+@code{unsigned-int-10f-11f-11f-rev}, @code{rgb9-e5},
+@code{unsigned-int-5-9-9-9-rev}, @code{texture-shared-size},
+@code{transform-feedback-varying-max-length},
+@code{transform-feedback-varying-max-length-ext},
+@code{back-primary-color-nv}, @code{back-secondary-color-nv},
+@code{texture-coord-nv}, @code{clip-distance-nv}, @code{vertex-id-nv},
+@code{primitive-id-nv}, @code{generic-attrib-nv},
+@code{transform-feedback-attribs-nv},
+@code{transform-feedback-buffer-mode},
+@code{transform-feedback-buffer-mode-ext},
+@code{transform-feedback-buffer-mode-nv},
+@code{max-transform-feedback-separate-components},
+@code{max-transform-feedback-separate-components-ext},
+@code{max-transform-feedback-separate-components-nv},
+@code{active-varyings-nv}, @code{active-varying-max-length-nv},
+@code{transform-feedback-varyings},
+@code{transform-feedback-varyings-ext},
+@code{transform-feedback-varyings-nv},
+@code{transform-feedback-buffer-start},
+@code{transform-feedback-buffer-start-ext},
+@code{transform-feedback-buffer-start-nv},
+@code{transform-feedback-buffer-size},
+@code{transform-feedback-buffer-size-ext},
+@code{transform-feedback-buffer-size-nv},
+@code{transform-feedback-record-nv}, @code{primitives-generated},
+@code{primitives-generated-ext}, @code{primitives-generated-nv},
+@code{transform-feedback-primitives-written},
+@code{transform-feedback-primitives-written-ext},
+@code{transform-feedback-primitives-written-nv},
+@code{rasterizer-discard}, @code{rasterizer-discard-ext},
+@code{rasterizer-discard-nv},
+@code{max-transform-feedback-interleaved-components},
+@code{max-transform-feedback-interleaved-components-ext},
+@code{max-transform-feedback-interleaved-components-nv},
+@code{max-transform-feedback-separate-attribs},
+@code{max-transform-feedback-separate-attribs-ext},
+@code{max-transform-feedback-separate-attribs-nv},
+@code{interleaved-attribs}, @code{interleaved-attribs-ext},
+@code{interleaved-attribs-nv}, @code{separate-attribs},
+@code{separate-attribs-ext}, @code{separate-attribs-nv},
+@code{transform-feedback-buffer}, @code{transform-feedback-buffer-ext},
+@code{transform-feedback-buffer-nv},
+@code{transform-feedback-buffer-binding},
+@code{transform-feedback-buffer-binding-ext},
+@code{transform-feedback-buffer-binding-nv}, @code{framebuffer-binding},
+@code{draw-framebuffer-binding}, @code{renderbuffer-binding},
+@code{read-framebuffer}, @code{draw-framebuffer},
+@code{read-framebuffer-binding}, @code{renderbuffer-samples},
+@code{depth-component32f}, @code{depth32f-stencil8},
+@code{framebuffer-attachment-object-type},
+@code{framebuffer-attachment-object-type-ext},
+@code{framebuffer-attachment-object-name},
+@code{framebuffer-attachment-object-name-ext},
+@code{framebuffer-attachment-texture-level},
+@code{framebuffer-attachment-texture-level-ext},
+@code{framebuffer-attachment-texture-cube-map-face},
+@code{framebuffer-attachment-texture-cube-map-face-ext},
+@code{framebuffer-attachment-texture-layer},
+@code{framebuffer-attachment-texture-3d-zoffset-ext},
+@code{framebuffer-complete}, @code{framebuffer-complete-ext},
+@code{framebuffer-incomplete-attachment},
+@code{framebuffer-incomplete-attachment-ext},
+@code{framebuffer-incomplete-missing-attachment},
+@code{framebuffer-incomplete-missing-attachment-ext},
+@code{framebuffer-incomplete-dimensions-ext},
+@code{framebuffer-incomplete-formats-ext},
+@code{framebuffer-incomplete-draw-buffer},
+@code{framebuffer-incomplete-draw-buffer-ext},
+@code{framebuffer-incomplete-read-buffer},
+@code{framebuffer-incomplete-read-buffer-ext},
+@code{framebuffer-unsupported}, @code{framebuffer-unsupported-ext},
+@code{max-color-attachments}, @code{max-color-attachments-ext},
+@code{color-attachment0}, @code{color-attachment0-ext},
+@code{color-attachment1}, @code{color-attachment1-ext},
+@code{color-attachment2}, @code{color-attachment2-ext},
+@code{color-attachment3}, @code{color-attachment3-ext},
+@code{color-attachment4}, @code{color-attachment4-ext},
+@code{color-attachment5}, @code{color-attachment5-ext},
+@code{color-attachment6}, @code{color-attachment6-ext},
+@code{color-attachment7}, @code{color-attachment7-ext},
+@code{color-attachment8}, @code{color-attachment8-ext},
+@code{color-attachment9}, @code{color-attachment9-ext},
+@code{color-attachment10}, @code{color-attachment10-ext},
+@code{color-attachment11}, @code{color-attachment11-ext},
+@code{color-attachment12}, @code{color-attachment12-ext},
+@code{color-attachment13}, @code{color-attachment13-ext},
+@code{color-attachment14}, @code{color-attachment14-ext},
+@code{color-attachment15}, @code{color-attachment15-ext},
+@code{depth-attachment}, @code{depth-attachment-ext},
+@code{stencil-attachment}, @code{stencil-attachment-ext},
+@code{framebuffer}, @code{framebuffer-ext}, @code{renderbuffer},
+@code{renderbuffer-ext}, @code{renderbuffer-width},
+@code{renderbuffer-width-ext}, @code{renderbuffer-height},
+@code{renderbuffer-height-ext}, @code{renderbuffer-internal-format},
+@code{renderbuffer-internal-format-ext}, @code{stencil-index1},
+@code{stencil-index1-ext}, @code{stencil-index4},
+@code{stencil-index4-ext}, @code{stencil-index8},
+@code{stencil-index8-ext}, @code{stencil-index16},
+@code{stencil-index16-ext}, @code{renderbuffer-red-size},
+@code{renderbuffer-red-size-ext}, @code{renderbuffer-green-size},
+@code{renderbuffer-green-size-ext}, @code{renderbuffer-blue-size},
+@code{renderbuffer-blue-size-ext}, @code{renderbuffer-alpha-size},
+@code{renderbuffer-alpha-size-ext}, @code{renderbuffer-depth-size},
+@code{renderbuffer-depth-size-ext}, @code{renderbuffer-stencil-size},
+@code{renderbuffer-stencil-size-ext},
+@code{framebuffer-incomplete-multisample}, @code{max-samples},
+@code{rgba32ui}, @code{rgba32ui-ext}, @code{rgb32ui},
+@code{rgb32ui-ext}, @code{alpha32ui-ext}, @code{intensity32ui-ext},
+@code{luminance32ui-ext}, @code{luminance-alpha32ui-ext},
+@code{rgba16ui}, @code{rgba16ui-ext}, @code{rgb16ui},
+@code{rgb16ui-ext}, @code{alpha16ui-ext}, @code{intensity16ui-ext},
+@code{luminance16ui-ext}, @code{luminance-alpha16ui-ext},
+@code{rgba8ui}, @code{rgba8ui-ext}, @code{rgb8ui}, @code{rgb8ui-ext},
+@code{alpha8ui-ext}, @code{intensity8ui-ext}, @code{luminance8ui-ext},
+@code{luminance-alpha8ui-ext}, @code{rgba32i}, @code{rgba32i-ext},
+@code{rgb32i}, @code{rgb32i-ext}, @code{alpha32i-ext},
+@code{intensity32i-ext}, @code{luminance32i-ext},
+@code{luminance-alpha32i-ext}, @code{rgba16i}, @code{rgba16i-ext},
+@code{rgb16i}, @code{rgb16i-ext}, @code{alpha16i-ext},
+@code{intensity16i-ext}, @code{luminance16i-ext},
+@code{luminance-alpha16i-ext}, @code{rgba8i}, @code{rgba8i-ext},
+@code{rgb8i}, @code{rgb8i-ext}, @code{alpha8i-ext},
+@code{intensity8i-ext}, @code{luminance8i-ext},
+@code{luminance-alpha8i-ext}, @code{red-integer},
+@code{red-integer-ext}, @code{green-integer}, @code{green-integer-ext},
+@code{blue-integer}, @code{blue-integer-ext}, @code{alpha-integer},
+@code{alpha-integer-ext}, @code{rgb-integer}, @code{rgb-integer-ext},
+@code{rgba-integer}, @code{rgba-integer-ext}, @code{bgr-integer},
+@code{bgr-integer-ext}, @code{bgra-integer}, @code{bgra-integer-ext},
+@code{luminance-integer-ext}, @code{luminance-alpha-integer-ext},
+@code{rgba-integer-mode-ext}, @code{float-32-unsigned-int-24-8-rev},
+@code{framebuffer-srgb}, @code{compressed-red-rgtc1},
+@code{compressed-signed-red-rgtc1}, @code{compressed-rg-rgtc2},
+@code{compressed-signed-rg-rgtc2}, @code{sampler-1d-array},
+@code{sampler-2d-array}, @code{sampler-1d-array-shadow},
+@code{sampler-2d-array-shadow}, @code{sampler-cube-shadow},
+@code{unsigned-int-vec2}, @code{unsigned-int-vec3},
+@code{unsigned-int-vec4}, @code{int-sampler-1d}, @code{int-sampler-2d},
+@code{int-sampler-3d}, @code{int-sampler-cube},
+@code{int-sampler-1d-array}, @code{int-sampler-2d-array},
+@code{unsigned-int-sampler-1d}, @code{unsigned-int-sampler-2d},
+@code{unsigned-int-sampler-3d}, @code{unsigned-int-sampler-cube},
+@code{unsigned-int-sampler-1d-array},
+@code{unsigned-int-sampler-2d-array}, @code{query-wait},
+@code{query-no-wait}, @code{query-by-region-wait},
+@code{query-by-region-no-wait}, @code{buffer-access-flags},
+@code{buffer-map-length}, @code{buffer-map-offset}.
+
+@end defmac
+
+@defmac arb-map-buffer-range bit...
+Bitfield constructor. The symbolic @var{bit} arguments are replaced with
+their corresponding numeric values and combined with @code{logior} at
+compile-time. The symbolic arguments known to this bitfield constructor
+are:
+
+@code{map-read}, @code{map-write}, @code{map-invalidate-range},
+@code{map-invalidate-buffer}, @code{map-flush-explicit},
+@code{map-unsynchronized}.
+
+@end defmac
+
+@defmac ext-map-buffer-range enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{map-read-bit-ext}, @code{map-write-bit-ext},
+@code{map-invalidate-range-bit-ext},
+@code{map-invalidate-buffer-bit-ext}, @code{map-flush-explicit-bit-ext},
+@code{map-unsynchronized-bit-ext}.
+
+@end defmac
+
+@defmac version-4-3 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{context-flag-debug-bit}, @code{num-shading-language-versions},
+@code{vertex-attrib-array-long}.
+
+@end defmac
+
+@defmac khr-debug enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{context-flag-debug-bit}, @code{debug-output-synchronous},
+@code{debug-next-logged-message-length}, @code{debug-callback-function},
+@code{debug-callback-user-param}, @code{debug-source-api},
+@code{debug-source-window-system}, @code{debug-source-shader-compiler},
+@code{debug-source-third-party}, @code{debug-source-application},
+@code{debug-source-other}, @code{debug-type-error},
+@code{debug-type-deprecated-behavior},
+@code{debug-type-undefined-behavior}, @code{debug-type-portability},
+@code{debug-type-performance}, @code{debug-type-other},
+@code{debug-type-marker}, @code{debug-type-push-group},
+@code{debug-type-pop-group}, @code{debug-severity-notification},
+@code{max-debug-group-stack-depth}, @code{debug-group-stack-depth},
+@code{buffer}, @code{shader}, @code{program}, @code{query},
+@code{program-pipeline}, @code{sampler}, @code{display-list},
+@code{max-label-length}, @code{max-debug-message-length},
+@code{max-debug-logged-messages}, @code{debug-logged-messages},
+@code{debug-severity-high}, @code{debug-severity-medium},
+@code{debug-severity-low}, @code{debug-output}.
+
+@end defmac
+
+@defmac arb-robustness enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{context-flag-robust-access-bit-arb},
+@code{lose-context-on-reset-arb}, @code{guilty-context-reset-arb},
+@code{innocent-context-reset-arb}, @code{unknown-context-reset-arb},
+@code{reset-notification-strategy-arb},
+@code{no-reset-notification-arb}.
+
+@end defmac
+
+@defmac arb-separate-shader-objects enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{vertex-shader-bit}, @code{fragment-shader-bit},
+@code{geometry-shader-bit}, @code{tess-control-shader-bit},
+@code{tess-evaluation-shader-bit}, @code{all-shader-bits},
+@code{program-separable}, @code{active-program},
+@code{program-pipeline-binding}.
+
+@end defmac
+
+@defmac arb-compute-shader enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{compute-shader-bit}, @code{max-compute-shared-memory-size},
+@code{max-compute-uniform-components},
+@code{max-compute-atomic-counter-buffers},
+@code{max-compute-atomic-counters},
+@code{max-combined-compute-uniform-components},
+@code{compute-local-work-size}, @code{max-compute-local-invocations},
+@code{uniform-block-referenced-by-compute-shader},
+@code{atomic-counter-buffer-referenced-by-compute-shader},
+@code{dispatch-indirect-buffer},
+@code{dispatch-indirect-buffer-binding}, @code{compute-shader},
+@code{max-compute-uniform-blocks},
+@code{max-compute-texture-image-units},
+@code{max-compute-image-uniforms}, @code{max-compute-work-group-count},
+@code{max-compute-work-group-size}.
+
+@end defmac
+
+@defmac ext-separate-shader-objects enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{vertex-shader-bit-ext}, @code{fragment-shader-bit-ext},
+@code{all-shader-bits-ext}, @code{program-separable-ext},
+@code{active-program-ext}, @code{program-pipeline-binding-ext},
+@code{active-program-ext}.
+
+@end defmac
+
+@defmac ext-shader-image-load-store enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{vertex-attrib-array-barrier-bit-ext},
+@code{element-array-barrier-bit-ext}, @code{uniform-barrier-bit-ext},
+@code{texture-fetch-barrier-bit-ext},
+@code{shader-image-access-barrier-bit-ext},
+@code{command-barrier-bit-ext}, @code{pixel-buffer-barrier-bit-ext},
+@code{texture-update-barrier-bit-ext},
+@code{buffer-update-barrier-bit-ext},
+@code{framebuffer-barrier-bit-ext},
+@code{transform-feedback-barrier-bit-ext},
+@code{atomic-counter-barrier-bit-ext}, @code{all-barrier-bits-ext},
+@code{max-image-units-ext},
+@code{max-combined-image-units-and-fragment-outputs-ext},
+@code{image-binding-name-ext}, @code{image-binding-level-ext},
+@code{image-binding-layered-ext}, @code{image-binding-layer-ext},
+@code{image-binding-access-ext}, @code{image-1d-ext},
+@code{image-2d-ext}, @code{image-3d-ext}, @code{image-2d-rect-ext},
+@code{image-cube-ext}, @code{image-buffer-ext},
+@code{image-1d-array-ext}, @code{image-2d-array-ext},
+@code{image-cube-map-array-ext}, @code{image-2d-multisample-ext},
+@code{image-2d-multisample-array-ext}, @code{int-image-1d-ext},
+@code{int-image-2d-ext}, @code{int-image-3d-ext},
+@code{int-image-2d-rect-ext}, @code{int-image-cube-ext},
+@code{int-image-buffer-ext}, @code{int-image-1d-array-ext},
+@code{int-image-2d-array-ext}, @code{int-image-cube-map-array-ext},
+@code{int-image-2d-multisample-ext},
+@code{int-image-2d-multisample-array-ext},
+@code{unsigned-int-image-1d-ext}, @code{unsigned-int-image-2d-ext},
+@code{unsigned-int-image-3d-ext}, @code{unsigned-int-image-2d-rect-ext},
+@code{unsigned-int-image-cube-ext},
+@code{unsigned-int-image-buffer-ext},
+@code{unsigned-int-image-1d-array-ext},
+@code{unsigned-int-image-2d-array-ext},
+@code{unsigned-int-image-cube-map-array-ext},
+@code{unsigned-int-image-2d-multisample-ext},
+@code{unsigned-int-image-2d-multisample-array-ext},
+@code{max-image-samples-ext}, @code{image-binding-format-ext}.
+
+@end defmac
+
+@defmac arb-shader-image-load-store enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{vertex-attrib-array-barrier-bit},
+@code{element-array-barrier-bit}, @code{uniform-barrier-bit},
+@code{texture-fetch-barrier-bit},
+@code{shader-image-access-barrier-bit}, @code{command-barrier-bit},
+@code{pixel-buffer-barrier-bit}, @code{texture-update-barrier-bit},
+@code{buffer-update-barrier-bit}, @code{framebuffer-barrier-bit},
+@code{transform-feedback-barrier-bit},
+@code{atomic-counter-barrier-bit}, @code{all-barrier-bits},
+@code{max-image-units},
+@code{max-combined-image-units-and-fragment-outputs},
+@code{image-binding-name}, @code{image-binding-level},
+@code{image-binding-layered}, @code{image-binding-layer},
+@code{image-binding-access}, @code{image-1d}, @code{image-2d},
+@code{image-3d}, @code{image-2d-rect}, @code{image-cube},
+@code{image-buffer}, @code{image-1d-array}, @code{image-2d-array},
+@code{image-cube-map-array}, @code{image-2d-multisample},
+@code{image-2d-multisample-array}, @code{int-image-1d},
+@code{int-image-2d}, @code{int-image-3d}, @code{int-image-2d-rect},
+@code{int-image-cube}, @code{int-image-buffer},
+@code{int-image-1d-array}, @code{int-image-2d-array},
+@code{int-image-cube-map-array}, @code{int-image-2d-multisample},
+@code{int-image-2d-multisample-array}, @code{unsigned-int-image-1d},
+@code{unsigned-int-image-2d}, @code{unsigned-int-image-3d},
+@code{unsigned-int-image-2d-rect}, @code{unsigned-int-image-cube},
+@code{unsigned-int-image-buffer}, @code{unsigned-int-image-1d-array},
+@code{unsigned-int-image-2d-array},
+@code{unsigned-int-image-cube-map-array},
+@code{unsigned-int-image-2d-multisample},
+@code{unsigned-int-image-2d-multisample-array},
+@code{max-image-samples}, @code{image-binding-format},
+@code{image-format-compatibility-type},
+@code{image-format-compatibility-by-size},
+@code{image-format-compatibility-by-class},
+@code{max-vertex-image-uniforms},
+@code{max-tess-control-image-uniforms},
+@code{max-tess-evaluation-image-uniforms},
+@code{max-geometry-image-uniforms}, @code{max-fragment-image-uniforms},
+@code{max-combined-image-uniforms}.
+
+@end defmac
+
+@defmac arb-shader-storage-buffer-object enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{shader-storage-barrier-bit}, @code{shader-storage-buffer},
+@code{shader-storage-buffer-binding},
+@code{shader-storage-buffer-start}, @code{shader-storage-buffer-size},
+@code{max-vertex-shader-storage-blocks},
+@code{max-geometry-shader-storage-blocks},
+@code{max-tess-control-shader-storage-blocks},
+@code{max-tess-evaluation-shader-storage-blocks},
+@code{max-fragment-shader-storage-blocks},
+@code{max-compute-shader-storage-blocks},
+@code{max-combined-shader-storage-blocks},
+@code{max-shader-storage-buffer-bindings},
+@code{max-shader-storage-block-size},
+@code{shader-storage-buffer-offset-alignment},
+@code{max-combined-shader-output-resources},
+@code{max-combined-image-units-and-fragment-outputs}.
+
+@end defmac
+
+@defmac intel-map-texture enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{layout-default-intel}, @code{layout-linear-intel},
+@code{layout-linear-cpu-cached-intel},
+@code{texture-memory-layout-intel}.
+
+@end defmac
+
+@defmac boolean enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{false}, @code{true}.
+
+@end defmac
+
+@defmac begin-mode enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{points}, @code{lines}, @code{line-loop}, @code{line-strip},
+@code{triangles}, @code{triangle-strip}, @code{triangle-fan},
+@code{quads}, @code{quad-strip}, @code{polygon}.
+
+@end defmac
+
+@defmac version-3-2 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{lines-adjacency}, @code{line-strip-adjacency},
+@code{triangles-adjacency}, @code{triangle-strip-adjacency},
+@code{program-point-size}, @code{depth-clamp},
+@code{texture-cube-map-seamless}, @code{geometry-vertices-out},
+@code{geometry-input-type}, @code{geometry-output-type},
+@code{max-geometry-texture-image-units},
+@code{framebuffer-attachment-layered},
+@code{framebuffer-incomplete-layer-targets}, @code{geometry-shader},
+@code{max-geometry-uniform-components},
+@code{max-geometry-output-vertices},
+@code{max-geometry-total-output-components},
+@code{quads-follow-provoking-vertex-convention},
+@code{first-vertex-convention}, @code{last-vertex-convention},
+@code{provoking-vertex}, @code{sample-position}, @code{sample-mask},
+@code{sample-mask-value}, @code{max-sample-mask-words},
+@code{texture-2d-multisample}, @code{proxy-texture-2d-multisample},
+@code{texture-2d-multisample-array},
+@code{proxy-texture-2d-multisample-array},
+@code{texture-binding-2d-multisample},
+@code{texture-binding-2d-multisample-array}, @code{texture-samples},
+@code{texture-fixed-sample-locations}, @code{sampler-2d-multisample},
+@code{int-sampler-2d-multisample},
+@code{unsigned-int-sampler-2d-multisample},
+@code{sampler-2d-multisample-array},
+@code{int-sampler-2d-multisample-array},
+@code{unsigned-int-sampler-2d-multisample-array},
+@code{max-color-texture-samples}, @code{max-depth-texture-samples},
+@code{max-integer-samples}, @code{max-server-wait-timeout},
+@code{object-type}, @code{sync-condition}, @code{sync-status},
+@code{sync-flags}, @code{sync-fence}, @code{sync-gpu-commands-complete},
+@code{unsignaled}, @code{signaled}, @code{already-signaled},
+@code{timeout-expired}, @code{condition-satisfied}, @code{wait-failed},
+@code{timeout-ignored}, @code{sync-flush-commands-bit},
+@code{timeout-ignored}, @code{max-vertex-output-components},
+@code{max-geometry-input-components},
+@code{max-geometry-output-components},
+@code{max-fragment-input-components}, @code{context-core-profile-bit},
+@code{context-compatibility-profile-bit}, @code{context-profile-mask}.
+
+@end defmac
+
+@defmac arb-geometry-shader-4 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{lines-adjacency-arb}, @code{line-strip-adjacency-arb},
+@code{triangles-adjacency-arb}, @code{triangle-strip-adjacency-arb},
+@code{program-point-size-arb}, @code{max-varying-components},
+@code{max-geometry-texture-image-units-arb},
+@code{framebuffer-attachment-object-type},
+@code{framebuffer-attachment-object-type-ext},
+@code{framebuffer-attachment-object-name},
+@code{framebuffer-attachment-object-name-ext},
+@code{framebuffer-attachment-texture-level},
+@code{framebuffer-attachment-texture-level-ext},
+@code{framebuffer-attachment-texture-cube-map-face},
+@code{framebuffer-attachment-texture-cube-map-face-ext},
+@code{framebuffer-attachment-texture-layer},
+@code{framebuffer-attachment-texture-3d-zoffset-ext},
+@code{framebuffer-complete}, @code{framebuffer-complete-ext},
+@code{framebuffer-incomplete-attachment},
+@code{framebuffer-incomplete-attachment-ext},
+@code{framebuffer-incomplete-missing-attachment},
+@code{framebuffer-incomplete-missing-attachment-ext},
+@code{framebuffer-incomplete-dimensions-ext},
+@code{framebuffer-incomplete-formats-ext},
+@code{framebuffer-incomplete-draw-buffer},
+@code{framebuffer-incomplete-draw-buffer-ext},
+@code{framebuffer-incomplete-read-buffer},
+@code{framebuffer-incomplete-read-buffer-ext},
+@code{framebuffer-unsupported}, @code{framebuffer-unsupported-ext},
+@code{max-color-attachments}, @code{max-color-attachments-ext},
+@code{color-attachment0}, @code{color-attachment0-ext},
+@code{color-attachment1}, @code{color-attachment1-ext},
+@code{color-attachment2}, @code{color-attachment2-ext},
+@code{color-attachment3}, @code{color-attachment3-ext},
+@code{color-attachment4}, @code{color-attachment4-ext},
+@code{color-attachment5}, @code{color-attachment5-ext},
+@code{color-attachment6}, @code{color-attachment6-ext},
+@code{color-attachment7}, @code{color-attachment7-ext},
+@code{color-attachment8}, @code{color-attachment8-ext},
+@code{color-attachment9}, @code{color-attachment9-ext},
+@code{color-attachment10}, @code{color-attachment10-ext},
+@code{color-attachment11}, @code{color-attachment11-ext},
+@code{color-attachment12}, @code{color-attachment12-ext},
+@code{color-attachment13}, @code{color-attachment13-ext},
+@code{color-attachment14}, @code{color-attachment14-ext},
+@code{color-attachment15}, @code{color-attachment15-ext},
+@code{depth-attachment}, @code{depth-attachment-ext},
+@code{stencil-attachment}, @code{stencil-attachment-ext},
+@code{framebuffer}, @code{framebuffer-ext}, @code{renderbuffer},
+@code{renderbuffer-ext}, @code{renderbuffer-width},
+@code{renderbuffer-width-ext}, @code{renderbuffer-height},
+@code{renderbuffer-height-ext}, @code{renderbuffer-internal-format},
+@code{renderbuffer-internal-format-ext}, @code{stencil-index1},
+@code{stencil-index1-ext}, @code{stencil-index4},
+@code{stencil-index4-ext}, @code{stencil-index8},
+@code{stencil-index8-ext}, @code{stencil-index16},
+@code{stencil-index16-ext}, @code{renderbuffer-red-size},
+@code{renderbuffer-red-size-ext}, @code{renderbuffer-green-size},
+@code{renderbuffer-green-size-ext}, @code{renderbuffer-blue-size},
+@code{renderbuffer-blue-size-ext}, @code{renderbuffer-alpha-size},
+@code{renderbuffer-alpha-size-ext}, @code{renderbuffer-depth-size},
+@code{renderbuffer-depth-size-ext}, @code{renderbuffer-stencil-size},
+@code{renderbuffer-stencil-size-ext},
+@code{framebuffer-attachment-layered-arb},
+@code{framebuffer-incomplete-layer-targets-arb},
+@code{framebuffer-incomplete-layer-count-arb},
+@code{geometry-shader-arb}, @code{geometry-vertices-out-arb},
+@code{geometry-input-type-arb}, @code{geometry-output-type-arb},
+@code{max-geometry-varying-components-arb},
+@code{max-vertex-varying-components-arb},
+@code{max-geometry-uniform-components-arb},
+@code{max-geometry-output-vertices-arb},
+@code{max-geometry-total-output-components-arb}.
+
+@end defmac
+
+@defmac nv-geometry-program-4 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{lines-adjacency-ext}, @code{line-strip-adjacency-ext},
+@code{triangles-adjacency-ext}, @code{triangle-strip-adjacency-ext},
+@code{program-point-size-ext}, @code{geometry-program-nv},
+@code{max-program-output-vertices-nv},
+@code{max-program-total-output-components-nv},
+@code{max-geometry-texture-image-units-ext},
+@code{framebuffer-attachment-texture-layer-ext},
+@code{framebuffer-attachment-layered-ext},
+@code{framebuffer-incomplete-layer-targets-ext},
+@code{framebuffer-incomplete-layer-count-ext},
+@code{geometry-vertices-out-ext}, @code{geometry-input-type-ext},
+@code{geometry-output-type-ext}.
+
+@end defmac
+
+@defmac arb-tessellation-shader enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{patches}, @code{uniform-block-referenced-by-tess-control-shader},
+@code{uniform-block-referenced-by-tess-evaluation-shader},
+@code{max-tess-control-input-components},
+@code{max-tess-evaluation-input-components},
+@code{max-combined-tess-control-uniform-components},
+@code{max-combined-tess-evaluation-uniform-components},
+@code{patch-vertices}, @code{patch-default-inner-level},
+@code{patch-default-outer-level}, @code{tess-control-output-vertices},
+@code{tess-gen-mode}, @code{tess-gen-spacing},
+@code{tess-gen-vertex-order}, @code{tess-gen-point-mode},
+@code{isolines}, @code{fractional-odd}, @code{fractional-even},
+@code{max-patch-vertices}, @code{max-tess-gen-level},
+@code{max-tess-control-uniform-components},
+@code{max-tess-evaluation-uniform-components},
+@code{max-tess-control-texture-image-units},
+@code{max-tess-evaluation-texture-image-units},
+@code{max-tess-control-output-components},
+@code{max-tess-patch-components},
+@code{max-tess-control-total-output-components},
+@code{max-tess-evaluation-output-components},
+@code{tess-evaluation-shader}, @code{tess-control-shader},
+@code{max-tess-control-uniform-blocks},
+@code{max-tess-evaluation-uniform-blocks}.
+
+@end defmac
+
+@defmac nv-gpu-shader-5 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{patches}, @code{int64-nv}, @code{unsigned-int64-nv},
+@code{int8-nv}, @code{int8-vec2-nv}, @code{int8-vec3-nv},
+@code{int8-vec4-nv}, @code{int16-nv}, @code{int16-vec2-nv},
+@code{int16-vec3-nv}, @code{int16-vec4-nv}, @code{int64-vec2-nv},
+@code{int64-vec3-nv}, @code{int64-vec4-nv}, @code{unsigned-int8-nv},
+@code{unsigned-int8-vec2-nv}, @code{unsigned-int8-vec3-nv},
+@code{unsigned-int8-vec4-nv}, @code{unsigned-int16-nv},
+@code{unsigned-int16-vec2-nv}, @code{unsigned-int16-vec3-nv},
+@code{unsigned-int16-vec4-nv}, @code{unsigned-int64-vec2-nv},
+@code{unsigned-int64-vec3-nv}, @code{unsigned-int64-vec4-nv},
+@code{float16-nv}, @code{float16-vec2-nv}, @code{float16-vec3-nv},
+@code{float16-vec4-nv}.
+
+@end defmac
+
+@defmac accum-op enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{accum}, @code{load}, @code{return}, @code{mult}, @code{add}.
+
+@end defmac
+
+@defmac alpha-function enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{never}, @code{less}, @code{equal}, @code{lequal}, @code{greater},
+@code{notequal}, @code{gequal}, @code{always}.
+
+@end defmac
+
+@defmac blending-factor-dest enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{zero}, @code{one}, @code{src-color}, @code{one-minus-src-color},
+@code{src-alpha}, @code{one-minus-src-alpha}, @code{dst-alpha},
+@code{one-minus-dst-alpha}, @code{constant-color-ext},
+@code{one-minus-constant-color-ext}, @code{constant-alpha-ext},
+@code{one-minus-constant-alpha-ext}.
+
+@end defmac
+
+@defmac blending-factor-src enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{zero}, @code{one}, @code{dst-color}, @code{one-minus-dst-color},
+@code{src-alpha-saturate}, @code{src-alpha}, @code{one-minus-src-alpha},
+@code{dst-alpha}, @code{one-minus-dst-alpha}, @code{constant-color-ext},
+@code{one-minus-constant-color-ext}, @code{constant-alpha-ext},
+@code{one-minus-constant-alpha-ext}.
+
+@end defmac
+
+@defmac blend-equation-mode-ext enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{logic-op}, @code{func-add-ext}, @code{min-ext}, @code{max-ext},
+@code{func-subtract-ext}, @code{func-reverse-subtract-ext},
+@code{alpha-min-sgix}, @code{alpha-max-sgix}.
+
+@end defmac
+
+@defmac color-material-face enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{front}, @code{back}, @code{front-and-back}.
+
+@end defmac
+
+@defmac color-material-parameter enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{ambient}, @code{diffuse}, @code{specular}, @code{emission},
+@code{ambient-and-diffuse}.
+
+@end defmac
+
+@defmac color-pointer-type enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{byte}, @code{unsigned-byte}, @code{short}, @code{unsigned-short},
+@code{int}, @code{unsigned-int}, @code{float}, @code{double}.
+
+@end defmac
+
+@defmac color-table-parameter-p-name-sgi enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{color-table-scale-sgi}, @code{color-table-bias-sgi}.
+
+@end defmac
+
+@defmac color-table-target-sgi enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{color-table-sgi}, @code{post-convolution-color-table-sgi},
+@code{post-color-matrix-color-table-sgi}, @code{proxy-color-table-sgi},
+@code{proxy-post-convolution-color-table-sgi},
+@code{proxy-post-color-matrix-color-table-sgi},
+@code{texture-color-table-sgi}, @code{proxy-texture-color-table-sgi}.
+
+@end defmac
+
+@defmac convolution-border-mode-ext enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{reduce-ext}.
+
+@end defmac
+
+@defmac convolution-parameter-ext enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{convolution-border-mode-ext}, @code{convolution-filter-scale-ext},
+@code{convolution-filter-bias-ext}.
+
+@end defmac
+
+@defmac convolution-target-ext enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{convolution-1d-ext}, @code{convolution-2d-ext}.
+
+@end defmac
+
+@defmac cull-face-mode enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{front}, @code{back}, @code{front-and-back}.
+
+@end defmac
+
+@defmac depth-function enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{never}, @code{less}, @code{equal}, @code{lequal}, @code{greater},
+@code{notequal}, @code{gequal}, @code{always}.
+
+@end defmac
+
+@defmac draw-buffer-mode enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{none}, @code{front-left}, @code{front-right}, @code{back-left},
+@code{back-right}, @code{front}, @code{back}, @code{left}, @code{right},
+@code{front-and-back}, @code{aux0}, @code{aux1}, @code{aux2},
+@code{aux3}.
+
+@end defmac
+
+@defmac oes-framebuffer-object enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{fog}, @code{lighting}, @code{texture-1d}, @code{texture-2d},
+@code{line-stipple}, @code{polygon-stipple}, @code{cull-face},
+@code{alpha-test}, @code{blend}, @code{index-logic-op},
+@code{color-logic-op}, @code{dither}, @code{stencil-test},
+@code{depth-test}, @code{clip-plane0}, @code{clip-plane1},
+@code{clip-plane2}, @code{clip-plane3}, @code{clip-plane4},
+@code{clip-plane5}, @code{light0}, @code{light1}, @code{light2},
+@code{light3}, @code{light4}, @code{light5}, @code{light6},
+@code{light7}, @code{texture-gen-s}, @code{texture-gen-t},
+@code{texture-gen-r}, @code{texture-gen-q}, @code{map1-vertex-3},
+@code{map1-vertex-4}, @code{map1-color-4}, @code{map1-index},
+@code{map1-normal}, @code{map1-texture-coord-1},
+@code{map1-texture-coord-2}, @code{map1-texture-coord-3},
+@code{map1-texture-coord-4}, @code{map2-vertex-3}, @code{map2-vertex-4},
+@code{map2-color-4}, @code{map2-index}, @code{map2-normal},
+@code{map2-texture-coord-1}, @code{map2-texture-coord-2},
+@code{map2-texture-coord-3}, @code{map2-texture-coord-4},
+@code{point-smooth}, @code{line-smooth}, @code{polygon-smooth},
+@code{scissor-test}, @code{color-material}, @code{normalize},
+@code{auto-normal}, @code{polygon-offset-point},
+@code{polygon-offset-line}, @code{polygon-offset-fill},
+@code{vertex-array}, @code{normal-array}, @code{color-array},
+@code{index-array}, @code{texture-coord-array}, @code{edge-flag-array},
+@code{convolution-1d-ext}, @code{convolution-2d-ext},
+@code{separable-2d-ext}, @code{histogram-ext}, @code{minmax-ext},
+@code{rescale-normal-ext}, @code{shared-texture-palette-ext},
+@code{texture-3d-ext}, @code{multisample-sgis},
+@code{sample-alpha-to-mask-sgis}, @code{sample-alpha-to-one-sgis},
+@code{sample-mask-sgis}, @code{texture-4d-sgis},
+@code{async-histogram-sgix}, @code{async-tex-image-sgix},
+@code{async-draw-pixels-sgix}, @code{async-read-pixels-sgix},
+@code{calligraphic-fragment-sgix}, @code{fog-offset-sgix},
+@code{fragment-lighting-sgix}, @code{fragment-color-material-sgix},
+@code{fragment-light0-sgix}, @code{fragment-light1-sgix},
+@code{fragment-light2-sgix}, @code{fragment-light3-sgix},
+@code{fragment-light4-sgix}, @code{fragment-light5-sgix},
+@code{fragment-light6-sgix}, @code{fragment-light7-sgix},
+@code{framezoom-sgix}, @code{interlace-sgix},
+@code{ir-instrument1-sgix}, @code{pixel-tex-gen-sgix},
+@code{pixel-texture-sgis}, @code{reference-plane-sgix},
+@code{sprite-sgix}, @code{color-table-sgi},
+@code{post-convolution-color-table-sgi},
+@code{post-color-matrix-color-table-sgi},
+@code{texture-color-table-sgi},
+@code{invalid-framebuffer-operation-oes}, @code{rgba4-oes},
+@code{rgb5-a1-oes}, @code{depth-component16-oes},
+@code{max-renderbuffer-size-oes}, @code{framebuffer-binding-oes},
+@code{renderbuffer-binding-oes},
+@code{framebuffer-attachment-object-type-oes},
+@code{framebuffer-attachment-object-name-oes},
+@code{framebuffer-attachment-texture-level-oes},
+@code{framebuffer-attachment-texture-cube-map-face-oes},
+@code{framebuffer-attachment-texture-3d-zoffset-oes},
+@code{framebuffer-complete-oes},
+@code{framebuffer-incomplete-attachment-oes},
+@code{framebuffer-incomplete-missing-attachment-oes},
+@code{framebuffer-incomplete-dimensions-oes},
+@code{framebuffer-incomplete-formats-oes},
+@code{framebuffer-incomplete-draw-buffer-oes},
+@code{framebuffer-incomplete-read-buffer-oes},
+@code{framebuffer-unsupported-oes}, @code{color-attachment0-oes},
+@code{depth-attachment-oes}, @code{stencil-attachment-oes},
+@code{framebuffer-oes}, @code{renderbuffer-oes},
+@code{renderbuffer-width-oes}, @code{renderbuffer-height-oes},
+@code{renderbuffer-internal-format-oes}, @code{stencil-index1-oes},
+@code{stencil-index4-oes}, @code{stencil-index8-oes},
+@code{renderbuffer-red-size-oes}, @code{renderbuffer-green-size-oes},
+@code{renderbuffer-blue-size-oes}, @code{renderbuffer-alpha-size-oes},
+@code{renderbuffer-depth-size-oes},
+@code{renderbuffer-stencil-size-oes}, @code{rgb565-oes}.
+
+@end defmac
+
+@defmac enable-cap enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{fog}, @code{lighting}, @code{texture-1d}, @code{texture-2d},
+@code{line-stipple}, @code{polygon-stipple}, @code{cull-face},
+@code{alpha-test}, @code{blend}, @code{index-logic-op},
+@code{color-logic-op}, @code{dither}, @code{stencil-test},
+@code{depth-test}, @code{clip-plane0}, @code{clip-plane1},
+@code{clip-plane2}, @code{clip-plane3}, @code{clip-plane4},
+@code{clip-plane5}, @code{light0}, @code{light1}, @code{light2},
+@code{light3}, @code{light4}, @code{light5}, @code{light6},
+@code{light7}, @code{texture-gen-s}, @code{texture-gen-t},
+@code{texture-gen-r}, @code{texture-gen-q}, @code{map1-vertex-3},
+@code{map1-vertex-4}, @code{map1-color-4}, @code{map1-index},
+@code{map1-normal}, @code{map1-texture-coord-1},
+@code{map1-texture-coord-2}, @code{map1-texture-coord-3},
+@code{map1-texture-coord-4}, @code{map2-vertex-3}, @code{map2-vertex-4},
+@code{map2-color-4}, @code{map2-index}, @code{map2-normal},
+@code{map2-texture-coord-1}, @code{map2-texture-coord-2},
+@code{map2-texture-coord-3}, @code{map2-texture-coord-4},
+@code{point-smooth}, @code{line-smooth}, @code{polygon-smooth},
+@code{scissor-test}, @code{color-material}, @code{normalize},
+@code{auto-normal}, @code{polygon-offset-point},
+@code{polygon-offset-line}, @code{polygon-offset-fill},
+@code{vertex-array}, @code{normal-array}, @code{color-array},
+@code{index-array}, @code{texture-coord-array}, @code{edge-flag-array},
+@code{convolution-1d-ext}, @code{convolution-2d-ext},
+@code{separable-2d-ext}, @code{histogram-ext}, @code{minmax-ext},
+@code{rescale-normal-ext}, @code{shared-texture-palette-ext},
+@code{texture-3d-ext}, @code{multisample-sgis},
+@code{sample-alpha-to-mask-sgis}, @code{sample-alpha-to-one-sgis},
+@code{sample-mask-sgis}, @code{texture-4d-sgis},
+@code{async-histogram-sgix}, @code{async-tex-image-sgix},
+@code{async-draw-pixels-sgix}, @code{async-read-pixels-sgix},
+@code{calligraphic-fragment-sgix}, @code{fog-offset-sgix},
+@code{fragment-lighting-sgix}, @code{fragment-color-material-sgix},
+@code{fragment-light0-sgix}, @code{fragment-light1-sgix},
+@code{fragment-light2-sgix}, @code{fragment-light3-sgix},
+@code{fragment-light4-sgix}, @code{fragment-light5-sgix},
+@code{fragment-light6-sgix}, @code{fragment-light7-sgix},
+@code{framezoom-sgix}, @code{interlace-sgix},
+@code{ir-instrument1-sgix}, @code{pixel-tex-gen-sgix},
+@code{pixel-texture-sgis}, @code{reference-plane-sgix},
+@code{sprite-sgix}, @code{color-table-sgi},
+@code{post-convolution-color-table-sgi},
+@code{post-color-matrix-color-table-sgi},
+@code{texture-color-table-sgi}.
+
+@end defmac
+
+@defmac error-code enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{no-error}, @code{invalid-enum}, @code{invalid-value},
+@code{invalid-operation}, @code{stack-overflow}, @code{stack-underflow},
+@code{out-of-memory}, @code{table-too-large-ext},
+@code{texture-too-large-ext}.
+
+@end defmac
+
+@defmac arb-framebuffer-object enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{invalid-framebuffer-operation},
+@code{framebuffer-attachment-color-encoding},
+@code{framebuffer-attachment-component-type},
+@code{framebuffer-attachment-red-size},
+@code{framebuffer-attachment-green-size},
+@code{framebuffer-attachment-blue-size},
+@code{framebuffer-attachment-alpha-size},
+@code{framebuffer-attachment-depth-size},
+@code{framebuffer-attachment-stencil-size}, @code{framebuffer-default},
+@code{framebuffer-undefined}, @code{depth-stencil-attachment},
+@code{index}, @code{max-renderbuffer-size}, @code{depth-stencil},
+@code{unsigned-int-24-8}, @code{depth24-stencil8},
+@code{texture-stencil-size}, @code{texture-red-type},
+@code{texture-green-type}, @code{texture-blue-type},
+@code{texture-alpha-type}, @code{texture-luminance-type},
+@code{texture-intensity-type}, @code{texture-depth-type},
+@code{unsigned-normalized}, @code{framebuffer-binding},
+@code{draw-framebuffer-binding}, @code{renderbuffer-binding},
+@code{read-framebuffer}, @code{draw-framebuffer},
+@code{read-framebuffer-binding}, @code{renderbuffer-samples},
+@code{framebuffer-attachment-object-type},
+@code{framebuffer-attachment-object-type-ext},
+@code{framebuffer-attachment-object-name},
+@code{framebuffer-attachment-object-name-ext},
+@code{framebuffer-attachment-texture-level},
+@code{framebuffer-attachment-texture-level-ext},
+@code{framebuffer-attachment-texture-cube-map-face},
+@code{framebuffer-attachment-texture-cube-map-face-ext},
+@code{framebuffer-attachment-texture-layer},
+@code{framebuffer-attachment-texture-3d-zoffset-ext},
+@code{framebuffer-complete}, @code{framebuffer-complete-ext},
+@code{framebuffer-incomplete-attachment},
+@code{framebuffer-incomplete-attachment-ext},
+@code{framebuffer-incomplete-missing-attachment},
+@code{framebuffer-incomplete-missing-attachment-ext},
+@code{framebuffer-incomplete-dimensions-ext},
+@code{framebuffer-incomplete-formats-ext},
+@code{framebuffer-incomplete-draw-buffer},
+@code{framebuffer-incomplete-draw-buffer-ext},
+@code{framebuffer-incomplete-read-buffer},
+@code{framebuffer-incomplete-read-buffer-ext},
+@code{framebuffer-unsupported}, @code{framebuffer-unsupported-ext},
+@code{max-color-attachments}, @code{max-color-attachments-ext},
+@code{color-attachment0}, @code{color-attachment0-ext},
+@code{color-attachment1}, @code{color-attachment1-ext},
+@code{color-attachment2}, @code{color-attachment2-ext},
+@code{color-attachment3}, @code{color-attachment3-ext},
+@code{color-attachment4}, @code{color-attachment4-ext},
+@code{color-attachment5}, @code{color-attachment5-ext},
+@code{color-attachment6}, @code{color-attachment6-ext},
+@code{color-attachment7}, @code{color-attachment7-ext},
+@code{color-attachment8}, @code{color-attachment8-ext},
+@code{color-attachment9}, @code{color-attachment9-ext},
+@code{color-attachment10}, @code{color-attachment10-ext},
+@code{color-attachment11}, @code{color-attachment11-ext},
+@code{color-attachment12}, @code{color-attachment12-ext},
+@code{color-attachment13}, @code{color-attachment13-ext},
+@code{color-attachment14}, @code{color-attachment14-ext},
+@code{color-attachment15}, @code{color-attachment15-ext},
+@code{depth-attachment}, @code{depth-attachment-ext},
+@code{stencil-attachment}, @code{stencil-attachment-ext},
+@code{framebuffer}, @code{framebuffer-ext}, @code{renderbuffer},
+@code{renderbuffer-ext}, @code{renderbuffer-width},
+@code{renderbuffer-width-ext}, @code{renderbuffer-height},
+@code{renderbuffer-height-ext}, @code{renderbuffer-internal-format},
+@code{renderbuffer-internal-format-ext}, @code{stencil-index1},
+@code{stencil-index1-ext}, @code{stencil-index4},
+@code{stencil-index4-ext}, @code{stencil-index8},
+@code{stencil-index8-ext}, @code{stencil-index16},
+@code{stencil-index16-ext}, @code{renderbuffer-red-size},
+@code{renderbuffer-red-size-ext}, @code{renderbuffer-green-size},
+@code{renderbuffer-green-size-ext}, @code{renderbuffer-blue-size},
+@code{renderbuffer-blue-size-ext}, @code{renderbuffer-alpha-size},
+@code{renderbuffer-alpha-size-ext}, @code{renderbuffer-depth-size},
+@code{renderbuffer-depth-size-ext}, @code{renderbuffer-stencil-size},
+@code{renderbuffer-stencil-size-ext},
+@code{framebuffer-incomplete-multisample}, @code{max-samples}.
+
+@end defmac
+
+@defmac ext-framebuffer-object enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{invalid-framebuffer-operation-ext},
+@code{max-renderbuffer-size-ext}, @code{framebuffer-binding-ext},
+@code{renderbuffer-binding-ext},
+@code{framebuffer-attachment-object-type},
+@code{framebuffer-attachment-object-type-ext},
+@code{framebuffer-attachment-object-name},
+@code{framebuffer-attachment-object-name-ext},
+@code{framebuffer-attachment-texture-level},
+@code{framebuffer-attachment-texture-level-ext},
+@code{framebuffer-attachment-texture-cube-map-face},
+@code{framebuffer-attachment-texture-cube-map-face-ext},
+@code{framebuffer-attachment-texture-layer},
+@code{framebuffer-attachment-texture-3d-zoffset-ext},
+@code{framebuffer-complete}, @code{framebuffer-complete-ext},
+@code{framebuffer-incomplete-attachment},
+@code{framebuffer-incomplete-attachment-ext},
+@code{framebuffer-incomplete-missing-attachment},
+@code{framebuffer-incomplete-missing-attachment-ext},
+@code{framebuffer-incomplete-dimensions-ext},
+@code{framebuffer-incomplete-formats-ext},
+@code{framebuffer-incomplete-draw-buffer},
+@code{framebuffer-incomplete-draw-buffer-ext},
+@code{framebuffer-incomplete-read-buffer},
+@code{framebuffer-incomplete-read-buffer-ext},
+@code{framebuffer-unsupported}, @code{framebuffer-unsupported-ext},
+@code{max-color-attachments}, @code{max-color-attachments-ext},
+@code{color-attachment0}, @code{color-attachment0-ext},
+@code{color-attachment1}, @code{color-attachment1-ext},
+@code{color-attachment2}, @code{color-attachment2-ext},
+@code{color-attachment3}, @code{color-attachment3-ext},
+@code{color-attachment4}, @code{color-attachment4-ext},
+@code{color-attachment5}, @code{color-attachment5-ext},
+@code{color-attachment6}, @code{color-attachment6-ext},
+@code{color-attachment7}, @code{color-attachment7-ext},
+@code{color-attachment8}, @code{color-attachment8-ext},
+@code{color-attachment9}, @code{color-attachment9-ext},
+@code{color-attachment10}, @code{color-attachment10-ext},
+@code{color-attachment11}, @code{color-attachment11-ext},
+@code{color-attachment12}, @code{color-attachment12-ext},
+@code{color-attachment13}, @code{color-attachment13-ext},
+@code{color-attachment14}, @code{color-attachment14-ext},
+@code{color-attachment15}, @code{color-attachment15-ext},
+@code{depth-attachment}, @code{depth-attachment-ext},
+@code{stencil-attachment}, @code{stencil-attachment-ext},
+@code{framebuffer}, @code{framebuffer-ext}, @code{renderbuffer},
+@code{renderbuffer-ext}, @code{renderbuffer-width},
+@code{renderbuffer-width-ext}, @code{renderbuffer-height},
+@code{renderbuffer-height-ext}, @code{renderbuffer-internal-format},
+@code{renderbuffer-internal-format-ext}, @code{stencil-index1},
+@code{stencil-index1-ext}, @code{stencil-index4},
+@code{stencil-index4-ext}, @code{stencil-index8},
+@code{stencil-index8-ext}, @code{stencil-index16},
+@code{stencil-index16-ext}, @code{renderbuffer-red-size},
+@code{renderbuffer-red-size-ext}, @code{renderbuffer-green-size},
+@code{renderbuffer-green-size-ext}, @code{renderbuffer-blue-size},
+@code{renderbuffer-blue-size-ext}, @code{renderbuffer-alpha-size},
+@code{renderbuffer-alpha-size-ext}, @code{renderbuffer-depth-size},
+@code{renderbuffer-depth-size-ext}, @code{renderbuffer-stencil-size},
+@code{renderbuffer-stencil-size-ext}.
+
+@end defmac
+
+@defmac feedback-type enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{2d}, @code{3d}, @code{3d-color}, @code{3d-color-texture},
+@code{4d-color-texture}.
+
+@end defmac
+
+@defmac feed-back-token enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{pass-through-token}, @code{point-token}, @code{line-token},
+@code{polygon-token}, @code{bitmap-token}, @code{draw-pixel-token},
+@code{copy-pixel-token}, @code{line-reset-token}.
+
+@end defmac
+
+@defmac ffd-mask-sgix enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-deformation-bit-sgix},
+@code{geometry-deformation-bit-sgix}.
+
+@end defmac
+
+@defmac ffd-target-sgix enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{geometry-deformation-sgix}, @code{texture-deformation-sgix}.
+
+@end defmac
+
+@defmac fog-mode enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{linear}, @code{exp}, @code{exp2}, @code{fog-func-sgis}.
+
+@end defmac
+
+@defmac fog-parameter enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{fog-color}, @code{fog-density}, @code{fog-end}, @code{fog-index},
+@code{fog-mode}, @code{fog-start}, @code{fog-offset-value-sgix}.
+
+@end defmac
+
+@defmac fragment-light-model-parameter-sgix enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{fragment-light-model-local-viewer-sgix},
+@code{fragment-light-model-two-side-sgix},
+@code{fragment-light-model-ambient-sgix},
+@code{fragment-light-model-normal-interpolation-sgix}.
+
+@end defmac
+
+@defmac front-face-direction enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{cw}, @code{ccw}.
+
+@end defmac
+
+@defmac get-color-table-parameter-p-name-sgi enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{color-table-scale-sgi}, @code{color-table-bias-sgi},
+@code{color-table-format-sgi}, @code{color-table-width-sgi},
+@code{color-table-red-size-sgi}, @code{color-table-green-size-sgi},
+@code{color-table-blue-size-sgi}, @code{color-table-alpha-size-sgi},
+@code{color-table-luminance-size-sgi},
+@code{color-table-intensity-size-sgi}.
+
+@end defmac
+
+@defmac get-convolution-parameter enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{convolution-border-mode-ext}, @code{convolution-filter-scale-ext},
+@code{convolution-filter-bias-ext}, @code{convolution-format-ext},
+@code{convolution-width-ext}, @code{convolution-height-ext},
+@code{max-convolution-width-ext}, @code{max-convolution-height-ext}.
+
+@end defmac
+
+@defmac get-histogram-parameter-p-name-ext enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{histogram-width-ext}, @code{histogram-format-ext},
+@code{histogram-red-size-ext}, @code{histogram-green-size-ext},
+@code{histogram-blue-size-ext}, @code{histogram-alpha-size-ext},
+@code{histogram-luminance-size-ext}, @code{histogram-sink-ext}.
+
+@end defmac
+
+@defmac get-map-query enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{coeff}, @code{order}, @code{domain}.
+
+@end defmac
+
+@defmac get-minmax-parameter-p-name-ext enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{minmax-format-ext}, @code{minmax-sink-ext}.
+
+@end defmac
+
+@defmac get-pixel-map enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{pixel-map-i-to-i}, @code{pixel-map-s-to-s},
+@code{pixel-map-i-to-r}, @code{pixel-map-i-to-g},
+@code{pixel-map-i-to-b}, @code{pixel-map-i-to-a},
+@code{pixel-map-r-to-r}, @code{pixel-map-g-to-g},
+@code{pixel-map-b-to-b}, @code{pixel-map-a-to-a}.
+
+@end defmac
+
+@defmac get-pointerv-p-name enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{vertex-array-pointer}, @code{normal-array-pointer},
+@code{color-array-pointer}, @code{index-array-pointer},
+@code{texture-coord-array-pointer}, @code{edge-flag-array-pointer},
+@code{feedback-buffer-pointer}, @code{selection-buffer-pointer},
+@code{instrument-buffer-pointer-sgix}.
+
+@end defmac
+
+@defmac get-p-name enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{current-color}, @code{current-index}, @code{current-normal},
+@code{current-texture-coords}, @code{current-raster-color},
+@code{current-raster-index}, @code{current-raster-texture-coords},
+@code{current-raster-position}, @code{current-raster-position-valid},
+@code{current-raster-distance}, @code{point-smooth}, @code{point-size},
+@code{point-size-range}, @code{point-size-granularity},
+@code{line-smooth}, @code{line-width}, @code{line-width-range},
+@code{line-width-granularity}, @code{line-stipple},
+@code{line-stipple-pattern}, @code{line-stipple-repeat},
+@code{smooth-point-size-range}, @code{smooth-point-size-granularity},
+@code{smooth-line-width-range}, @code{smooth-line-width-granularity},
+@code{aliased-point-size-range}, @code{aliased-line-width-range},
+@code{list-mode}, @code{max-list-nesting}, @code{list-base},
+@code{list-index}, @code{polygon-mode}, @code{polygon-smooth},
+@code{polygon-stipple}, @code{edge-flag}, @code{cull-face},
+@code{cull-face-mode}, @code{front-face}, @code{lighting},
+@code{light-model-local-viewer}, @code{light-model-two-side},
+@code{light-model-ambient}, @code{shade-model},
+@code{color-material-face}, @code{color-material-parameter},
+@code{color-material}, @code{fog}, @code{fog-index}, @code{fog-density},
+@code{fog-start}, @code{fog-end}, @code{fog-mode}, @code{fog-color},
+@code{depth-range}, @code{depth-test}, @code{depth-writemask},
+@code{depth-clear-value}, @code{depth-func}, @code{accum-clear-value},
+@code{stencil-test}, @code{stencil-clear-value}, @code{stencil-func},
+@code{stencil-value-mask}, @code{stencil-fail},
+@code{stencil-pass-depth-fail}, @code{stencil-pass-depth-pass},
+@code{stencil-ref}, @code{stencil-writemask}, @code{matrix-mode},
+@code{normalize}, @code{viewport}, @code{modelview-stack-depth},
+@code{projection-stack-depth}, @code{texture-stack-depth},
+@code{modelview-matrix}, @code{projection-matrix},
+@code{texture-matrix}, @code{attrib-stack-depth},
+@code{client-attrib-stack-depth}, @code{alpha-test},
+@code{alpha-test-func}, @code{alpha-test-ref}, @code{dither},
+@code{blend-dst}, @code{blend-src}, @code{blend}, @code{logic-op-mode},
+@code{index-logic-op}, @code{logic-op}, @code{color-logic-op},
+@code{aux-buffers}, @code{draw-buffer}, @code{read-buffer},
+@code{scissor-box}, @code{scissor-test}, @code{index-clear-value},
+@code{index-writemask}, @code{color-clear-value},
+@code{color-writemask}, @code{index-mode}, @code{rgba-mode},
+@code{doublebuffer}, @code{stereo}, @code{render-mode},
+@code{perspective-correction-hint}, @code{point-smooth-hint},
+@code{line-smooth-hint}, @code{polygon-smooth-hint}, @code{fog-hint},
+@code{texture-gen-s}, @code{texture-gen-t}, @code{texture-gen-r},
+@code{texture-gen-q}, @code{pixel-map-i-to-i-size},
+@code{pixel-map-s-to-s-size}, @code{pixel-map-i-to-r-size},
+@code{pixel-map-i-to-g-size}, @code{pixel-map-i-to-b-size},
+@code{pixel-map-i-to-a-size}, @code{pixel-map-r-to-r-size},
+@code{pixel-map-g-to-g-size}, @code{pixel-map-b-to-b-size},
+@code{pixel-map-a-to-a-size}, @code{unpack-swap-bytes},
+@code{unpack-lsb-first}, @code{unpack-row-length},
+@code{unpack-skip-rows}, @code{unpack-skip-pixels},
+@code{unpack-alignment}, @code{pack-swap-bytes}, @code{pack-lsb-first},
+@code{pack-row-length}, @code{pack-skip-rows}, @code{pack-skip-pixels},
+@code{pack-alignment}, @code{map-color}, @code{map-stencil},
+@code{index-shift}, @code{index-offset}, @code{red-scale},
+@code{red-bias}, @code{zoom-x}, @code{zoom-y}, @code{green-scale},
+@code{green-bias}, @code{blue-scale}, @code{blue-bias},
+@code{alpha-scale}, @code{alpha-bias}, @code{depth-scale},
+@code{depth-bias}, @code{max-eval-order}, @code{max-lights},
+@code{max-clip-distances}, @code{max-clip-planes},
+@code{max-texture-size}, @code{max-pixel-map-table},
+@code{max-attrib-stack-depth}, @code{max-modelview-stack-depth},
+@code{max-name-stack-depth}, @code{max-projection-stack-depth},
+@code{max-texture-stack-depth}, @code{max-viewport-dims},
+@code{max-client-attrib-stack-depth}, @code{subpixel-bits},
+@code{index-bits}, @code{red-bits}, @code{green-bits}, @code{blue-bits},
+@code{alpha-bits}, @code{depth-bits}, @code{stencil-bits},
+@code{accum-red-bits}, @code{accum-green-bits}, @code{accum-blue-bits},
+@code{accum-alpha-bits}, @code{name-stack-depth}, @code{auto-normal},
+@code{map1-color-4}, @code{map1-index}, @code{map1-normal},
+@code{map1-texture-coord-1}, @code{map1-texture-coord-2},
+@code{map1-texture-coord-3}, @code{map1-texture-coord-4},
+@code{map1-vertex-3}, @code{map1-vertex-4}, @code{map2-color-4},
+@code{map2-index}, @code{map2-normal}, @code{map2-texture-coord-1},
+@code{map2-texture-coord-2}, @code{map2-texture-coord-3},
+@code{map2-texture-coord-4}, @code{map2-vertex-3}, @code{map2-vertex-4},
+@code{map1-grid-domain}, @code{map1-grid-segments},
+@code{map2-grid-domain}, @code{map2-grid-segments}, @code{texture-1d},
+@code{texture-2d}, @code{feedback-buffer-size},
+@code{feedback-buffer-type}, @code{selection-buffer-size},
+@code{polygon-offset-units}, @code{polygon-offset-point},
+@code{polygon-offset-line}, @code{polygon-offset-fill},
+@code{polygon-offset-factor}, @code{texture-binding-1d},
+@code{texture-binding-2d}, @code{texture-binding-3d},
+@code{vertex-array}, @code{normal-array}, @code{color-array},
+@code{index-array}, @code{texture-coord-array}, @code{edge-flag-array},
+@code{vertex-array-size}, @code{vertex-array-type},
+@code{vertex-array-stride}, @code{normal-array-type},
+@code{normal-array-stride}, @code{color-array-size},
+@code{color-array-type}, @code{color-array-stride},
+@code{index-array-type}, @code{index-array-stride},
+@code{texture-coord-array-size}, @code{texture-coord-array-type},
+@code{texture-coord-array-stride}, @code{edge-flag-array-stride},
+@code{clip-plane0}, @code{clip-plane1}, @code{clip-plane2},
+@code{clip-plane3}, @code{clip-plane4}, @code{clip-plane5},
+@code{light0}, @code{light1}, @code{light2}, @code{light3},
+@code{light4}, @code{light5}, @code{light6}, @code{light7},
+@code{light-model-color-control}, @code{blend-color-ext},
+@code{blend-equation-ext}, @code{pack-cmyk-hint-ext},
+@code{unpack-cmyk-hint-ext}, @code{convolution-1d-ext},
+@code{convolution-2d-ext}, @code{separable-2d-ext},
+@code{post-convolution-red-scale-ext},
+@code{post-convolution-green-scale-ext},
+@code{post-convolution-blue-scale-ext},
+@code{post-convolution-alpha-scale-ext},
+@code{post-convolution-red-bias-ext},
+@code{post-convolution-green-bias-ext},
+@code{post-convolution-blue-bias-ext},
+@code{post-convolution-alpha-bias-ext}, @code{histogram-ext},
+@code{minmax-ext}, @code{polygon-offset-bias-ext},
+@code{rescale-normal-ext}, @code{shared-texture-palette-ext},
+@code{texture-3d-binding-ext}, @code{pack-skip-images-ext},
+@code{pack-image-height-ext}, @code{unpack-skip-images-ext},
+@code{unpack-image-height-ext}, @code{texture-3d-ext},
+@code{max-3d-texture-size-ext}, @code{vertex-array-count-ext},
+@code{normal-array-count-ext}, @code{color-array-count-ext},
+@code{index-array-count-ext}, @code{texture-coord-array-count-ext},
+@code{edge-flag-array-count-ext}, @code{detail-texture-2d-binding-sgis},
+@code{fog-func-points-sgis}, @code{max-fog-func-points-sgis},
+@code{generate-mipmap-hint-sgis}, @code{multisample-sgis},
+@code{sample-alpha-to-mask-sgis}, @code{sample-alpha-to-one-sgis},
+@code{sample-mask-sgis}, @code{sample-buffers-sgis},
+@code{samples-sgis}, @code{sample-mask-value-sgis},
+@code{sample-mask-invert-sgis}, @code{sample-pattern-sgis},
+@code{pixel-texture-sgis}, @code{point-size-min-sgis},
+@code{point-size-max-sgis}, @code{point-fade-threshold-size-sgis},
+@code{distance-attenuation-sgis}, @code{pack-skip-volumes-sgis},
+@code{pack-image-depth-sgis}, @code{unpack-skip-volumes-sgis},
+@code{unpack-image-depth-sgis}, @code{texture-4d-sgis},
+@code{max-4d-texture-size-sgis}, @code{texture-4d-binding-sgis},
+@code{async-marker-sgix}, @code{async-histogram-sgix},
+@code{max-async-histogram-sgix}, @code{async-tex-image-sgix},
+@code{async-draw-pixels-sgix}, @code{async-read-pixels-sgix},
+@code{max-async-tex-image-sgix}, @code{max-async-draw-pixels-sgix},
+@code{max-async-read-pixels-sgix}, @code{calligraphic-fragment-sgix},
+@code{max-clipmap-virtual-depth-sgix}, @code{max-clipmap-depth-sgix},
+@code{convolution-hint-sgix}, @code{fog-offset-sgix},
+@code{fog-offset-value-sgix}, @code{fragment-lighting-sgix},
+@code{fragment-color-material-sgix},
+@code{fragment-color-material-face-sgix},
+@code{fragment-color-material-parameter-sgix},
+@code{max-fragment-lights-sgix}, @code{max-active-lights-sgix},
+@code{light-env-mode-sgix},
+@code{fragment-light-model-local-viewer-sgix},
+@code{fragment-light-model-two-side-sgix},
+@code{fragment-light-model-ambient-sgix},
+@code{fragment-light-model-normal-interpolation-sgix},
+@code{fragment-light0-sgix}, @code{framezoom-sgix},
+@code{framezoom-factor-sgix}, @code{max-framezoom-factor-sgix},
+@code{instrument-measurements-sgix}, @code{interlace-sgix},
+@code{ir-instrument1-sgix}, @code{pixel-tex-gen-sgix},
+@code{pixel-tex-gen-mode-sgix}, @code{pixel-tile-best-alignment-sgix},
+@code{pixel-tile-cache-increment-sgix}, @code{pixel-tile-width-sgix},
+@code{pixel-tile-height-sgix}, @code{pixel-tile-grid-width-sgix},
+@code{pixel-tile-grid-height-sgix}, @code{pixel-tile-grid-depth-sgix},
+@code{pixel-tile-cache-size-sgix}, @code{deformations-mask-sgix},
+@code{reference-plane-equation-sgix}, @code{reference-plane-sgix},
+@code{sprite-sgix}, @code{sprite-mode-sgix}, @code{sprite-axis-sgix},
+@code{sprite-translation-sgix}, @code{pack-subsample-rate-sgix},
+@code{unpack-subsample-rate-sgix}, @code{pack-resample-sgix},
+@code{unpack-resample-sgix}, @code{post-texture-filter-bias-range-sgix},
+@code{post-texture-filter-scale-range-sgix}, @code{vertex-preclip-sgix},
+@code{vertex-preclip-hint-sgix}, @code{color-matrix-sgi},
+@code{color-matrix-stack-depth-sgi},
+@code{max-color-matrix-stack-depth-sgi},
+@code{post-color-matrix-red-scale-sgi},
+@code{post-color-matrix-green-scale-sgi},
+@code{post-color-matrix-blue-scale-sgi},
+@code{post-color-matrix-alpha-scale-sgi},
+@code{post-color-matrix-red-bias-sgi},
+@code{post-color-matrix-green-bias-sgi},
+@code{post-color-matrix-blue-bias-sgi},
+@code{post-color-matrix-alpha-bias-sgi}, @code{color-table-sgi},
+@code{post-convolution-color-table-sgi},
+@code{post-color-matrix-color-table-sgi},
+@code{texture-color-table-sgi}.
+
+@end defmac
+
+@defmac qcom-alpha-test enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{alpha-test-qcom}, @code{alpha-test-func-qcom},
+@code{alpha-test-ref-qcom}.
+
+@end defmac
+
+@defmac ext-unpack-subimage enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{unpack-row-length}, @code{unpack-skip-rows},
+@code{unpack-skip-pixels}.
+
+@end defmac
+
+@defmac ext-multiview-draw-buffers enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{draw-buffer-ext}, @code{read-buffer-ext}, @code{draw-buffer-ext},
+@code{read-buffer-ext}, @code{color-attachment-ext},
+@code{multiview-ext}, @code{max-multiview-buffers-ext}.
+
+@end defmac
+
+@defmac nv-read-buffer enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{read-buffer-nv}.
+
+@end defmac
+
+@defmac get-texture-parameter enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-mag-filter}, @code{texture-min-filter},
+@code{texture-wrap-s}, @code{texture-wrap-t}, @code{texture-width},
+@code{texture-height}, @code{texture-internal-format},
+@code{texture-components}, @code{texture-border-color},
+@code{texture-border}, @code{texture-red-size},
+@code{texture-green-size}, @code{texture-blue-size},
+@code{texture-alpha-size}, @code{texture-luminance-size},
+@code{texture-intensity-size}, @code{texture-priority},
+@code{texture-resident}, @code{texture-depth-ext},
+@code{texture-wrap-r-ext}, @code{detail-texture-level-sgis},
+@code{detail-texture-mode-sgis}, @code{detail-texture-func-points-sgis},
+@code{generate-mipmap-sgis}, @code{sharpen-texture-func-points-sgis},
+@code{texture-filter4-size-sgis}, @code{texture-min-lod-sgis},
+@code{texture-max-lod-sgis}, @code{texture-base-level-sgis},
+@code{texture-max-level-sgis}, @code{dual-texture-select-sgis},
+@code{quad-texture-select-sgis}, @code{texture-4dsize-sgis},
+@code{texture-wrap-q-sgis}, @code{texture-clipmap-center-sgix},
+@code{texture-clipmap-frame-sgix}, @code{texture-clipmap-offset-sgix},
+@code{texture-clipmap-virtual-depth-sgix},
+@code{texture-clipmap-lod-offset-sgix},
+@code{texture-clipmap-depth-sgix}, @code{texture-compare-sgix},
+@code{texture-compare-operator-sgix}, @code{texture-lequal-r-sgix},
+@code{texture-gequal-r-sgix}, @code{shadow-ambient-sgix},
+@code{texture-max-clamp-s-sgix}, @code{texture-max-clamp-t-sgix},
+@code{texture-max-clamp-r-sgix}, @code{texture-lod-bias-s-sgix},
+@code{texture-lod-bias-t-sgix}, @code{texture-lod-bias-r-sgix},
+@code{post-texture-filter-bias-sgix},
+@code{post-texture-filter-scale-sgix}.
+
+@end defmac
+
+@defmac nv-texture-border-clamp enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-border-color-nv}, @code{clamp-to-border-nv}.
+
+@end defmac
+
+@defmac hint-mode enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{dont-care}, @code{fastest}, @code{nicest}.
+
+@end defmac
+
+@defmac hint-target enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{perspective-correction-hint}, @code{point-smooth-hint},
+@code{line-smooth-hint}, @code{polygon-smooth-hint}, @code{fog-hint},
+@code{pack-cmyk-hint-ext}, @code{unpack-cmyk-hint-ext},
+@code{generate-mipmap-hint-sgis}, @code{convolution-hint-sgix},
+@code{texture-multi-buffer-hint-sgix}, @code{vertex-preclip-hint-sgix}.
+
+@end defmac
+
+@defmac histogram-target-ext enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{histogram-ext}, @code{proxy-histogram-ext}.
+
+@end defmac
+
+@defmac index-pointer-type enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{short}, @code{int}, @code{float}, @code{double}.
+
+@end defmac
+
+@defmac light-env-mode-sgix enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{replace}, @code{modulate}, @code{add}.
+
+@end defmac
+
+@defmac light-env-parameter-sgix enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{light-env-mode-sgix}.
+
+@end defmac
+
+@defmac light-model-color-control enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{single-color}, @code{separate-specular-color}.
+
+@end defmac
+
+@defmac light-model-parameter enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{light-model-ambient}, @code{light-model-local-viewer},
+@code{light-model-two-side}, @code{light-model-color-control}.
+
+@end defmac
+
+@defmac light-parameter enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{ambient}, @code{diffuse}, @code{specular}, @code{position},
+@code{spot-direction}, @code{spot-exponent}, @code{spot-cutoff},
+@code{constant-attenuation}, @code{linear-attenuation},
+@code{quadratic-attenuation}.
+
+@end defmac
+
+@defmac list-mode enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{compile}, @code{compile-and-execute}.
+
+@end defmac
+
+@defmac data-type enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{byte}, @code{unsigned-byte}, @code{short}, @code{unsigned-short},
+@code{int}, @code{unsigned-int}, @code{float}, @code{2-bytes},
+@code{3-bytes}, @code{4-bytes}, @code{double}, @code{double-ext}.
+
+@end defmac
+
+@defmac oes-element-index-uint bit...
+Bitfield constructor. The symbolic @var{bit} arguments are replaced with
+their corresponding numeric values and combined with @code{logior} at
+compile-time. The symbolic arguments known to this bitfield constructor
+are:
+
+.
+
+@end defmac
+
+@defmac oes-texture-float enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{half-float-oes}.
+
+@end defmac
+
+@defmac ext-vertex-attrib-64-bit enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{double-mat2-ext}, @code{double-mat3-ext}, @code{double-mat4-ext},
+@code{double-mat-2x-3-ext}, @code{double-mat-2x-4-ext},
+@code{double-mat-3x-2-ext}, @code{double-mat-3x-4-ext},
+@code{double-mat-4x-2-ext}, @code{double-mat-4x-3-ext},
+@code{double-vec2-ext}, @code{double-vec3-ext}, @code{double-vec4-ext}.
+
+@end defmac
+
+@defmac arb-half-float-vertex enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{half-float}.
+
+@end defmac
+
+@defmac arb-half-float-pixel enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{half-float-arb}.
+
+@end defmac
+
+@defmac nv-half-float enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{half-float-nv}.
+
+@end defmac
+
+@defmac apple-float-pixels enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{half-apple}, @code{rgba-float32-apple}, @code{rgb-float32-apple},
+@code{alpha-float32-apple}, @code{intensity-float32-apple},
+@code{luminance-float32-apple}, @code{luminance-alpha-float32-apple},
+@code{rgba-float16-apple}, @code{rgb-float16-apple},
+@code{alpha-float16-apple}, @code{intensity-float16-apple},
+@code{luminance-float16-apple}, @code{luminance-alpha-float16-apple},
+@code{color-float-apple}.
+
+@end defmac
+
+@defmac arb-es2-compatibility enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{fixed}, @code{implementation-color-read-type},
+@code{implementation-color-read-format}, @code{rgb565},
+@code{low-float}, @code{medium-float}, @code{high-float},
+@code{low-int}, @code{medium-int}, @code{high-int},
+@code{shader-binary-formats}, @code{num-shader-binary-formats},
+@code{shader-compiler}, @code{max-vertex-uniform-vectors},
+@code{max-varying-vectors}, @code{max-fragment-uniform-vectors}.
+
+@end defmac
+
+@defmac oes-fixed-point enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{fixed-oes}.
+
+@end defmac
+
+@defmac nv-vertex-attrib-integer-64-bit enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{int64-nv}, @code{unsigned-int64-nv}.
+
+@end defmac
+
+@defmac list-name-type enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{byte}, @code{unsigned-byte}, @code{short}, @code{unsigned-short},
+@code{int}, @code{unsigned-int}, @code{float}, @code{2-bytes},
+@code{3-bytes}, @code{4-bytes}.
+
+@end defmac
+
+@defmac list-parameter-name enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{list-priority-sgix}.
+
+@end defmac
+
+@defmac logic-op enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{clear}, @code{and}, @code{and-reverse}, @code{copy},
+@code{and-inverted}, @code{noop}, @code{xor}, @code{or}, @code{nor},
+@code{equiv}, @code{invert}, @code{or-reverse}, @code{copy-inverted},
+@code{or-inverted}, @code{nand}, @code{set}.
+
+@end defmac
+
+@defmac map-target enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{map1-color-4}, @code{map1-index}, @code{map1-normal},
+@code{map1-texture-coord-1}, @code{map1-texture-coord-2},
+@code{map1-texture-coord-3}, @code{map1-texture-coord-4},
+@code{map1-vertex-3}, @code{map1-vertex-4}, @code{map2-color-4},
+@code{map2-index}, @code{map2-normal}, @code{map2-texture-coord-1},
+@code{map2-texture-coord-2}, @code{map2-texture-coord-3},
+@code{map2-texture-coord-4}, @code{map2-vertex-3}, @code{map2-vertex-4},
+@code{geometry-deformation-sgix}, @code{texture-deformation-sgix}.
+
+@end defmac
+
+@defmac material-face enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{front}, @code{back}, @code{front-and-back}.
+
+@end defmac
+
+@defmac material-parameter enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{emission}, @code{shininess}, @code{ambient-and-diffuse},
+@code{color-indexes}, @code{ambient}, @code{diffuse}, @code{specular}.
+
+@end defmac
+
+@defmac matrix-mode enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{modelview}, @code{projection}, @code{texture}.
+
+@end defmac
+
+@defmac mesh-mode-1 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{point}, @code{line}.
+
+@end defmac
+
+@defmac mesh-mode-2 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{point}, @code{line}, @code{fill}.
+
+@end defmac
+
+@defmac minmax-target-ext enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{minmax-ext}.
+
+@end defmac
+
+@defmac normal-pointer-type enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{byte}, @code{short}, @code{int}, @code{float}, @code{double}.
+
+@end defmac
+
+@defmac pixel-copy-type enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{color}, @code{depth}, @code{stencil}.
+
+@end defmac
+
+@defmac ext-discard-framebuffer enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{color-ext}, @code{depth-ext}, @code{stencil-ext}.
+
+@end defmac
+
+@defmac pixel-format enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{color-index}, @code{stencil-index}, @code{depth-component},
+@code{red}, @code{green}, @code{blue}, @code{alpha}, @code{rgb},
+@code{rgba}, @code{luminance}, @code{luminance-alpha}, @code{abgr-ext},
+@code{cmyk-ext}, @code{cmyka-ext}, @code{ycrcb-422-sgix},
+@code{ycrcb-444-sgix}.
+
+@end defmac
+
+@defmac oes-depth-texture enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{red-ext}.
+
+@end defmac
+
+@defmac ext-texture-rg enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{red-ext}, @code{rg-ext}, @code{r8-ext}, @code{rg8-ext}.
+
+@end defmac
+
+@defmac pixel-map enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{pixel-map-i-to-i}, @code{pixel-map-s-to-s},
+@code{pixel-map-i-to-r}, @code{pixel-map-i-to-g},
+@code{pixel-map-i-to-b}, @code{pixel-map-i-to-a},
+@code{pixel-map-r-to-r}, @code{pixel-map-g-to-g},
+@code{pixel-map-b-to-b}, @code{pixel-map-a-to-a}.
+
+@end defmac
+
+@defmac pixel-store-parameter enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{unpack-swap-bytes}, @code{unpack-lsb-first},
+@code{unpack-row-length}, @code{unpack-skip-rows},
+@code{unpack-skip-pixels}, @code{unpack-alignment},
+@code{pack-swap-bytes}, @code{pack-lsb-first}, @code{pack-row-length},
+@code{pack-skip-rows}, @code{pack-skip-pixels}, @code{pack-alignment},
+@code{pack-skip-images-ext}, @code{pack-image-height-ext},
+@code{unpack-skip-images-ext}, @code{unpack-image-height-ext},
+@code{pack-skip-volumes-sgis}, @code{pack-image-depth-sgis},
+@code{unpack-skip-volumes-sgis}, @code{unpack-image-depth-sgis},
+@code{pixel-tile-width-sgix}, @code{pixel-tile-height-sgix},
+@code{pixel-tile-grid-width-sgix}, @code{pixel-tile-grid-height-sgix},
+@code{pixel-tile-grid-depth-sgix}, @code{pixel-tile-cache-size-sgix},
+@code{pack-subsample-rate-sgix}, @code{unpack-subsample-rate-sgix},
+@code{pack-resample-sgix}, @code{unpack-resample-sgix}.
+
+@end defmac
+
+@defmac pixel-store-resample-mode enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{resample-replicate-sgix}, @code{resample-zero-fill-sgix},
+@code{resample-decimate-sgix}.
+
+@end defmac
+
+@defmac pixel-store-subsample-rate enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{pixel-subsample-4444-sgix}, @code{pixel-subsample-2424-sgix},
+@code{pixel-subsample-4242-sgix}.
+
+@end defmac
+
+@defmac pixel-tex-gen-mode enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{none}, @code{rgb}, @code{rgba}, @code{luminance},
+@code{luminance-alpha}, @code{pixel-tex-gen-alpha-replace-sgix},
+@code{pixel-tex-gen-alpha-no-replace-sgix},
+@code{pixel-tex-gen-alpha-ms-sgix}, @code{pixel-tex-gen-alpha-ls-sgix}.
+
+@end defmac
+
+@defmac pixel-tex-gen-parameter-name-sgis enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{pixel-fragment-rgb-source-sgis},
+@code{pixel-fragment-alpha-source-sgis}.
+
+@end defmac
+
+@defmac pixel-transfer-parameter enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{map-color}, @code{map-stencil}, @code{index-shift},
+@code{index-offset}, @code{red-scale}, @code{red-bias},
+@code{green-scale}, @code{green-bias}, @code{blue-scale},
+@code{blue-bias}, @code{alpha-scale}, @code{alpha-bias},
+@code{depth-scale}, @code{depth-bias},
+@code{post-convolution-red-scale-ext},
+@code{post-convolution-green-scale-ext},
+@code{post-convolution-blue-scale-ext},
+@code{post-convolution-alpha-scale-ext},
+@code{post-convolution-red-bias-ext},
+@code{post-convolution-green-bias-ext},
+@code{post-convolution-blue-bias-ext},
+@code{post-convolution-alpha-bias-ext},
+@code{post-color-matrix-red-scale-sgi},
+@code{post-color-matrix-green-scale-sgi},
+@code{post-color-matrix-blue-scale-sgi},
+@code{post-color-matrix-alpha-scale-sgi},
+@code{post-color-matrix-red-bias-sgi},
+@code{post-color-matrix-green-bias-sgi},
+@code{post-color-matrix-blue-bias-sgi},
+@code{post-color-matrix-alpha-bias-sgi}.
+
+@end defmac
+
+@defmac pixel-type enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{bitmap}, @code{byte}, @code{unsigned-byte}, @code{short},
+@code{unsigned-short}, @code{int}, @code{unsigned-int}, @code{float},
+@code{unsigned-byte-3-3-2-ext}, @code{unsigned-short-4-4-4-4-ext},
+@code{unsigned-short-5-5-5-1-ext}, @code{unsigned-int-8-8-8-8-ext},
+@code{unsigned-int-10-10-10-2-ext}.
+
+@end defmac
+
+@defmac point-parameter-name-sgis enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{point-size-min-sgis}, @code{point-size-max-sgis},
+@code{point-fade-threshold-size-sgis}, @code{distance-attenuation-sgis}.
+
+@end defmac
+
+@defmac polygon-mode enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{point}, @code{line}, @code{fill}.
+
+@end defmac
+
+@defmac read-buffer-mode enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{front-left}, @code{front-right}, @code{back-left},
+@code{back-right}, @code{front}, @code{back}, @code{left}, @code{right},
+@code{aux0}, @code{aux1}, @code{aux2}, @code{aux3}.
+
+@end defmac
+
+@defmac rendering-mode enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{render}, @code{feedback}, @code{select}.
+
+@end defmac
+
+@defmac sample-pattern-sgis enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{1pass-sgis}, @code{2pass-0-sgis}, @code{2pass-1-sgis},
+@code{4pass-0-sgis}, @code{4pass-1-sgis}, @code{4pass-2-sgis},
+@code{4pass-3-sgis}.
+
+@end defmac
+
+@defmac separable-target-ext enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{separable-2d-ext}.
+
+@end defmac
+
+@defmac shading-model enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{flat}, @code{smooth}.
+
+@end defmac
+
+@defmac stencil-function enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{never}, @code{less}, @code{equal}, @code{lequal}, @code{greater},
+@code{notequal}, @code{gequal}, @code{always}.
+
+@end defmac
+
+@defmac stencil-op enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{zero}, @code{keep}, @code{replace}, @code{incr}, @code{decr},
+@code{invert}.
+
+@end defmac
+
+@defmac string-name enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{vendor}, @code{renderer}, @code{version}, @code{extensions}.
+
+@end defmac
+
+@defmac tex-coord-pointer-type enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{short}, @code{int}, @code{float}, @code{double}.
+
+@end defmac
+
+@defmac texture-coord-name enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{s}, @code{t}, @code{r}, @code{q}.
+
+@end defmac
+
+@defmac texture-env-mode enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{modulate}, @code{decal}, @code{blend}, @code{replace-ext},
+@code{add}, @code{texture-env-bias-sgix}.
+
+@end defmac
+
+@defmac texture-env-parameter enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-env-mode}, @code{texture-env-color}.
+
+@end defmac
+
+@defmac texture-env-target enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-env}.
+
+@end defmac
+
+@defmac texture-filter-func-sgis enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{filter4-sgis}.
+
+@end defmac
+
+@defmac texture-gen-mode enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{eye-linear}, @code{object-linear}, @code{sphere-map},
+@code{eye-distance-to-point-sgis}, @code{object-distance-to-point-sgis},
+@code{eye-distance-to-line-sgis}, @code{object-distance-to-line-sgis}.
+
+@end defmac
+
+@defmac texture-gen-parameter enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-gen-mode}, @code{object-plane}, @code{eye-plane},
+@code{eye-point-sgis}, @code{object-point-sgis}, @code{eye-line-sgis},
+@code{object-line-sgis}.
+
+@end defmac
+
+@defmac oes-texture-cube-map enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-gen-mode}, @code{normal-map-oes},
+@code{reflection-map-oes}, @code{texture-cube-map-oes},
+@code{texture-binding-cube-map-oes},
+@code{texture-cube-map-positive-x-oes},
+@code{texture-cube-map-negative-x-oes},
+@code{texture-cube-map-positive-y-oes},
+@code{texture-cube-map-negative-y-oes},
+@code{texture-cube-map-positive-z-oes},
+@code{texture-cube-map-negative-z-oes},
+@code{max-cube-map-texture-size-oes}, @code{texture-gen-str-oes}.
+
+@end defmac
+
+@defmac texture-mag-filter enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{nearest}, @code{linear}, @code{linear-detail-sgis},
+@code{linear-detail-alpha-sgis}, @code{linear-detail-color-sgis},
+@code{linear-sharpen-sgis}, @code{linear-sharpen-alpha-sgis},
+@code{linear-sharpen-color-sgis}, @code{filter4-sgis},
+@code{pixel-tex-gen-q-ceiling-sgix}, @code{pixel-tex-gen-q-round-sgix},
+@code{pixel-tex-gen-q-floor-sgix}.
+
+@end defmac
+
+@defmac texture-min-filter enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{nearest}, @code{linear}, @code{nearest-mipmap-nearest},
+@code{linear-mipmap-nearest}, @code{nearest-mipmap-linear},
+@code{linear-mipmap-linear}, @code{filter4-sgis},
+@code{linear-clipmap-linear-sgix}, @code{nearest-clipmap-nearest-sgix},
+@code{nearest-clipmap-linear-sgix}, @code{linear-clipmap-nearest-sgix},
+@code{pixel-tex-gen-q-ceiling-sgix}, @code{pixel-tex-gen-q-round-sgix},
+@code{pixel-tex-gen-q-floor-sgix}.
+
+@end defmac
+
+@defmac texture-parameter-name enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-mag-filter}, @code{texture-min-filter},
+@code{texture-wrap-s}, @code{texture-wrap-t},
+@code{texture-border-color}, @code{texture-priority},
+@code{texture-wrap-r-ext}, @code{detail-texture-level-sgis},
+@code{detail-texture-mode-sgis}, @code{generate-mipmap-sgis},
+@code{dual-texture-select-sgis}, @code{quad-texture-select-sgis},
+@code{texture-wrap-q-sgis}, @code{texture-clipmap-center-sgix},
+@code{texture-clipmap-frame-sgix}, @code{texture-clipmap-offset-sgix},
+@code{texture-clipmap-virtual-depth-sgix},
+@code{texture-clipmap-lod-offset-sgix},
+@code{texture-clipmap-depth-sgix}, @code{texture-compare-sgix},
+@code{texture-compare-operator-sgix}, @code{shadow-ambient-sgix},
+@code{texture-max-clamp-s-sgix}, @code{texture-max-clamp-t-sgix},
+@code{texture-max-clamp-r-sgix}, @code{texture-lod-bias-s-sgix},
+@code{texture-lod-bias-t-sgix}, @code{texture-lod-bias-r-sgix},
+@code{post-texture-filter-bias-sgix},
+@code{post-texture-filter-scale-sgix}.
+
+@end defmac
+
+@defmac texture-target enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-1d}, @code{texture-2d}, @code{proxy-texture-1d},
+@code{proxy-texture-2d}, @code{texture-3d-ext},
+@code{proxy-texture-3d-ext}, @code{detail-texture-2d-sgis},
+@code{texture-4d-sgis}, @code{proxy-texture-4d-sgis},
+@code{texture-min-lod-sgis}, @code{texture-max-lod-sgis},
+@code{texture-base-level-sgis}, @code{texture-max-level-sgis}.
+
+@end defmac
+
+@defmac texture-wrap-mode enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{clamp}, @code{repeat}, @code{clamp-to-border-sgis},
+@code{clamp-to-edge-sgis}.
+
+@end defmac
+
+@defmac pixel-internal-format enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{r3-g3-b2}, @code{alpha4}, @code{alpha8}, @code{alpha12},
+@code{alpha16}, @code{luminance4}, @code{luminance8},
+@code{luminance12}, @code{luminance16}, @code{luminance4-alpha4},
+@code{luminance6-alpha2}, @code{luminance8-alpha8},
+@code{luminance12-alpha4}, @code{luminance12-alpha12},
+@code{luminance16-alpha16}, @code{intensity}, @code{intensity4},
+@code{intensity8}, @code{intensity12}, @code{intensity16}, @code{rgb4},
+@code{rgb5}, @code{rgb8}, @code{rgb10}, @code{rgb12}, @code{rgb16},
+@code{rgba2}, @code{rgba4}, @code{rgb5-a1}, @code{rgba8},
+@code{rgb10-a2}, @code{rgba12}, @code{rgba16}, @code{rgb2-ext},
+@code{dual-alpha4-sgis}, @code{dual-alpha8-sgis},
+@code{dual-alpha12-sgis}, @code{dual-alpha16-sgis},
+@code{dual-luminance4-sgis}, @code{dual-luminance8-sgis},
+@code{dual-luminance12-sgis}, @code{dual-luminance16-sgis},
+@code{dual-intensity4-sgis}, @code{dual-intensity8-sgis},
+@code{dual-intensity12-sgis}, @code{dual-intensity16-sgis},
+@code{dual-luminance-alpha4-sgis}, @code{dual-luminance-alpha8-sgis},
+@code{quad-alpha4-sgis}, @code{quad-alpha8-sgis},
+@code{quad-luminance4-sgis}, @code{quad-luminance8-sgis},
+@code{quad-intensity4-sgis}, @code{quad-intensity8-sgis},
+@code{depth-component16-sgix}, @code{depth-component24-sgix},
+@code{depth-component32-sgix}.
+
+@end defmac
+
+@defmac oes-rgb-8-rgba-8 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{rgb8}, @code{rgba8}.
+
+@end defmac
+
+@defmac interleaved-array-format enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{v2f}, @code{v3f}, @code{c4ub-v2f}, @code{c4ub-v3f},
+@code{c3f-v3f}, @code{n3f-v3f}, @code{c4f-n3f-v3f}, @code{t2f-v3f},
+@code{t4f-v4f}, @code{t2f-c4ub-v3f}, @code{t2f-c3f-v3f},
+@code{t2f-n3f-v3f}, @code{t2f-c4f-n3f-v3f}, @code{t4f-c4f-n3f-v4f}.
+
+@end defmac
+
+@defmac vertex-pointer-type enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{short}, @code{int}, @code{float}, @code{double}.
+
+@end defmac
+
+@defmac clip-plane-name enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{clip-plane0}, @code{clip-plane1}, @code{clip-plane2},
+@code{clip-plane3}, @code{clip-plane4}, @code{clip-plane5}.
+
+@end defmac
+
+@defmac light-name enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{light0}, @code{light1}, @code{light2}, @code{light3},
+@code{light4}, @code{light5}, @code{light6}, @code{light7},
+@code{fragment-light0-sgix}, @code{fragment-light1-sgix},
+@code{fragment-light2-sgix}, @code{fragment-light3-sgix},
+@code{fragment-light4-sgix}, @code{fragment-light5-sgix},
+@code{fragment-light6-sgix}, @code{fragment-light7-sgix}.
+
+@end defmac
+
+@defmac ext-abgr enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{abgr-ext}.
+
+@end defmac
+
+@defmac version-1-2 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{constant-color}, @code{one-minus-constant-color},
+@code{constant-alpha}, @code{one-minus-constant-alpha},
+@code{blend-color}, @code{func-add}, @code{func-add-ext}, @code{min},
+@code{min-ext}, @code{max}, @code{max-ext}, @code{blend-equation},
+@code{blend-equation-ext}, @code{func-subtract},
+@code{func-subtract-ext}, @code{func-reverse-subtract},
+@code{func-reverse-subtract-ext}, @code{convolution-1d},
+@code{convolution-2d}, @code{separable-2d},
+@code{convolution-border-mode}, @code{convolution-filter-scale},
+@code{convolution-filter-bias}, @code{reduce},
+@code{convolution-format}, @code{convolution-width},
+@code{convolution-height}, @code{max-convolution-width},
+@code{max-convolution-height}, @code{post-convolution-red-scale},
+@code{post-convolution-green-scale}, @code{post-convolution-blue-scale},
+@code{post-convolution-alpha-scale}, @code{post-convolution-red-bias},
+@code{post-convolution-green-bias}, @code{post-convolution-blue-bias},
+@code{post-convolution-alpha-bias}, @code{histogram},
+@code{proxy-histogram}, @code{histogram-width}, @code{histogram-format},
+@code{histogram-red-size}, @code{histogram-green-size},
+@code{histogram-blue-size}, @code{histogram-alpha-size},
+@code{histogram-sink}, @code{minmax}, @code{minmax-format},
+@code{minmax-sink}, @code{table-too-large}, @code{unsigned-byte-3-3-2},
+@code{unsigned-short-4-4-4-4}, @code{unsigned-short-5-5-5-1},
+@code{unsigned-int-8-8-8-8}, @code{unsigned-int-10-10-10-2},
+@code{unsigned-byte-2-3-3-rev}, @code{unsigned-short-5-6-5},
+@code{unsigned-short-5-6-5-rev}, @code{unsigned-short-4-4-4-4-rev},
+@code{unsigned-short-1-5-5-5-rev}, @code{unsigned-int-8-8-8-8-rev},
+@code{unsigned-int-2-10-10-10-rev}, @code{rescale-normal},
+@code{pack-skip-images}, @code{pack-image-height},
+@code{unpack-skip-images}, @code{unpack-image-height},
+@code{texture-3d}, @code{proxy-texture-3d}, @code{texture-depth},
+@code{texture-wrap-r}, @code{max-3d-texture-size}, @code{color-matrix},
+@code{color-matrix-stack-depth}, @code{max-color-matrix-stack-depth},
+@code{post-color-matrix-red-scale},
+@code{post-color-matrix-green-scale},
+@code{post-color-matrix-blue-scale},
+@code{post-color-matrix-alpha-scale}, @code{post-color-matrix-red-bias},
+@code{post-color-matrix-green-bias}, @code{post-color-matrix-blue-bias},
+@code{post-color-matrix-alpha-bias}, @code{color-table},
+@code{post-convolution-color-table},
+@code{post-color-matrix-color-table}, @code{proxy-color-table},
+@code{proxy-post-convolution-color-table},
+@code{proxy-post-color-matrix-color-table}, @code{color-table-scale},
+@code{color-table-bias}, @code{color-table-format},
+@code{color-table-width}, @code{color-table-red-size},
+@code{color-table-green-size}, @code{color-table-blue-size},
+@code{color-table-alpha-size}, @code{color-table-luminance-size},
+@code{color-table-intensity-size}, @code{bgr}, @code{bgra},
+@code{max-elements-vertices}, @code{max-elements-indices},
+@code{clamp-to-edge}, @code{texture-min-lod}, @code{texture-max-lod},
+@code{texture-base-level}, @code{texture-max-level},
+@code{constant-border}, @code{replicate-border},
+@code{convolution-border-color}, @code{light-model-color-control},
+@code{single-color}, @code{separate-specular-color},
+@code{smooth-point-size-range}, @code{smooth-point-size-granularity},
+@code{smooth-line-width-range}, @code{smooth-line-width-granularity},
+@code{aliased-point-size-range}, @code{aliased-line-width-range}.
+
+@end defmac
+
+@defmac ext-blend-color enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{constant-color-ext}, @code{one-minus-constant-color-ext},
+@code{constant-alpha-ext}, @code{one-minus-constant-alpha-ext},
+@code{blend-color-ext}.
+
+@end defmac
+
+@defmac ext-blend-minmax enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{func-add}, @code{func-add-ext}, @code{min}, @code{min-ext},
+@code{max}, @code{max-ext}, @code{blend-equation},
+@code{blend-equation-ext}.
+
+@end defmac
+
+@defmac version-2-0 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{blend-equation-rgb}, @code{vertex-attrib-array-enabled},
+@code{vertex-attrib-array-size}, @code{vertex-attrib-array-stride},
+@code{vertex-attrib-array-type}, @code{current-vertex-attrib},
+@code{vertex-program-point-size}, @code{vertex-program-two-side},
+@code{vertex-attrib-array-pointer}, @code{stencil-back-func},
+@code{stencil-back-fail}, @code{stencil-back-pass-depth-fail},
+@code{stencil-back-pass-depth-pass}, @code{stencil-back-fail-ati},
+@code{max-draw-buffers}, @code{draw-buffer0}, @code{draw-buffer1},
+@code{draw-buffer2}, @code{draw-buffer3}, @code{draw-buffer4},
+@code{draw-buffer5}, @code{draw-buffer6}, @code{draw-buffer7},
+@code{draw-buffer8}, @code{draw-buffer9}, @code{draw-buffer10},
+@code{draw-buffer11}, @code{draw-buffer12}, @code{draw-buffer13},
+@code{draw-buffer14}, @code{draw-buffer15}, @code{blend-equation-alpha},
+@code{point-sprite}, @code{coord-replace}, @code{max-vertex-attribs},
+@code{vertex-attrib-array-normalized}, @code{max-texture-coords},
+@code{max-texture-image-units}, @code{fragment-shader},
+@code{fragment-shader-arb}, @code{vertex-shader},
+@code{vertex-shader-arb}, @code{program-object-arb},
+@code{shader-object-arb}, @code{max-fragment-uniform-components},
+@code{max-fragment-uniform-components-arb},
+@code{max-vertex-uniform-components},
+@code{max-vertex-uniform-components-arb}, @code{max-varying-floats},
+@code{max-varying-floats-arb}, @code{max-vertex-texture-image-units},
+@code{max-vertex-texture-image-units-arb},
+@code{max-combined-texture-image-units},
+@code{max-combined-texture-image-units-arb}, @code{object-type-arb},
+@code{shader-type}, @code{object-subtype-arb}, @code{float-vec2},
+@code{float-vec2-arb}, @code{float-vec3}, @code{float-vec3-arb},
+@code{float-vec4}, @code{float-vec4-arb}, @code{int-vec2},
+@code{int-vec2-arb}, @code{int-vec3}, @code{int-vec3-arb},
+@code{int-vec4}, @code{int-vec4-arb}, @code{bool}, @code{bool-arb},
+@code{bool-vec2}, @code{bool-vec2-arb}, @code{bool-vec3},
+@code{bool-vec3-arb}, @code{bool-vec4}, @code{bool-vec4-arb},
+@code{float-mat2}, @code{float-mat2-arb}, @code{float-mat3},
+@code{float-mat3-arb}, @code{float-mat4}, @code{float-mat4-arb},
+@code{sampler-1d}, @code{sampler-1d-arb}, @code{sampler-2d},
+@code{sampler-2d-arb}, @code{sampler-3d}, @code{sampler-3d-arb},
+@code{sampler-cube}, @code{sampler-cube-arb}, @code{sampler-1d-shadow},
+@code{sampler-1d-shadow-arb}, @code{sampler-2d-shadow},
+@code{sampler-2d-shadow-arb}, @code{sampler-2d-rect-arb},
+@code{sampler-2d-rect-shadow-arb}, @code{float-mat-2x-3},
+@code{float-mat-2x-4}, @code{float-mat-3x-2}, @code{float-mat-3x-4},
+@code{float-mat-4x-2}, @code{float-mat-4x-3}, @code{delete-status},
+@code{object-delete-status-arb}, @code{compile-status},
+@code{object-compile-status-arb}, @code{link-status},
+@code{object-link-status-arb}, @code{validate-status},
+@code{object-validate-status-arb}, @code{info-log-length},
+@code{object-info-log-length-arb}, @code{attached-shaders},
+@code{object-attached-objects-arb}, @code{active-uniforms},
+@code{object-active-uniforms-arb}, @code{active-uniform-max-length},
+@code{object-active-uniform-max-length-arb},
+@code{shader-source-length}, @code{object-shader-source-length-arb},
+@code{active-attributes}, @code{object-active-attributes-arb},
+@code{active-attribute-max-length},
+@code{object-active-attribute-max-length-arb},
+@code{fragment-shader-derivative-hint},
+@code{fragment-shader-derivative-hint-arb},
+@code{shading-language-version}, @code{shading-language-version-arb},
+@code{current-program}, @code{point-sprite-coord-origin},
+@code{lower-left}, @code{upper-left}, @code{stencil-back-ref},
+@code{stencil-back-value-mask}, @code{stencil-back-writemask}.
+
+@end defmac
+
+@defmac ext-blend-equation-separate enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{blend-equation-rgb-ext}, @code{blend-equation-alpha-ext}.
+
+@end defmac
+
+@defmac oes-blend-equation-separate enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{blend-equation-rgb-oes}, @code{blend-equation-alpha-oes}.
+
+@end defmac
+
+@defmac ext-blend-subtract enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{func-subtract}, @code{func-subtract-ext},
+@code{func-reverse-subtract}, @code{func-reverse-subtract-ext}.
+
+@end defmac
+
+@defmac oes-blend-subtract enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{func-add-oes}, @code{blend-equation-oes},
+@code{func-subtract-oes}, @code{func-reverse-subtract-oes}.
+
+@end defmac
+
+@defmac ext-cmyka enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{cmyk-ext}, @code{cmyka-ext}, @code{pack-cmyk-hint-ext},
+@code{unpack-cmyk-hint-ext}.
+
+@end defmac
+
+@defmac ext-convolution enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{convolution-1d-ext}, @code{convolution-2d-ext},
+@code{separable-2d-ext}, @code{convolution-border-mode-ext},
+@code{convolution-filter-scale-ext}, @code{convolution-filter-bias-ext},
+@code{reduce-ext}, @code{convolution-format-ext},
+@code{convolution-width-ext}, @code{convolution-height-ext},
+@code{max-convolution-width-ext}, @code{max-convolution-height-ext},
+@code{post-convolution-red-scale-ext},
+@code{post-convolution-green-scale-ext},
+@code{post-convolution-blue-scale-ext},
+@code{post-convolution-alpha-scale-ext},
+@code{post-convolution-red-bias-ext},
+@code{post-convolution-green-bias-ext},
+@code{post-convolution-blue-bias-ext},
+@code{post-convolution-alpha-bias-ext}.
+
+@end defmac
+
+@defmac ext-histogram enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{histogram-ext}, @code{proxy-histogram-ext},
+@code{histogram-width-ext}, @code{histogram-format-ext},
+@code{histogram-red-size-ext}, @code{histogram-green-size-ext},
+@code{histogram-blue-size-ext}, @code{histogram-alpha-size-ext},
+@code{histogram-luminance-size}, @code{histogram-luminance-size-ext},
+@code{histogram-sink-ext}, @code{minmax-ext}, @code{minmax-format-ext},
+@code{minmax-sink-ext}, @code{table-too-large-ext}.
+
+@end defmac
+
+@defmac ext-packed-pixels enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{unsigned-byte-3-3-2-ext}, @code{unsigned-short-4-4-4-4-ext},
+@code{unsigned-short-5-5-5-1-ext}, @code{unsigned-int-8-8-8-8-ext},
+@code{unsigned-int-10-10-10-2-ext}, @code{unsigned-byte-2-3-3-rev-ext},
+@code{unsigned-short-5-6-5-ext}, @code{unsigned-short-5-6-5-rev-ext},
+@code{unsigned-short-4-4-4-4-rev-ext},
+@code{unsigned-short-1-5-5-5-rev-ext},
+@code{unsigned-int-8-8-8-8-rev-ext},
+@code{unsigned-int-2-10-10-10-rev-ext}.
+
+@end defmac
+
+@defmac ext-texture-type-2-10-10-10-rev enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{polygon-offset-ext}, @code{polygon-offset-factor-ext},
+@code{polygon-offset-bias-ext}.
+
+@end defmac
+
+@defmac ext-polygon-offset enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{polygon-offset-ext}, @code{polygon-offset-factor-ext},
+@code{polygon-offset-bias-ext}.
+
+@end defmac
+
+@defmac ext-rescale-normal enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{rescale-normal-ext}.
+
+@end defmac
+
+@defmac ext-texture enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{alpha4-ext}, @code{alpha8-ext}, @code{alpha12-ext},
+@code{alpha16-ext}, @code{luminance4-ext}, @code{luminance8-ext},
+@code{luminance12-ext}, @code{luminance16-ext},
+@code{luminance4-alpha4-ext}, @code{luminance6-alpha2-ext},
+@code{luminance8-alpha8-ext}, @code{luminance12-alpha4-ext},
+@code{luminance12-alpha12-ext}, @code{luminance16-alpha16-ext},
+@code{intensity-ext}, @code{intensity4-ext}, @code{intensity8-ext},
+@code{intensity12-ext}, @code{intensity16-ext}, @code{rgb2-ext},
+@code{rgb4-ext}, @code{rgb5-ext}, @code{rgb8-ext}, @code{rgb10-ext},
+@code{rgb12-ext}, @code{rgb16-ext}, @code{rgba2-ext}, @code{rgba4-ext},
+@code{rgb5-a1-ext}, @code{rgba8-ext}, @code{rgb10-a2-ext},
+@code{rgba12-ext}, @code{rgba16-ext}, @code{texture-red-size-ext},
+@code{texture-green-size-ext}, @code{texture-blue-size-ext},
+@code{texture-alpha-size-ext}, @code{texture-luminance-size-ext},
+@code{texture-intensity-size-ext}, @code{replace-ext},
+@code{proxy-texture-1d-ext}, @code{proxy-texture-2d-ext},
+@code{texture-too-large-ext}.
+
+@end defmac
+
+@defmac ext-texture-object enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-priority-ext}, @code{texture-resident-ext},
+@code{texture-1d-binding-ext}, @code{texture-2d-binding-ext},
+@code{texture-3d-binding-ext}.
+
+@end defmac
+
+@defmac ext-texture-3d enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{pack-skip-images-ext}, @code{pack-image-height-ext},
+@code{unpack-skip-images-ext}, @code{unpack-image-height-ext},
+@code{texture-3d-ext}, @code{proxy-texture-3d-ext},
+@code{texture-depth-ext}, @code{texture-wrap-r-ext},
+@code{max-3d-texture-size-ext}.
+
+@end defmac
+
+@defmac oes-texture-3d enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-3d-binding-oes}, @code{texture-3d-oes},
+@code{texture-wrap-r-oes}, @code{max-3d-texture-size-oes},
+@code{sampler-3d-oes},
+@code{framebuffer-attachment-texture-3d-zoffset-oes}.
+
+@end defmac
+
+@defmac ext-vertex-array enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{vertex-array-ext}, @code{normal-array-ext},
+@code{color-array-ext}, @code{index-array-ext},
+@code{texture-coord-array-ext}, @code{edge-flag-array-ext},
+@code{vertex-array-size-ext}, @code{vertex-array-type-ext},
+@code{vertex-array-stride-ext}, @code{vertex-array-count-ext},
+@code{normal-array-type-ext}, @code{normal-array-stride-ext},
+@code{normal-array-count-ext}, @code{color-array-size-ext},
+@code{color-array-type-ext}, @code{color-array-stride-ext},
+@code{color-array-count-ext}, @code{index-array-type-ext},
+@code{index-array-stride-ext}, @code{index-array-count-ext},
+@code{texture-coord-array-size-ext},
+@code{texture-coord-array-type-ext},
+@code{texture-coord-array-stride-ext},
+@code{texture-coord-array-count-ext}, @code{edge-flag-array-stride-ext},
+@code{edge-flag-array-count-ext}, @code{vertex-array-pointer-ext},
+@code{normal-array-pointer-ext}, @code{color-array-pointer-ext},
+@code{index-array-pointer-ext}, @code{texture-coord-array-pointer-ext},
+@code{edge-flag-array-pointer-ext}.
+
+@end defmac
+
+@defmac sgix-interlace enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{interlace-sgix}.
+
+@end defmac
+
+@defmac sgis-detail-texture enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{detail-texture-2d-sgis}, @code{detail-texture-2d-binding-sgis},
+@code{linear-detail-sgis}, @code{linear-detail-alpha-sgis},
+@code{linear-detail-color-sgis}, @code{detail-texture-level-sgis},
+@code{detail-texture-mode-sgis}, @code{detail-texture-func-points-sgis}.
+
+@end defmac
+
+@defmac sgis-multisample enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{multisample-sgis}, @code{sample-alpha-to-mask-sgis},
+@code{sample-alpha-to-one-sgis}, @code{sample-mask-sgis},
+@code{1pass-sgis}, @code{2pass-0-sgis}, @code{2pass-1-sgis},
+@code{4pass-0-sgis}, @code{4pass-1-sgis}, @code{4pass-2-sgis},
+@code{4pass-3-sgis}, @code{sample-buffers-sgis}, @code{samples-sgis},
+@code{sample-mask-value-sgis}, @code{sample-mask-invert-sgis},
+@code{sample-pattern-sgis}.
+
+@end defmac
+
+@defmac nv-multisample-coverage enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{coverage-samples-nv}, @code{color-samples-nv}.
+
+@end defmac
+
+@defmac sgis-sharpen-texture enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{linear-sharpen-sgis}, @code{linear-sharpen-alpha-sgis},
+@code{linear-sharpen-color-sgis},
+@code{sharpen-texture-func-points-sgis}.
+
+@end defmac
+
+@defmac sgi-color-matrix enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{color-matrix-sgi}, @code{color-matrix-stack-depth-sgi},
+@code{max-color-matrix-stack-depth-sgi},
+@code{post-color-matrix-red-scale-sgi},
+@code{post-color-matrix-green-scale-sgi},
+@code{post-color-matrix-blue-scale-sgi},
+@code{post-color-matrix-alpha-scale-sgi},
+@code{post-color-matrix-red-bias-sgi},
+@code{post-color-matrix-green-bias-sgi},
+@code{post-color-matrix-blue-bias-sgi},
+@code{post-color-matrix-alpha-bias-sgi}.
+
+@end defmac
+
+@defmac sgi-texture-color-table enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-color-table-sgi}, @code{proxy-texture-color-table-sgi}.
+
+@end defmac
+
+@defmac sgix-texture-add-env enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-env-bias-sgix}.
+
+@end defmac
+
+@defmac sgix-shadow-ambient enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{shadow-ambient-sgix}.
+
+@end defmac
+
+@defmac version-1-4 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{blend-dst-rgb}, @code{blend-src-rgb}, @code{blend-dst-alpha},
+@code{blend-src-alpha}, @code{point-size-min}, @code{point-size-max},
+@code{point-fade-threshold-size}, @code{point-distance-attenuation},
+@code{generate-mipmap}, @code{generate-mipmap-hint},
+@code{depth-component16}, @code{depth-component24},
+@code{depth-component32}, @code{mirrored-repeat},
+@code{fog-coordinate-source}, @code{fog-coordinate},
+@code{fragment-depth}, @code{current-fog-coordinate},
+@code{fog-coordinate-array-type}, @code{fog-coordinate-array-stride},
+@code{fog-coordinate-array-pointer}, @code{fog-coordinate-array},
+@code{color-sum}, @code{current-secondary-color},
+@code{secondary-color-array-size}, @code{secondary-color-array-type},
+@code{secondary-color-array-stride},
+@code{secondary-color-array-pointer}, @code{secondary-color-array},
+@code{max-texture-lod-bias}, @code{texture-filter-control},
+@code{texture-lod-bias}, @code{incr-wrap}, @code{decr-wrap},
+@code{texture-depth-size}, @code{depth-texture-mode},
+@code{texture-compare-mode}, @code{texture-compare-func},
+@code{compare-r-to-texture}.
+
+@end defmac
+
+@defmac ext-blend-func-separate enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{blend-dst-rgb-ext}, @code{blend-src-rgb-ext},
+@code{blend-dst-alpha-ext}, @code{blend-src-alpha-ext}.
+
+@end defmac
+
+@defmac oes-blend-func-separate enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{blend-dst-rgb-oes}, @code{blend-src-rgb-oes},
+@code{blend-dst-alpha-oes}, @code{blend-src-alpha-oes}.
+
+@end defmac
+
+@defmac ext-422-pixels enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{422-ext}, @code{422-rev-ext}, @code{422-average-ext},
+@code{422-rev-average-ext}.
+
+@end defmac
+
+@defmac sgi-color-table enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{color-table-sgi}, @code{post-convolution-color-table-sgi},
+@code{post-color-matrix-color-table-sgi}, @code{proxy-color-table-sgi},
+@code{proxy-post-convolution-color-table-sgi},
+@code{proxy-post-color-matrix-color-table-sgi},
+@code{color-table-scale-sgi}, @code{color-table-bias-sgi},
+@code{color-table-format-sgi}, @code{color-table-width-sgi},
+@code{color-table-red-size-sgi}, @code{color-table-green-size-sgi},
+@code{color-table-blue-size-sgi}, @code{color-table-alpha-size-sgi},
+@code{color-table-luminance-size-sgi},
+@code{color-table-intensity-size-sgi}.
+
+@end defmac
+
+@defmac arb-vertex-array-bgra enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{bgr-ext}, @code{bgra-ext}.
+
+@end defmac
+
+@defmac ext-bgra enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{bgr-ext}, @code{bgra-ext}.
+
+@end defmac
+
+@defmac sgis-texture-select enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{dual-alpha4-sgis}, @code{dual-alpha8-sgis},
+@code{dual-alpha12-sgis}, @code{dual-alpha16-sgis},
+@code{dual-luminance4-sgis}, @code{dual-luminance8-sgis},
+@code{dual-luminance12-sgis}, @code{dual-luminance16-sgis},
+@code{dual-intensity4-sgis}, @code{dual-intensity8-sgis},
+@code{dual-intensity12-sgis}, @code{dual-intensity16-sgis},
+@code{dual-luminance-alpha4-sgis}, @code{dual-luminance-alpha8-sgis},
+@code{quad-alpha4-sgis}, @code{quad-alpha8-sgis},
+@code{quad-luminance4-sgis}, @code{quad-luminance8-sgis},
+@code{quad-intensity4-sgis}, @code{quad-intensity8-sgis},
+@code{dual-texture-select-sgis}, @code{quad-texture-select-sgis}.
+
+@end defmac
+
+@defmac arb-point-parameters enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{point-size-min-arb}, @code{point-size-max-arb},
+@code{point-fade-threshold-size-arb},
+@code{point-distance-attenuation-arb}.
+
+@end defmac
+
+@defmac ext-point-parameters enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{point-size-min-ext}, @code{point-size-max-ext},
+@code{point-fade-threshold-size-ext}, @code{distance-attenuation-ext}.
+
+@end defmac
+
+@defmac sgis-point-parameters enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{point-size-min-sgis}, @code{point-size-max-sgis},
+@code{point-fade-threshold-size-sgis}, @code{distance-attenuation-sgis}.
+
+@end defmac
+
+@defmac sgis-fog-function enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{fog-func-sgis}, @code{fog-func-points-sgis},
+@code{max-fog-func-points-sgis}.
+
+@end defmac
+
+@defmac arb-texture-border-clamp enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{clamp-to-border-arb}.
+
+@end defmac
+
+@defmac sgis-texture-border-clamp enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{clamp-to-border-sgis}.
+
+@end defmac
+
+@defmac sgix-texture-multi-buffer enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-multi-buffer-hint-sgix}.
+
+@end defmac
+
+@defmac sgis-texture-edge-clamp enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{clamp-to-edge-sgis}.
+
+@end defmac
+
+@defmac sgis-texture-4d enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{pack-skip-volumes-sgis}, @code{pack-image-depth-sgis},
+@code{unpack-skip-volumes-sgis}, @code{unpack-image-depth-sgis},
+@code{texture-4d-sgis}, @code{proxy-texture-4d-sgis},
+@code{texture-4dsize-sgis}, @code{texture-wrap-q-sgis},
+@code{max-4d-texture-size-sgis}, @code{texture-4d-binding-sgis}.
+
+@end defmac
+
+@defmac sgix-pixel-texture enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{pixel-tex-gen-sgix}, @code{pixel-tex-gen-mode-sgix}.
+
+@end defmac
+
+@defmac sgis-texture-lod enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-min-lod-sgis}, @code{texture-max-lod-sgis},
+@code{texture-base-level-sgis}, @code{texture-max-level-sgis}.
+
+@end defmac
+
+@defmac sgix-pixel-tiles enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{pixel-tile-best-alignment-sgix},
+@code{pixel-tile-cache-increment-sgix}, @code{pixel-tile-width-sgix},
+@code{pixel-tile-height-sgix}, @code{pixel-tile-grid-width-sgix},
+@code{pixel-tile-grid-height-sgix}, @code{pixel-tile-grid-depth-sgix},
+@code{pixel-tile-cache-size-sgix}.
+
+@end defmac
+
+@defmac sgis-texture-filter-4 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{filter4-sgis}, @code{texture-filter4-size-sgis}.
+
+@end defmac
+
+@defmac sgix-sprite enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{sprite-sgix}, @code{sprite-mode-sgix}, @code{sprite-axis-sgix},
+@code{sprite-translation-sgix}, @code{sprite-axial-sgix},
+@code{sprite-object-aligned-sgix}, @code{sprite-eye-aligned-sgix}.
+
+@end defmac
+
+@defmac hp-convolution-border-modes enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{ignore-border-hp}, @code{constant-border-hp},
+@code{replicate-border-hp}, @code{convolution-border-color-hp}.
+
+@end defmac
+
+@defmac sgix-clipmap enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{linear-clipmap-linear-sgix}, @code{texture-clipmap-center-sgix},
+@code{texture-clipmap-frame-sgix}, @code{texture-clipmap-offset-sgix},
+@code{texture-clipmap-virtual-depth-sgix},
+@code{texture-clipmap-lod-offset-sgix},
+@code{texture-clipmap-depth-sgix}, @code{max-clipmap-depth-sgix},
+@code{max-clipmap-virtual-depth-sgix},
+@code{nearest-clipmap-nearest-sgix}, @code{nearest-clipmap-linear-sgix},
+@code{linear-clipmap-nearest-sgix}.
+
+@end defmac
+
+@defmac sgix-texture-scale-bias enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{post-texture-filter-bias-sgix},
+@code{post-texture-filter-scale-sgix},
+@code{post-texture-filter-bias-range-sgix},
+@code{post-texture-filter-scale-range-sgix}.
+
+@end defmac
+
+@defmac sgix-reference-plane enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{reference-plane-sgix}, @code{reference-plane-equation-sgix}.
+
+@end defmac
+
+@defmac sgix-ir-instrument-1 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{ir-instrument1-sgix}.
+
+@end defmac
+
+@defmac sgix-instruments enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{instrument-buffer-pointer-sgix},
+@code{instrument-measurements-sgix}.
+
+@end defmac
+
+@defmac sgix-list-priority enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{list-priority-sgix}.
+
+@end defmac
+
+@defmac sgix-calligraphic-fragment enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{calligraphic-fragment-sgix}.
+
+@end defmac
+
+@defmac sgix-impact-pixel-texture enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{pixel-tex-gen-q-ceiling-sgix}, @code{pixel-tex-gen-q-round-sgix},
+@code{pixel-tex-gen-q-floor-sgix},
+@code{pixel-tex-gen-alpha-replace-sgix},
+@code{pixel-tex-gen-alpha-no-replace-sgix},
+@code{pixel-tex-gen-alpha-ls-sgix}, @code{pixel-tex-gen-alpha-ms-sgix}.
+
+@end defmac
+
+@defmac sgix-framezoom enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{framezoom-sgix}, @code{framezoom-factor-sgix},
+@code{max-framezoom-factor-sgix}.
+
+@end defmac
+
+@defmac sgix-texture-lod-bias enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-lod-bias-s-sgix}, @code{texture-lod-bias-t-sgix},
+@code{texture-lod-bias-r-sgix}.
+
+@end defmac
+
+@defmac sgis-generate-mipmap enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{generate-mipmap-sgis}, @code{generate-mipmap-hint-sgis}.
+
+@end defmac
+
+@defmac sgix-polynomial-ffd enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{geometry-deformation-sgix}, @code{texture-deformation-sgix},
+@code{deformations-mask-sgix}, @code{max-deformation-order-sgix}.
+
+@end defmac
+
+@defmac sgix-fog-offset enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{fog-offset-sgix}, @code{fog-offset-value-sgix}.
+
+@end defmac
+
+@defmac sgix-shadow enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-compare-sgix}, @code{texture-compare-operator-sgix},
+@code{texture-lequal-r-sgix}, @code{texture-gequal-r-sgix}.
+
+@end defmac
+
+@defmac arb-depth-texture enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{depth-component16-arb}, @code{depth-component24-arb},
+@code{depth-component32-arb}, @code{texture-depth-size-arb},
+@code{depth-texture-mode-arb}.
+
+@end defmac
+
+@defmac sgix-depth-texture enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{depth-component16-sgix}, @code{depth-component24-sgix},
+@code{depth-component32-sgix}.
+
+@end defmac
+
+@defmac oes-depth-24 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{depth-component24-oes}.
+
+@end defmac
+
+@defmac oes-depth-32 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{depth-component32-oes}.
+
+@end defmac
+
+@defmac ext-compiled-vertex-array enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{array-element-lock-first-ext},
+@code{array-element-lock-count-ext}.
+
+@end defmac
+
+@defmac ext-cull-vertex enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{cull-vertex-ext}, @code{cull-vertex-eye-position-ext},
+@code{cull-vertex-object-position-ext}.
+
+@end defmac
+
+@defmac ext-index-array-formats enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{iui-v2f-ext}, @code{iui-v3f-ext}, @code{iui-n3f-v2f-ext},
+@code{iui-n3f-v3f-ext}, @code{t2f-iui-v2f-ext}, @code{t2f-iui-v3f-ext},
+@code{t2f-iui-n3f-v2f-ext}, @code{t2f-iui-n3f-v3f-ext}.
+
+@end defmac
+
+@defmac ext-index-func enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{index-test-ext}, @code{index-test-func-ext},
+@code{index-test-ref-ext}.
+
+@end defmac
+
+@defmac ext-index-material enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{index-material-ext}, @code{index-material-parameter-ext},
+@code{index-material-face-ext}.
+
+@end defmac
+
+@defmac sgix-ycrcb enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{ycrcb-422-sgix}, @code{ycrcb-444-sgix}.
+
+@end defmac
+
+@defmac sunx-general-triangle-list enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{restart-sun}, @code{replace-middle-sun},
+@code{replace-oldest-sun}, @code{wrap-border-sun},
+@code{triangle-list-sun}, @code{replacement-code-sun},
+@code{replacement-code-array-sun},
+@code{replacement-code-array-type-sun},
+@code{replacement-code-array-stride-sun},
+@code{replacement-code-array-pointer-sun}, @code{r1ui-v3f-sun},
+@code{r1ui-c4ub-v3f-sun}, @code{r1ui-c3f-v3f-sun},
+@code{r1ui-n3f-v3f-sun}, @code{r1ui-c4f-n3f-v3f-sun},
+@code{r1ui-t2f-v3f-sun}, @code{r1ui-t2f-n3f-v3f-sun},
+@code{r1ui-t2f-c4f-n3f-v3f-sun}.
+
+@end defmac
+
+@defmac sunx-constant-data enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{unpack-constant-data-sunx}, @code{texture-constant-data-sunx}.
+
+@end defmac
+
+@defmac sun-global-alpha enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{global-alpha-sun}, @code{global-alpha-factor-sun}.
+
+@end defmac
+
+@defmac sgis-texture-color-mask enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-color-writemask-sgis}.
+
+@end defmac
+
+@defmac sgis-point-line-texgen enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{eye-distance-to-point-sgis}, @code{object-distance-to-point-sgis},
+@code{eye-distance-to-line-sgis}, @code{object-distance-to-line-sgis},
+@code{eye-point-sgis}, @code{object-point-sgis}, @code{eye-line-sgis},
+@code{object-line-sgis}.
+
+@end defmac
+
+@defmac ext-separate-specular-color enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{light-model-color-control-ext}, @code{single-color-ext},
+@code{separate-specular-color-ext}.
+
+@end defmac
+
+@defmac ext-shared-texture-palette enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{shared-texture-palette-ext}.
+
+@end defmac
+
+@defmac ati-text-fragment-shader enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{text-fragment-shader-ati}.
+
+@end defmac
+
+@defmac ext-color-buffer-half-float enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{framebuffer-attachment-component-type-ext}, @code{r16f-ext},
+@code{rg16f-ext}, @code{rgba16f-ext}, @code{rgb16f-ext},
+@code{unsigned-normalized-ext}.
+
+@end defmac
+
+@defmac oes-surfaceless-context enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{framebuffer-undefined-oes}.
+
+@end defmac
+
+@defmac arb-texture-rg enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{rg}, @code{rg-integer}, @code{r8}, @code{r16}, @code{rg8},
+@code{rg16}, @code{r16f}, @code{r32f}, @code{rg16f}, @code{rg32f},
+@code{r8i}, @code{r8ui}, @code{r16i}, @code{r16ui}, @code{r32i},
+@code{r32ui}, @code{rg8i}, @code{rg8ui}, @code{rg16i}, @code{rg16ui},
+@code{rg32i}, @code{rg32ui}.
+
+@end defmac
+
+@defmac arb-cl-event enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{sync-cl-event-arb}, @code{sync-cl-event-complete-arb}.
+
+@end defmac
+
+@defmac arb-debug-output enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{debug-output-synchronous-arb},
+@code{debug-next-logged-message-length-arb},
+@code{debug-callback-function-arb},
+@code{debug-callback-user-param-arb}, @code{debug-source-api-arb},
+@code{debug-source-window-system-arb},
+@code{debug-source-shader-compiler-arb},
+@code{debug-source-third-party-arb},
+@code{debug-source-application-arb}, @code{debug-source-other-arb},
+@code{debug-type-error-arb}, @code{debug-type-deprecated-behavior-arb},
+@code{debug-type-undefined-behavior-arb},
+@code{debug-type-portability-arb}, @code{debug-type-performance-arb},
+@code{debug-type-other-arb}, @code{max-debug-message-length-arb},
+@code{max-debug-logged-messages-arb}, @code{debug-logged-messages-arb},
+@code{debug-severity-high-arb}, @code{debug-severity-medium-arb},
+@code{debug-severity-low-arb}.
+
+@end defmac
+
+@defmac arb-get-program-binary enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{program-binary-retrievable-hint}, @code{program-binary-length},
+@code{num-program-binary-formats}, @code{program-binary-formats}.
+
+@end defmac
+
+@defmac arb-viewport-array enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{max-viewports}, @code{viewport-subpixel-bits},
+@code{viewport-bounds-range}, @code{layer-provoking-vertex},
+@code{viewport-index-provoking-vertex}, @code{undefined-vertex},
+@code{first-vertex-convention}, @code{last-vertex-convention},
+@code{provoking-vertex}.
+
+@end defmac
+
+@defmac arb-explicit-uniform-location enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{max-uniform-locations}.
+
+@end defmac
+
+@defmac arb-internalformat-query-2 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{internalformat-supported}, @code{internalformat-preferred},
+@code{internalformat-red-size}, @code{internalformat-green-size},
+@code{internalformat-blue-size}, @code{internalformat-alpha-size},
+@code{internalformat-depth-size}, @code{internalformat-stencil-size},
+@code{internalformat-shared-size}, @code{internalformat-red-type},
+@code{internalformat-green-type}, @code{internalformat-blue-type},
+@code{internalformat-alpha-type}, @code{internalformat-depth-type},
+@code{internalformat-stencil-type}, @code{max-width}, @code{max-height},
+@code{max-depth}, @code{max-layers}, @code{max-combined-dimensions},
+@code{color-components}, @code{depth-components},
+@code{stencil-components}, @code{color-renderable},
+@code{depth-renderable}, @code{stencil-renderable},
+@code{framebuffer-renderable}, @code{framebuffer-renderable-layered},
+@code{framebuffer-blend}, @code{read-pixels}, @code{read-pixels-format},
+@code{read-pixels-type}, @code{texture-image-format},
+@code{texture-image-type}, @code{get-texture-image-format},
+@code{get-texture-image-type}, @code{mipmap},
+@code{manual-generate-mipmap}, @code{auto-generate-mipmap},
+@code{color-encoding}, @code{srgb-read}, @code{srgb-write},
+@code{srgb-decode-arb}, @code{filter}, @code{vertex-texture},
+@code{tess-control-texture}, @code{tess-evaluation-texture},
+@code{geometry-texture}, @code{fragment-texture},
+@code{compute-texture}, @code{texture-shadow}, @code{texture-gather},
+@code{texture-gather-shadow}, @code{shader-image-load},
+@code{shader-image-store}, @code{shader-image-atomic},
+@code{image-texel-size}, @code{image-compatibility-class},
+@code{image-pixel-format}, @code{image-pixel-type},
+@code{simultaneous-texture-and-depth-test},
+@code{simultaneous-texture-and-stencil-test},
+@code{simultaneous-texture-and-depth-write},
+@code{simultaneous-texture-and-stencil-write},
+@code{texture-compressed-block-width},
+@code{texture-compressed-block-height},
+@code{texture-compressed-block-size}, @code{clear-buffer},
+@code{texture-view}, @code{view-compatibility-class},
+@code{full-support}, @code{caveat-support}, @code{image-class-4-x-32},
+@code{image-class-2-x-32}, @code{image-class-1-x-32},
+@code{image-class-4-x-16}, @code{image-class-2-x-16},
+@code{image-class-1-x-16}, @code{image-class-4-x-8},
+@code{image-class-2-x-8}, @code{image-class-1-x-8},
+@code{image-class-11-11-10}, @code{image-class-10-10-10-2},
+@code{view-class-128-bits}, @code{view-class-96-bits},
+@code{view-class-64-bits}, @code{view-class-48-bits},
+@code{view-class-32-bits}, @code{view-class-24-bits},
+@code{view-class-16-bits}, @code{view-class-8-bits},
+@code{view-class-s3tc-dxt1-rgb}, @code{view-class-s3tc-dxt1-rgba},
+@code{view-class-s3tc-dxt3-rgba}, @code{view-class-s3tc-dxt5-rgba},
+@code{view-class-rgtc1-red}, @code{view-class-rgtc2-rg},
+@code{view-class-bptc-unorm}, @code{view-class-bptc-float}.
+
+@end defmac
+
+@defmac arb-vertex-attrib-binding enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{vertex-attrib-binding}, @code{vertex-attrib-relative-offset},
+@code{vertex-binding-divisor}, @code{vertex-binding-offset},
+@code{vertex-binding-stride}, @code{max-vertex-attrib-relative-offset},
+@code{max-vertex-attrib-bindings}.
+
+@end defmac
+
+@defmac arb-texture-view enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-view-min-level}, @code{texture-view-num-levels},
+@code{texture-view-min-layer}, @code{texture-view-num-layers},
+@code{texture-immutable-levels}.
+
+@end defmac
+
+@defmac sgix-depth-pass-instrument enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{depth-pass-instrument-sgix},
+@code{depth-pass-instrument-counters-sgix},
+@code{depth-pass-instrument-max-sgix}.
+
+@end defmac
+
+@defmac sgix-fragments-instrument enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{fragments-instrument-sgix},
+@code{fragments-instrument-counters-sgix},
+@code{fragments-instrument-max-sgix}.
+
+@end defmac
+
+@defmac sgix-convolution-accuracy enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{convolution-hint-sgix}.
+
+@end defmac
+
+@defmac sgix-ycrcba enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{ycrcb-sgix}, @code{ycrcba-sgix}.
+
+@end defmac
+
+@defmac sgix-slim enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{unpack-compressed-size-sgix},
+@code{pack-max-compressed-size-sgix}, @code{pack-compressed-size-sgix},
+@code{slim8u-sgix}, @code{slim10u-sgix}, @code{slim12s-sgix}.
+
+@end defmac
+
+@defmac sgix-blend-alpha-minmax enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{alpha-min-sgix}, @code{alpha-max-sgix}.
+
+@end defmac
+
+@defmac sgix-scalebias-hint enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{scalebias-hint-sgix}.
+
+@end defmac
+
+@defmac sgix-async enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{async-marker-sgix}.
+
+@end defmac
+
+@defmac sgix-async-histogram enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{async-histogram-sgix}, @code{max-async-histogram-sgix}.
+
+@end defmac
+
+@defmac ext-pixel-transform enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{pixel-transform-2d-ext}, @code{pixel-mag-filter-ext},
+@code{pixel-min-filter-ext}, @code{pixel-cubic-weight-ext},
+@code{cubic-ext}, @code{average-ext},
+@code{pixel-transform-2d-stack-depth-ext},
+@code{max-pixel-transform-2d-stack-depth-ext},
+@code{pixel-transform-2d-matrix-ext}.
+
+@end defmac
+
+@defmac ext-light-texture enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{fragment-material-ext}, @code{fragment-normal-ext},
+@code{fragment-color-ext}, @code{attenuation-ext},
+@code{shadow-attenuation-ext}, @code{texture-application-mode-ext},
+@code{texture-light-ext}, @code{texture-material-face-ext},
+@code{texture-material-parameter-ext}, @code{fragment-depth-ext}.
+
+@end defmac
+
+@defmac sgis-pixel-texture enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{pixel-texture-sgis}, @code{pixel-fragment-rgb-source-sgis},
+@code{pixel-fragment-alpha-source-sgis}, @code{pixel-group-color-sgis}.
+
+@end defmac
+
+@defmac sgix-line-quality-hint enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{line-quality-hint-sgix}.
+
+@end defmac
+
+@defmac sgix-async-pixel enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{async-tex-image-sgix}, @code{async-draw-pixels-sgix},
+@code{async-read-pixels-sgix}, @code{max-async-tex-image-sgix},
+@code{max-async-draw-pixels-sgix}, @code{max-async-read-pixels-sgix}.
+
+@end defmac
+
+@defmac sgix-texture-coordinate-clamp enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-max-clamp-s-sgix}, @code{texture-max-clamp-t-sgix},
+@code{texture-max-clamp-r-sgix}, @code{fog-factor-to-alpha-sgix}.
+
+@end defmac
+
+@defmac arb-texture-mirrored-repeat enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{mirrored-repeat-arb}.
+
+@end defmac
+
+@defmac ibm-texture-mirrored-repeat enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{mirrored-repeat-ibm}.
+
+@end defmac
+
+@defmac oes-texture-mirrored-repeat enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{mirrored-repeat-oes}.
+
+@end defmac
+
+@defmac s3-s-3-tc enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{rgb-s3tc}, @code{rgb4-s3tc}, @code{rgba-s3tc}, @code{rgba4-s3tc},
+@code{rgba-dxt5-s3tc}, @code{rgba4-dxt5-s3tc}.
+
+@end defmac
+
+@defmac sgix-vertex-preclip enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{vertex-preclip-sgix}, @code{vertex-preclip-hint-sgix}.
+
+@end defmac
+
+@defmac ext-texture-compression-s-3-tc enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{compressed-rgb-s3tc-dxt1-ext},
+@code{compressed-rgba-s3tc-dxt1-ext},
+@code{compressed-rgba-s3tc-dxt3-ext},
+@code{compressed-rgba-s3tc-dxt5-ext}.
+
+@end defmac
+
+@defmac angle-texture-compression-dxt-3 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{compressed-rgba-s3tc-dxt3-angle}.
+
+@end defmac
+
+@defmac angle-texture-compression-dxt-5 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{compressed-rgba-s3tc-dxt5-angle}.
+
+@end defmac
+
+@defmac intel-parallel-arrays enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{parallel-arrays-intel},
+@code{vertex-array-parallel-pointers-intel},
+@code{normal-array-parallel-pointers-intel},
+@code{color-array-parallel-pointers-intel},
+@code{texture-coord-array-parallel-pointers-intel}.
+
+@end defmac
+
+@defmac sgix-fragment-lighting enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{fragment-lighting-sgix}, @code{fragment-color-material-sgix},
+@code{fragment-color-material-face-sgix},
+@code{fragment-color-material-parameter-sgix},
+@code{max-fragment-lights-sgix}, @code{max-active-lights-sgix},
+@code{current-raster-normal-sgix}, @code{light-env-mode-sgix},
+@code{fragment-light-model-local-viewer-sgix},
+@code{fragment-light-model-two-side-sgix},
+@code{fragment-light-model-ambient-sgix},
+@code{fragment-light-model-normal-interpolation-sgix},
+@code{fragment-light0-sgix}, @code{fragment-light1-sgix},
+@code{fragment-light2-sgix}, @code{fragment-light3-sgix},
+@code{fragment-light4-sgix}, @code{fragment-light5-sgix},
+@code{fragment-light6-sgix}, @code{fragment-light7-sgix}.
+
+@end defmac
+
+@defmac sgix-resample enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{pack-resample-sgix}, @code{unpack-resample-sgix},
+@code{resample-replicate-sgix}, @code{resample-zero-fill-sgix},
+@code{resample-decimate-sgix}.
+
+@end defmac
+
+@defmac version-1-5 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{fog-coord-src}, @code{fog-coord}, @code{current-fog-coord},
+@code{fog-coord-array-type}, @code{fog-coord-array-stride},
+@code{fog-coord-array-pointer}, @code{fog-coord-array}, @code{src0-rgb},
+@code{src1-rgb}, @code{src2-rgb}, @code{src0-alpha}, @code{src1-alpha},
+@code{src2-alpha}, @code{buffer-size}, @code{buffer-usage},
+@code{query-counter-bits}, @code{current-query}, @code{query-result},
+@code{query-result-available}, @code{array-buffer},
+@code{element-array-buffer}, @code{array-buffer-binding},
+@code{element-array-buffer-binding}, @code{vertex-array-buffer-binding},
+@code{normal-array-buffer-binding}, @code{color-array-buffer-binding},
+@code{index-array-buffer-binding},
+@code{texture-coord-array-buffer-binding},
+@code{edge-flag-array-buffer-binding},
+@code{secondary-color-array-buffer-binding},
+@code{fog-coord-array-buffer-binding},
+@code{fog-coordinate-array-buffer-binding},
+@code{weight-array-buffer-binding},
+@code{vertex-attrib-array-buffer-binding}, @code{read-only},
+@code{write-only}, @code{read-write}, @code{buffer-access},
+@code{buffer-mapped}, @code{buffer-map-pointer}, @code{stream-draw},
+@code{stream-read}, @code{stream-copy}, @code{static-draw},
+@code{static-read}, @code{static-copy}, @code{dynamic-draw},
+@code{dynamic-read}, @code{dynamic-copy}, @code{samples-passed}.
+
+@end defmac
+
+@defmac ext-fog-coord enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{fog-coordinate-source-ext}, @code{fog-coordinate-ext},
+@code{fragment-depth-ext}, @code{current-fog-coordinate-ext},
+@code{fog-coordinate-array-type-ext},
+@code{fog-coordinate-array-stride-ext},
+@code{fog-coordinate-array-pointer-ext},
+@code{fog-coordinate-array-ext}.
+
+@end defmac
+
+@defmac ext-secondary-color enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{color-sum-ext}, @code{current-secondary-color-ext},
+@code{secondary-color-array-size-ext},
+@code{secondary-color-array-type-ext},
+@code{secondary-color-array-stride-ext},
+@code{secondary-color-array-pointer-ext},
+@code{secondary-color-array-ext}.
+
+@end defmac
+
+@defmac arb-vertex-program enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{color-sum-arb}, @code{vertex-program-arb},
+@code{vertex-attrib-array-enabled-arb},
+@code{vertex-attrib-array-size-arb},
+@code{vertex-attrib-array-stride-arb},
+@code{vertex-attrib-array-type-arb}, @code{current-vertex-attrib-arb},
+@code{program-length-arb}, @code{program-string-arb},
+@code{max-program-matrix-stack-depth-arb},
+@code{max-program-matrices-arb}, @code{current-matrix-stack-depth-arb},
+@code{current-matrix-arb}, @code{vertex-program-point-size-arb},
+@code{vertex-program-two-side-arb},
+@code{vertex-attrib-array-pointer-arb},
+@code{program-error-position-arb}, @code{program-binding-arb},
+@code{max-vertex-attribs-arb},
+@code{vertex-attrib-array-normalized-arb},
+@code{max-texture-coords-arb}, @code{max-texture-image-units-arb},
+@code{program-error-string-arb}, @code{program-format-ascii-arb},
+@code{program-format-arb}, @code{program-instructions-arb},
+@code{max-program-instructions-arb},
+@code{program-native-instructions-arb},
+@code{max-program-native-instructions-arb},
+@code{program-temporaries-arb}, @code{max-program-temporaries-arb},
+@code{program-native-temporaries-arb},
+@code{max-program-native-temporaries-arb},
+@code{program-parameters-arb}, @code{max-program-parameters-arb},
+@code{program-native-parameters-arb},
+@code{max-program-native-parameters-arb}, @code{program-attribs-arb},
+@code{max-program-attribs-arb}, @code{program-native-attribs-arb},
+@code{max-program-native-attribs-arb},
+@code{program-address-registers-arb},
+@code{max-program-address-registers-arb},
+@code{program-native-address-registers-arb},
+@code{max-program-native-address-registers-arb},
+@code{max-program-local-parameters-arb},
+@code{max-program-env-parameters-arb},
+@code{program-under-native-limits-arb},
+@code{transpose-current-matrix-arb}, @code{matrix0-arb},
+@code{matrix1-arb}, @code{matrix2-arb}, @code{matrix3-arb},
+@code{matrix4-arb}, @code{matrix5-arb}, @code{matrix6-arb},
+@code{matrix7-arb}, @code{matrix8-arb}, @code{matrix9-arb},
+@code{matrix10-arb}, @code{matrix11-arb}, @code{matrix12-arb},
+@code{matrix13-arb}, @code{matrix14-arb}, @code{matrix15-arb},
+@code{matrix16-arb}, @code{matrix17-arb}, @code{matrix18-arb},
+@code{matrix19-arb}, @code{matrix20-arb}, @code{matrix21-arb},
+@code{matrix22-arb}, @code{matrix23-arb}, @code{matrix24-arb},
+@code{matrix25-arb}, @code{matrix26-arb}, @code{matrix27-arb},
+@code{matrix28-arb}, @code{matrix29-arb}, @code{matrix30-arb},
+@code{matrix31-arb}.
+
+@end defmac
+
+@defmac version-2-1 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{current-raster-secondary-color}, @code{pixel-pack-buffer},
+@code{pixel-unpack-buffer}, @code{pixel-pack-buffer-binding},
+@code{pixel-unpack-buffer-binding}, @code{srgb}, @code{srgb8},
+@code{srgb-alpha}, @code{srgb8-alpha8}, @code{sluminance-alpha},
+@code{sluminance8-alpha8}, @code{sluminance}, @code{sluminance8},
+@code{compressed-srgb}, @code{compressed-srgb-alpha},
+@code{compressed-sluminance}, @code{compressed-sluminance-alpha}.
+
+@end defmac
+
+@defmac sgix-icc-texture enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{smooth-point-size-range}, @code{smooth-point-size-granularity},
+@code{smooth-line-width-range}, @code{smooth-line-width-granularity},
+@code{aliased-point-size-range}, @code{aliased-line-width-range}.
+
+@end defmac
+
+@defmac rend-screen-coordinates enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{screen-coordinates-rend}, @code{inverted-screen-w-rend}.
+
+@end defmac
+
+@defmac arb-multitexture enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture0-arb}, @code{texture1-arb}, @code{texture2-arb},
+@code{texture3-arb}, @code{texture4-arb}, @code{texture5-arb},
+@code{texture6-arb}, @code{texture7-arb}, @code{texture8-arb},
+@code{texture9-arb}, @code{texture10-arb}, @code{texture11-arb},
+@code{texture12-arb}, @code{texture13-arb}, @code{texture14-arb},
+@code{texture15-arb}, @code{texture16-arb}, @code{texture17-arb},
+@code{texture18-arb}, @code{texture19-arb}, @code{texture20-arb},
+@code{texture21-arb}, @code{texture22-arb}, @code{texture23-arb},
+@code{texture24-arb}, @code{texture25-arb}, @code{texture26-arb},
+@code{texture27-arb}, @code{texture28-arb}, @code{texture29-arb},
+@code{texture30-arb}, @code{texture31-arb}, @code{active-texture-arb},
+@code{client-active-texture-arb}, @code{max-texture-units-arb}.
+
+@end defmac
+
+@defmac oes-texture-env-crossbar enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture0}, @code{texture1}, @code{texture2}, @code{texture3},
+@code{texture4}, @code{texture5}, @code{texture6}, @code{texture7},
+@code{texture8}, @code{texture9}, @code{texture10}, @code{texture11},
+@code{texture12}, @code{texture13}, @code{texture14}, @code{texture15},
+@code{texture16}, @code{texture17}, @code{texture18}, @code{texture19},
+@code{texture20}, @code{texture21}, @code{texture22}, @code{texture23},
+@code{texture24}, @code{texture25}, @code{texture26}, @code{texture27},
+@code{texture28}, @code{texture29}, @code{texture30}, @code{texture31}.
+
+@end defmac
+
+@defmac arb-transpose-matrix enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{transpose-modelview-matrix-arb},
+@code{transpose-projection-matrix-arb},
+@code{transpose-texture-matrix-arb}, @code{transpose-color-matrix-arb}.
+
+@end defmac
+
+@defmac arb-texture-env-combine enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{subtract-arb}.
+
+@end defmac
+
+@defmac arb-texture-compression enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{compressed-alpha-arb}, @code{compressed-luminance-arb},
+@code{compressed-luminance-alpha-arb}, @code{compressed-intensity-arb},
+@code{compressed-rgb-arb}, @code{compressed-rgba-arb},
+@code{texture-compression-hint-arb},
+@code{texture-compressed-image-size-arb}, @code{texture-compressed-arb},
+@code{num-compressed-texture-formats-arb},
+@code{compressed-texture-formats-arb}.
+
+@end defmac
+
+@defmac nv-fence enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{all-completed-nv}, @code{fence-status-nv},
+@code{fence-condition-nv}.
+
+@end defmac
+
+@defmac version-3-1 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-rectangle}, @code{texture-binding-rectangle},
+@code{proxy-texture-rectangle}, @code{max-rectangle-texture-size},
+@code{uniform-buffer}, @code{uniform-buffer-binding},
+@code{uniform-buffer-start}, @code{uniform-buffer-size},
+@code{max-vertex-uniform-blocks}, @code{max-geometry-uniform-blocks},
+@code{max-fragment-uniform-blocks}, @code{max-combined-uniform-blocks},
+@code{max-uniform-buffer-bindings}, @code{max-uniform-block-size},
+@code{max-combined-vertex-uniform-components},
+@code{max-combined-geometry-uniform-components},
+@code{max-combined-fragment-uniform-components},
+@code{uniform-buffer-offset-alignment},
+@code{active-uniform-block-max-name-length},
+@code{active-uniform-blocks}, @code{uniform-type}, @code{uniform-size},
+@code{uniform-name-length}, @code{uniform-block-index},
+@code{uniform-offset}, @code{uniform-array-stride},
+@code{uniform-matrix-stride}, @code{uniform-is-row-major},
+@code{uniform-block-binding}, @code{uniform-block-data-size},
+@code{uniform-block-name-length}, @code{uniform-block-active-uniforms},
+@code{uniform-block-active-uniform-indices},
+@code{uniform-block-referenced-by-vertex-shader},
+@code{uniform-block-referenced-by-geometry-shader},
+@code{uniform-block-referenced-by-fragment-shader},
+@code{invalid-index}, @code{sampler-2d-rect},
+@code{sampler-2d-rect-shadow}, @code{texture-buffer},
+@code{max-texture-buffer-size}, @code{texture-binding-buffer},
+@code{texture-buffer-data-store-binding}, @code{sampler-buffer},
+@code{int-sampler-2d-rect}, @code{int-sampler-buffer},
+@code{unsigned-int-sampler-2d-rect}, @code{unsigned-int-sampler-buffer},
+@code{copy-read-buffer}, @code{copy-write-buffer}, @code{red-snorm},
+@code{rg-snorm}, @code{rgb-snorm}, @code{rgba-snorm}, @code{r8-snorm},
+@code{rg8-snorm}, @code{rgb8-snorm}, @code{rgba8-snorm},
+@code{r16-snorm}, @code{rg16-snorm}, @code{rgb16-snorm},
+@code{rgba16-snorm}, @code{signed-normalized}, @code{primitive-restart},
+@code{primitive-restart-index}.
+
+@end defmac
+
+@defmac arb-texture-rectangle enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-rectangle-arb}, @code{texture-binding-rectangle-arb},
+@code{proxy-texture-rectangle-arb},
+@code{max-rectangle-texture-size-arb}.
+
+@end defmac
+
+@defmac nv-texture-rectangle enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-rectangle-nv}, @code{texture-binding-rectangle-nv},
+@code{proxy-texture-rectangle-nv}, @code{max-rectangle-texture-size-nv}.
+
+@end defmac
+
+@defmac ext-packed-depth-stencil enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{depth-stencil-ext}, @code{unsigned-int-24-8-ext},
+@code{depth24-stencil8-ext}, @code{texture-stencil-size-ext}.
+
+@end defmac
+
+@defmac nv-packed-depth-stencil enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{depth-stencil-nv}, @code{unsigned-int-24-8-nv}.
+
+@end defmac
+
+@defmac oes-packed-depth-stencil enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{depth-stencil-oes}, @code{unsigned-int-24-8-oes},
+@code{depth24-stencil8-oes}.
+
+@end defmac
+
+@defmac ext-texture-lod-bias enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{max-texture-lod-bias-ext}, @code{texture-filter-control-ext},
+@code{texture-lod-bias-ext}.
+
+@end defmac
+
+@defmac ext-texture-filter-anisotropic enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-max-anisotropy-ext},
+@code{max-texture-max-anisotropy-ext}.
+
+@end defmac
+
+@defmac ext-vertex-weighting enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{modelview1-stack-depth-ext}, @code{modelview-matrix1-ext},
+@code{vertex-weighting-ext}, @code{modelview1-ext},
+@code{current-vertex-weight-ext}, @code{vertex-weight-array-ext},
+@code{vertex-weight-array-size-ext},
+@code{vertex-weight-array-type-ext},
+@code{vertex-weight-array-stride-ext},
+@code{vertex-weight-array-pointer-ext}.
+
+@end defmac
+
+@defmac nv-light-max-exponent enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{max-shininess-nv}, @code{max-spot-exponent-nv}.
+
+@end defmac
+
+@defmac ext-stencil-wrap enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{incr-wrap-ext}, @code{decr-wrap-ext}.
+
+@end defmac
+
+@defmac oes-stencil-wrap enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{incr-wrap-oes}, @code{decr-wrap-oes}.
+
+@end defmac
+
+@defmac ext-texture-cube-map enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{normal-map-ext}, @code{reflection-map-ext},
+@code{texture-cube-map-ext}, @code{texture-binding-cube-map-ext},
+@code{texture-cube-map-positive-x-ext},
+@code{texture-cube-map-negative-x-ext},
+@code{texture-cube-map-positive-y-ext},
+@code{texture-cube-map-negative-y-ext},
+@code{texture-cube-map-positive-z-ext},
+@code{texture-cube-map-negative-z-ext},
+@code{proxy-texture-cube-map-ext}, @code{max-cube-map-texture-size-ext}.
+
+@end defmac
+
+@defmac nv-texgen-reflection enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{normal-map}, @code{reflection-map}.
+
+@end defmac
+
+@defmac arb-texture-cube-map enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{normal-map-arb}, @code{reflection-map-arb},
+@code{texture-cube-map-arb}, @code{texture-binding-cube-map-arb},
+@code{texture-cube-map-positive-x-arb},
+@code{texture-cube-map-negative-x-arb},
+@code{texture-cube-map-positive-y-arb},
+@code{texture-cube-map-negative-y-arb},
+@code{texture-cube-map-positive-z-arb},
+@code{texture-cube-map-negative-z-arb},
+@code{proxy-texture-cube-map-arb}, @code{max-cube-map-texture-size-arb}.
+
+@end defmac
+
+@defmac nv-vertex-array-range enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{vertex-array-range-nv}, @code{vertex-array-range-length-nv},
+@code{vertex-array-range-valid-nv},
+@code{max-vertex-array-range-element-nv},
+@code{vertex-array-range-pointer-nv}.
+
+@end defmac
+
+@defmac apple-vertex-array-range enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{vertex-array-range-apple}, @code{vertex-array-range-length-apple},
+@code{vertex-array-storage-hint-apple},
+@code{vertex-array-range-pointer-apple}, @code{storage-client-apple},
+@code{storage-cached-apple}, @code{storage-shared-apple}.
+
+@end defmac
+
+@defmac nv-register-combiners enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{register-combiners-nv}, @code{variable-a-nv},
+@code{variable-b-nv}, @code{variable-c-nv}, @code{variable-d-nv},
+@code{variable-e-nv}, @code{variable-f-nv}, @code{variable-g-nv},
+@code{constant-color0-nv}, @code{constant-color1-nv},
+@code{primary-color-nv}, @code{secondary-color-nv}, @code{spare0-nv},
+@code{spare1-nv}, @code{discard-nv}, @code{e-times-f-nv},
+@code{spare0-plus-secondary-color-nv},
+@code{vertex-array-range-without-flush-nv},
+@code{multisample-filter-hint-nv}, @code{unsigned-identity-nv},
+@code{unsigned-invert-nv}, @code{expand-normal-nv},
+@code{expand-negate-nv}, @code{half-bias-normal-nv},
+@code{half-bias-negate-nv}, @code{signed-identity-nv},
+@code{unsigned-negate-nv}, @code{scale-by-two-nv},
+@code{scale-by-four-nv}, @code{scale-by-one-half-nv},
+@code{bias-by-negative-one-half-nv}, @code{combiner-input-nv},
+@code{combiner-mapping-nv}, @code{combiner-component-usage-nv},
+@code{combiner-ab-dot-product-nv}, @code{combiner-cd-dot-product-nv},
+@code{combiner-mux-sum-nv}, @code{combiner-scale-nv},
+@code{combiner-bias-nv}, @code{combiner-ab-output-nv},
+@code{combiner-cd-output-nv}, @code{combiner-sum-output-nv},
+@code{max-general-combiners-nv}, @code{num-general-combiners-nv},
+@code{color-sum-clamp-nv}, @code{combiner0-nv}, @code{combiner1-nv},
+@code{combiner2-nv}, @code{combiner3-nv}, @code{combiner4-nv},
+@code{combiner5-nv}, @code{combiner6-nv}, @code{combiner7-nv}.
+
+@end defmac
+
+@defmac nv-register-combiners-2 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{per-stage-constants-nv}.
+
+@end defmac
+
+@defmac nv-primitive-restart enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{primitive-restart-nv}, @code{primitive-restart-index-nv}.
+
+@end defmac
+
+@defmac nv-fog-distance enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{fog-gen-mode-nv}, @code{eye-radial-nv},
+@code{eye-plane-absolute-nv}.
+
+@end defmac
+
+@defmac nv-texgen-emboss enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{emboss-light-nv}, @code{emboss-constant-nv}, @code{emboss-map-nv}.
+
+@end defmac
+
+@defmac ingr-color-clamp enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{red-min-clamp-ingr}, @code{green-min-clamp-ingr},
+@code{blue-min-clamp-ingr}, @code{alpha-min-clamp-ingr},
+@code{red-max-clamp-ingr}, @code{green-max-clamp-ingr},
+@code{blue-max-clamp-ingr}, @code{alpha-max-clamp-ingr}.
+
+@end defmac
+
+@defmac ingr-interlace-read enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{interlace-read-ingr}.
+
+@end defmac
+
+@defmac ext-texture-env-combine enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{combine-ext}, @code{combine-rgb-ext}, @code{combine-alpha-ext},
+@code{rgb-scale-ext}, @code{add-signed-ext}, @code{interpolate-ext},
+@code{constant-ext}, @code{primary-color-ext}, @code{previous-ext},
+@code{source0-rgb-ext}, @code{source1-rgb-ext}, @code{source2-rgb-ext},
+@code{source0-alpha-ext}, @code{source1-alpha-ext},
+@code{source2-alpha-ext}, @code{operand0-rgb-ext},
+@code{operand1-rgb-ext}, @code{operand2-rgb-ext},
+@code{operand0-alpha-ext}, @code{operand1-alpha-ext},
+@code{operand2-alpha-ext}.
+
+@end defmac
+
+@defmac nv-texture-env-combine-4 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{combine4-nv}, @code{source3-rgb-nv}, @code{source3-alpha-nv},
+@code{operand3-rgb-nv}, @code{operand3-alpha-nv}.
+
+@end defmac
+
+@defmac sgix-subsample enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{pack-subsample-rate-sgix}, @code{unpack-subsample-rate-sgix},
+@code{pixel-subsample-4444-sgix}, @code{pixel-subsample-2424-sgix},
+@code{pixel-subsample-4242-sgix}.
+
+@end defmac
+
+@defmac ext-texture-perturb-normal enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{perturb-ext}, @code{texture-normal-ext}.
+
+@end defmac
+
+@defmac apple-specular-vector enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{light-model-specular-vector-apple}.
+
+@end defmac
+
+@defmac apple-transform-hint enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{transform-hint-apple}.
+
+@end defmac
+
+@defmac apple-client-storage enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{unpack-client-storage-apple}.
+
+@end defmac
+
+@defmac apple-object-purgeable enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{buffer-object-apple}, @code{released-apple},
+@code{volatile-apple}, @code{retained-apple}, @code{undefined-apple},
+@code{purgeable-apple}.
+
+@end defmac
+
+@defmac arb-vertex-array-object enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{vertex-array-binding}.
+
+@end defmac
+
+@defmac apple-vertex-array-object enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{vertex-array-binding-apple}.
+
+@end defmac
+
+@defmac apple-texture-range enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-range-length-apple}, @code{texture-range-pointer-apple},
+@code{texture-storage-hint-apple}, @code{storage-private-apple},
+@code{storage-cached-apple}, @code{storage-shared-apple}.
+
+@end defmac
+
+@defmac apple-ycbcr-422 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{ycbcr-422-apple}, @code{unsigned-short-8-8-apple},
+@code{unsigned-short-8-8-rev-apple}.
+
+@end defmac
+
+@defmac mesa-ycbcr-texture enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{unsigned-short-8-8-mesa}, @code{unsigned-short-8-8-rev-mesa},
+@code{ycbcr-mesa}.
+
+@end defmac
+
+@defmac sun-slice-accum enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{slice-accum-sun}.
+
+@end defmac
+
+@defmac sun-mesh-array enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{quad-mesh-sun}, @code{triangle-mesh-sun}.
+
+@end defmac
+
+@defmac nv-vertex-program enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{vertex-program-nv}, @code{vertex-state-program-nv},
+@code{attrib-array-size-nv}, @code{attrib-array-stride-nv},
+@code{attrib-array-type-nv}, @code{current-attrib-nv},
+@code{program-length-nv}, @code{program-string-nv},
+@code{modelview-projection-nv}, @code{identity-nv}, @code{inverse-nv},
+@code{transpose-nv}, @code{inverse-transpose-nv},
+@code{max-track-matrix-stack-depth-nv}, @code{max-track-matrices-nv},
+@code{matrix0-nv}, @code{matrix1-nv}, @code{matrix2-nv},
+@code{matrix3-nv}, @code{matrix4-nv}, @code{matrix5-nv},
+@code{matrix6-nv}, @code{matrix7-nv},
+@code{current-matrix-stack-depth-nv}, @code{current-matrix-nv},
+@code{vertex-program-point-size-nv}, @code{vertex-program-two-side-nv},
+@code{program-parameter-nv}, @code{attrib-array-pointer-nv},
+@code{program-target-nv}, @code{program-resident-nv},
+@code{track-matrix-nv}, @code{track-matrix-transform-nv},
+@code{vertex-program-binding-nv}, @code{program-error-position-nv},
+@code{vertex-attrib-array0-nv}, @code{vertex-attrib-array1-nv},
+@code{vertex-attrib-array2-nv}, @code{vertex-attrib-array3-nv},
+@code{vertex-attrib-array4-nv}, @code{vertex-attrib-array5-nv},
+@code{vertex-attrib-array6-nv}, @code{vertex-attrib-array7-nv},
+@code{vertex-attrib-array8-nv}, @code{vertex-attrib-array9-nv},
+@code{vertex-attrib-array10-nv}, @code{vertex-attrib-array11-nv},
+@code{vertex-attrib-array12-nv}, @code{vertex-attrib-array13-nv},
+@code{vertex-attrib-array14-nv}, @code{vertex-attrib-array15-nv},
+@code{map1-vertex-attrib0-4-nv}, @code{map1-vertex-attrib1-4-nv},
+@code{map1-vertex-attrib2-4-nv}, @code{map1-vertex-attrib3-4-nv},
+@code{map1-vertex-attrib4-4-nv}, @code{map1-vertex-attrib5-4-nv},
+@code{map1-vertex-attrib6-4-nv}, @code{map1-vertex-attrib7-4-nv},
+@code{map1-vertex-attrib8-4-nv}, @code{map1-vertex-attrib9-4-nv},
+@code{map1-vertex-attrib10-4-nv}, @code{map1-vertex-attrib11-4-nv},
+@code{map1-vertex-attrib12-4-nv}, @code{map1-vertex-attrib13-4-nv},
+@code{map1-vertex-attrib14-4-nv}, @code{map1-vertex-attrib15-4-nv},
+@code{map2-vertex-attrib0-4-nv}, @code{map2-vertex-attrib1-4-nv},
+@code{map2-vertex-attrib2-4-nv}, @code{map2-vertex-attrib3-4-nv},
+@code{map2-vertex-attrib4-4-nv}, @code{map2-vertex-attrib5-4-nv},
+@code{map2-vertex-attrib6-4-nv}, @code{map2-vertex-attrib7-4-nv},
+@code{map2-vertex-attrib8-4-nv}, @code{map2-vertex-attrib9-4-nv},
+@code{map2-vertex-attrib10-4-nv}, @code{map2-vertex-attrib11-4-nv},
+@code{map2-vertex-attrib12-4-nv}, @code{map2-vertex-attrib13-4-nv},
+@code{map2-vertex-attrib14-4-nv}, @code{map2-vertex-attrib15-4-nv}.
+
+@end defmac
+
+@defmac arb-depth-clamp enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{depth-clamp}.
+
+@end defmac
+
+@defmac nv-depth-clamp enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{depth-clamp-nv}.
+
+@end defmac
+
+@defmac arb-fragment-program enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{vertex-program-arb}, @code{vertex-attrib-array-enabled-arb},
+@code{vertex-attrib-array-size-arb},
+@code{vertex-attrib-array-stride-arb},
+@code{vertex-attrib-array-type-arb}, @code{current-vertex-attrib-arb},
+@code{program-length-arb}, @code{program-string-arb},
+@code{max-program-matrix-stack-depth-arb},
+@code{max-program-matrices-arb}, @code{current-matrix-stack-depth-arb},
+@code{current-matrix-arb}, @code{vertex-program-point-size-arb},
+@code{vertex-program-two-side-arb},
+@code{vertex-attrib-array-pointer-arb},
+@code{program-error-position-arb}, @code{program-binding-arb},
+@code{fragment-program-arb}, @code{program-alu-instructions-arb},
+@code{program-tex-instructions-arb},
+@code{program-tex-indirections-arb},
+@code{program-native-alu-instructions-arb},
+@code{program-native-tex-instructions-arb},
+@code{program-native-tex-indirections-arb},
+@code{max-program-alu-instructions-arb},
+@code{max-program-tex-instructions-arb},
+@code{max-program-tex-indirections-arb},
+@code{max-program-native-alu-instructions-arb},
+@code{max-program-native-tex-instructions-arb},
+@code{max-program-native-tex-indirections-arb},
+@code{max-texture-coords-arb}, @code{max-texture-image-units-arb},
+@code{program-error-string-arb}, @code{program-format-ascii-arb},
+@code{program-format-arb}, @code{program-instructions-arb},
+@code{max-program-instructions-arb},
+@code{program-native-instructions-arb},
+@code{max-program-native-instructions-arb},
+@code{program-temporaries-arb}, @code{max-program-temporaries-arb},
+@code{program-native-temporaries-arb},
+@code{max-program-native-temporaries-arb},
+@code{program-parameters-arb}, @code{max-program-parameters-arb},
+@code{program-native-parameters-arb},
+@code{max-program-native-parameters-arb}, @code{program-attribs-arb},
+@code{max-program-attribs-arb}, @code{program-native-attribs-arb},
+@code{max-program-native-attribs-arb},
+@code{program-address-registers-arb},
+@code{max-program-address-registers-arb},
+@code{program-native-address-registers-arb},
+@code{max-program-native-address-registers-arb},
+@code{max-program-local-parameters-arb},
+@code{max-program-env-parameters-arb},
+@code{program-under-native-limits-arb},
+@code{transpose-current-matrix-arb}, @code{matrix0-arb},
+@code{matrix1-arb}, @code{matrix2-arb}, @code{matrix3-arb},
+@code{matrix4-arb}, @code{matrix5-arb}, @code{matrix6-arb},
+@code{matrix7-arb}, @code{matrix8-arb}, @code{matrix9-arb},
+@code{matrix10-arb}, @code{matrix11-arb}, @code{matrix12-arb},
+@code{matrix13-arb}, @code{matrix14-arb}, @code{matrix15-arb},
+@code{matrix16-arb}, @code{matrix17-arb}, @code{matrix18-arb},
+@code{matrix19-arb}, @code{matrix20-arb}, @code{matrix21-arb},
+@code{matrix22-arb}, @code{matrix23-arb}, @code{matrix24-arb},
+@code{matrix25-arb}, @code{matrix26-arb}, @code{matrix27-arb},
+@code{matrix28-arb}, @code{matrix29-arb}, @code{matrix30-arb},
+@code{matrix31-arb}.
+
+@end defmac
+
+@defmac arb-vertex-blend enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{max-vertex-units-arb}, @code{active-vertex-units-arb},
+@code{weight-sum-unity-arb}, @code{vertex-blend-arb},
+@code{current-weight-arb}, @code{weight-array-type-arb},
+@code{weight-array-stride-arb}, @code{weight-array-size-arb},
+@code{weight-array-pointer-arb}, @code{weight-array-arb},
+@code{modelview0-arb}, @code{modelview1-arb}, @code{modelview2-arb},
+@code{modelview3-arb}, @code{modelview4-arb}, @code{modelview5-arb},
+@code{modelview6-arb}, @code{modelview7-arb}, @code{modelview8-arb},
+@code{modelview9-arb}, @code{modelview10-arb}, @code{modelview11-arb},
+@code{modelview12-arb}, @code{modelview13-arb}, @code{modelview14-arb},
+@code{modelview15-arb}, @code{modelview16-arb}, @code{modelview17-arb},
+@code{modelview18-arb}, @code{modelview19-arb}, @code{modelview20-arb},
+@code{modelview21-arb}, @code{modelview22-arb}, @code{modelview23-arb},
+@code{modelview24-arb}, @code{modelview25-arb}, @code{modelview26-arb},
+@code{modelview27-arb}, @code{modelview28-arb}, @code{modelview29-arb},
+@code{modelview30-arb}, @code{modelview31-arb}.
+
+@end defmac
+
+@defmac oes-matrix-palette enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{max-vertex-units-oes}, @code{weight-array-oes},
+@code{weight-array-type-oes}, @code{weight-array-stride-oes},
+@code{weight-array-size-oes}, @code{weight-array-pointer-oes},
+@code{matrix-palette-oes}, @code{max-palette-matrices-oes},
+@code{current-palette-matrix-oes}, @code{matrix-index-array-oes},
+@code{matrix-index-array-size-oes}, @code{matrix-index-array-type-oes},
+@code{matrix-index-array-stride-oes},
+@code{matrix-index-array-pointer-oes},
+@code{weight-array-buffer-binding-oes},
+@code{matrix-index-array-buffer-binding-oes}.
+
+@end defmac
+
+@defmac arb-texture-env-dot-3 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{dot3-rgb-arb}, @code{dot3-rgba-arb}.
+
+@end defmac
+
+@defmac img-texture-env-enhanced-fixed-function enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{dot3-rgba-img}, @code{modulate-color-img},
+@code{recip-add-signed-alpha-img}, @code{texture-alpha-modulate-img},
+@code{factor-alpha-modulate-img}, @code{fragment-alpha-modulate-img},
+@code{add-blend-img}.
+
+@end defmac
+
+@defmac 3dfx-texture-compression-fxt1 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{compressed-rgb-fxt1-3dfx}, @code{compressed-rgba-fxt1-3dfx}.
+
+@end defmac
+
+@defmac nv-evaluators enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{eval-2d-nv}, @code{eval-triangular-2d-nv},
+@code{map-tessellation-nv}, @code{map-attrib-u-order-nv},
+@code{map-attrib-v-order-nv}, @code{eval-fractional-tessellation-nv},
+@code{eval-vertex-atrrib0-nv}, @code{eval-vertex-atrrib1-nv},
+@code{eval-vertex-atrrib2-nv}, @code{eval-vertex-atrrib3-nv},
+@code{eval-vertex-atrrib4-nv}, @code{eval-vertex-atrrib5-nv},
+@code{eval-vertex-atrrib6-nv}, @code{eval-vertex-atrrib7-nv},
+@code{eval-vertex-atrrib8-nv}, @code{eval-vertex-atrrib9-nv},
+@code{eval-vertex-atrrib10-nv}, @code{eval-vertex-atrrib11-nv},
+@code{eval-vertex-atrrib12-nv}, @code{eval-vertex-atrrib13-nv},
+@code{eval-vertex-atrrib14-nv}, @code{eval-vertex-atrrib15-nv},
+@code{max-map-tessellation-nv}, @code{max-rational-eval-order-nv}.
+
+@end defmac
+
+@defmac nv-tessellation-program-5 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{max-program-patch-attribs-nv}, @code{tess-control-program-nv},
+@code{tess-evaluation-program-nv},
+@code{tess-control-program-parameter-buffer-nv},
+@code{tess-evaluation-program-parameter-buffer-nv}.
+
+@end defmac
+
+@defmac nv-texture-shader enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{offset-texture-rectangle-nv},
+@code{offset-texture-rectangle-scale-nv},
+@code{dot-product-texture-rectangle-nv},
+@code{rgba-unsigned-dot-product-mapping-nv},
+@code{unsigned-int-s8-s8-8-8-nv}, @code{unsigned-int-8-8-s8-s8-rev-nv},
+@code{dsdt-mag-intensity-nv}, @code{shader-consistent-nv},
+@code{texture-shader-nv}, @code{shader-operation-nv},
+@code{cull-modes-nv}, @code{offset-texture-matrix-nv},
+@code{offset-texture-scale-nv}, @code{offset-texture-bias-nv},
+@code{offset-texture-2d-matrix-nv}, @code{offset-texture-2d-scale-nv},
+@code{offset-texture-2d-bias-nv}, @code{previous-texture-input-nv},
+@code{const-eye-nv}, @code{pass-through-nv}, @code{cull-fragment-nv},
+@code{offset-texture-2d-nv}, @code{dependent-ar-texture-2d-nv},
+@code{dependent-gb-texture-2d-nv}, @code{dot-product-nv},
+@code{dot-product-depth-replace-nv}, @code{dot-product-texture-2d-nv},
+@code{dot-product-texture-cube-map-nv},
+@code{dot-product-diffuse-cube-map-nv},
+@code{dot-product-reflect-cube-map-nv},
+@code{dot-product-const-eye-reflect-cube-map-nv}, @code{hilo-nv},
+@code{dsdt-nv}, @code{dsdt-mag-nv}, @code{dsdt-mag-vib-nv},
+@code{hilo16-nv}, @code{signed-hilo-nv}, @code{signed-hilo16-nv},
+@code{signed-rgba-nv}, @code{signed-rgba8-nv}, @code{signed-rgb-nv},
+@code{signed-rgb8-nv}, @code{signed-luminance-nv},
+@code{signed-luminance8-nv}, @code{signed-luminance-alpha-nv},
+@code{signed-luminance8-alpha8-nv}, @code{signed-alpha-nv},
+@code{signed-alpha8-nv}, @code{signed-intensity-nv},
+@code{signed-intensity8-nv}, @code{dsdt8-nv}, @code{dsdt8-mag8-nv},
+@code{dsdt8-mag8-intensity8-nv}, @code{signed-rgb-unsigned-alpha-nv},
+@code{signed-rgb8-unsigned-alpha8-nv}, @code{hi-scale-nv},
+@code{lo-scale-nv}, @code{ds-scale-nv}, @code{dt-scale-nv},
+@code{magnitude-scale-nv}, @code{vibrance-scale-nv}, @code{hi-bias-nv},
+@code{lo-bias-nv}, @code{ds-bias-nv}, @code{dt-bias-nv},
+@code{magnitude-bias-nv}, @code{vibrance-bias-nv},
+@code{texture-border-values-nv}, @code{texture-hi-size-nv},
+@code{texture-lo-size-nv}, @code{texture-ds-size-nv},
+@code{texture-dt-size-nv}, @code{texture-mag-size-nv}.
+
+@end defmac
+
+@defmac nv-vdpau-interop enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{surface-state-nv}, @code{surface-registered-nv},
+@code{surface-mapped-nv}, @code{write-discard-nv}.
+
+@end defmac
+
+@defmac nv-texture-shader-2 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{dot-product-texture-3d-nv}.
+
+@end defmac
+
+@defmac ext-texture-env-dot-3 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{dot3-rgb-ext}, @code{dot3-rgba-ext}.
+
+@end defmac
+
+@defmac amd-program-binary-z400 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{z400-binary-amd}.
+
+@end defmac
+
+@defmac oes-get-program-binary enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{program-binary-length-oes}, @code{num-program-binary-formats-oes},
+@code{program-binary-formats-oes}.
+
+@end defmac
+
+@defmac ati-texture-mirror-once enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{mirror-clamp-ati}, @code{mirror-clamp-to-edge-ati}.
+
+@end defmac
+
+@defmac ext-texture-mirror-clamp enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{mirror-clamp-ext}, @code{mirror-clamp-to-edge-ext},
+@code{mirror-clamp-to-border-ext}.
+
+@end defmac
+
+@defmac ati-texture-env-combine-3 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{modulate-add-ati}, @code{modulate-signed-add-ati},
+@code{modulate-subtract-ati}.
+
+@end defmac
+
+@defmac amd-stencil-operation-extended enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{set-amd}, @code{replace-value-amd}, @code{stencil-op-value-amd},
+@code{stencil-back-op-value-amd}.
+
+@end defmac
+
+@defmac mesa-packed-depth-stencil enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{depth-stencil-mesa}, @code{unsigned-int-24-8-mesa},
+@code{unsigned-int-8-24-rev-mesa}, @code{unsigned-short-15-1-mesa},
+@code{unsigned-short-1-15-rev-mesa}.
+
+@end defmac
+
+@defmac mesa-trace enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{trace-all-bits-mesa}, @code{trace-operations-bit-mesa},
+@code{trace-primitives-bit-mesa}, @code{trace-arrays-bit-mesa},
+@code{trace-textures-bit-mesa}, @code{trace-pixels-bit-mesa},
+@code{trace-errors-bit-mesa}, @code{trace-mask-mesa},
+@code{trace-name-mesa}.
+
+@end defmac
+
+@defmac mesa-pack-invert enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{pack-invert-mesa}.
+
+@end defmac
+
+@defmac mesax-texture-stack enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-1d-stack-mesax}, @code{texture-2d-stack-mesax},
+@code{proxy-texture-1d-stack-mesax},
+@code{proxy-texture-2d-stack-mesax},
+@code{texture-1d-stack-binding-mesax},
+@code{texture-2d-stack-binding-mesax}.
+
+@end defmac
+
+@defmac mesa-shader-debug enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{debug-object-mesa}, @code{debug-print-mesa},
+@code{debug-assert-mesa}.
+
+@end defmac
+
+@defmac ati-vertex-array-object enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{static-ati}, @code{dynamic-ati}, @code{preserve-ati},
+@code{discard-ati}, @code{object-buffer-size-ati},
+@code{object-buffer-usage-ati}, @code{array-object-buffer-ati},
+@code{array-object-offset-ati}.
+
+@end defmac
+
+@defmac arb-vertex-buffer-object enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{buffer-size-arb}, @code{buffer-usage-arb},
+@code{array-buffer-arb}, @code{element-array-buffer-arb},
+@code{array-buffer-binding-arb},
+@code{element-array-buffer-binding-arb},
+@code{vertex-array-buffer-binding-arb},
+@code{normal-array-buffer-binding-arb},
+@code{color-array-buffer-binding-arb},
+@code{index-array-buffer-binding-arb},
+@code{texture-coord-array-buffer-binding-arb},
+@code{edge-flag-array-buffer-binding-arb},
+@code{secondary-color-array-buffer-binding-arb},
+@code{fog-coordinate-array-buffer-binding-arb},
+@code{weight-array-buffer-binding-arb},
+@code{vertex-attrib-array-buffer-binding-arb}, @code{read-only-arb},
+@code{write-only-arb}, @code{read-write-arb}, @code{buffer-access-arb},
+@code{buffer-mapped-arb}, @code{buffer-map-pointer-arb},
+@code{stream-draw-arb}, @code{stream-read-arb}, @code{stream-copy-arb},
+@code{static-draw-arb}, @code{static-read-arb}, @code{static-copy-arb},
+@code{dynamic-draw-arb}, @code{dynamic-read-arb},
+@code{dynamic-copy-arb}.
+
+@end defmac
+
+@defmac ati-element-array enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{element-array-ati}, @code{element-array-type-ati},
+@code{element-array-pointer-ati}.
+
+@end defmac
+
+@defmac ati-vertex-streams enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{max-vertex-streams-ati}, @code{vertex-stream0-ati},
+@code{vertex-stream1-ati}, @code{vertex-stream2-ati},
+@code{vertex-stream3-ati}, @code{vertex-stream4-ati},
+@code{vertex-stream5-ati}, @code{vertex-stream6-ati},
+@code{vertex-stream7-ati}, @code{vertex-source-ati}.
+
+@end defmac
+
+@defmac ati-envmap-bumpmap enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{bump-rot-matrix-ati}, @code{bump-rot-matrix-size-ati},
+@code{bump-num-tex-units-ati}, @code{bump-tex-units-ati},
+@code{dudv-ati}, @code{du8dv8-ati}, @code{bump-envmap-ati},
+@code{bump-target-ati}.
+
+@end defmac
+
+@defmac ext-vertex-shader enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{vertex-shader-ext}, @code{vertex-shader-binding-ext},
+@code{op-index-ext}, @code{op-negate-ext}, @code{op-dot3-ext},
+@code{op-dot4-ext}, @code{op-mul-ext}, @code{op-add-ext},
+@code{op-madd-ext}, @code{op-frac-ext}, @code{op-max-ext},
+@code{op-min-ext}, @code{op-set-ge-ext}, @code{op-set-lt-ext},
+@code{op-clamp-ext}, @code{op-floor-ext}, @code{op-round-ext},
+@code{op-exp-base-2-ext}, @code{op-log-base-2-ext}, @code{op-power-ext},
+@code{op-recip-ext}, @code{op-recip-sqrt-ext}, @code{op-sub-ext},
+@code{op-cross-product-ext}, @code{op-multiply-matrix-ext},
+@code{op-mov-ext}, @code{output-vertex-ext}, @code{output-color0-ext},
+@code{output-color1-ext}, @code{output-texture-coord0-ext},
+@code{output-texture-coord1-ext}, @code{output-texture-coord2-ext},
+@code{output-texture-coord3-ext}, @code{output-texture-coord4-ext},
+@code{output-texture-coord5-ext}, @code{output-texture-coord6-ext},
+@code{output-texture-coord7-ext}, @code{output-texture-coord8-ext},
+@code{output-texture-coord9-ext}, @code{output-texture-coord10-ext},
+@code{output-texture-coord11-ext}, @code{output-texture-coord12-ext},
+@code{output-texture-coord13-ext}, @code{output-texture-coord14-ext},
+@code{output-texture-coord15-ext}, @code{output-texture-coord16-ext},
+@code{output-texture-coord17-ext}, @code{output-texture-coord18-ext},
+@code{output-texture-coord19-ext}, @code{output-texture-coord20-ext},
+@code{output-texture-coord21-ext}, @code{output-texture-coord22-ext},
+@code{output-texture-coord23-ext}, @code{output-texture-coord24-ext},
+@code{output-texture-coord25-ext}, @code{output-texture-coord26-ext},
+@code{output-texture-coord27-ext}, @code{output-texture-coord28-ext},
+@code{output-texture-coord29-ext}, @code{output-texture-coord30-ext},
+@code{output-texture-coord31-ext}, @code{output-fog-ext},
+@code{scalar-ext}, @code{vector-ext}, @code{matrix-ext},
+@code{variant-ext}, @code{invariant-ext}, @code{local-constant-ext},
+@code{local-ext}, @code{max-vertex-shader-instructions-ext},
+@code{max-vertex-shader-variants-ext},
+@code{max-vertex-shader-invariants-ext},
+@code{max-vertex-shader-local-constants-ext},
+@code{max-vertex-shader-locals-ext},
+@code{max-optimized-vertex-shader-instructions-ext},
+@code{max-optimized-vertex-shader-variants-ext},
+@code{max-optimized-vertex-shader-local-constants-ext},
+@code{max-optimized-vertex-shader-invariants-ext},
+@code{max-optimized-vertex-shader-locals-ext},
+@code{vertex-shader-instructions-ext},
+@code{vertex-shader-variants-ext}, @code{vertex-shader-invariants-ext},
+@code{vertex-shader-local-constants-ext},
+@code{vertex-shader-locals-ext}, @code{vertex-shader-optimized-ext},
+@code{x-ext}, @code{y-ext}, @code{z-ext}, @code{w-ext},
+@code{negative-x-ext}, @code{negative-y-ext}, @code{negative-z-ext},
+@code{negative-w-ext}, @code{zero-ext}, @code{one-ext},
+@code{negative-one-ext}, @code{normalized-range-ext},
+@code{full-range-ext}, @code{current-vertex-ext}, @code{mvp-matrix-ext},
+@code{variant-value-ext}, @code{variant-datatype-ext},
+@code{variant-array-stride-ext}, @code{variant-array-type-ext},
+@code{variant-array-ext}, @code{variant-array-pointer-ext},
+@code{invariant-value-ext}, @code{invariant-datatype-ext},
+@code{local-constant-value-ext}, @code{local-constant-datatype-ext}.
+
+@end defmac
+
+@defmac amd-compressed-atc-texture enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{atc-rgba-interpolated-alpha-amd}, @code{atc-rgb-amd},
+@code{atc-rgba-explicit-alpha-amd}.
+
+@end defmac
+
+@defmac ati-pn-triangles enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{pn-triangles-ati}, @code{max-pn-triangles-tesselation-level-ati},
+@code{pn-triangles-point-mode-ati}, @code{pn-triangles-normal-mode-ati},
+@code{pn-triangles-tesselation-level-ati},
+@code{pn-triangles-point-mode-linear-ati},
+@code{pn-triangles-point-mode-cubic-ati},
+@code{pn-triangles-normal-mode-linear-ati},
+@code{pn-triangles-normal-mode-quadratic-ati}.
+
+@end defmac
+
+@defmac amd-compressed-3dc-texture enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{3dc-x-amd}, @code{3dc-xy-amd}.
+
+@end defmac
+
+@defmac ati-meminfo enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{vbo-free-memory-ati}, @code{texture-free-memory-ati},
+@code{renderbuffer-free-memory-ati}.
+
+@end defmac
+
+@defmac ati-separate-stencil enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{stencil-back-func-ati}, @code{stencil-back-pass-depth-fail-ati},
+@code{stencil-back-pass-depth-pass-ati}.
+
+@end defmac
+
+@defmac arb-texture-float enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{rgba32f-arb}, @code{rgb32f-arb}, @code{alpha32f-arb},
+@code{intensity32f-arb}, @code{luminance32f-arb},
+@code{luminance-alpha32f-arb}, @code{rgba16f-arb}, @code{rgb16f-arb},
+@code{alpha16f-arb}, @code{intensity16f-arb}, @code{luminance16f-arb},
+@code{luminance-alpha16f-arb}, @code{texture-red-type-arb},
+@code{texture-green-type-arb}, @code{texture-blue-type-arb},
+@code{texture-alpha-type-arb}, @code{texture-luminance-type-arb},
+@code{texture-intensity-type-arb}, @code{texture-depth-type-arb},
+@code{unsigned-normalized-arb}.
+
+@end defmac
+
+@defmac ati-texture-float enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{rgba-float32-ati}, @code{rgb-float32-ati},
+@code{alpha-float32-ati}, @code{intensity-float32-ati},
+@code{luminance-float32-ati}, @code{luminance-alpha-float32-ati},
+@code{rgba-float16-ati}, @code{rgb-float16-ati},
+@code{alpha-float16-ati}, @code{intensity-float16-ati},
+@code{luminance-float16-ati}, @code{luminance-alpha-float16-ati}.
+
+@end defmac
+
+@defmac arb-color-buffer-float enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{rgba-float-mode-arb}, @code{clamp-vertex-color-arb},
+@code{clamp-fragment-color-arb}, @code{clamp-read-color-arb},
+@code{fixed-only-arb}.
+
+@end defmac
+
+@defmac ati-pixel-format-float enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{type-rgba-float-ati}, @code{color-clear-unclamped-value-ati}.
+
+@end defmac
+
+@defmac qcom-writeonly-rendering enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{writeonly-rendering-qcom}.
+
+@end defmac
+
+@defmac arb-draw-buffers enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{max-draw-buffers-arb}, @code{draw-buffer0-arb},
+@code{draw-buffer1-arb}, @code{draw-buffer2-arb},
+@code{draw-buffer3-arb}, @code{draw-buffer4-arb},
+@code{draw-buffer5-arb}, @code{draw-buffer6-arb},
+@code{draw-buffer7-arb}, @code{draw-buffer8-arb},
+@code{draw-buffer9-arb}, @code{draw-buffer10-arb},
+@code{draw-buffer11-arb}, @code{draw-buffer12-arb},
+@code{draw-buffer13-arb}, @code{draw-buffer14-arb},
+@code{draw-buffer15-arb}.
+
+@end defmac
+
+@defmac ati-draw-buffers enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{max-draw-buffers-ati}, @code{draw-buffer0-ati},
+@code{draw-buffer1-ati}, @code{draw-buffer2-ati},
+@code{draw-buffer3-ati}, @code{draw-buffer4-ati},
+@code{draw-buffer5-ati}, @code{draw-buffer6-ati},
+@code{draw-buffer7-ati}, @code{draw-buffer8-ati},
+@code{draw-buffer9-ati}, @code{draw-buffer10-ati},
+@code{draw-buffer11-ati}, @code{draw-buffer12-ati},
+@code{draw-buffer13-ati}, @code{draw-buffer14-ati},
+@code{draw-buffer15-ati}.
+
+@end defmac
+
+@defmac nv-draw-buffers enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{max-draw-buffers-nv}, @code{draw-buffer0-nv},
+@code{draw-buffer1-nv}, @code{draw-buffer2-nv}, @code{draw-buffer3-nv},
+@code{draw-buffer4-nv}, @code{draw-buffer5-nv}, @code{draw-buffer6-nv},
+@code{draw-buffer7-nv}, @code{draw-buffer8-nv}, @code{draw-buffer9-nv},
+@code{draw-buffer10-nv}, @code{draw-buffer11-nv},
+@code{draw-buffer12-nv}, @code{draw-buffer13-nv},
+@code{draw-buffer14-nv}, @code{draw-buffer15-nv},
+@code{color-attachment0-nv}, @code{color-attachment1-nv},
+@code{color-attachment2-nv}, @code{color-attachment3-nv},
+@code{color-attachment4-nv}, @code{color-attachment5-nv},
+@code{color-attachment6-nv}, @code{color-attachment7-nv},
+@code{color-attachment8-nv}, @code{color-attachment9-nv},
+@code{color-attachment10-nv}, @code{color-attachment11-nv},
+@code{color-attachment12-nv}, @code{color-attachment13-nv},
+@code{color-attachment14-nv}, @code{color-attachment15-nv}.
+
+@end defmac
+
+@defmac amd-sample-positions enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{subsample-distance-amd}.
+
+@end defmac
+
+@defmac arb-matrix-palette enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{matrix-palette-arb}, @code{max-matrix-palette-stack-depth-arb},
+@code{max-palette-matrices-arb}, @code{current-palette-matrix-arb},
+@code{matrix-index-array-arb}, @code{current-matrix-index-arb},
+@code{matrix-index-array-size-arb}, @code{matrix-index-array-type-arb},
+@code{matrix-index-array-stride-arb},
+@code{matrix-index-array-pointer-arb}.
+
+@end defmac
+
+@defmac arb-shadow enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-compare-mode-arb}, @code{texture-compare-func-arb},
+@code{compare-r-to-texture-arb}.
+
+@end defmac
+
+@defmac ext-shadow-samplers enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-compare-mode-ext}, @code{texture-compare-func-ext},
+@code{compare-ref-to-texture-ext}, @code{sampler-2d-shadow-ext}.
+
+@end defmac
+
+@defmac ext-texture-array enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{compare-ref-depth-to-texture-ext},
+@code{max-array-texture-layers-ext}, @code{texture-1d-array-ext},
+@code{proxy-texture-1d-array-ext}, @code{texture-2d-array-ext},
+@code{proxy-texture-2d-array-ext}, @code{texture-binding-1d-array-ext},
+@code{texture-binding-2d-array-ext}.
+
+@end defmac
+
+@defmac arb-seamless-cube-map enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-cube-map-seamless}.
+
+@end defmac
+
+@defmac nv-texture-shader-3 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{offset-projective-texture-2d-nv},
+@code{offset-projective-texture-2d-scale-nv},
+@code{offset-projective-texture-rectangle-nv},
+@code{offset-projective-texture-rectangle-scale-nv},
+@code{offset-hilo-texture-2d-nv},
+@code{offset-hilo-texture-rectangle-nv},
+@code{offset-hilo-projective-texture-2d-nv},
+@code{offset-hilo-projective-texture-rectangle-nv},
+@code{dependent-hilo-texture-2d-nv}, @code{dependent-rgb-texture-3d-nv},
+@code{dependent-rgb-texture-cube-map-nv},
+@code{dot-product-pass-through-nv}, @code{dot-product-texture-1d-nv},
+@code{dot-product-affine-depth-replace-nv}, @code{hilo8-nv},
+@code{signed-hilo8-nv}, @code{force-blue-to-one-nv}.
+
+@end defmac
+
+@defmac arb-point-sprite enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{point-sprite-arb}, @code{coord-replace-arb}.
+
+@end defmac
+
+@defmac nv-point-sprite enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{point-sprite-nv}, @code{coord-replace-nv},
+@code{point-sprite-r-mode-nv}.
+
+@end defmac
+
+@defmac oes-point-sprite enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{point-sprite-arb}, @code{coord-replace-arb}.
+
+@end defmac
+
+@defmac arb-occlusion-query enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{query-counter-bits-arb}, @code{current-query-arb},
+@code{query-result-arb}, @code{query-result-available-arb},
+@code{samples-passed-arb}.
+
+@end defmac
+
+@defmac nv-occlusion-query enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{pixel-counter-bits-nv}, @code{current-occlusion-query-id-nv},
+@code{pixel-count-nv}, @code{pixel-count-available-nv}.
+
+@end defmac
+
+@defmac ext-occlusion-query-boolean enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{current-query-ext}, @code{query-result-ext},
+@code{query-result-available-ext}, @code{any-samples-passed-ext},
+@code{any-samples-passed-conservative-ext}.
+
+@end defmac
+
+@defmac nv-fragment-program enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{max-fragment-program-local-parameters-nv},
+@code{fragment-program-nv}, @code{max-texture-coords-nv},
+@code{max-texture-image-units-nv}, @code{fragment-program-binding-nv},
+@code{program-error-string-nv}.
+
+@end defmac
+
+@defmac nv-copy-depth-to-color enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{depth-stencil-to-rgba-nv}, @code{depth-stencil-to-bgra-nv}.
+
+@end defmac
+
+@defmac nv-pixel-data-range enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{write-pixel-data-range-nv}, @code{read-pixel-data-range-nv},
+@code{write-pixel-data-range-length-nv},
+@code{read-pixel-data-range-length-nv},
+@code{write-pixel-data-range-pointer-nv},
+@code{read-pixel-data-range-pointer-nv}.
+
+@end defmac
+
+@defmac arb-gpu-shader-5 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{geometry-shader-invocations},
+@code{max-geometry-shader-invocations},
+@code{min-fragment-interpolation-offset},
+@code{max-fragment-interpolation-offset},
+@code{fragment-interpolation-offset-bits}.
+
+@end defmac
+
+@defmac nv-float-buffer enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{float-r-nv}, @code{float-rg-nv}, @code{float-rgb-nv},
+@code{float-rgba-nv}, @code{float-r16-nv}, @code{float-r32-nv},
+@code{float-rg16-nv}, @code{float-rg32-nv}, @code{float-rgb16-nv},
+@code{float-rgb32-nv}, @code{float-rgba16-nv}, @code{float-rgba32-nv},
+@code{texture-float-components-nv}, @code{float-clear-color-value-nv},
+@code{float-rgba-mode-nv}.
+
+@end defmac
+
+@defmac nv-texture-expand-normal enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-unsigned-remap-mode-nv}.
+
+@end defmac
+
+@defmac ext-depth-bounds-test enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{depth-bounds-test-ext}, @code{depth-bounds-ext}.
+
+@end defmac
+
+@defmac oes-mapbuffer enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{write-only-oes}, @code{buffer-access-oes},
+@code{buffer-mapped-oes}, @code{buffer-map-pointer-oes}.
+
+@end defmac
+
+@defmac nv-shader-buffer-store enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{read-write}, @code{write-only},
+@code{shader-global-access-barrier-bit-nv}.
+
+@end defmac
+
+@defmac arb-timer-query enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{time-elapsed}, @code{timestamp}.
+
+@end defmac
+
+@defmac ext-timer-query enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{time-elapsed-ext}.
+
+@end defmac
+
+@defmac arb-pixel-buffer-object enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{pixel-pack-buffer-arb}, @code{pixel-unpack-buffer-arb},
+@code{pixel-pack-buffer-binding-arb},
+@code{pixel-unpack-buffer-binding-arb}.
+
+@end defmac
+
+@defmac ext-pixel-buffer-object enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{pixel-pack-buffer-ext}, @code{pixel-unpack-buffer-ext},
+@code{pixel-pack-buffer-binding-ext},
+@code{pixel-unpack-buffer-binding-ext}.
+
+@end defmac
+
+@defmac nv-s-rgb-formats enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{etc1-srgb8-nv}, @code{srgb8-nv}, @code{sluminance-alpha-nv},
+@code{sluminance8-alpha8-nv}, @code{sluminance-nv},
+@code{sluminance8-nv}, @code{compressed-srgb-s3tc-dxt1-nv},
+@code{compressed-srgb-alpha-s3tc-dxt1-nv},
+@code{compressed-srgb-alpha-s3tc-dxt3-nv},
+@code{compressed-srgb-alpha-s3tc-dxt5-nv}.
+
+@end defmac
+
+@defmac ext-stencil-clear-tag enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{stencil-tag-bits-ext}, @code{stencil-clear-tag-value-ext}.
+
+@end defmac
+
+@defmac nv-vertex-program-2-option enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{max-program-exec-instructions-nv},
+@code{max-program-call-depth-nv}.
+
+@end defmac
+
+@defmac nv-fragment-program-2 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{max-program-exec-instructions-nv},
+@code{max-program-call-depth-nv}, @code{max-program-if-depth-nv},
+@code{max-program-loop-depth-nv}, @code{max-program-loop-count-nv}.
+
+@end defmac
+
+@defmac arb-blend-func-extended enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{src1-color}, @code{one-minus-src1-color},
+@code{one-minus-src1-alpha}, @code{max-dual-source-draw-buffers}.
+
+@end defmac
+
+@defmac nv-vertex-program-4 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{vertex-attrib-array-integer-nv}.
+
+@end defmac
+
+@defmac version-3-3 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{vertex-attrib-array-divisor}.
+
+@end defmac
+
+@defmac arb-instanced-arrays enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{vertex-attrib-array-divisor-arb}.
+
+@end defmac
+
+@defmac angle-instanced-arrays enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{vertex-attrib-array-divisor-angle}.
+
+@end defmac
+
+@defmac nv-instanced-arrays enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{vertex-attrib-array-divisor-nv}.
+
+@end defmac
+
+@defmac nv-gpu-program-4 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{min-program-texel-offset-nv}, @code{max-program-texel-offset-nv},
+@code{program-attrib-components-nv},
+@code{program-result-components-nv},
+@code{max-program-attrib-components-nv},
+@code{max-program-result-components-nv},
+@code{max-program-generic-attribs-nv},
+@code{max-program-generic-results-nv}.
+
+@end defmac
+
+@defmac ext-stencil-two-side enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{stencil-test-two-side-ext}, @code{active-stencil-face-ext}.
+
+@end defmac
+
+@defmac arb-sampler-objects enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{sampler-binding}.
+
+@end defmac
+
+@defmac ati-fragment-shader enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{fragment-shader-ati}, @code{reg-0-ati}, @code{reg-1-ati},
+@code{reg-2-ati}, @code{reg-3-ati}, @code{reg-4-ati}, @code{reg-5-ati},
+@code{reg-6-ati}, @code{reg-7-ati}, @code{reg-8-ati}, @code{reg-9-ati},
+@code{reg-10-ati}, @code{reg-11-ati}, @code{reg-12-ati},
+@code{reg-13-ati}, @code{reg-14-ati}, @code{reg-15-ati},
+@code{reg-16-ati}, @code{reg-17-ati}, @code{reg-18-ati},
+@code{reg-19-ati}, @code{reg-20-ati}, @code{reg-21-ati},
+@code{reg-22-ati}, @code{reg-23-ati}, @code{reg-24-ati},
+@code{reg-25-ati}, @code{reg-26-ati}, @code{reg-27-ati},
+@code{reg-28-ati}, @code{reg-29-ati}, @code{reg-30-ati},
+@code{reg-31-ati}, @code{con-0-ati}, @code{con-1-ati}, @code{con-2-ati},
+@code{con-3-ati}, @code{con-4-ati}, @code{con-5-ati}, @code{con-6-ati},
+@code{con-7-ati}, @code{con-8-ati}, @code{con-9-ati}, @code{con-10-ati},
+@code{con-11-ati}, @code{con-12-ati}, @code{con-13-ati},
+@code{con-14-ati}, @code{con-15-ati}, @code{con-16-ati},
+@code{con-17-ati}, @code{con-18-ati}, @code{con-19-ati},
+@code{con-20-ati}, @code{con-21-ati}, @code{con-22-ati},
+@code{con-23-ati}, @code{con-24-ati}, @code{con-25-ati},
+@code{con-26-ati}, @code{con-27-ati}, @code{con-28-ati},
+@code{con-29-ati}, @code{con-30-ati}, @code{con-31-ati}, @code{mov-ati},
+@code{add-ati}, @code{mul-ati}, @code{sub-ati}, @code{dot3-ati},
+@code{dot4-ati}, @code{mad-ati}, @code{lerp-ati}, @code{cnd-ati},
+@code{cnd0-ati}, @code{dot2-add-ati}, @code{secondary-interpolator-ati},
+@code{num-fragment-registers-ati}, @code{num-fragment-constants-ati},
+@code{num-passes-ati}, @code{num-instructions-per-pass-ati},
+@code{num-instructions-total-ati},
+@code{num-input-interpolator-components-ati},
+@code{num-loopback-components-ati}, @code{color-alpha-pairing-ati},
+@code{swizzle-str-ati}, @code{swizzle-stq-ati},
+@code{swizzle-str-dr-ati}, @code{swizzle-stq-dq-ati},
+@code{swizzle-strq-ati}, @code{swizzle-strq-dq-ati}, @code{red-bit-ati},
+@code{green-bit-ati}, @code{blue-bit-ati}, @code{2x-bit-ati},
+@code{4x-bit-ati}, @code{8x-bit-ati}, @code{half-bit-ati},
+@code{quarter-bit-ati}, @code{eighth-bit-ati}, @code{saturate-bit-ati},
+@code{2x-bit-ati}, @code{comp-bit-ati}, @code{negate-bit-ati},
+@code{bias-bit-ati}.
+
+@end defmac
+
+@defmac oml-interlace enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{interlace-oml}, @code{interlace-read-oml}.
+
+@end defmac
+
+@defmac oml-subsample enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{format-subsample-24-24-oml}, @code{format-subsample-244-244-oml}.
+
+@end defmac
+
+@defmac oml-resample enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{pack-resample-oml}, @code{unpack-resample-oml},
+@code{resample-replicate-oml}, @code{resample-zero-fill-oml},
+@code{resample-average-oml}, @code{resample-decimate-oml}.
+
+@end defmac
+
+@defmac oes-point-size-array enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{point-size-array-type-oes}, @code{point-size-array-stride-oes},
+@code{point-size-array-pointer-oes}, @code{point-size-array-oes},
+@code{point-size-array-buffer-binding-oes}.
+
+@end defmac
+
+@defmac oes-matrix-get enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{modelview-matrix-float-as-int-bits-oes},
+@code{projection-matrix-float-as-int-bits-oes},
+@code{texture-matrix-float-as-int-bits-oes}.
+
+@end defmac
+
+@defmac apple-vertex-program-evaluators enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{vertex-attrib-map1-apple}, @code{vertex-attrib-map2-apple},
+@code{vertex-attrib-map1-size-apple},
+@code{vertex-attrib-map1-coeff-apple},
+@code{vertex-attrib-map1-order-apple},
+@code{vertex-attrib-map1-domain-apple},
+@code{vertex-attrib-map2-size-apple},
+@code{vertex-attrib-map2-coeff-apple},
+@code{vertex-attrib-map2-order-apple},
+@code{vertex-attrib-map2-domain-apple}.
+
+@end defmac
+
+@defmac apple-fence enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{draw-pixels-apple}, @code{fence-apple}.
+
+@end defmac
+
+@defmac apple-element-array enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{element-array-apple}, @code{element-array-type-apple},
+@code{element-array-pointer-apple}.
+
+@end defmac
+
+@defmac arb-uniform-buffer-object enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{uniform-buffer}, @code{uniform-buffer-binding},
+@code{uniform-buffer-start}, @code{uniform-buffer-size},
+@code{max-vertex-uniform-blocks}, @code{max-geometry-uniform-blocks},
+@code{max-fragment-uniform-blocks}, @code{max-combined-uniform-blocks},
+@code{max-uniform-buffer-bindings}, @code{max-uniform-block-size},
+@code{max-combined-vertex-uniform-components},
+@code{max-combined-geometry-uniform-components},
+@code{max-combined-fragment-uniform-components},
+@code{uniform-buffer-offset-alignment},
+@code{active-uniform-block-max-name-length},
+@code{active-uniform-blocks}, @code{uniform-type}, @code{uniform-size},
+@code{uniform-name-length}, @code{uniform-block-index},
+@code{uniform-offset}, @code{uniform-array-stride},
+@code{uniform-matrix-stride}, @code{uniform-is-row-major},
+@code{uniform-block-binding}, @code{uniform-block-data-size},
+@code{uniform-block-name-length}, @code{uniform-block-active-uniforms},
+@code{uniform-block-active-uniform-indices},
+@code{uniform-block-referenced-by-vertex-shader},
+@code{uniform-block-referenced-by-geometry-shader},
+@code{uniform-block-referenced-by-fragment-shader},
+@code{invalid-index}.
+
+@end defmac
+
+@defmac apple-flush-buffer-range enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{buffer-serialized-modify-apple},
+@code{buffer-flushing-unmap-apple}.
+
+@end defmac
+
+@defmac apple-aux-depth-stencil enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{aux-depth-stencil-apple}.
+
+@end defmac
+
+@defmac apple-row-bytes enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{pack-row-bytes-apple}, @code{unpack-row-bytes-apple}.
+
+@end defmac
+
+@defmac apple-rgb-422 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{rgb-422-apple}, @code{unsigned-short-8-8-apple},
+@code{unsigned-short-8-8-rev-apple}.
+
+@end defmac
+
+@defmac ext-texture-s-rgb-decode enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-srgb-decode-ext}, @code{decode-ext},
+@code{skip-decode-ext}.
+
+@end defmac
+
+@defmac ext-debug-label enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{program-pipeline-object-ext}, @code{program-object-ext},
+@code{shader-object-ext}, @code{buffer-object-ext},
+@code{query-object-ext}, @code{vertex-array-object-ext}.
+
+@end defmac
+
+@defmac ext-shader-framebuffer-fetch enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{fragment-shader-discards-samples-ext}.
+
+@end defmac
+
+@defmac apple-sync enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{sync-object-apple}, @code{max-server-wait-timeout-apple},
+@code{object-type-apple}, @code{sync-condition-apple},
+@code{sync-status-apple}, @code{sync-flags-apple},
+@code{sync-fence-apple}, @code{sync-gpu-commands-complete-apple},
+@code{unsignaled-apple}, @code{signaled-apple},
+@code{already-signaled-apple}, @code{timeout-expired-apple},
+@code{condition-satisfied-apple}, @code{wait-failed-apple},
+@code{sync-flush-commands-bit-apple}, @code{timeout-ignored-apple}.
+
+@end defmac
+
+@defmac arb-shader-objects enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{fragment-shader}, @code{fragment-shader-arb},
+@code{vertex-shader}, @code{vertex-shader-arb},
+@code{program-object-arb}, @code{shader-object-arb},
+@code{max-fragment-uniform-components},
+@code{max-fragment-uniform-components-arb},
+@code{max-vertex-uniform-components},
+@code{max-vertex-uniform-components-arb}, @code{max-varying-floats},
+@code{max-varying-floats-arb}, @code{max-vertex-texture-image-units},
+@code{max-vertex-texture-image-units-arb},
+@code{max-combined-texture-image-units},
+@code{max-combined-texture-image-units-arb}, @code{object-type-arb},
+@code{shader-type}, @code{object-subtype-arb}, @code{float-vec2},
+@code{float-vec2-arb}, @code{float-vec3}, @code{float-vec3-arb},
+@code{float-vec4}, @code{float-vec4-arb}, @code{int-vec2},
+@code{int-vec2-arb}, @code{int-vec3}, @code{int-vec3-arb},
+@code{int-vec4}, @code{int-vec4-arb}, @code{bool}, @code{bool-arb},
+@code{bool-vec2}, @code{bool-vec2-arb}, @code{bool-vec3},
+@code{bool-vec3-arb}, @code{bool-vec4}, @code{bool-vec4-arb},
+@code{float-mat2}, @code{float-mat2-arb}, @code{float-mat3},
+@code{float-mat3-arb}, @code{float-mat4}, @code{float-mat4-arb},
+@code{sampler-1d}, @code{sampler-1d-arb}, @code{sampler-2d},
+@code{sampler-2d-arb}, @code{sampler-3d}, @code{sampler-3d-arb},
+@code{sampler-cube}, @code{sampler-cube-arb}, @code{sampler-1d-shadow},
+@code{sampler-1d-shadow-arb}, @code{sampler-2d-shadow},
+@code{sampler-2d-shadow-arb}, @code{sampler-2d-rect-arb},
+@code{sampler-2d-rect-shadow-arb}, @code{float-mat-2x-3},
+@code{float-mat-2x-4}, @code{float-mat-3x-2}, @code{float-mat-3x-4},
+@code{float-mat-4x-2}, @code{float-mat-4x-3}, @code{delete-status},
+@code{object-delete-status-arb}, @code{compile-status},
+@code{object-compile-status-arb}, @code{link-status},
+@code{object-link-status-arb}, @code{validate-status},
+@code{object-validate-status-arb}, @code{info-log-length},
+@code{object-info-log-length-arb}, @code{attached-shaders},
+@code{object-attached-objects-arb}, @code{active-uniforms},
+@code{object-active-uniforms-arb}, @code{active-uniform-max-length},
+@code{object-active-uniform-max-length-arb},
+@code{shader-source-length}, @code{object-shader-source-length-arb},
+@code{active-attributes}, @code{object-active-attributes-arb},
+@code{active-attribute-max-length},
+@code{object-active-attribute-max-length-arb},
+@code{fragment-shader-derivative-hint},
+@code{fragment-shader-derivative-hint-arb},
+@code{shading-language-version}, @code{shading-language-version-arb}.
+
+@end defmac
+
+@defmac arb-vertex-shader enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{fragment-shader}, @code{fragment-shader-arb},
+@code{vertex-shader}, @code{vertex-shader-arb},
+@code{program-object-arb}, @code{shader-object-arb},
+@code{max-fragment-uniform-components},
+@code{max-fragment-uniform-components-arb},
+@code{max-vertex-uniform-components},
+@code{max-vertex-uniform-components-arb}, @code{max-varying-floats},
+@code{max-varying-floats-arb}, @code{max-vertex-texture-image-units},
+@code{max-vertex-texture-image-units-arb},
+@code{max-combined-texture-image-units},
+@code{max-combined-texture-image-units-arb}, @code{object-type-arb},
+@code{shader-type}, @code{object-subtype-arb}, @code{float-vec2},
+@code{float-vec2-arb}, @code{float-vec3}, @code{float-vec3-arb},
+@code{float-vec4}, @code{float-vec4-arb}, @code{int-vec2},
+@code{int-vec2-arb}, @code{int-vec3}, @code{int-vec3-arb},
+@code{int-vec4}, @code{int-vec4-arb}, @code{bool}, @code{bool-arb},
+@code{bool-vec2}, @code{bool-vec2-arb}, @code{bool-vec3},
+@code{bool-vec3-arb}, @code{bool-vec4}, @code{bool-vec4-arb},
+@code{float-mat2}, @code{float-mat2-arb}, @code{float-mat3},
+@code{float-mat3-arb}, @code{float-mat4}, @code{float-mat4-arb},
+@code{sampler-1d}, @code{sampler-1d-arb}, @code{sampler-2d},
+@code{sampler-2d-arb}, @code{sampler-3d}, @code{sampler-3d-arb},
+@code{sampler-cube}, @code{sampler-cube-arb}, @code{sampler-1d-shadow},
+@code{sampler-1d-shadow-arb}, @code{sampler-2d-shadow},
+@code{sampler-2d-shadow-arb}, @code{sampler-2d-rect-arb},
+@code{sampler-2d-rect-shadow-arb}, @code{float-mat-2x-3},
+@code{float-mat-2x-4}, @code{float-mat-3x-2}, @code{float-mat-3x-4},
+@code{float-mat-4x-2}, @code{float-mat-4x-3}, @code{delete-status},
+@code{object-delete-status-arb}, @code{compile-status},
+@code{object-compile-status-arb}, @code{link-status},
+@code{object-link-status-arb}, @code{validate-status},
+@code{object-validate-status-arb}, @code{info-log-length},
+@code{object-info-log-length-arb}, @code{attached-shaders},
+@code{object-attached-objects-arb}, @code{active-uniforms},
+@code{object-active-uniforms-arb}, @code{active-uniform-max-length},
+@code{object-active-uniform-max-length-arb},
+@code{shader-source-length}, @code{object-shader-source-length-arb},
+@code{active-attributes}, @code{object-active-attributes-arb},
+@code{active-attribute-max-length},
+@code{object-active-attribute-max-length-arb},
+@code{fragment-shader-derivative-hint},
+@code{fragment-shader-derivative-hint-arb},
+@code{shading-language-version}, @code{shading-language-version-arb}.
+
+@end defmac
+
+@defmac arb-fragment-shader enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{fragment-shader}, @code{fragment-shader-arb},
+@code{vertex-shader}, @code{vertex-shader-arb},
+@code{program-object-arb}, @code{shader-object-arb},
+@code{max-fragment-uniform-components},
+@code{max-fragment-uniform-components-arb},
+@code{max-vertex-uniform-components},
+@code{max-vertex-uniform-components-arb}, @code{max-varying-floats},
+@code{max-varying-floats-arb}, @code{max-vertex-texture-image-units},
+@code{max-vertex-texture-image-units-arb},
+@code{max-combined-texture-image-units},
+@code{max-combined-texture-image-units-arb}, @code{object-type-arb},
+@code{shader-type}, @code{object-subtype-arb}, @code{float-vec2},
+@code{float-vec2-arb}, @code{float-vec3}, @code{float-vec3-arb},
+@code{float-vec4}, @code{float-vec4-arb}, @code{int-vec2},
+@code{int-vec2-arb}, @code{int-vec3}, @code{int-vec3-arb},
+@code{int-vec4}, @code{int-vec4-arb}, @code{bool}, @code{bool-arb},
+@code{bool-vec2}, @code{bool-vec2-arb}, @code{bool-vec3},
+@code{bool-vec3-arb}, @code{bool-vec4}, @code{bool-vec4-arb},
+@code{float-mat2}, @code{float-mat2-arb}, @code{float-mat3},
+@code{float-mat3-arb}, @code{float-mat4}, @code{float-mat4-arb},
+@code{sampler-1d}, @code{sampler-1d-arb}, @code{sampler-2d},
+@code{sampler-2d-arb}, @code{sampler-3d}, @code{sampler-3d-arb},
+@code{sampler-cube}, @code{sampler-cube-arb}, @code{sampler-1d-shadow},
+@code{sampler-1d-shadow-arb}, @code{sampler-2d-shadow},
+@code{sampler-2d-shadow-arb}, @code{sampler-2d-rect-arb},
+@code{sampler-2d-rect-shadow-arb}, @code{float-mat-2x-3},
+@code{float-mat-2x-4}, @code{float-mat-3x-2}, @code{float-mat-3x-4},
+@code{float-mat-4x-2}, @code{float-mat-4x-3}, @code{delete-status},
+@code{object-delete-status-arb}, @code{compile-status},
+@code{object-compile-status-arb}, @code{link-status},
+@code{object-link-status-arb}, @code{validate-status},
+@code{object-validate-status-arb}, @code{info-log-length},
+@code{object-info-log-length-arb}, @code{attached-shaders},
+@code{object-attached-objects-arb}, @code{active-uniforms},
+@code{object-active-uniforms-arb}, @code{active-uniform-max-length},
+@code{object-active-uniform-max-length-arb},
+@code{shader-source-length}, @code{object-shader-source-length-arb},
+@code{active-attributes}, @code{object-active-attributes-arb},
+@code{active-attribute-max-length},
+@code{object-active-attribute-max-length-arb},
+@code{fragment-shader-derivative-hint},
+@code{fragment-shader-derivative-hint-arb},
+@code{shading-language-version}, @code{shading-language-version-arb}.
+
+@end defmac
+
+@defmac nv-vertex-program-3 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{fragment-shader}, @code{fragment-shader-arb},
+@code{vertex-shader}, @code{vertex-shader-arb},
+@code{program-object-arb}, @code{shader-object-arb},
+@code{max-fragment-uniform-components},
+@code{max-fragment-uniform-components-arb},
+@code{max-vertex-uniform-components},
+@code{max-vertex-uniform-components-arb}, @code{max-varying-floats},
+@code{max-varying-floats-arb}, @code{max-vertex-texture-image-units},
+@code{max-vertex-texture-image-units-arb},
+@code{max-combined-texture-image-units},
+@code{max-combined-texture-image-units-arb}, @code{object-type-arb},
+@code{shader-type}, @code{object-subtype-arb}, @code{float-vec2},
+@code{float-vec2-arb}, @code{float-vec3}, @code{float-vec3-arb},
+@code{float-vec4}, @code{float-vec4-arb}, @code{int-vec2},
+@code{int-vec2-arb}, @code{int-vec3}, @code{int-vec3-arb},
+@code{int-vec4}, @code{int-vec4-arb}, @code{bool}, @code{bool-arb},
+@code{bool-vec2}, @code{bool-vec2-arb}, @code{bool-vec3},
+@code{bool-vec3-arb}, @code{bool-vec4}, @code{bool-vec4-arb},
+@code{float-mat2}, @code{float-mat2-arb}, @code{float-mat3},
+@code{float-mat3-arb}, @code{float-mat4}, @code{float-mat4-arb},
+@code{sampler-1d}, @code{sampler-1d-arb}, @code{sampler-2d},
+@code{sampler-2d-arb}, @code{sampler-3d}, @code{sampler-3d-arb},
+@code{sampler-cube}, @code{sampler-cube-arb}, @code{sampler-1d-shadow},
+@code{sampler-1d-shadow-arb}, @code{sampler-2d-shadow},
+@code{sampler-2d-shadow-arb}, @code{sampler-2d-rect-arb},
+@code{sampler-2d-rect-shadow-arb}, @code{float-mat-2x-3},
+@code{float-mat-2x-4}, @code{float-mat-3x-2}, @code{float-mat-3x-4},
+@code{float-mat-4x-2}, @code{float-mat-4x-3}, @code{delete-status},
+@code{object-delete-status-arb}, @code{compile-status},
+@code{object-compile-status-arb}, @code{link-status},
+@code{object-link-status-arb}, @code{validate-status},
+@code{object-validate-status-arb}, @code{info-log-length},
+@code{object-info-log-length-arb}, @code{attached-shaders},
+@code{object-attached-objects-arb}, @code{active-uniforms},
+@code{object-active-uniforms-arb}, @code{active-uniform-max-length},
+@code{object-active-uniform-max-length-arb},
+@code{shader-source-length}, @code{object-shader-source-length-arb},
+@code{active-attributes}, @code{object-active-attributes-arb},
+@code{active-attribute-max-length},
+@code{object-active-attribute-max-length-arb},
+@code{fragment-shader-derivative-hint},
+@code{fragment-shader-derivative-hint-arb},
+@code{shading-language-version}, @code{shading-language-version-arb}.
+
+@end defmac
+
+@defmac oes-standard-derivatives enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{fragment-shader-derivative-hint-oes}.
+
+@end defmac
+
+@defmac ext-geometry-shader-4 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{max-varying-components-ext}, @code{geometry-shader-ext},
+@code{max-geometry-varying-components-ext},
+@code{max-vertex-varying-components-ext},
+@code{max-geometry-uniform-components-ext},
+@code{max-geometry-output-vertices-ext},
+@code{max-geometry-total-output-components-ext}.
+
+@end defmac
+
+@defmac oes-compressed-paletted-texture enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{palette4-rgb8-oes}, @code{palette4-rgba8-oes},
+@code{palette4-r5-g6-b5-oes}, @code{palette4-rgba4-oes},
+@code{palette4-rgb5-a1-oes}, @code{palette8-rgb8-oes},
+@code{palette8-rgba8-oes}, @code{palette8-r5-g6-b5-oes},
+@code{palette8-rgba4-oes}, @code{palette8-rgb5-a1-oes}.
+
+@end defmac
+
+@defmac oes-read-format enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{implementation-color-read-type-oes},
+@code{implementation-color-read-format-oes}.
+
+@end defmac
+
+@defmac oes-draw-texture enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-crop-rect-oes}.
+
+@end defmac
+
+@defmac mesa-program-debug enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{fragment-program-position-mesa},
+@code{fragment-program-callback-mesa},
+@code{fragment-program-callback-func-mesa},
+@code{fragment-program-callback-data-mesa},
+@code{vertex-program-callback-mesa},
+@code{vertex-program-position-mesa},
+@code{vertex-program-callback-func-mesa},
+@code{vertex-program-callback-data-mesa}.
+
+@end defmac
+
+@defmac amd-performance-monitor enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{counter-type-amd}, @code{counter-range-amd},
+@code{unsigned-int64-amd}, @code{percentage-amd},
+@code{perfmon-result-available-amd}, @code{perfmon-result-size-amd},
+@code{perfmon-result-amd}.
+
+@end defmac
+
+@defmac qcom-extended-get enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-width-qcom}, @code{texture-height-qcom},
+@code{texture-depth-qcom}, @code{texture-internal-format-qcom},
+@code{texture-format-qcom}, @code{texture-type-qcom},
+@code{texture-image-valid-qcom}, @code{texture-num-levels-qcom},
+@code{texture-target-qcom}, @code{texture-object-valid-qcom},
+@code{state-restore}.
+
+@end defmac
+
+@defmac img-texture-compression-pvrtc enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{compressed-rgb-pvrtc-4bppv1-img},
+@code{compressed-rgb-pvrtc-2bppv1-img},
+@code{compressed-rgba-pvrtc-4bppv1-img},
+@code{compressed-rgba-pvrtc-2bppv1-img}.
+
+@end defmac
+
+@defmac img-shader-binary enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{sgx-binary-img}.
+
+@end defmac
+
+@defmac arb-texture-buffer-object enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-buffer-arb}, @code{max-texture-buffer-size-arb},
+@code{texture-binding-buffer-arb},
+@code{texture-buffer-data-store-binding-arb},
+@code{texture-buffer-format-arb}.
+
+@end defmac
+
+@defmac ext-texture-buffer-object enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-buffer-ext}, @code{max-texture-buffer-size-ext},
+@code{texture-binding-buffer-ext},
+@code{texture-buffer-data-store-binding-ext},
+@code{texture-buffer-format-ext}.
+
+@end defmac
+
+@defmac arb-occlusion-query-2 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{any-samples-passed}.
+
+@end defmac
+
+@defmac arb-sample-shading enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{sample-shading-arb}, @code{min-sample-shading-value-arb}.
+
+@end defmac
+
+@defmac ext-packed-float enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{r11f-g11f-b10f-ext}, @code{unsigned-int-10f-11f-11f-rev-ext},
+@code{rgba-signed-components-ext}.
+
+@end defmac
+
+@defmac ext-texture-shared-exponent enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{rgb9-e5-ext}, @code{unsigned-int-5-9-9-9-rev-ext},
+@code{texture-shared-size-ext}.
+
+@end defmac
+
+@defmac ext-texture-s-rgb enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{srgb-ext}, @code{srgb8-ext}, @code{srgb-alpha-ext},
+@code{srgb8-alpha8-ext}, @code{sluminance-alpha-ext},
+@code{sluminance8-alpha8-ext}, @code{sluminance-ext},
+@code{sluminance8-ext}, @code{compressed-srgb-ext},
+@code{compressed-srgb-alpha-ext}, @code{compressed-sluminance-ext},
+@code{compressed-sluminance-alpha-ext},
+@code{compressed-srgb-s3tc-dxt1-ext},
+@code{compressed-srgb-alpha-s3tc-dxt1-ext},
+@code{compressed-srgb-alpha-s3tc-dxt3-ext},
+@code{compressed-srgb-alpha-s3tc-dxt5-ext}.
+
+@end defmac
+
+@defmac ext-texture-compression-latc enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{compressed-luminance-latc1-ext},
+@code{compressed-signed-luminance-latc1-ext},
+@code{compressed-luminance-alpha-latc2-ext},
+@code{compressed-signed-luminance-alpha-latc2-ext}.
+
+@end defmac
+
+@defmac ext-transform-feedback enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{transform-feedback-varying-max-length},
+@code{transform-feedback-varying-max-length-ext},
+@code{back-primary-color-nv}, @code{back-secondary-color-nv},
+@code{texture-coord-nv}, @code{clip-distance-nv}, @code{vertex-id-nv},
+@code{primitive-id-nv}, @code{generic-attrib-nv},
+@code{transform-feedback-attribs-nv},
+@code{transform-feedback-buffer-mode},
+@code{transform-feedback-buffer-mode-ext},
+@code{transform-feedback-buffer-mode-nv},
+@code{max-transform-feedback-separate-components},
+@code{max-transform-feedback-separate-components-ext},
+@code{max-transform-feedback-separate-components-nv},
+@code{active-varyings-nv}, @code{active-varying-max-length-nv},
+@code{transform-feedback-varyings},
+@code{transform-feedback-varyings-ext},
+@code{transform-feedback-varyings-nv},
+@code{transform-feedback-buffer-start},
+@code{transform-feedback-buffer-start-ext},
+@code{transform-feedback-buffer-start-nv},
+@code{transform-feedback-buffer-size},
+@code{transform-feedback-buffer-size-ext},
+@code{transform-feedback-buffer-size-nv},
+@code{transform-feedback-record-nv}, @code{primitives-generated},
+@code{primitives-generated-ext}, @code{primitives-generated-nv},
+@code{transform-feedback-primitives-written},
+@code{transform-feedback-primitives-written-ext},
+@code{transform-feedback-primitives-written-nv},
+@code{rasterizer-discard}, @code{rasterizer-discard-ext},
+@code{rasterizer-discard-nv},
+@code{max-transform-feedback-interleaved-components},
+@code{max-transform-feedback-interleaved-components-ext},
+@code{max-transform-feedback-interleaved-components-nv},
+@code{max-transform-feedback-separate-attribs},
+@code{max-transform-feedback-separate-attribs-ext},
+@code{max-transform-feedback-separate-attribs-nv},
+@code{interleaved-attribs}, @code{interleaved-attribs-ext},
+@code{interleaved-attribs-nv}, @code{separate-attribs},
+@code{separate-attribs-ext}, @code{separate-attribs-nv},
+@code{transform-feedback-buffer}, @code{transform-feedback-buffer-ext},
+@code{transform-feedback-buffer-nv},
+@code{transform-feedback-buffer-binding},
+@code{transform-feedback-buffer-binding-ext},
+@code{transform-feedback-buffer-binding-nv}.
+
+@end defmac
+
+@defmac nv-transform-feedback enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{transform-feedback-varying-max-length},
+@code{transform-feedback-varying-max-length-ext},
+@code{back-primary-color-nv}, @code{back-secondary-color-nv},
+@code{texture-coord-nv}, @code{clip-distance-nv}, @code{vertex-id-nv},
+@code{primitive-id-nv}, @code{generic-attrib-nv},
+@code{transform-feedback-attribs-nv},
+@code{transform-feedback-buffer-mode},
+@code{transform-feedback-buffer-mode-ext},
+@code{transform-feedback-buffer-mode-nv},
+@code{max-transform-feedback-separate-components},
+@code{max-transform-feedback-separate-components-ext},
+@code{max-transform-feedback-separate-components-nv},
+@code{active-varyings-nv}, @code{active-varying-max-length-nv},
+@code{transform-feedback-varyings},
+@code{transform-feedback-varyings-ext},
+@code{transform-feedback-varyings-nv},
+@code{transform-feedback-buffer-start},
+@code{transform-feedback-buffer-start-ext},
+@code{transform-feedback-buffer-start-nv},
+@code{transform-feedback-buffer-size},
+@code{transform-feedback-buffer-size-ext},
+@code{transform-feedback-buffer-size-nv},
+@code{transform-feedback-record-nv}, @code{primitives-generated},
+@code{primitives-generated-ext}, @code{primitives-generated-nv},
+@code{transform-feedback-primitives-written},
+@code{transform-feedback-primitives-written-ext},
+@code{transform-feedback-primitives-written-nv},
+@code{rasterizer-discard}, @code{rasterizer-discard-ext},
+@code{rasterizer-discard-nv},
+@code{max-transform-feedback-interleaved-components},
+@code{max-transform-feedback-interleaved-components-ext},
+@code{max-transform-feedback-interleaved-components-nv},
+@code{max-transform-feedback-separate-attribs},
+@code{max-transform-feedback-separate-attribs-ext},
+@code{max-transform-feedback-separate-attribs-nv},
+@code{interleaved-attribs}, @code{interleaved-attribs-ext},
+@code{interleaved-attribs-nv}, @code{separate-attribs},
+@code{separate-attribs-ext}, @code{separate-attribs-nv},
+@code{transform-feedback-buffer}, @code{transform-feedback-buffer-ext},
+@code{transform-feedback-buffer-nv},
+@code{transform-feedback-buffer-binding},
+@code{transform-feedback-buffer-binding-ext},
+@code{transform-feedback-buffer-binding-nv}, @code{layer-nv},
+@code{next-buffer-nv}, @code{skip-components4-nv},
+@code{skip-components3-nv}, @code{skip-components2-nv},
+@code{skip-components1-nv}.
+
+@end defmac
+
+@defmac ext-framebuffer-blit enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{draw-framebuffer-binding-ext}, @code{read-framebuffer-ext},
+@code{draw-framebuffer-ext}, @code{draw-framebuffer-binding-ext},
+@code{read-framebuffer-binding-ext}.
+
+@end defmac
+
+@defmac angle-framebuffer-blit enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{framebuffer-binding-angle}, @code{renderbuffer-binding-angle},
+@code{read-framebuffer-angle}, @code{draw-framebuffer-angle}.
+
+@end defmac
+
+@defmac nv-framebuffer-blit enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{read-framebuffer-nv}, @code{draw-framebuffer-nv},
+@code{draw-framebuffer-binding-nv}, @code{read-framebuffer-binding-nv}.
+
+@end defmac
+
+@defmac angle-framebuffer-multisample enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{renderbuffer-samples-angle},
+@code{framebuffer-incomplete-multisample-angle},
+@code{max-samples-angle}.
+
+@end defmac
+
+@defmac ext-framebuffer-multisample enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{renderbuffer-samples-ext},
+@code{framebuffer-incomplete-multisample-ext}, @code{max-samples-ext}.
+
+@end defmac
+
+@defmac nv-framebuffer-multisample enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{renderbuffer-samples-nv},
+@code{framebuffer-incomplete-multisample-nv}, @code{max-samples-nv}.
+
+@end defmac
+
+@defmac nv-framebuffer-multisample-coverage enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{renderbuffer-coverage-samples-nv},
+@code{renderbuffer-color-samples-nv},
+@code{max-multisample-coverage-modes-nv},
+@code{multisample-coverage-modes-nv}.
+
+@end defmac
+
+@defmac arb-depth-buffer-float enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{depth-component32f}, @code{depth32f-stencil8},
+@code{float-32-unsigned-int-24-8-rev}.
+
+@end defmac
+
+@defmac nv-fbo-color-attachments enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{max-color-attachments-nv}.
+
+@end defmac
+
+@defmac oes-stencil-1 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{stencil-index1-oes}.
+
+@end defmac
+
+@defmac oes-stencil-4 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{stencil-index4-oes}.
+
+@end defmac
+
+@defmac oes-stencil-8 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{stencil-index8-oes}.
+
+@end defmac
+
+@defmac oes-vertex-half-float enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{half-float-oes}.
+
+@end defmac
+
+@defmac version-4-1 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{rgb565}.
+
+@end defmac
+
+@defmac oes-compressed-etc1-rgb8-texture enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{etc1-rgb8-oes}.
+
+@end defmac
+
+@defmac oes-egl-image-external enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-external-oes}, @code{sampler-external-oes},
+@code{texture-binding-external-oes},
+@code{required-texture-image-units-oes}.
+
+@end defmac
+
+@defmac arb-es3-compatibility enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{primitive-restart-fixed-index},
+@code{any-samples-passed-conservative}, @code{max-element-index},
+@code{compressed-r11-eac}, @code{compressed-signed-r11-eac},
+@code{compressed-rg11-eac}, @code{compressed-signed-rg11-eac},
+@code{compressed-rgb8-etc2}, @code{compressed-srgb8-etc2},
+@code{compressed-rgb8-punchthrough-alpha1-etc2},
+@code{compressed-srgb8-punchthrough-alpha1-etc2},
+@code{compressed-rgba8-etc2-eac},
+@code{compressed-srgb8-alpha8-etc2-eac}.
+
+@end defmac
+
+@defmac ext-multisampled-render-to-texture enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{framebuffer-attachment-texture-samples-ext}.
+
+@end defmac
+
+@defmac ext-texture-integer enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{rgba32ui}, @code{rgba32ui-ext}, @code{rgb32ui},
+@code{rgb32ui-ext}, @code{alpha32ui-ext}, @code{intensity32ui-ext},
+@code{luminance32ui-ext}, @code{luminance-alpha32ui-ext},
+@code{rgba16ui}, @code{rgba16ui-ext}, @code{rgb16ui},
+@code{rgb16ui-ext}, @code{alpha16ui-ext}, @code{intensity16ui-ext},
+@code{luminance16ui-ext}, @code{luminance-alpha16ui-ext},
+@code{rgba8ui}, @code{rgba8ui-ext}, @code{rgb8ui}, @code{rgb8ui-ext},
+@code{alpha8ui-ext}, @code{intensity8ui-ext}, @code{luminance8ui-ext},
+@code{luminance-alpha8ui-ext}, @code{rgba32i}, @code{rgba32i-ext},
+@code{rgb32i}, @code{rgb32i-ext}, @code{alpha32i-ext},
+@code{intensity32i-ext}, @code{luminance32i-ext},
+@code{luminance-alpha32i-ext}, @code{rgba16i}, @code{rgba16i-ext},
+@code{rgb16i}, @code{rgb16i-ext}, @code{alpha16i-ext},
+@code{intensity16i-ext}, @code{luminance16i-ext},
+@code{luminance-alpha16i-ext}, @code{rgba8i}, @code{rgba8i-ext},
+@code{rgb8i}, @code{rgb8i-ext}, @code{alpha8i-ext},
+@code{intensity8i-ext}, @code{luminance8i-ext},
+@code{luminance-alpha8i-ext}, @code{red-integer},
+@code{red-integer-ext}, @code{green-integer}, @code{green-integer-ext},
+@code{blue-integer}, @code{blue-integer-ext}, @code{alpha-integer},
+@code{alpha-integer-ext}, @code{rgb-integer}, @code{rgb-integer-ext},
+@code{rgba-integer}, @code{rgba-integer-ext}, @code{bgr-integer},
+@code{bgr-integer-ext}, @code{bgra-integer}, @code{bgra-integer-ext},
+@code{luminance-integer-ext}, @code{luminance-alpha-integer-ext},
+@code{rgba-integer-mode-ext}.
+
+@end defmac
+
+@defmac arb-vertex-type-2-10-10-10-rev enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{int-2-10-10-10-rev}.
+
+@end defmac
+
+@defmac nv-parameter-buffer-object enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{max-program-parameter-buffer-bindings-nv},
+@code{max-program-parameter-buffer-size-nv},
+@code{vertex-program-parameter-buffer-nv},
+@code{geometry-program-parameter-buffer-nv},
+@code{fragment-program-parameter-buffer-nv}.
+
+@end defmac
+
+@defmac nv-depth-buffer-float enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{depth-component32f-nv}, @code{depth32f-stencil8-nv},
+@code{float-32-unsigned-int-24-8-rev-nv},
+@code{depth-buffer-float-mode-nv}.
+
+@end defmac
+
+@defmac arb-shading-language-include enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{shader-include-arb}, @code{named-string-length-arb},
+@code{named-string-type-arb}.
+
+@end defmac
+
+@defmac arb-framebuffer-s-rgb enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{framebuffer-srgb}.
+
+@end defmac
+
+@defmac ext-framebuffer-s-rgb enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{framebuffer-srgb-ext}, @code{framebuffer-srgb-capable-ext}.
+
+@end defmac
+
+@defmac arb-texture-compression-rgtc enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{compressed-red-rgtc1}, @code{compressed-signed-red-rgtc1},
+@code{compressed-rg-rgtc2}, @code{compressed-signed-rg-rgtc2}.
+
+@end defmac
+
+@defmac ext-texture-compression-rgtc enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{compressed-red-rgtc1-ext}, @code{compressed-signed-red-rgtc1-ext},
+@code{compressed-red-green-rgtc2-ext},
+@code{compressed-signed-red-green-rgtc2-ext}.
+
+@end defmac
+
+@defmac ext-gpu-shader-4 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{sampler-1d-array-ext}, @code{sampler-2d-array-ext},
+@code{sampler-buffer-ext}, @code{sampler-1d-array-shadow-ext},
+@code{sampler-2d-array-shadow-ext}, @code{sampler-cube-shadow-ext},
+@code{unsigned-int-vec2-ext}, @code{unsigned-int-vec3-ext},
+@code{unsigned-int-vec4-ext}, @code{int-sampler-1d-ext},
+@code{int-sampler-2d-ext}, @code{int-sampler-3d-ext},
+@code{int-sampler-cube-ext}, @code{int-sampler-2d-rect-ext},
+@code{int-sampler-1d-array-ext}, @code{int-sampler-2d-array-ext},
+@code{int-sampler-buffer-ext}, @code{unsigned-int-sampler-1d-ext},
+@code{unsigned-int-sampler-2d-ext}, @code{unsigned-int-sampler-3d-ext},
+@code{unsigned-int-sampler-cube-ext},
+@code{unsigned-int-sampler-2d-rect-ext},
+@code{unsigned-int-sampler-1d-array-ext},
+@code{unsigned-int-sampler-2d-array-ext},
+@code{unsigned-int-sampler-buffer-ext}.
+
+@end defmac
+
+@defmac nv-shadow-samplers-array enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{sampler-2d-array-shadow-nv}.
+
+@end defmac
+
+@defmac nv-shadow-samplers-cube enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{sampler-cube-shadow-nv}.
+
+@end defmac
+
+@defmac ext-bindable-uniform enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{max-vertex-bindable-uniforms-ext},
+@code{max-fragment-bindable-uniforms-ext},
+@code{max-geometry-bindable-uniforms-ext},
+@code{max-bindable-uniform-size-ext}, @code{uniform-buffer-ext},
+@code{uniform-buffer-binding-ext}.
+
+@end defmac
+
+@defmac arb-shader-subroutine enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{active-subroutines}, @code{active-subroutine-uniforms},
+@code{max-subroutines}, @code{max-subroutine-uniform-locations},
+@code{active-subroutine-uniform-locations},
+@code{active-subroutine-max-length},
+@code{active-subroutine-uniform-max-length},
+@code{num-compatible-subroutines}, @code{compatible-subroutines}.
+
+@end defmac
+
+@defmac oes-vertex-type-10-10-10-2 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{unsigned-int-10-10-10-2-oes}, @code{int-10-10-10-2-oes}.
+
+@end defmac
+
+@defmac nv-conditional-render enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{query-wait-nv}, @code{query-no-wait-nv},
+@code{query-by-region-wait-nv}, @code{query-by-region-no-wait-nv}.
+
+@end defmac
+
+@defmac arb-transform-feedback-2 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{transform-feedback}, @code{transform-feedback-paused},
+@code{transform-feedback-buffer-paused},
+@code{transform-feedback-active},
+@code{transform-feedback-buffer-active},
+@code{transform-feedback-binding}.
+
+@end defmac
+
+@defmac nv-transform-feedback-2 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{transform-feedback-nv},
+@code{transform-feedback-buffer-paused-nv},
+@code{transform-feedback-buffer-active-nv},
+@code{transform-feedback-binding-nv}.
+
+@end defmac
+
+@defmac nv-present-video enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{frame-nv}, @code{fields-nv}, @code{current-time-nv},
+@code{num-fill-streams-nv}, @code{present-time-nv},
+@code{present-duration-nv}.
+
+@end defmac
+
+@defmac nv-depth-nonlinear enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{depth-component16-nonlinear-nv}.
+
+@end defmac
+
+@defmac ext-direct-state-access enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{program-matrix-ext}, @code{transpose-program-matrix-ext},
+@code{program-matrix-stack-depth-ext}.
+
+@end defmac
+
+@defmac arb-texture-swizzle enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-swizzle-r}, @code{texture-swizzle-g},
+@code{texture-swizzle-b}, @code{texture-swizzle-a},
+@code{texture-swizzle-rgba}.
+
+@end defmac
+
+@defmac ext-texture-swizzle enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-swizzle-r-ext}, @code{texture-swizzle-g-ext},
+@code{texture-swizzle-b-ext}, @code{texture-swizzle-a-ext},
+@code{texture-swizzle-rgba-ext}.
+
+@end defmac
+
+@defmac arb-provoking-vertex enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{quads-follow-provoking-vertex-convention},
+@code{first-vertex-convention}, @code{last-vertex-convention},
+@code{provoking-vertex}.
+
+@end defmac
+
+@defmac ext-provoking-vertex enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{quads-follow-provoking-vertex-convention-ext},
+@code{first-vertex-convention-ext}, @code{last-vertex-convention-ext},
+@code{provoking-vertex-ext}.
+
+@end defmac
+
+@defmac arb-texture-multisample enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{sample-position}, @code{sample-mask}, @code{sample-mask-value},
+@code{max-sample-mask-words}, @code{texture-2d-multisample},
+@code{proxy-texture-2d-multisample},
+@code{texture-2d-multisample-array},
+@code{proxy-texture-2d-multisample-array},
+@code{texture-binding-2d-multisample},
+@code{texture-binding-2d-multisample-array}, @code{texture-samples},
+@code{texture-fixed-sample-locations}, @code{sampler-2d-multisample},
+@code{int-sampler-2d-multisample},
+@code{unsigned-int-sampler-2d-multisample},
+@code{sampler-2d-multisample-array},
+@code{int-sampler-2d-multisample-array},
+@code{unsigned-int-sampler-2d-multisample-array},
+@code{max-color-texture-samples}, @code{max-depth-texture-samples},
+@code{max-integer-samples}.
+
+@end defmac
+
+@defmac nv-explicit-multisample enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{sample-position-nv}, @code{sample-mask-nv},
+@code{sample-mask-value-nv}, @code{texture-binding-renderbuffer-nv},
+@code{texture-renderbuffer-data-store-binding-nv},
+@code{texture-renderbuffer-nv}, @code{sampler-renderbuffer-nv},
+@code{int-sampler-renderbuffer-nv},
+@code{unsigned-int-sampler-renderbuffer-nv},
+@code{max-sample-mask-words-nv}.
+
+@end defmac
+
+@defmac nv-gpu-program-5 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{max-geometry-program-invocations-nv},
+@code{min-fragment-interpolation-offset-nv},
+@code{max-fragment-interpolation-offset-nv},
+@code{fragment-program-interpolation-offset-bits-nv},
+@code{min-program-texture-gather-offset-nv},
+@code{max-program-texture-gather-offset-nv},
+@code{max-program-subroutine-parameters-nv},
+@code{max-program-subroutine-num-nv}.
+
+@end defmac
+
+@defmac arb-texture-gather enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{min-program-texture-gather-offset},
+@code{max-program-texture-gather-offset},
+@code{max-program-texture-gather-components-arb},
+@code{max-program-texture-gather-components}.
+
+@end defmac
+
+@defmac arb-transform-feedback-3 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{max-transform-feedback-buffers}, @code{max-vertex-streams}.
+
+@end defmac
+
+@defmac arb-texture-compression-bptc enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{compressed-rgba-bptc-unorm-arb},
+@code{compressed-srgb-alpha-bptc-unorm-arb},
+@code{compressed-rgb-bptc-signed-float-arb},
+@code{compressed-rgb-bptc-unsigned-float-arb}.
+
+@end defmac
+
+@defmac nv-coverage-sample enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{coverage-component-nv}, @code{coverage-component4-nv},
+@code{coverage-attachment-nv}, @code{coverage-buffers-nv},
+@code{coverage-samples-nv}, @code{coverage-all-fragments-nv},
+@code{coverage-edge-fragments-nv}, @code{coverage-automatic-nv},
+@code{coverage-buffer-bit-nv}.
+
+@end defmac
+
+@defmac nv-shader-buffer-load enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{buffer-gpu-address-nv}, @code{gpu-address-nv},
+@code{max-shader-buffer-address-nv}.
+
+@end defmac
+
+@defmac nv-vertex-buffer-unified-memory enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{vertex-attrib-array-unified-nv}, @code{element-array-unified-nv},
+@code{vertex-attrib-array-address-nv}, @code{vertex-array-address-nv},
+@code{normal-array-address-nv}, @code{color-array-address-nv},
+@code{index-array-address-nv}, @code{texture-coord-array-address-nv},
+@code{edge-flag-array-address-nv},
+@code{secondary-color-array-address-nv},
+@code{fog-coord-array-address-nv}, @code{element-array-address-nv},
+@code{vertex-attrib-array-length-nv}, @code{vertex-array-length-nv},
+@code{normal-array-length-nv}, @code{color-array-length-nv},
+@code{index-array-length-nv}, @code{texture-coord-array-length-nv},
+@code{edge-flag-array-length-nv},
+@code{secondary-color-array-length-nv},
+@code{fog-coord-array-length-nv}, @code{element-array-length-nv},
+@code{draw-indirect-unified-nv}, @code{draw-indirect-address-nv},
+@code{draw-indirect-length-nv}.
+
+@end defmac
+
+@defmac arb-copy-buffer enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{copy-read-buffer-binding}, @code{copy-read-buffer},
+@code{copy-write-buffer-binding}, @code{copy-write-buffer}.
+
+@end defmac
+
+@defmac arb-draw-indirect enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{draw-indirect-buffer}, @code{draw-indirect-buffer-binding}.
+
+@end defmac
+
+@defmac arb-gpu-shader-fp-64 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{double-mat2}, @code{double-mat3}, @code{double-mat4},
+@code{double-mat-2x-3}, @code{double-mat-2x-4}, @code{double-mat-3x-2},
+@code{double-mat-3x-4}, @code{double-mat-4x-2}, @code{double-mat-4x-3},
+@code{double-vec2}, @code{double-vec3}, @code{double-vec4}.
+
+@end defmac
+
+@defmac arm-mali-shader-binary enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{mali-shader-binary-arm}.
+
+@end defmac
+
+@defmac qcom-driver-control enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{perfmon-global-mode-qcom}.
+
+@end defmac
+
+@defmac qcom-binning-control enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{binning-control-hint-qcom}, @code{cpu-optimized-qcom},
+@code{gpu-optimized-qcom}, @code{render-direct-to-framebuffer-qcom}.
+
+@end defmac
+
+@defmac viv-shader-binary enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{shader-binary-viv}.
+
+@end defmac
+
+@defmac amd-vertex-shader-tesselator enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{sampler-buffer-amd}, @code{int-sampler-buffer-amd},
+@code{unsigned-int-sampler-buffer-amd}, @code{tessellation-mode-amd},
+@code{tessellation-factor-amd}, @code{discrete-amd},
+@code{continuous-amd}.
+
+@end defmac
+
+@defmac arb-texture-cube-map-array enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-cube-map-array}, @code{texture-binding-cube-map-array},
+@code{proxy-texture-cube-map-array}, @code{sampler-cube-map-array},
+@code{sampler-cube-map-array-shadow}, @code{int-sampler-cube-map-array},
+@code{unsigned-int-sampler-cube-map-array}.
+
+@end defmac
+
+@defmac ext-texture-snorm enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{alpha-snorm}, @code{luminance-snorm},
+@code{luminance-alpha-snorm}, @code{intensity-snorm},
+@code{alpha8-snorm}, @code{luminance8-snorm},
+@code{luminance8-alpha8-snorm}, @code{intensity8-snorm},
+@code{alpha16-snorm}, @code{luminance16-snorm},
+@code{luminance16-alpha16-snorm}, @code{intensity16-snorm}.
+
+@end defmac
+
+@defmac amd-blend-minmax-factor enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{factor-min-amd}, @code{factor-max-amd}.
+
+@end defmac
+
+@defmac amd-depth-clamp-separate enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{depth-clamp-near-amd}, @code{depth-clamp-far-amd}.
+
+@end defmac
+
+@defmac nv-video-capture enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{video-buffer-nv}, @code{video-buffer-binding-nv},
+@code{field-upper-nv}, @code{field-lower-nv},
+@code{num-video-capture-streams-nv},
+@code{next-video-capture-buffer-status-nv},
+@code{video-capture-to-422-supported-nv},
+@code{last-video-capture-status-nv}, @code{video-buffer-pitch-nv},
+@code{video-color-conversion-matrix-nv},
+@code{video-color-conversion-max-nv},
+@code{video-color-conversion-min-nv},
+@code{video-color-conversion-offset-nv},
+@code{video-buffer-internal-format-nv}, @code{partial-success-nv},
+@code{success-nv}, @code{failure-nv}, @code{ycbycr8-422-nv},
+@code{ycbaycr8a-4224-nv}, @code{z6y10z6cb10z6y10z6cr10-422-nv},
+@code{z6y10z6cb10z6a10z6y10z6cr10z6a10-4224-nv},
+@code{z4y12z4cb12z4y12z4cr12-422-nv},
+@code{z4y12z4cb12z4a12z4y12z4cr12z4a12-4224-nv},
+@code{z4y12z4cb12z4cr12-444-nv}, @code{video-capture-frame-width-nv},
+@code{video-capture-frame-height-nv},
+@code{video-capture-field-upper-height-nv},
+@code{video-capture-field-lower-height-nv},
+@code{video-capture-surface-origin-nv}.
+
+@end defmac
+
+@defmac nv-texture-multisample enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-coverage-samples-nv}, @code{texture-color-samples-nv}.
+
+@end defmac
+
+@defmac arb-texture-rgb-10-a-2-ui enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{rgb10-a2ui}.
+
+@end defmac
+
+@defmac nv-path-rendering enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{path-format-svg-nv}, @code{path-format-ps-nv},
+@code{standard-font-name-nv}, @code{system-font-name-nv},
+@code{file-name-nv}, @code{path-stroke-width-nv},
+@code{path-end-caps-nv}, @code{path-initial-end-cap-nv},
+@code{path-terminal-end-cap-nv}, @code{path-join-style-nv},
+@code{path-miter-limit-nv}, @code{path-dash-caps-nv},
+@code{path-initial-dash-cap-nv}, @code{path-terminal-dash-cap-nv},
+@code{path-dash-offset-nv}, @code{path-client-length-nv},
+@code{path-fill-mode-nv}, @code{path-fill-mask-nv},
+@code{path-fill-cover-mode-nv}, @code{path-stroke-cover-mode-nv},
+@code{path-stroke-mask-nv}, @code{count-up-nv}, @code{count-down-nv},
+@code{path-object-bounding-box-nv}, @code{convex-hull-nv},
+@code{bounding-box-nv}, @code{translate-x-nv}, @code{translate-y-nv},
+@code{translate-2d-nv}, @code{translate-3d-nv}, @code{affine-2d-nv},
+@code{affine-3d-nv}, @code{transpose-affine-2d-nv},
+@code{transpose-affine-3d-nv}, @code{utf8-nv}, @code{utf16-nv},
+@code{bounding-box-of-bounding-boxes-nv}, @code{path-command-count-nv},
+@code{path-coord-count-nv}, @code{path-dash-array-count-nv},
+@code{path-computed-length-nv}, @code{path-fill-bounding-box-nv},
+@code{path-stroke-bounding-box-nv}, @code{square-nv}, @code{round-nv},
+@code{triangular-nv}, @code{bevel-nv}, @code{miter-revert-nv},
+@code{miter-truncate-nv}, @code{skip-missing-glyph-nv},
+@code{use-missing-glyph-nv}, @code{path-error-position-nv},
+@code{path-fog-gen-mode-nv}, @code{accum-adjacent-pairs-nv},
+@code{adjacent-pairs-nv}, @code{first-to-rest-nv},
+@code{path-gen-mode-nv}, @code{path-gen-coeff-nv},
+@code{path-gen-color-format-nv}, @code{path-gen-components-nv},
+@code{path-dash-offset-reset-nv}, @code{move-to-resets-nv},
+@code{move-to-continues-nv}, @code{path-stencil-func-nv},
+@code{path-stencil-ref-nv}, @code{path-stencil-value-mask-nv},
+@code{close-path-nv}, @code{move-to-nv}, @code{relative-move-to-nv},
+@code{line-to-nv}, @code{relative-line-to-nv},
+@code{horizontal-line-to-nv}, @code{relative-horizontal-line-to-nv},
+@code{vertical-line-to-nv}, @code{relative-vertical-line-to-nv},
+@code{quadratic-curve-to-nv}, @code{relative-quadratic-curve-to-nv},
+@code{cubic-curve-to-nv}, @code{relative-cubic-curve-to-nv},
+@code{smooth-quadratic-curve-to-nv},
+@code{relative-smooth-quadratic-curve-to-nv},
+@code{smooth-cubic-curve-to-nv},
+@code{relative-smooth-cubic-curve-to-nv}, @code{small-ccw-arc-to-nv},
+@code{relative-small-ccw-arc-to-nv}, @code{small-cw-arc-to-nv},
+@code{relative-small-cw-arc-to-nv}, @code{large-ccw-arc-to-nv},
+@code{relative-large-ccw-arc-to-nv}, @code{large-cw-arc-to-nv},
+@code{relative-large-cw-arc-to-nv}, @code{restart-path-nv},
+@code{dup-first-cubic-curve-to-nv}, @code{dup-last-cubic-curve-to-nv},
+@code{rect-nv}, @code{circular-ccw-arc-to-nv},
+@code{circular-cw-arc-to-nv}, @code{circular-tangent-arc-to-nv},
+@code{arc-to-nv}, @code{relative-arc-to-nv}, @code{bold-bit-nv},
+@code{italic-bit-nv}, @code{glyph-width-bit-nv},
+@code{glyph-height-bit-nv}, @code{glyph-horizontal-bearing-x-bit-nv},
+@code{glyph-horizontal-bearing-y-bit-nv},
+@code{glyph-horizontal-bearing-advance-bit-nv},
+@code{glyph-vertical-bearing-x-bit-nv},
+@code{glyph-vertical-bearing-y-bit-nv},
+@code{glyph-vertical-bearing-advance-bit-nv},
+@code{glyph-has-kerning-bit-nv}, @code{font-x-min-bounds-bit-nv},
+@code{font-y-min-bounds-bit-nv}, @code{font-x-max-bounds-bit-nv},
+@code{font-y-max-bounds-bit-nv}, @code{font-units-per-em-bit-nv},
+@code{font-ascender-bit-nv}, @code{font-descender-bit-nv},
+@code{font-height-bit-nv}, @code{font-max-advance-width-bit-nv},
+@code{font-max-advance-height-bit-nv},
+@code{font-underline-position-bit-nv},
+@code{font-underline-thickness-bit-nv}, @code{font-has-kerning-bit-nv},
+@code{path-stencil-depth-offset-factor-nv},
+@code{path-stencil-depth-offset-units-nv},
+@code{path-cover-depth-func-nv}.
+
+@end defmac
+
+@defmac ext-framebuffer-multisample-blit-scaled enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{scaled-resolve-fastest-ext}, @code{scaled-resolve-nicest-ext}.
+
+@end defmac
+
+@defmac arb-map-buffer-alignment enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{min-map-buffer-alignment}.
+
+@end defmac
+
+@defmac nv-deep-texture-3d enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{max-deep-3d-texture-width-height-nv},
+@code{max-deep-3d-texture-depth-nv}.
+
+@end defmac
+
+@defmac ext-x-11-sync-object enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{sync-x11-fence-ext}.
+
+@end defmac
+
+@defmac arb-stencil-texturing enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{depth-stencil-texture-mode}.
+
+@end defmac
+
+@defmac nv-compute-program-5 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{compute-program-nv}, @code{compute-program-parameter-buffer-nv}.
+
+@end defmac
+
+@defmac arb-sync enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{max-server-wait-timeout}, @code{object-type},
+@code{sync-condition}, @code{sync-status}, @code{sync-flags},
+@code{sync-fence}, @code{sync-gpu-commands-complete}, @code{unsignaled},
+@code{signaled}, @code{already-signaled}, @code{timeout-expired},
+@code{condition-satisfied}, @code{wait-failed},
+@code{sync-flush-commands-bit}, @code{timeout-ignored}.
+
+@end defmac
+
+@defmac arb-compressed-texture-pixel-storage enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{unpack-compressed-block-width},
+@code{unpack-compressed-block-height},
+@code{unpack-compressed-block-depth},
+@code{unpack-compressed-block-size}, @code{pack-compressed-block-width},
+@code{pack-compressed-block-height}, @code{pack-compressed-block-depth},
+@code{pack-compressed-block-size}.
+
+@end defmac
+
+@defmac arb-texture-storage enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-immutable-format}.
+
+@end defmac
+
+@defmac img-program-binary enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{sgx-program-binary-img}.
+
+@end defmac
+
+@defmac img-multisampled-render-to-texture enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{renderbuffer-samples-img},
+@code{framebuffer-incomplete-multisample-img}, @code{max-samples-img},
+@code{texture-samples-img}.
+
+@end defmac
+
+@defmac img-texture-compression-pvrtc-2 enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{compressed-rgba-pvrtc-2bppv2-img},
+@code{compressed-rgba-pvrtc-4bppv2-img}.
+
+@end defmac
+
+@defmac amd-debug-output enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{max-debug-message-length-amd},
+@code{max-debug-logged-messages-amd}, @code{debug-logged-messages-amd},
+@code{debug-severity-high-amd}, @code{debug-severity-medium-amd},
+@code{debug-severity-low-amd}, @code{debug-category-api-error-amd},
+@code{debug-category-window-system-amd},
+@code{debug-category-deprecation-amd},
+@code{debug-category-undefined-behavior-amd},
+@code{debug-category-performance-amd},
+@code{debug-category-shader-compiler-amd},
+@code{debug-category-application-amd}, @code{debug-category-other-amd}.
+
+@end defmac
+
+@defmac amd-name-gen-delete enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{data-buffer-amd}, @code{performance-monitor-amd},
+@code{query-object-amd}, @code{vertex-array-object-amd},
+@code{sampler-object-amd}.
+
+@end defmac
+
+@defmac amd-pinned-memory enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{external-virtual-memory-buffer-amd}.
+
+@end defmac
+
+@defmac amd-query-buffer-object enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{query-buffer-amd}, @code{query-buffer-binding-amd},
+@code{query-result-no-wait-amd}.
+
+@end defmac
+
+@defmac amd-sparse-texture enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{virtual-page-size-x-amd}, @code{virtual-page-size-y-amd},
+@code{virtual-page-size-z-amd}, @code{max-sparse-texture-size-amd},
+@code{max-sparse-3d-texture-size-amd},
+@code{max-sparse-array-texture-layers}, @code{min-sparse-level-amd},
+@code{min-lod-warning-amd}, @code{texture-storage-sparse-bit-amd}.
+
+@end defmac
+
+@defmac arb-texture-buffer-range enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-buffer-offset}, @code{texture-buffer-size},
+@code{texture-buffer-offset-alignment}.
+
+@end defmac
+
+@defmac dmp-shader-binary enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{shader-binary-dmp}.
+
+@end defmac
+
+@defmac fj-shader-binary-gccso enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{gccso-shader-binary-fj}.
+
+@end defmac
+
+@defmac arb-shader-atomic-counters enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{atomic-counter-buffer}, @code{atomic-counter-buffer-binding},
+@code{atomic-counter-buffer-start}, @code{atomic-counter-buffer-size},
+@code{atomic-counter-buffer-data-size},
+@code{atomic-counter-buffer-active-atomic-counters},
+@code{atomic-counter-buffer-active-atomic-counter-indices},
+@code{atomic-counter-buffer-referenced-by-vertex-shader},
+@code{atomic-counter-buffer-referenced-by-tess-control-shader},
+@code{atomic-counter-buffer-referenced-by-tess-evaluation-shader},
+@code{atomic-counter-buffer-referenced-by-geometry-shader},
+@code{atomic-counter-buffer-referenced-by-fragment-shader},
+@code{max-vertex-atomic-counter-buffers},
+@code{max-tess-control-atomic-counter-buffers},
+@code{max-tess-evaluation-atomic-counter-buffers},
+@code{max-geometry-atomic-counter-buffers},
+@code{max-fragment-atomic-counter-buffers},
+@code{max-combined-atomic-counter-buffers},
+@code{max-vertex-atomic-counters},
+@code{max-tess-control-atomic-counters},
+@code{max-tess-evaluation-atomic-counters},
+@code{max-geometry-atomic-counters},
+@code{max-fragment-atomic-counters},
+@code{max-combined-atomic-counters},
+@code{max-atomic-counter-buffer-size},
+@code{max-atomic-counter-buffer-bindings},
+@code{active-atomic-counter-buffers},
+@code{uniform-atomic-counter-buffer-index},
+@code{unsigned-int-atomic-counter}.
+
+@end defmac
+
+@defmac arb-program-interface-query enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{uniform}, @code{uniform-block}, @code{program-input},
+@code{program-output}, @code{buffer-variable},
+@code{shader-storage-block}, @code{is-per-patch},
+@code{vertex-subroutine}, @code{tess-control-subroutine},
+@code{tess-evaluation-subroutine}, @code{geometry-subroutine},
+@code{fragment-subroutine}, @code{compute-subroutine},
+@code{vertex-subroutine-uniform},
+@code{tess-control-subroutine-uniform},
+@code{tess-evaluation-subroutine-uniform},
+@code{geometry-subroutine-uniform}, @code{fragment-subroutine-uniform},
+@code{compute-subroutine-uniform}, @code{transform-feedback-varying},
+@code{active-resources}, @code{max-name-length},
+@code{max-num-active-variables}, @code{max-num-compatible-subroutines},
+@code{name-length}, @code{type}, @code{array-size}, @code{offset},
+@code{block-index}, @code{array-stride}, @code{matrix-stride},
+@code{is-row-major}, @code{atomic-counter-buffer-index},
+@code{buffer-binding}, @code{buffer-data-size},
+@code{num-active-variables}, @code{active-variables},
+@code{referenced-by-vertex-shader},
+@code{referenced-by-tess-control-shader},
+@code{referenced-by-tess-evaluation-shader},
+@code{referenced-by-geometry-shader},
+@code{referenced-by-fragment-shader},
+@code{referenced-by-compute-shader}, @code{top-level-array-size},
+@code{top-level-array-stride}, @code{location}, @code{location-index}.
+
+@end defmac
+
+@defmac arb-framebuffer-no-attachments enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{framebuffer-default-width}, @code{framebuffer-default-height},
+@code{framebuffer-default-layers}, @code{framebuffer-default-samples},
+@code{framebuffer-default-fixed-sample-locations},
+@code{max-framebuffer-width}, @code{max-framebuffer-height},
+@code{max-framebuffer-layers}, @code{max-framebuffer-samples}.
+
+@end defmac
+
+@defmac arb-internalformat-query enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{num-sample-counts}.
+
+@end defmac
+
+@defmac angle-translated-shader-source enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{translated-shader-source-length-angle}.
+
+@end defmac
+
+@defmac angle-texture-usage enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{texture-usage-angle}, @code{framebuffer-attachment-angle},
+@code{none}.
+
+@end defmac
+
+@defmac angle-pack-reverse-row-order enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{pack-reverse-row-order-angle}.
+
+@end defmac
+
+@defmac angle-depth-texture enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{program-binary-angle}.
+
+@end defmac
+
+@defmac gl-khr-texture-compression-astc-ldr enum
+Enumerated value. The symbolic @var{enum}argument is replaced with its
+corresponding numeric value at compile-time. The symbolic arguments
+known to this enumerated value form are:
+
+@code{compressed-rgba-astc-4x4-khr},
+@code{compressed-rgba-astc-5x4-khr},
+@code{compressed-rgba-astc-5x5-khr},
+@code{compressed-rgba-astc-6x5-khr},
+@code{compressed-rgba-astc-6x6-khr},
+@code{compressed-rgba-astc-8x5-khr},
+@code{compressed-rgba-astc-8x6-khr},
+@code{compressed-rgba-astc-8x8-khr},
+@code{compressed-rgba-astc-10x5-khr},
+@code{compressed-rgba-astc-10x6-khr},
+@code{compressed-rgba-astc-10x8-khr},
+@code{compressed-rgba-astc-10x10-khr},
+@code{compressed-rgba-astc-12x10-khr},
+@code{compressed-rgba-astc-12x12-khr},
+@code{compressed-srgb8-alpha8-astc-4x4-khr},
+@code{compressed-srgb8-alpha8-astc-5x4-khr},
+@code{compressed-srgb8-alpha8-astc-5x5-khr},
+@code{compressed-srgb8-alpha8-astc-6x5-khr},
+@code{compressed-srgb8-alpha8-astc-6x6-khr},
+@code{compressed-srgb8-alpha8-astc-8x5-khr},
+@code{compressed-srgb8-alpha8-astc-8x6-khr},
+@code{compressed-srgb8-alpha8-astc-8x8-khr},
+@code{compressed-srgb8-alpha8-astc-10x5-khr},
+@code{compressed-srgb8-alpha8-astc-10x6-khr},
+@code{compressed-srgb8-alpha8-astc-10x8-khr},
+@code{compressed-srgb8-alpha8-astc-10x10-khr},
+@code{compressed-srgb8-alpha8-astc-12x10-khr},
+@code{compressed-srgb8-alpha8-astc-12x12-khr}.
+
+@end defmac
+
+
+@c %end of fragment
index 5a8674d..275eb69 100755 (executable)
                      "enums.scm")
                "/"))
 
-#;
 (define (module-name->texi-name mod-name)
   (in-vicinity
    (in-vicinity (abs-top-srcdir) "doc")
-   (string-append "low-level-" (symbol->string mod-name) ".texi")))
+   (string-append "low-level-" (symbol->string mod-name) "-enums.texi")))
+
+(define (strip-bit name)
+  (let ((str (symbol->string name)))
+    (cond
+     ((string-suffix? "-bit" str)
+      (string->symbol (substring str 0 (- (string-length str) 4))))
+     ((string-suffix? "-bits" str)
+      (string->symbol (substring str 0 (- (string-length str) 5))))
+     (else #f))))
+
+(define (bitfield? enum)
+  (and-map (match-lambda ((name . value) (strip-bit name)))
+           (gl-enumeration-values enum)))
 
 (define (write-scm mod-name enums port)
   (display "\
   (newline port)
   (for-each
    (lambda (enum)
-     (define (strip-bit name)
-       (let ((str (symbol->string name)))
-         (cond
-          ((string-suffix? "-bit" str)
-           (string->symbol (substring str 0 (- (string-length str) 4))))
-          ((string-suffix? "-bits" str)
-           (string->symbol (substring str 0 (- (string-length str) 5))))
-          (else #f))))
-     (define (bitfield? enum)
-       (and-map (match-lambda ((name . value) (strip-bit name)))
-                (gl-enumeration-values enum)))
      (pretty-print
       (if (bitfield? enum)
           `(define-bitfield ,(gl-enumeration-category enum)
      (newline port))
    enums))
 
-#;
-(define (write-texi mod-name defs port)
+(define (write-texi mod-name enums port)
   (display
    (stexi->texi
     `(*fragment*
       (para "The functions from this section may be had by loading "
             "the module:")
-      (example "(use-modules (figl " ,(object->string mod-name) " low-level)")
-      (copying
-       (para
-        "This section of the manual was derived from the upstream "
-        "OpenGL documentation.  Each function's documentation has "
-        "its own copyright statement; for full details, see the "
-        "upstream documentation.  The copyright notices and licenses "
-        "present in this section are as follows.")
-       ,@(append-map cdr (unique-copyrights defs)))
+      (example "(use-modules (figl " ,(object->string mod-name) " enums)")
       ,@(map
-         (lambda (def)
-           (match (gl-definition-prototypes def)
-             (((name (pname ptype) ... '-> return-type)
-               (name* (pname* ptype*) ... '-> return-type*)
-               ...)
-              `(deftypefun (% (name ,(symbol->string name))
-                              (data-type ,(symbol->string return-type))
-                              (arguments ,@(list-intersperse
-                                            (map symbol->string pname)
-                                            " ")))
-                 ,@(map (lambda (name pname ptype return-type)
-                          `(deftypefunx
-                             (% (name ,(symbol->string name))
-                                (data-type ,(symbol->string return-type))
-                                (arguments ,@(list-intersperse
-                                              (map symbol->string pname)
-                                              " ")))))
-                        name* pname* ptype* return-type*)
-                 ,@(cdr (gl-definition-documentation def))))))
-         defs)))
+         (lambda (enum)
+           (if (bitfield? enum)
+               `(defmac (% (name ,(symbol->string (gl-enumeration-category enum)))
+                           (arguments "bit..."))
+                  (para
+                   "Bitfield constructor.  The symbolic " (var "bit")
+                   " arguments are replaced with their corresponding numeric "
+                   "values and combined with " (code "logior") " at "
+                   "compile-time.  The symbolic arguments known to this "
+                   "bitfield constructor are:")
+                  (para
+                   ,@(list-intersperse
+                      (map (lambda (name)
+                             `(code ,(symbol->string (strip-bit name))))
+                           (map car (gl-enumeration-values enum)))
+                     ", ")
+                   "."))
+               `(defmac (% (name ,(symbol->string (gl-enumeration-category enum)))
+                           (arguments "enum"))
+                  (para
+                   "Enumerated value.  The symbolic " (var "enum") "argument "
+                   "is replaced with its corresponding numeric value at "
+                   "compile-time.  The symbolic arguments known to this "
+                   "enumerated value form are:")
+                  (para
+                   ,@(list-intersperse
+                      (map (lambda (name) `(code ,(symbol->string name)))
+                           (map car (gl-enumeration-values enum)))
+                     ", ")
+                   "."))))
+         enums)))
    port))
 
 (define (write-enumerations mod-name enums)
   (call-with-output-file (module-name->scm-name mod-name)
     (lambda (port)
       (write-scm mod-name enums port)))
-  #;
   (call-with-output-file (module-name->texi-name mod-name)
     (lambda (port)
       (write-texi mod-name enums port))))