1 /*
2  * Copyright © 2012 Intel Corporation
3  *
4  * Permission is hereby granted, free of charge, to any person obtaining a
5  * copy of this software and associated documentation files (the "Software"),
6  * to deal in the Software without restriction, including without limitation
7  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
8  * and/or sell copies of the Software, and to permit persons to whom the
9  * Software is furnished to do so, subject to the following conditions:
10  *
11  * The above copyright notice and this permission notice (including the next
12  * paragraph) shall be included in all copies or substantial portions of the
13  * Software.
14  *
15  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
18  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
20  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
21  * DEALINGS IN THE SOFTWARE.
22  */
23 
24 #include <gtest/gtest.h>
25 #include <GL/gl.h>
26 
27 extern "C" {
28 #include "main/enums.h"
29 }
30 
31 /* Stub this out because the real Mesa implementation is tied into a
32  * bunch of the GL_ARB_debug infrastructure.  This results in pulling
33  * in most of libmesa.a and a cacade of missing symbols, etc.
34  */
35 extern "C" void
_mesa_warning(struct gl_context * ctx,const char * fmtString,...)36 _mesa_warning( struct gl_context *ctx, const char *fmtString, ... )
37 {
38    (void) ctx;
39    (void) fmtString;
40 }
41 
42 struct enum_info {
43    int value;
44    const char *name;
45 };
46 
47 extern const struct enum_info everything[];
48 extern const struct enum_info alternate_names[];
49 
TEST(EnumStrings,LookUpByNumber)50 TEST(EnumStrings, LookUpByNumber)
51 {
52    for (unsigned i = 0; everything[i].name != NULL; i++) {
53       EXPECT_STREQ(everything[i].name,
54 		   _mesa_lookup_enum_by_nr(everything[i].value));
55    }
56 }
57 
TEST(EnumStrings,LookUpByName)58 TEST(EnumStrings, LookUpByName)
59 {
60    for (unsigned i = 0; everything[i].name != NULL; i++) {
61       EXPECT_EQ(everything[i].value,
62 		_mesa_lookup_enum_by_name(everything[i].name));
63    }
64 }
65 
TEST(EnumStrings,LookUpByDuplicateName)66 TEST(EnumStrings, LookUpByDuplicateName)
67 {
68    /* Some enum values have multiple names.  Try to find some values
69     * by alternate names.
70     */
71    for (unsigned i = 0; alternate_names[i].name != NULL; i++) {
72       EXPECT_EQ(alternate_names[i].value,
73 		_mesa_lookup_enum_by_name(alternate_names[i].name));
74    }
75 }
76 
TEST(EnumStrings,LookUpUnknownNumber)77 TEST(EnumStrings, LookUpUnknownNumber)
78 {
79    EXPECT_STRCASEEQ("0xEEEE", _mesa_lookup_enum_by_nr(0xEEEE));
80 }
81 
82 /* Please type the name and the value.  This makes it easier to detect
83  * enums with the same value but different names.  The current list is
84  * sorted by enum value.  Please keep it that way.
85  */
86 const struct enum_info everything[] = {
87    { 0x0100, "GL_ACCUM" },
88    { 0x0101, "GL_LOAD" },
89    { 0x0102, "GL_RETURN" },
90    { 0x0103, "GL_MULT" },
91    { 0x0104, "GL_ADD" },
92    { 0x0200, "GL_NEVER" },
93    { 0x0201, "GL_LESS" },
94    { 0x0202, "GL_EQUAL" },
95    { 0x0203, "GL_LEQUAL" },
96    { 0x0204, "GL_GREATER" },
97    { 0x0205, "GL_NOTEQUAL" },
98    { 0x0206, "GL_GEQUAL" },
99    { 0x0207, "GL_ALWAYS" },
100    { 0x0300, "GL_SRC_COLOR" },
101    { 0x0301, "GL_ONE_MINUS_SRC_COLOR" },
102    { 0x0302, "GL_SRC_ALPHA" },
103    { 0x0303, "GL_ONE_MINUS_SRC_ALPHA" },
104    { 0x0304, "GL_DST_ALPHA" },
105    { 0x0305, "GL_ONE_MINUS_DST_ALPHA" },
106    { 0x0306, "GL_DST_COLOR" },
107    { 0x0307, "GL_ONE_MINUS_DST_COLOR" },
108    { 0x0308, "GL_SRC_ALPHA_SATURATE" },
109    { 0x0400, "GL_FRONT_LEFT" },
110    { 0x0401, "GL_FRONT_RIGHT" },
111    { 0x0402, "GL_BACK_LEFT" },
112    { 0x0403, "GL_BACK_RIGHT" },
113    { 0x0404, "GL_FRONT" },
114    { 0x0405, "GL_BACK" },
115    { 0x0406, "GL_LEFT" },
116    { 0x0407, "GL_RIGHT" },
117    { 0x0408, "GL_FRONT_AND_BACK" },
118    { 0x0409, "GL_AUX0" },
119    { 0x040A, "GL_AUX1" },
120    { 0x040B, "GL_AUX2" },
121    { 0x040C, "GL_AUX3" },
122    { 0x0500, "GL_INVALID_ENUM" },
123    { 0x0501, "GL_INVALID_VALUE" },
124    { 0x0502, "GL_INVALID_OPERATION" },
125    { 0x0503, "GL_STACK_OVERFLOW" },
126    { 0x0504, "GL_STACK_UNDERFLOW" },
127    { 0x0505, "GL_OUT_OF_MEMORY" },
128    { 0x0506, "GL_INVALID_FRAMEBUFFER_OPERATION" },
129    { 0x0600, "GL_2D" },
130    { 0x0601, "GL_3D" },
131    { 0x0602, "GL_3D_COLOR" },
132    { 0x0603, "GL_3D_COLOR_TEXTURE" },
133    { 0x0604, "GL_4D_COLOR_TEXTURE" },
134    { 0x0700, "GL_PASS_THROUGH_TOKEN" },
135    { 0x0701, "GL_POINT_TOKEN" },
136    { 0x0702, "GL_LINE_TOKEN" },
137    { 0x0703, "GL_POLYGON_TOKEN" },
138    { 0x0704, "GL_BITMAP_TOKEN" },
139    { 0x0705, "GL_DRAW_PIXEL_TOKEN" },
140    { 0x0706, "GL_COPY_PIXEL_TOKEN" },
141    { 0x0707, "GL_LINE_RESET_TOKEN" },
142    { 0x0800, "GL_EXP" },
143    { 0x0801, "GL_EXP2" },
144    { 0x0900, "GL_CW" },
145    { 0x0901, "GL_CCW" },
146    { 0x0A00, "GL_COEFF" },
147    { 0x0A01, "GL_ORDER" },
148    { 0x0A02, "GL_DOMAIN" },
149    { 0x0B00, "GL_CURRENT_COLOR" },
150    { 0x0B01, "GL_CURRENT_INDEX" },
151    { 0x0B02, "GL_CURRENT_NORMAL" },
152    { 0x0B03, "GL_CURRENT_TEXTURE_COORDS" },
153    { 0x0B04, "GL_CURRENT_RASTER_COLOR" },
154    { 0x0B05, "GL_CURRENT_RASTER_INDEX" },
155    { 0x0B06, "GL_CURRENT_RASTER_TEXTURE_COORDS" },
156    { 0x0B07, "GL_CURRENT_RASTER_POSITION" },
157    { 0x0B08, "GL_CURRENT_RASTER_POSITION_VALID" },
158    { 0x0B09, "GL_CURRENT_RASTER_DISTANCE" },
159    { 0x0B10, "GL_POINT_SMOOTH" },
160    { 0x0B11, "GL_POINT_SIZE" },
161    { 0x0B12, "GL_POINT_SIZE_RANGE" },
162    { 0x0B13, "GL_POINT_SIZE_GRANULARITY" },
163    { 0x0B20, "GL_LINE_SMOOTH" },
164    { 0x0B21, "GL_LINE_WIDTH" },
165    { 0x0B22, "GL_LINE_WIDTH_RANGE" },
166    { 0x0B23, "GL_LINE_WIDTH_GRANULARITY" },
167    { 0x0B24, "GL_LINE_STIPPLE" },
168    { 0x0B25, "GL_LINE_STIPPLE_PATTERN" },
169    { 0x0B26, "GL_LINE_STIPPLE_REPEAT" },
170    { 0x0B30, "GL_LIST_MODE" },
171    { 0x0B31, "GL_MAX_LIST_NESTING" },
172    { 0x0B32, "GL_LIST_BASE" },
173    { 0x0B33, "GL_LIST_INDEX" },
174    { 0x0B40, "GL_POLYGON_MODE" },
175    { 0x0B41, "GL_POLYGON_SMOOTH" },
176    { 0x0B42, "GL_POLYGON_STIPPLE" },
177    { 0x0B43, "GL_EDGE_FLAG" },
178    { 0x0B44, "GL_CULL_FACE" },
179    { 0x0B45, "GL_CULL_FACE_MODE" },
180    { 0x0B46, "GL_FRONT_FACE" },
181    { 0x0B50, "GL_LIGHTING" },
182    { 0x0B51, "GL_LIGHT_MODEL_LOCAL_VIEWER" },
183    { 0x0B52, "GL_LIGHT_MODEL_TWO_SIDE" },
184    { 0x0B53, "GL_LIGHT_MODEL_AMBIENT" },
185    { 0x0B54, "GL_SHADE_MODEL" },
186    { 0x0B55, "GL_COLOR_MATERIAL_FACE" },
187    { 0x0B56, "GL_COLOR_MATERIAL_PARAMETER" },
188    { 0x0B57, "GL_COLOR_MATERIAL" },
189    { 0x0B60, "GL_FOG" },
190    { 0x0B61, "GL_FOG_INDEX" },
191    { 0x0B62, "GL_FOG_DENSITY" },
192    { 0x0B63, "GL_FOG_START" },
193    { 0x0B64, "GL_FOG_END" },
194    { 0x0B65, "GL_FOG_MODE" },
195    { 0x0B66, "GL_FOG_COLOR" },
196    { 0x0B70, "GL_DEPTH_RANGE" },
197    { 0x0B71, "GL_DEPTH_TEST" },
198    { 0x0B72, "GL_DEPTH_WRITEMASK" },
199    { 0x0B73, "GL_DEPTH_CLEAR_VALUE" },
200    { 0x0B74, "GL_DEPTH_FUNC" },
201    { 0x0B80, "GL_ACCUM_CLEAR_VALUE" },
202    { 0x0B90, "GL_STENCIL_TEST" },
203    { 0x0B91, "GL_STENCIL_CLEAR_VALUE" },
204    { 0x0B92, "GL_STENCIL_FUNC" },
205    { 0x0B93, "GL_STENCIL_VALUE_MASK" },
206    { 0x0B94, "GL_STENCIL_FAIL" },
207    { 0x0B95, "GL_STENCIL_PASS_DEPTH_FAIL" },
208    { 0x0B96, "GL_STENCIL_PASS_DEPTH_PASS" },
209    { 0x0B97, "GL_STENCIL_REF" },
210    { 0x0B98, "GL_STENCIL_WRITEMASK" },
211    { 0x0BA0, "GL_MATRIX_MODE" },
212    { 0x0BA1, "GL_NORMALIZE" },
213    { 0x0BA2, "GL_VIEWPORT" },
214    { 0x0BA3, "GL_MODELVIEW_STACK_DEPTH" },
215    { 0x0BA4, "GL_PROJECTION_STACK_DEPTH" },
216    { 0x0BA5, "GL_TEXTURE_STACK_DEPTH" },
217    { 0x0BA6, "GL_MODELVIEW_MATRIX" },
218    { 0x0BA7, "GL_PROJECTION_MATRIX" },
219    { 0x0BA8, "GL_TEXTURE_MATRIX" },
220    { 0x0BB0, "GL_ATTRIB_STACK_DEPTH" },
221    { 0x0BB1, "GL_CLIENT_ATTRIB_STACK_DEPTH" },
222    { 0x0BC0, "GL_ALPHA_TEST" },
223    { 0x0BC1, "GL_ALPHA_TEST_FUNC" },
224    { 0x0BC2, "GL_ALPHA_TEST_REF" },
225    { 0x0BD0, "GL_DITHER" },
226    { 0x0BE0, "GL_BLEND_DST" },
227    { 0x0BE1, "GL_BLEND_SRC" },
228    { 0x0BE2, "GL_BLEND" },
229    { 0x0BF0, "GL_LOGIC_OP_MODE" },
230    { 0x0BF1, "GL_INDEX_LOGIC_OP" },
231    { 0x0BF2, "GL_COLOR_LOGIC_OP" },
232    { 0x0C00, "GL_AUX_BUFFERS" },
233    { 0x0C01, "GL_DRAW_BUFFER" },
234    { 0x0C02, "GL_READ_BUFFER" },
235    { 0x0C10, "GL_SCISSOR_BOX" },
236    { 0x0C11, "GL_SCISSOR_TEST" },
237    { 0x0C20, "GL_INDEX_CLEAR_VALUE" },
238    { 0x0C21, "GL_INDEX_WRITEMASK" },
239    { 0x0C22, "GL_COLOR_CLEAR_VALUE" },
240    { 0x0C23, "GL_COLOR_WRITEMASK" },
241    { 0x0C30, "GL_INDEX_MODE" },
242    { 0x0C31, "GL_RGBA_MODE" },
243    { 0x0C32, "GL_DOUBLEBUFFER" },
244    { 0x0C33, "GL_STEREO" },
245    { 0x0C40, "GL_RENDER_MODE" },
246    { 0x0C50, "GL_PERSPECTIVE_CORRECTION_HINT" },
247    { 0x0C51, "GL_POINT_SMOOTH_HINT" },
248    { 0x0C52, "GL_LINE_SMOOTH_HINT" },
249    { 0x0C53, "GL_POLYGON_SMOOTH_HINT" },
250    { 0x0C54, "GL_FOG_HINT" },
251    { 0x0C60, "GL_TEXTURE_GEN_S" },
252    { 0x0C61, "GL_TEXTURE_GEN_T" },
253    { 0x0C62, "GL_TEXTURE_GEN_R" },
254    { 0x0C63, "GL_TEXTURE_GEN_Q" },
255    { 0x0C70, "GL_PIXEL_MAP_I_TO_I" },
256    { 0x0C71, "GL_PIXEL_MAP_S_TO_S" },
257    { 0x0C72, "GL_PIXEL_MAP_I_TO_R" },
258    { 0x0C73, "GL_PIXEL_MAP_I_TO_G" },
259    { 0x0C74, "GL_PIXEL_MAP_I_TO_B" },
260    { 0x0C75, "GL_PIXEL_MAP_I_TO_A" },
261    { 0x0C76, "GL_PIXEL_MAP_R_TO_R" },
262    { 0x0C77, "GL_PIXEL_MAP_G_TO_G" },
263    { 0x0C78, "GL_PIXEL_MAP_B_TO_B" },
264    { 0x0C79, "GL_PIXEL_MAP_A_TO_A" },
265    { 0x0CB0, "GL_PIXEL_MAP_I_TO_I_SIZE" },
266    { 0x0CB1, "GL_PIXEL_MAP_S_TO_S_SIZE" },
267    { 0x0CB2, "GL_PIXEL_MAP_I_TO_R_SIZE" },
268    { 0x0CB3, "GL_PIXEL_MAP_I_TO_G_SIZE" },
269    { 0x0CB4, "GL_PIXEL_MAP_I_TO_B_SIZE" },
270    { 0x0CB5, "GL_PIXEL_MAP_I_TO_A_SIZE" },
271    { 0x0CB6, "GL_PIXEL_MAP_R_TO_R_SIZE" },
272    { 0x0CB7, "GL_PIXEL_MAP_G_TO_G_SIZE" },
273    { 0x0CB8, "GL_PIXEL_MAP_B_TO_B_SIZE" },
274    { 0x0CB9, "GL_PIXEL_MAP_A_TO_A_SIZE" },
275    { 0x0CF0, "GL_UNPACK_SWAP_BYTES" },
276    { 0x0CF1, "GL_UNPACK_LSB_FIRST" },
277    { 0x0CF2, "GL_UNPACK_ROW_LENGTH" },
278    { 0x0CF3, "GL_UNPACK_SKIP_ROWS" },
279    { 0x0CF4, "GL_UNPACK_SKIP_PIXELS" },
280    { 0x0CF5, "GL_UNPACK_ALIGNMENT" },
281    { 0x0D00, "GL_PACK_SWAP_BYTES" },
282    { 0x0D01, "GL_PACK_LSB_FIRST" },
283    { 0x0D02, "GL_PACK_ROW_LENGTH" },
284    { 0x0D03, "GL_PACK_SKIP_ROWS" },
285    { 0x0D04, "GL_PACK_SKIP_PIXELS" },
286    { 0x0D05, "GL_PACK_ALIGNMENT" },
287    { 0x0D10, "GL_MAP_COLOR" },
288    { 0x0D11, "GL_MAP_STENCIL" },
289    { 0x0D12, "GL_INDEX_SHIFT" },
290    { 0x0D13, "GL_INDEX_OFFSET" },
291    { 0x0D14, "GL_RED_SCALE" },
292    { 0x0D15, "GL_RED_BIAS" },
293    { 0x0D16, "GL_ZOOM_X" },
294    { 0x0D17, "GL_ZOOM_Y" },
295    { 0x0D18, "GL_GREEN_SCALE" },
296    { 0x0D19, "GL_GREEN_BIAS" },
297    { 0x0D1A, "GL_BLUE_SCALE" },
298    { 0x0D1B, "GL_BLUE_BIAS" },
299    { 0x0D1C, "GL_ALPHA_SCALE" },
300    { 0x0D1D, "GL_ALPHA_BIAS" },
301    { 0x0D1E, "GL_DEPTH_SCALE" },
302    { 0x0D1F, "GL_DEPTH_BIAS" },
303    { 0x0D30, "GL_MAX_EVAL_ORDER" },
304    { 0x0D31, "GL_MAX_LIGHTS" },
305    { 0x0D32, "GL_MAX_CLIP_DISTANCES" },
306    { 0x0D33, "GL_MAX_TEXTURE_SIZE" },
307    { 0x0D34, "GL_MAX_PIXEL_MAP_TABLE" },
308    { 0x0D35, "GL_MAX_ATTRIB_STACK_DEPTH" },
309    { 0x0D36, "GL_MAX_MODELVIEW_STACK_DEPTH" },
310    { 0x0D37, "GL_MAX_NAME_STACK_DEPTH" },
311    { 0x0D38, "GL_MAX_PROJECTION_STACK_DEPTH" },
312    { 0x0D39, "GL_MAX_TEXTURE_STACK_DEPTH" },
313    { 0x0D3A, "GL_MAX_VIEWPORT_DIMS" },
314    { 0x0D3B, "GL_MAX_CLIENT_ATTRIB_STACK_DEPTH" },
315    { 0x0D50, "GL_SUBPIXEL_BITS" },
316    { 0x0D51, "GL_INDEX_BITS" },
317    { 0x0D52, "GL_RED_BITS" },
318    { 0x0D53, "GL_GREEN_BITS" },
319    { 0x0D54, "GL_BLUE_BITS" },
320    { 0x0D55, "GL_ALPHA_BITS" },
321    { 0x0D56, "GL_DEPTH_BITS" },
322    { 0x0D57, "GL_STENCIL_BITS" },
323    { 0x0D58, "GL_ACCUM_RED_BITS" },
324    { 0x0D59, "GL_ACCUM_GREEN_BITS" },
325    { 0x0D5A, "GL_ACCUM_BLUE_BITS" },
326    { 0x0D5B, "GL_ACCUM_ALPHA_BITS" },
327    { 0x0D70, "GL_NAME_STACK_DEPTH" },
328    { 0x0D80, "GL_AUTO_NORMAL" },
329    { 0x0D90, "GL_MAP1_COLOR_4" },
330    { 0x0D91, "GL_MAP1_INDEX" },
331    { 0x0D92, "GL_MAP1_NORMAL" },
332    { 0x0D93, "GL_MAP1_TEXTURE_COORD_1" },
333    { 0x0D94, "GL_MAP1_TEXTURE_COORD_2" },
334    { 0x0D95, "GL_MAP1_TEXTURE_COORD_3" },
335    { 0x0D96, "GL_MAP1_TEXTURE_COORD_4" },
336    { 0x0D97, "GL_MAP1_VERTEX_3" },
337    { 0x0D98, "GL_MAP1_VERTEX_4" },
338    { 0x0DB0, "GL_MAP2_COLOR_4" },
339    { 0x0DB1, "GL_MAP2_INDEX" },
340    { 0x0DB2, "GL_MAP2_NORMAL" },
341    { 0x0DB3, "GL_MAP2_TEXTURE_COORD_1" },
342    { 0x0DB4, "GL_MAP2_TEXTURE_COORD_2" },
343    { 0x0DB5, "GL_MAP2_TEXTURE_COORD_3" },
344    { 0x0DB6, "GL_MAP2_TEXTURE_COORD_4" },
345    { 0x0DB7, "GL_MAP2_VERTEX_3" },
346    { 0x0DB8, "GL_MAP2_VERTEX_4" },
347    { 0x0DD0, "GL_MAP1_GRID_DOMAIN" },
348    { 0x0DD1, "GL_MAP1_GRID_SEGMENTS" },
349    { 0x0DD2, "GL_MAP2_GRID_DOMAIN" },
350    { 0x0DD3, "GL_MAP2_GRID_SEGMENTS" },
351    { 0x0DE0, "GL_TEXTURE_1D" },
352    { 0x0DE1, "GL_TEXTURE_2D" },
353    { 0x0DF0, "GL_FEEDBACK_BUFFER_POINTER" },
354    { 0x0DF1, "GL_FEEDBACK_BUFFER_SIZE" },
355    { 0x0DF2, "GL_FEEDBACK_BUFFER_TYPE" },
356    { 0x0DF3, "GL_SELECTION_BUFFER_POINTER" },
357    { 0x0DF4, "GL_SELECTION_BUFFER_SIZE" },
358    { 0x1000, "GL_TEXTURE_WIDTH" },
359    { 0x1001, "GL_TEXTURE_HEIGHT" },
360    { 0x1003, "GL_TEXTURE_COMPONENTS" },
361    { 0x1004, "GL_TEXTURE_BORDER_COLOR" },
362    { 0x1005, "GL_TEXTURE_BORDER" },
363    { 0x1100, "GL_DONT_CARE" },
364    { 0x1101, "GL_FASTEST" },
365    { 0x1102, "GL_NICEST" },
366    { 0x1200, "GL_AMBIENT" },
367    { 0x1201, "GL_DIFFUSE" },
368    { 0x1202, "GL_SPECULAR" },
369    { 0x1203, "GL_POSITION" },
370    { 0x1204, "GL_SPOT_DIRECTION" },
371    { 0x1205, "GL_SPOT_EXPONENT" },
372    { 0x1206, "GL_SPOT_CUTOFF" },
373    { 0x1207, "GL_CONSTANT_ATTENUATION" },
374    { 0x1208, "GL_LINEAR_ATTENUATION" },
375    { 0x1209, "GL_QUADRATIC_ATTENUATION" },
376    { 0x1300, "GL_COMPILE" },
377    { 0x1301, "GL_COMPILE_AND_EXECUTE" },
378    { 0x1400, "GL_BYTE" },
379    { 0x1401, "GL_UNSIGNED_BYTE" },
380    { 0x1402, "GL_SHORT" },
381    { 0x1403, "GL_UNSIGNED_SHORT" },
382    { 0x1404, "GL_INT" },
383    { 0x1405, "GL_UNSIGNED_INT" },
384    { 0x1406, "GL_FLOAT" },
385    { 0x1407, "GL_2_BYTES" },
386    { 0x1408, "GL_3_BYTES" },
387    { 0x1409, "GL_4_BYTES" },
388    { 0x140A, "GL_DOUBLE" },
389    { 0x140B, "GL_HALF_FLOAT" },
390    { 0x140C, "GL_FIXED" },
391    { 0x1500, "GL_CLEAR" },
392    { 0x1501, "GL_AND" },
393    { 0x1502, "GL_AND_REVERSE" },
394    { 0x1503, "GL_COPY" },
395    { 0x1504, "GL_AND_INVERTED" },
396    { 0x1505, "GL_NOOP" },
397    { 0x1506, "GL_XOR" },
398    { 0x1507, "GL_OR" },
399    { 0x1508, "GL_NOR" },
400    { 0x1509, "GL_EQUIV" },
401    { 0x150A, "GL_INVERT" },
402    { 0x150B, "GL_OR_REVERSE" },
403    { 0x150C, "GL_COPY_INVERTED" },
404    { 0x150D, "GL_OR_INVERTED" },
405    { 0x150E, "GL_NAND" },
406    { 0x150F, "GL_SET" },
407    { 0x1600, "GL_EMISSION" },
408    { 0x1601, "GL_SHININESS" },
409    { 0x1602, "GL_AMBIENT_AND_DIFFUSE" },
410    { 0x1603, "GL_COLOR_INDEXES" },
411    { 0x1700, "GL_MODELVIEW" },
412    { 0x1701, "GL_PROJECTION" },
413    { 0x1702, "GL_TEXTURE" },
414    { 0x1800, "GL_COLOR" },
415    { 0x1801, "GL_DEPTH" },
416    { 0x1802, "GL_STENCIL" },
417    { 0x1900, "GL_COLOR_INDEX" },
418    { 0x1901, "GL_STENCIL_INDEX" },
419    { 0x1902, "GL_DEPTH_COMPONENT" },
420    { 0x1903, "GL_RED" },
421    { 0x1904, "GL_GREEN" },
422    { 0x1905, "GL_BLUE" },
423    { 0x1906, "GL_ALPHA" },
424    { 0x1907, "GL_RGB" },
425    { 0x1908, "GL_RGBA" },
426    { 0x1909, "GL_LUMINANCE" },
427    { 0x190A, "GL_LUMINANCE_ALPHA" },
428    { 0x1A00, "GL_BITMAP" },
429    { 0x1B00, "GL_POINT" },
430    { 0x1B01, "GL_LINE" },
431    { 0x1B02, "GL_FILL" },
432    { 0x1C00, "GL_RENDER" },
433    { 0x1C01, "GL_FEEDBACK" },
434    { 0x1C02, "GL_SELECT" },
435    { 0x1D00, "GL_FLAT" },
436    { 0x1D01, "GL_SMOOTH" },
437    { 0x1E00, "GL_KEEP" },
438    { 0x1E01, "GL_REPLACE" },
439    { 0x1E02, "GL_INCR" },
440    { 0x1E03, "GL_DECR" },
441    { 0x1F00, "GL_VENDOR" },
442    { 0x1F01, "GL_RENDERER" },
443    { 0x1F02, "GL_VERSION" },
444    { 0x1F03, "GL_EXTENSIONS" },
445    { 0x2000, "GL_S" },
446    { 0x2001, "GL_T" },
447    { 0x2002, "GL_R" },
448    { 0x2003, "GL_Q" },
449    { 0x2100, "GL_MODULATE" },
450    { 0x2101, "GL_DECAL" },
451    { 0x2200, "GL_TEXTURE_ENV_MODE" },
452    { 0x2201, "GL_TEXTURE_ENV_COLOR" },
453    { 0x2300, "GL_TEXTURE_ENV" },
454    { 0x2400, "GL_EYE_LINEAR" },
455    { 0x2401, "GL_OBJECT_LINEAR" },
456    { 0x2402, "GL_SPHERE_MAP" },
457    { 0x2500, "GL_TEXTURE_GEN_MODE" },
458    { 0x2501, "GL_OBJECT_PLANE" },
459    { 0x2502, "GL_EYE_PLANE" },
460    { 0x2600, "GL_NEAREST" },
461    { 0x2601, "GL_LINEAR" },
462    { 0x2700, "GL_NEAREST_MIPMAP_NEAREST" },
463    { 0x2701, "GL_LINEAR_MIPMAP_NEAREST" },
464    { 0x2702, "GL_NEAREST_MIPMAP_LINEAR" },
465    { 0x2703, "GL_LINEAR_MIPMAP_LINEAR" },
466    { 0x2800, "GL_TEXTURE_MAG_FILTER" },
467    { 0x2801, "GL_TEXTURE_MIN_FILTER" },
468    { 0x2802, "GL_TEXTURE_WRAP_S" },
469    { 0x2803, "GL_TEXTURE_WRAP_T" },
470    { 0x2900, "GL_CLAMP" },
471    { 0x2901, "GL_REPEAT" },
472    { 0x2A00, "GL_POLYGON_OFFSET_UNITS" },
473    { 0x2A01, "GL_POLYGON_OFFSET_POINT" },
474    { 0x2A02, "GL_POLYGON_OFFSET_LINE" },
475    { 0x2A10, "GL_R3_G3_B2" },
476    { 0x2A20, "GL_V2F" },
477    { 0x2A21, "GL_V3F" },
478    { 0x2A22, "GL_C4UB_V2F" },
479    { 0x2A23, "GL_C4UB_V3F" },
480    { 0x2A24, "GL_C3F_V3F" },
481    { 0x2A25, "GL_N3F_V3F" },
482    { 0x2A26, "GL_C4F_N3F_V3F" },
483    { 0x2A27, "GL_T2F_V3F" },
484    { 0x2A28, "GL_T4F_V4F" },
485    { 0x2A29, "GL_T2F_C4UB_V3F" },
486    { 0x2A2A, "GL_T2F_C3F_V3F" },
487    { 0x2A2B, "GL_T2F_N3F_V3F" },
488    { 0x2A2C, "GL_T2F_C4F_N3F_V3F" },
489    { 0x2A2D, "GL_T4F_C4F_N3F_V4F" },
490    { 0x3000, "GL_CLIP_DISTANCE0" },
491    { 0x3001, "GL_CLIP_DISTANCE1" },
492    { 0x3002, "GL_CLIP_DISTANCE2" },
493    { 0x3003, "GL_CLIP_DISTANCE3" },
494    { 0x3004, "GL_CLIP_DISTANCE4" },
495    { 0x3005, "GL_CLIP_DISTANCE5" },
496    { 0x3006, "GL_CLIP_DISTANCE6" },
497    { 0x3007, "GL_CLIP_DISTANCE7" },
498    { 0x4000, "GL_LIGHT0" },
499    { 0x4001, "GL_LIGHT1" },
500    { 0x4002, "GL_LIGHT2" },
501    { 0x4003, "GL_LIGHT3" },
502    { 0x4004, "GL_LIGHT4" },
503    { 0x4005, "GL_LIGHT5" },
504    { 0x4006, "GL_LIGHT6" },
505    { 0x4007, "GL_LIGHT7" },
506 
507    /* This should be included, but it's value collides with GL_HINT_BIT.  The
508     * generator script picks GL_HINT_BIT because it prefers names that lack an
509     * extension suffix.
510     */
511 /*   { 0x8000, "GL_ABGR_EXT" }, */
512    { 0x8000, "GL_HINT_BIT" },
513 
514    { 0x8001, "GL_CONSTANT_COLOR" },
515    { 0x8002, "GL_ONE_MINUS_CONSTANT_COLOR" },
516    { 0x8003, "GL_CONSTANT_ALPHA" },
517    { 0x8004, "GL_ONE_MINUS_CONSTANT_ALPHA" },
518    { 0x8005, "GL_BLEND_COLOR" },
519    { 0x8006, "GL_FUNC_ADD" },
520    { 0x8007, "GL_MIN" },
521    { 0x8008, "GL_MAX" },
522    { 0x8009, "GL_BLEND_EQUATION" },
523    { 0x800A, "GL_FUNC_SUBTRACT" },
524    { 0x800B, "GL_FUNC_REVERSE_SUBTRACT" },
525    { 0x8010, "GL_CONVOLUTION_1D" },
526    { 0x8011, "GL_CONVOLUTION_2D" },
527    { 0x8012, "GL_SEPARABLE_2D" },
528    { 0x8013, "GL_CONVOLUTION_BORDER_MODE" },
529    { 0x8014, "GL_CONVOLUTION_FILTER_SCALE" },
530    { 0x8015, "GL_CONVOLUTION_FILTER_BIAS" },
531    { 0x8016, "GL_REDUCE" },
532    { 0x8017, "GL_CONVOLUTION_FORMAT" },
533    { 0x8018, "GL_CONVOLUTION_WIDTH" },
534    { 0x8019, "GL_CONVOLUTION_HEIGHT" },
535    { 0x801A, "GL_MAX_CONVOLUTION_WIDTH" },
536    { 0x801B, "GL_MAX_CONVOLUTION_HEIGHT" },
537    { 0x801C, "GL_POST_CONVOLUTION_RED_SCALE" },
538    { 0x801D, "GL_POST_CONVOLUTION_GREEN_SCALE" },
539    { 0x801E, "GL_POST_CONVOLUTION_BLUE_SCALE" },
540    { 0x801F, "GL_POST_CONVOLUTION_ALPHA_SCALE" },
541    { 0x8020, "GL_POST_CONVOLUTION_RED_BIAS" },
542    { 0x8021, "GL_POST_CONVOLUTION_GREEN_BIAS" },
543    { 0x8022, "GL_POST_CONVOLUTION_BLUE_BIAS" },
544    { 0x8023, "GL_POST_CONVOLUTION_ALPHA_BIAS" },
545    { 0x8024, "GL_HISTOGRAM" },
546    { 0x8025, "GL_PROXY_HISTOGRAM" },
547    { 0x8026, "GL_HISTOGRAM_WIDTH" },
548    { 0x8027, "GL_HISTOGRAM_FORMAT" },
549    { 0x8028, "GL_HISTOGRAM_RED_SIZE" },
550    { 0x8029, "GL_HISTOGRAM_GREEN_SIZE" },
551    { 0x802A, "GL_HISTOGRAM_BLUE_SIZE" },
552    { 0x802B, "GL_HISTOGRAM_ALPHA_SIZE" },
553    { 0x802C, "GL_HISTOGRAM_LUMINANCE_SIZE" },
554    { 0x802D, "GL_HISTOGRAM_SINK" },
555    { 0x802E, "GL_MINMAX" },
556    { 0x802F, "GL_MINMAX_FORMAT" },
557    { 0x8030, "GL_MINMAX_SINK" },
558    { 0x8031, "GL_TABLE_TOO_LARGE_EXT" },
559    { 0x8032, "GL_UNSIGNED_BYTE_3_3_2" },
560    { 0x8033, "GL_UNSIGNED_SHORT_4_4_4_4" },
561    { 0x8034, "GL_UNSIGNED_SHORT_5_5_5_1" },
562    { 0x8035, "GL_UNSIGNED_INT_8_8_8_8" },
563    { 0x8036, "GL_UNSIGNED_INT_10_10_10_2" },
564    { 0x8037, "GL_POLYGON_OFFSET_FILL" },
565    { 0x8038, "GL_POLYGON_OFFSET_FACTOR" },
566    { 0x8039, "GL_POLYGON_OFFSET_BIAS_EXT" },
567    { 0x803A, "GL_RESCALE_NORMAL" },
568    { 0x803B, "GL_ALPHA4" },
569    { 0x803C, "GL_ALPHA8" },
570    { 0x803D, "GL_ALPHA12" },
571    { 0x803E, "GL_ALPHA16" },
572    { 0x803F, "GL_LUMINANCE4" },
573    { 0x8040, "GL_LUMINANCE8" },
574    { 0x8041, "GL_LUMINANCE12" },
575    { 0x8042, "GL_LUMINANCE16" },
576    { 0x8043, "GL_LUMINANCE4_ALPHA4" },
577    { 0x8044, "GL_LUMINANCE6_ALPHA2" },
578    { 0x8045, "GL_LUMINANCE8_ALPHA8" },
579    { 0x8046, "GL_LUMINANCE12_ALPHA4" },
580    { 0x8047, "GL_LUMINANCE12_ALPHA12" },
581    { 0x8048, "GL_LUMINANCE16_ALPHA16" },
582    { 0x8049, "GL_INTENSITY" },
583    { 0x804A, "GL_INTENSITY4" },
584    { 0x804B, "GL_INTENSITY8" },
585    { 0x804C, "GL_INTENSITY12" },
586    { 0x804D, "GL_INTENSITY16" },
587    { 0x804E, "GL_RGB2_EXT" },
588    { 0x804F, "GL_RGB4" },
589    { 0x8050, "GL_RGB5" },
590    { 0x8051, "GL_RGB8" },
591    { 0x8052, "GL_RGB10" },
592    { 0x8053, "GL_RGB12" },
593    { 0x8054, "GL_RGB16" },
594    { 0x8055, "GL_RGBA2" },
595    { 0x8056, "GL_RGBA4" },
596    { 0x8057, "GL_RGB5_A1" },
597    { 0x8058, "GL_RGBA8" },
598    { 0x8059, "GL_RGB10_A2" },
599    { 0x805A, "GL_RGBA12" },
600    { 0x805B, "GL_RGBA16" },
601    { 0x805C, "GL_TEXTURE_RED_SIZE" },
602    { 0x805D, "GL_TEXTURE_GREEN_SIZE" },
603    { 0x805E, "GL_TEXTURE_BLUE_SIZE" },
604    { 0x805F, "GL_TEXTURE_ALPHA_SIZE" },
605    { 0x8060, "GL_TEXTURE_LUMINANCE_SIZE" },
606    { 0x8061, "GL_TEXTURE_INTENSITY_SIZE" },
607    { 0x8062, "GL_REPLACE_EXT" },
608    { 0x8063, "GL_PROXY_TEXTURE_1D" },
609    { 0x8064, "GL_PROXY_TEXTURE_2D" },
610    { 0x8065, "GL_TEXTURE_TOO_LARGE_EXT" },
611    { 0x8066, "GL_TEXTURE_PRIORITY" },
612    { 0x8067, "GL_TEXTURE_RESIDENT" },
613    { 0x8068, "GL_TEXTURE_BINDING_1D" },
614    { 0x8069, "GL_TEXTURE_BINDING_2D" },
615    { 0x806A, "GL_TEXTURE_BINDING_3D" },
616    { 0x806B, "GL_PACK_SKIP_IMAGES" },
617    { 0x806C, "GL_PACK_IMAGE_HEIGHT" },
618    { 0x806D, "GL_UNPACK_SKIP_IMAGES" },
619    { 0x806E, "GL_UNPACK_IMAGE_HEIGHT" },
620    { 0x806F, "GL_TEXTURE_3D" },
621    { 0x8070, "GL_PROXY_TEXTURE_3D" },
622    { 0x8071, "GL_TEXTURE_DEPTH" },
623    { 0x8072, "GL_TEXTURE_WRAP_R" },
624    { 0x8073, "GL_MAX_3D_TEXTURE_SIZE" },
625    { 0x8074, "GL_VERTEX_ARRAY" },
626    { 0x8075, "GL_NORMAL_ARRAY" },
627    { 0x8076, "GL_COLOR_ARRAY" },
628    { 0x8077, "GL_INDEX_ARRAY" },
629    { 0x8078, "GL_TEXTURE_COORD_ARRAY" },
630    { 0x8079, "GL_EDGE_FLAG_ARRAY" },
631    { 0x807A, "GL_VERTEX_ARRAY_SIZE" },
632    { 0x807B, "GL_VERTEX_ARRAY_TYPE" },
633    { 0x807C, "GL_VERTEX_ARRAY_STRIDE" },
634    { 0x807D, "GL_VERTEX_ARRAY_COUNT_EXT" },
635    { 0x807E, "GL_NORMAL_ARRAY_TYPE" },
636    { 0x807F, "GL_NORMAL_ARRAY_STRIDE" },
637    { 0x8080, "GL_NORMAL_ARRAY_COUNT_EXT" },
638    { 0x8081, "GL_COLOR_ARRAY_SIZE" },
639    { 0x8082, "GL_COLOR_ARRAY_TYPE" },
640    { 0x8083, "GL_COLOR_ARRAY_STRIDE" },
641    { 0x8084, "GL_COLOR_ARRAY_COUNT_EXT" },
642    { 0x8085, "GL_INDEX_ARRAY_TYPE" },
643    { 0x8086, "GL_INDEX_ARRAY_STRIDE" },
644    { 0x8087, "GL_INDEX_ARRAY_COUNT_EXT" },
645    { 0x8088, "GL_TEXTURE_COORD_ARRAY_SIZE" },
646    { 0x8089, "GL_TEXTURE_COORD_ARRAY_TYPE" },
647    { 0x808A, "GL_TEXTURE_COORD_ARRAY_STRIDE" },
648    { 0x808B, "GL_TEXTURE_COORD_ARRAY_COUNT_EXT" },
649    { 0x808C, "GL_EDGE_FLAG_ARRAY_STRIDE" },
650    { 0x808D, "GL_EDGE_FLAG_ARRAY_COUNT_EXT" },
651    { 0x808E, "GL_VERTEX_ARRAY_POINTER" },
652    { 0x808F, "GL_NORMAL_ARRAY_POINTER" },
653    { 0x8090, "GL_COLOR_ARRAY_POINTER" },
654    { 0x8091, "GL_INDEX_ARRAY_POINTER" },
655    { 0x8092, "GL_TEXTURE_COORD_ARRAY_POINTER" },
656    { 0x8093, "GL_EDGE_FLAG_ARRAY_POINTER" },
657    { 0x809D, "GL_MULTISAMPLE" },
658    { 0x809E, "GL_SAMPLE_ALPHA_TO_COVERAGE" },
659    { 0x809F, "GL_SAMPLE_ALPHA_TO_ONE" },
660    { 0x80A0, "GL_SAMPLE_COVERAGE" },
661    { 0x80A8, "GL_SAMPLE_BUFFERS" },
662    { 0x80A9, "GL_SAMPLES" },
663    { 0x80AA, "GL_SAMPLE_COVERAGE_VALUE" },
664    { 0x80AB, "GL_SAMPLE_COVERAGE_INVERT" },
665    { 0x80B1, "GL_COLOR_MATRIX" },
666    { 0x80B2, "GL_COLOR_MATRIX_STACK_DEPTH" },
667    { 0x80B3, "GL_MAX_COLOR_MATRIX_STACK_DEPTH" },
668    { 0x80B4, "GL_POST_COLOR_MATRIX_RED_SCALE" },
669    { 0x80B5, "GL_POST_COLOR_MATRIX_GREEN_SCALE" },
670    { 0x80B6, "GL_POST_COLOR_MATRIX_BLUE_SCALE" },
671    { 0x80B7, "GL_POST_COLOR_MATRIX_ALPHA_SCALE" },
672    { 0x80B8, "GL_POST_COLOR_MATRIX_RED_BIAS" },
673    { 0x80B9, "GL_POST_COLOR_MATRIX_GREEN_BIAS" },
674    { 0x80BA, "GL_POST_COLOR_MATRIX_BLUE_BIAS" },
675    { 0x80BB, "GL_POST_COLOR_MATRIX_ALPHA_BIAS" },
676    { 0x80BC, "GL_TEXTURE_COLOR_TABLE_SGI" },
677    { 0x80BD, "GL_PROXY_TEXTURE_COLOR_TABLE_SGI" },
678    { 0x80BF, "GL_TEXTURE_COMPARE_FAIL_VALUE_ARB" },
679    { 0x80C8, "GL_BLEND_DST_RGB" },
680    { 0x80C9, "GL_BLEND_SRC_RGB" },
681    { 0x80CA, "GL_BLEND_DST_ALPHA" },
682    { 0x80CB, "GL_BLEND_SRC_ALPHA" },
683    { 0x80D0, "GL_COLOR_TABLE" },
684    { 0x80D1, "GL_POST_CONVOLUTION_COLOR_TABLE" },
685    { 0x80D2, "GL_POST_COLOR_MATRIX_COLOR_TABLE" },
686    { 0x80D3, "GL_PROXY_COLOR_TABLE" },
687    { 0x80D4, "GL_PROXY_POST_CONVOLUTION_COLOR_TABLE" },
688    { 0x80D5, "GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE" },
689    { 0x80D6, "GL_COLOR_TABLE_SCALE" },
690    { 0x80D7, "GL_COLOR_TABLE_BIAS" },
691    { 0x80D8, "GL_COLOR_TABLE_FORMAT" },
692    { 0x80D9, "GL_COLOR_TABLE_WIDTH" },
693    { 0x80DA, "GL_COLOR_TABLE_RED_SIZE" },
694    { 0x80DB, "GL_COLOR_TABLE_GREEN_SIZE" },
695    { 0x80DC, "GL_COLOR_TABLE_BLUE_SIZE" },
696    { 0x80DD, "GL_COLOR_TABLE_ALPHA_SIZE" },
697    { 0x80DE, "GL_COLOR_TABLE_LUMINANCE_SIZE" },
698    { 0x80DF, "GL_COLOR_TABLE_INTENSITY_SIZE" },
699    { 0x80E0, "GL_BGR" },
700    { 0x80E1, "GL_BGRA" },
701    { 0x80E8, "GL_MAX_ELEMENTS_VERTICES" },
702    { 0x80E9, "GL_MAX_ELEMENTS_INDICES" },
703    { 0x80ED, "GL_TEXTURE_INDEX_SIZE_EXT" },
704    { 0x80F0, "GL_CLIP_VOLUME_CLIPPING_HINT_EXT" },
705    { 0x8126, "GL_POINT_SIZE_MIN" },
706    { 0x8127, "GL_POINT_SIZE_MAX" },
707    { 0x8128, "GL_POINT_FADE_THRESHOLD_SIZE" },
708    { 0x8129, "GL_POINT_DISTANCE_ATTENUATION" },
709    { 0x812D, "GL_CLAMP_TO_BORDER" },
710    { 0x812F, "GL_CLAMP_TO_EDGE" },
711    { 0x813A, "GL_TEXTURE_MIN_LOD" },
712    { 0x813B, "GL_TEXTURE_MAX_LOD" },
713    { 0x813C, "GL_TEXTURE_BASE_LEVEL" },
714    { 0x813D, "GL_TEXTURE_MAX_LEVEL" },
715    { 0x8150, "GL_IGNORE_BORDER_HP" },
716    { 0x8151, "GL_CONSTANT_BORDER_HP" },
717    { 0x8153, "GL_REPLICATE_BORDER_HP" },
718    { 0x8154, "GL_CONVOLUTION_BORDER_COLOR" },
719    { 0x8165, "GL_OCCLUSION_TEST_HP" },
720    { 0x8166, "GL_OCCLUSION_TEST_RESULT_HP" },
721    { 0x8170, "GL_LINEAR_CLIPMAP_LINEAR_SGIX" },
722    { 0x8171, "GL_TEXTURE_CLIPMAP_CENTER_SGIX" },
723    { 0x8172, "GL_TEXTURE_CLIPMAP_FRAME_SGIX" },
724    { 0x8173, "GL_TEXTURE_CLIPMAP_OFFSET_SGIX" },
725    { 0x8174, "GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX" },
726    { 0x8175, "GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX" },
727    { 0x8176, "GL_TEXTURE_CLIPMAP_DEPTH_SGIX" },
728    { 0x8177, "GL_MAX_CLIPMAP_DEPTH_SGIX" },
729    { 0x8178, "GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX" },
730    { 0x8179, "GL_POST_TEXTURE_FILTER_BIAS_SGIX" },
731    { 0x817A, "GL_POST_TEXTURE_FILTER_SCALE_SGIX" },
732    { 0x817B, "GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX" },
733    { 0x817C, "GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX" },
734    { 0x818E, "GL_TEXTURE_LOD_BIAS_S_SGIX" },
735    { 0x818F, "GL_TEXTURE_LOD_BIAS_T_SGIX" },
736    { 0x8190, "GL_TEXTURE_LOD_BIAS_R_SGIX" },
737    { 0x8191, "GL_GENERATE_MIPMAP" },
738    { 0x8192, "GL_GENERATE_MIPMAP_HINT" },
739    { 0x8198, "GL_FOG_OFFSET_SGIX" },
740    { 0x8199, "GL_FOG_OFFSET_VALUE_SGIX" },
741    { 0x819A, "GL_TEXTURE_COMPARE_SGIX" },
742    { 0x819B, "GL_TEXTURE_COMPARE_OPERATOR_SGIX" },
743    { 0x819C, "GL_TEXTURE_LEQUAL_R_SGIX" },
744    { 0x819D, "GL_TEXTURE_GEQUAL_R_SGIX" },
745    { 0x81A5, "GL_DEPTH_COMPONENT16" },
746    { 0x81A6, "GL_DEPTH_COMPONENT24" },
747    { 0x81A7, "GL_DEPTH_COMPONENT32" },
748    { 0x81A8, "GL_ARRAY_ELEMENT_LOCK_FIRST_EXT" },
749    { 0x81A9, "GL_ARRAY_ELEMENT_LOCK_COUNT_EXT" },
750    { 0x81D4, "GL_WRAP_BORDER_SUN" },
751    { 0x81EF, "GL_TEXTURE_COLOR_WRITEMASK_SGIS" },
752    { 0x81F8, "GL_LIGHT_MODEL_COLOR_CONTROL" },
753    { 0x81F9, "GL_SINGLE_COLOR" },
754    { 0x81FA, "GL_SEPARATE_SPECULAR_COLOR" },
755    { 0x81FB, "GL_SHARED_TEXTURE_PALETTE_EXT" },
756    { 0x8210, "GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING" },
757    { 0x8211, "GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE" },
758    { 0x8212, "GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE" },
759    { 0x8213, "GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE" },
760    { 0x8214, "GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE" },
761    { 0x8215, "GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE" },
762    { 0x8216, "GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE" },
763    { 0x8217, "GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE" },
764    { 0x8218, "GL_FRAMEBUFFER_DEFAULT" },
765    { 0x8219, "GL_FRAMEBUFFER_UNDEFINED" },
766    { 0x821A, "GL_DEPTH_STENCIL_ATTACHMENT" },
767    { 0x821B, "GL_MAJOR_VERSION" },
768    { 0x821C, "GL_MINOR_VERSION" },
769    { 0x821D, "GL_NUM_EXTENSIONS" },
770    { 0x821E, "GL_CONTEXT_FLAGS" },
771    { 0x8222, "GL_INDEX" },
772    { 0x8223, "GL_DEPTH_BUFFER" },
773    { 0x8224, "GL_STENCIL_BUFFER" },
774    { 0x8225, "GL_COMPRESSED_RED" },
775    { 0x8226, "GL_COMPRESSED_RG" },
776    { 0x8227, "GL_RG" },
777    { 0x8228, "GL_RG_INTEGER" },
778    { 0x8229, "GL_R8" },
779    { 0x822A, "GL_R16" },
780    { 0x822B, "GL_RG8" },
781    { 0x822C, "GL_RG16" },
782    { 0x822D, "GL_R16F" },
783    { 0x822E, "GL_R32F" },
784    { 0x822F, "GL_RG16F" },
785    { 0x8230, "GL_RG32F" },
786    { 0x8231, "GL_R8I" },
787    { 0x8232, "GL_R8UI" },
788    { 0x8233, "GL_R16I" },
789    { 0x8234, "GL_R16UI" },
790    { 0x8235, "GL_R32I" },
791    { 0x8236, "GL_R32UI" },
792    { 0x8237, "GL_RG8I" },
793    { 0x8238, "GL_RG8UI" },
794    { 0x8239, "GL_RG16I" },
795    { 0x823A, "GL_RG16UI" },
796    { 0x823B, "GL_RG32I" },
797    { 0x823C, "GL_RG32UI" },
798    { 0x8242, "GL_DEBUG_OUTPUT_SYNCHRONOUS_ARB" },
799    { 0x8243, "GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH_ARB" },
800    { 0x8244, "GL_DEBUG_CALLBACK_FUNCTION_ARB" },
801    { 0x8245, "GL_DEBUG_CALLBACK_USER_PARAM_ARB" },
802    { 0x8246, "GL_DEBUG_SOURCE_API_ARB" },
803    { 0x8247, "GL_DEBUG_SOURCE_WINDOW_SYSTEM_ARB" },
804    { 0x8248, "GL_DEBUG_SOURCE_SHADER_COMPILER_ARB" },
805    { 0x8249, "GL_DEBUG_SOURCE_THIRD_PARTY_ARB" },
806    { 0x824A, "GL_DEBUG_SOURCE_APPLICATION_ARB" },
807    { 0x824B, "GL_DEBUG_SOURCE_OTHER_ARB" },
808    { 0x824C, "GL_DEBUG_TYPE_ERROR_ARB" },
809    { 0x824D, "GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR_ARB" },
810    { 0x824E, "GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR_ARB" },
811    { 0x824F, "GL_DEBUG_TYPE_PORTABILITY_ARB" },
812    { 0x8250, "GL_DEBUG_TYPE_PERFORMANCE_ARB" },
813    { 0x8251, "GL_DEBUG_TYPE_OTHER_ARB" },
814    { 0x8252, "GL_LOSE_CONTEXT_ON_RESET_ARB" },
815    { 0x8253, "GL_GUILTY_CONTEXT_RESET_ARB" },
816    { 0x8254, "GL_INNOCENT_CONTEXT_RESET_ARB" },
817    { 0x8255, "GL_UNKNOWN_CONTEXT_RESET_ARB" },
818    { 0x8256, "GL_RESET_NOTIFICATION_STRATEGY_ARB" },
819    { 0x8257, "GL_PROGRAM_BINARY_RETRIEVABLE_HINT" },
820    { 0x8261, "GL_NO_RESET_NOTIFICATION_ARB" },
821    { 0x8362, "GL_UNSIGNED_BYTE_2_3_3_REV" },
822    { 0x8363, "GL_UNSIGNED_SHORT_5_6_5" },
823    { 0x8364, "GL_UNSIGNED_SHORT_5_6_5_REV" },
824    { 0x8365, "GL_UNSIGNED_SHORT_4_4_4_4_REV" },
825    { 0x8366, "GL_UNSIGNED_SHORT_1_5_5_5_REV" },
826    { 0x8367, "GL_UNSIGNED_INT_8_8_8_8_REV" },
827    { 0x8368, "GL_UNSIGNED_INT_2_10_10_10_REV" },
828    { 0x8369, "GL_TEXTURE_MAX_CLAMP_S_SGIX" },
829    { 0x836A, "GL_TEXTURE_MAX_CLAMP_T_SGIX" },
830    { 0x836B, "GL_TEXTURE_MAX_CLAMP_R_SGIX" },
831    { 0x8370, "GL_MIRRORED_REPEAT" },
832    { 0x83A0, "GL_RGB_S3TC" },
833    { 0x83A1, "GL_RGB4_S3TC" },
834    { 0x83A2, "GL_RGBA_S3TC" },
835    { 0x83A3, "GL_RGBA4_S3TC" },
836    { 0x83F0, "GL_COMPRESSED_RGB_S3TC_DXT1_EXT" },
837    { 0x83F1, "GL_COMPRESSED_RGBA_S3TC_DXT1_EXT" },
838    { 0x83F2, "GL_COMPRESSED_RGBA_S3TC_DXT3_EXT" },
839    { 0x83F3, "GL_COMPRESSED_RGBA_S3TC_DXT5_EXT" },
840    { 0x844D, "GL_NEAREST_CLIPMAP_NEAREST_SGIX" },
841    { 0x844E, "GL_NEAREST_CLIPMAP_LINEAR_SGIX" },
842    { 0x844F, "GL_LINEAR_CLIPMAP_NEAREST_SGIX" },
843    { 0x8450, "GL_FOG_COORDINATE_SOURCE" },
844    { 0x8451, "GL_FOG_COORD" },
845    { 0x8452, "GL_FRAGMENT_DEPTH" },
846    { 0x8453, "GL_CURRENT_FOG_COORD" },
847    { 0x8454, "GL_FOG_COORDINATE_ARRAY_TYPE" },
848    { 0x8455, "GL_FOG_COORDINATE_ARRAY_STRIDE" },
849    { 0x8456, "GL_FOG_COORDINATE_ARRAY_POINTER" },
850    { 0x8457, "GL_FOG_COORDINATE_ARRAY" },
851    { 0x8458, "GL_COLOR_SUM" },
852    { 0x8459, "GL_CURRENT_SECONDARY_COLOR" },
853    { 0x845A, "GL_SECONDARY_COLOR_ARRAY_SIZE" },
854    { 0x845B, "GL_SECONDARY_COLOR_ARRAY_TYPE" },
855    { 0x845C, "GL_SECONDARY_COLOR_ARRAY_STRIDE" },
856    { 0x845D, "GL_SECONDARY_COLOR_ARRAY_POINTER" },
857    { 0x845E, "GL_SECONDARY_COLOR_ARRAY" },
858    { 0x845F, "GL_CURRENT_RASTER_SECONDARY_COLOR" },
859    { 0x846D, "GL_ALIASED_POINT_SIZE_RANGE" },
860    { 0x846E, "GL_ALIASED_LINE_WIDTH_RANGE" },
861    { 0x84C0, "GL_TEXTURE0" },
862    { 0x84C1, "GL_TEXTURE1" },
863    { 0x84C2, "GL_TEXTURE2" },
864    { 0x84C3, "GL_TEXTURE3" },
865    { 0x84C4, "GL_TEXTURE4" },
866    { 0x84C5, "GL_TEXTURE5" },
867    { 0x84C6, "GL_TEXTURE6" },
868    { 0x84C7, "GL_TEXTURE7" },
869    { 0x84C8, "GL_TEXTURE8" },
870    { 0x84C9, "GL_TEXTURE9" },
871    { 0x84CA, "GL_TEXTURE10" },
872    { 0x84CB, "GL_TEXTURE11" },
873    { 0x84CC, "GL_TEXTURE12" },
874    { 0x84CD, "GL_TEXTURE13" },
875    { 0x84CE, "GL_TEXTURE14" },
876    { 0x84CF, "GL_TEXTURE15" },
877    { 0x84D0, "GL_TEXTURE16" },
878    { 0x84D1, "GL_TEXTURE17" },
879    { 0x84D2, "GL_TEXTURE18" },
880    { 0x84D3, "GL_TEXTURE19" },
881    { 0x84D4, "GL_TEXTURE20" },
882    { 0x84D5, "GL_TEXTURE21" },
883    { 0x84D6, "GL_TEXTURE22" },
884    { 0x84D7, "GL_TEXTURE23" },
885    { 0x84D8, "GL_TEXTURE24" },
886    { 0x84D9, "GL_TEXTURE25" },
887    { 0x84DA, "GL_TEXTURE26" },
888    { 0x84DB, "GL_TEXTURE27" },
889    { 0x84DC, "GL_TEXTURE28" },
890    { 0x84DD, "GL_TEXTURE29" },
891    { 0x84DE, "GL_TEXTURE30" },
892    { 0x84DF, "GL_TEXTURE31" },
893    { 0x84E0, "GL_ACTIVE_TEXTURE" },
894    { 0x84E1, "GL_CLIENT_ACTIVE_TEXTURE" },
895    { 0x84E2, "GL_MAX_TEXTURE_UNITS" },
896    { 0x84E3, "GL_TRANSPOSE_MODELVIEW_MATRIX" },
897    { 0x84E4, "GL_TRANSPOSE_PROJECTION_MATRIX" },
898    { 0x84E5, "GL_TRANSPOSE_TEXTURE_MATRIX" },
899    { 0x84E6, "GL_TRANSPOSE_COLOR_MATRIX" },
900    { 0x84E7, "GL_SUBTRACT" },
901    { 0x84E8, "GL_MAX_RENDERBUFFER_SIZE" },
902    { 0x84E9, "GL_COMPRESSED_ALPHA" },
903    { 0x84EA, "GL_COMPRESSED_LUMINANCE" },
904    { 0x84EB, "GL_COMPRESSED_LUMINANCE_ALPHA" },
905    { 0x84EC, "GL_COMPRESSED_INTENSITY" },
906    { 0x84ED, "GL_COMPRESSED_RGB" },
907    { 0x84EE, "GL_COMPRESSED_RGBA" },
908    { 0x84EF, "GL_TEXTURE_COMPRESSION_HINT" },
909    { 0x84F5, "GL_TEXTURE_RECTANGLE" },
910    { 0x84F6, "GL_TEXTURE_BINDING_RECTANGLE" },
911    { 0x84F7, "GL_PROXY_TEXTURE_RECTANGLE" },
912    { 0x84F8, "GL_MAX_RECTANGLE_TEXTURE_SIZE" },
913    { 0x84F9, "GL_DEPTH_STENCIL" },
914    { 0x84FA, "GL_UNSIGNED_INT_24_8" },
915    { 0x84FD, "GL_MAX_TEXTURE_LOD_BIAS" },
916    { 0x84FE, "GL_TEXTURE_MAX_ANISOTROPY_EXT" },
917    { 0x84FF, "GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT" },
918    { 0x8500, "GL_TEXTURE_FILTER_CONTROL" },
919    { 0x8501, "GL_TEXTURE_LOD_BIAS" },
920    { 0x8503, "GL_COMBINE4_NV" },
921    { 0x8504, "GL_MAX_SHININESS_NV" },
922    { 0x8505, "GL_MAX_SPOT_EXPONENT_NV" },
923    { 0x8507, "GL_INCR_WRAP" },
924    { 0x8508, "GL_DECR_WRAP" },
925    { 0x850A, "GL_MODELVIEW1_ARB" },
926    { 0x8511, "GL_NORMAL_MAP" },
927    { 0x8512, "GL_REFLECTION_MAP" },
928    { 0x8513, "GL_TEXTURE_CUBE_MAP" },
929    { 0x8514, "GL_TEXTURE_BINDING_CUBE_MAP" },
930    { 0x8515, "GL_TEXTURE_CUBE_MAP_POSITIVE_X" },
931    { 0x8516, "GL_TEXTURE_CUBE_MAP_NEGATIVE_X" },
932    { 0x8517, "GL_TEXTURE_CUBE_MAP_POSITIVE_Y" },
933    { 0x8518, "GL_TEXTURE_CUBE_MAP_NEGATIVE_Y" },
934    { 0x8519, "GL_TEXTURE_CUBE_MAP_POSITIVE_Z" },
935    { 0x851A, "GL_TEXTURE_CUBE_MAP_NEGATIVE_Z" },
936    { 0x851B, "GL_PROXY_TEXTURE_CUBE_MAP" },
937    { 0x851C, "GL_MAX_CUBE_MAP_TEXTURE_SIZE" },
938    { 0x8534, "GL_MULTISAMPLE_FILTER_HINT_NV" },
939    { 0x8558, "GL_PRIMITIVE_RESTART_NV" },
940    { 0x8559, "GL_PRIMITIVE_RESTART_INDEX_NV" },
941    { 0x855A, "GL_FOG_DISTANCE_MODE_NV" },
942    { 0x855B, "GL_EYE_RADIAL_NV" },
943    { 0x855C, "GL_EYE_PLANE_ABSOLUTE_NV" },
944    { 0x8570, "GL_COMBINE" },
945    { 0x8571, "GL_COMBINE_RGB" },
946    { 0x8572, "GL_COMBINE_ALPHA" },
947    { 0x8573, "GL_RGB_SCALE" },
948    { 0x8574, "GL_ADD_SIGNED" },
949    { 0x8575, "GL_INTERPOLATE" },
950    { 0x8576, "GL_CONSTANT" },
951    { 0x8577, "GL_PRIMARY_COLOR" },
952    { 0x8578, "GL_PREVIOUS" },
953    { 0x8580, "GL_SOURCE0_RGB" },
954    { 0x8581, "GL_SOURCE1_RGB" },
955    { 0x8582, "GL_SOURCE2_RGB" },
956    { 0x8583, "GL_SOURCE3_RGB_NV" },
957    { 0x8588, "GL_SOURCE0_ALPHA" },
958    { 0x8589, "GL_SOURCE1_ALPHA" },
959    { 0x858A, "GL_SOURCE2_ALPHA" },
960    { 0x858B, "GL_SOURCE3_ALPHA_NV" },
961    { 0x8590, "GL_OPERAND0_RGB" },
962    { 0x8591, "GL_OPERAND1_RGB" },
963    { 0x8592, "GL_OPERAND2_RGB" },
964    { 0x8593, "GL_OPERAND3_RGB_NV" },
965    { 0x8598, "GL_OPERAND0_ALPHA" },
966    { 0x8599, "GL_OPERAND1_ALPHA" },
967    { 0x859A, "GL_OPERAND2_ALPHA" },
968    { 0x859B, "GL_OPERAND3_ALPHA_NV" },
969    { 0x85B3, "GL_BUFFER_OBJECT_APPLE" },
970    { 0x85B5, "GL_VERTEX_ARRAY_BINDING" },
971    { 0x85B7, "GL_TEXTURE_RANGE_LENGTH_APPLE" },
972    { 0x85B8, "GL_TEXTURE_RANGE_POINTER_APPLE" },
973    { 0x85B9, "GL_YCBCR_422_APPLE" },
974    { 0x85BA, "GL_UNSIGNED_SHORT_8_8_APPLE" },
975    { 0x85BB, "GL_UNSIGNED_SHORT_8_8_REV_APPLE" },
976    { 0x85BC, "GL_TEXTURE_STORAGE_HINT_APPLE" },
977    { 0x85BD, "GL_STORAGE_PRIVATE_APPLE" },
978    { 0x85BE, "GL_STORAGE_CACHED_APPLE" },
979    { 0x85BF, "GL_STORAGE_SHARED_APPLE" },
980    { 0x85CC, "GL_SLICE_ACCUM_SUN" },
981    { 0x8614, "GL_QUAD_MESH_SUN" },
982    { 0x8615, "GL_TRIANGLE_MESH_SUN" },
983    { 0x8620, "GL_VERTEX_PROGRAM_ARB" },
984    { 0x8621, "GL_VERTEX_STATE_PROGRAM_NV" },
985    { 0x8622, "GL_VERTEX_ATTRIB_ARRAY_ENABLED" },
986    { 0x8623, "GL_VERTEX_ATTRIB_ARRAY_SIZE" },
987    { 0x8624, "GL_VERTEX_ATTRIB_ARRAY_STRIDE" },
988    { 0x8625, "GL_VERTEX_ATTRIB_ARRAY_TYPE" },
989    { 0x8626, "GL_CURRENT_VERTEX_ATTRIB" },
990    { 0x8627, "GL_PROGRAM_LENGTH_ARB" },
991    { 0x8628, "GL_PROGRAM_STRING_ARB" },
992    { 0x8629, "GL_MODELVIEW_PROJECTION_NV" },
993    { 0x862A, "GL_IDENTITY_NV" },
994    { 0x862B, "GL_INVERSE_NV" },
995    { 0x862C, "GL_TRANSPOSE_NV" },
996    { 0x862D, "GL_INVERSE_TRANSPOSE_NV" },
997    { 0x862E, "GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB" },
998    { 0x862F, "GL_MAX_PROGRAM_MATRICES_ARB" },
999    { 0x8630, "GL_MATRIX0_NV" },
1000    { 0x8631, "GL_MATRIX1_NV" },
1001    { 0x8632, "GL_MATRIX2_NV" },
1002    { 0x8633, "GL_MATRIX3_NV" },
1003    { 0x8634, "GL_MATRIX4_NV" },
1004    { 0x8635, "GL_MATRIX5_NV" },
1005    { 0x8636, "GL_MATRIX6_NV" },
1006    { 0x8637, "GL_MATRIX7_NV" },
1007    { 0x8640, "GL_CURRENT_MATRIX_STACK_DEPTH_ARB" },
1008    { 0x8641, "GL_CURRENT_MATRIX_ARB" },
1009    { 0x8642, "GL_PROGRAM_POINT_SIZE" },
1010    { 0x8643, "GL_VERTEX_PROGRAM_TWO_SIDE" },
1011    { 0x8644, "GL_PROGRAM_PARAMETER_NV" },
1012    { 0x8645, "GL_VERTEX_ATTRIB_ARRAY_POINTER" },
1013    { 0x8646, "GL_PROGRAM_TARGET_NV" },
1014    { 0x8647, "GL_PROGRAM_RESIDENT_NV" },
1015    { 0x8648, "GL_TRACK_MATRIX_NV" },
1016    { 0x8649, "GL_TRACK_MATRIX_TRANSFORM_NV" },
1017    { 0x864A, "GL_VERTEX_PROGRAM_BINDING_NV" },
1018    { 0x864B, "GL_PROGRAM_ERROR_POSITION_ARB" },
1019    { 0x864F, "GL_DEPTH_CLAMP" },
1020    { 0x8650, "GL_VERTEX_ATTRIB_ARRAY0_NV" },
1021    { 0x8651, "GL_VERTEX_ATTRIB_ARRAY1_NV" },
1022    { 0x8652, "GL_VERTEX_ATTRIB_ARRAY2_NV" },
1023    { 0x8653, "GL_VERTEX_ATTRIB_ARRAY3_NV" },
1024    { 0x8654, "GL_VERTEX_ATTRIB_ARRAY4_NV" },
1025    { 0x8655, "GL_VERTEX_ATTRIB_ARRAY5_NV" },
1026    { 0x8656, "GL_VERTEX_ATTRIB_ARRAY6_NV" },
1027    { 0x8657, "GL_VERTEX_ATTRIB_ARRAY7_NV" },
1028    { 0x8658, "GL_VERTEX_ATTRIB_ARRAY8_NV" },
1029    { 0x8659, "GL_VERTEX_ATTRIB_ARRAY9_NV" },
1030    { 0x865A, "GL_VERTEX_ATTRIB_ARRAY10_NV" },
1031    { 0x865B, "GL_VERTEX_ATTRIB_ARRAY11_NV" },
1032    { 0x865C, "GL_VERTEX_ATTRIB_ARRAY12_NV" },
1033    { 0x865D, "GL_VERTEX_ATTRIB_ARRAY13_NV" },
1034    { 0x865E, "GL_VERTEX_ATTRIB_ARRAY14_NV" },
1035    { 0x865F, "GL_VERTEX_ATTRIB_ARRAY15_NV" },
1036    { 0x8660, "GL_MAP1_VERTEX_ATTRIB0_4_NV" },
1037    { 0x8661, "GL_MAP1_VERTEX_ATTRIB1_4_NV" },
1038    { 0x8662, "GL_MAP1_VERTEX_ATTRIB2_4_NV" },
1039    { 0x8663, "GL_MAP1_VERTEX_ATTRIB3_4_NV" },
1040    { 0x8664, "GL_MAP1_VERTEX_ATTRIB4_4_NV" },
1041    { 0x8665, "GL_MAP1_VERTEX_ATTRIB5_4_NV" },
1042    { 0x8666, "GL_MAP1_VERTEX_ATTRIB6_4_NV" },
1043    { 0x8667, "GL_MAP1_VERTEX_ATTRIB7_4_NV" },
1044    { 0x8668, "GL_MAP1_VERTEX_ATTRIB8_4_NV" },
1045    { 0x8669, "GL_MAP1_VERTEX_ATTRIB9_4_NV" },
1046    { 0x866A, "GL_MAP1_VERTEX_ATTRIB10_4_NV" },
1047    { 0x866B, "GL_MAP1_VERTEX_ATTRIB11_4_NV" },
1048    { 0x866C, "GL_MAP1_VERTEX_ATTRIB12_4_NV" },
1049    { 0x866D, "GL_MAP1_VERTEX_ATTRIB13_4_NV" },
1050    { 0x866E, "GL_MAP1_VERTEX_ATTRIB14_4_NV" },
1051    { 0x866F, "GL_MAP1_VERTEX_ATTRIB15_4_NV" },
1052    { 0x8670, "GL_MAP2_VERTEX_ATTRIB0_4_NV" },
1053    { 0x8671, "GL_MAP2_VERTEX_ATTRIB1_4_NV" },
1054    { 0x8672, "GL_MAP2_VERTEX_ATTRIB2_4_NV" },
1055    { 0x8673, "GL_MAP2_VERTEX_ATTRIB3_4_NV" },
1056    { 0x8674, "GL_MAP2_VERTEX_ATTRIB4_4_NV" },
1057    { 0x8675, "GL_MAP2_VERTEX_ATTRIB5_4_NV" },
1058    { 0x8676, "GL_MAP2_VERTEX_ATTRIB6_4_NV" },
1059 
1060    /* Both GL_PROGRAM_BINDING_ARB and GL_MAP2_VERTEX_ATTRIB7_4_NV were
1061     * accidentally assigned the same value.  The generator script
1062     * prefers ARB extension names to vendor extension names, so only
1063     * GL_PROGRAM_BINDING_ARB is checked.
1064     */
1065 /*   { 0x8677, "GL_MAP2_VERTEX_ATTRIB7_4_NV" },*/
1066    { 0x8677, "GL_PROGRAM_BINDING_ARB" },
1067 
1068    { 0x8678, "GL_MAP2_VERTEX_ATTRIB8_4_NV" },
1069    { 0x8679, "GL_MAP2_VERTEX_ATTRIB9_4_NV" },
1070    { 0x867A, "GL_MAP2_VERTEX_ATTRIB10_4_NV" },
1071    { 0x867B, "GL_MAP2_VERTEX_ATTRIB11_4_NV" },
1072    { 0x867C, "GL_MAP2_VERTEX_ATTRIB12_4_NV" },
1073    { 0x867D, "GL_MAP2_VERTEX_ATTRIB13_4_NV" },
1074    { 0x867E, "GL_MAP2_VERTEX_ATTRIB14_4_NV" },
1075    { 0x867F, "GL_MAP2_VERTEX_ATTRIB15_4_NV" },
1076    { 0x86A0, "GL_TEXTURE_COMPRESSED_IMAGE_SIZE" },
1077    { 0x86A1, "GL_TEXTURE_COMPRESSED" },
1078    { 0x86A2, "GL_NUM_COMPRESSED_TEXTURE_FORMATS" },
1079    { 0x86A3, "GL_COMPRESSED_TEXTURE_FORMATS" },
1080    { 0x86A4, "GL_MAX_VERTEX_UNITS_ARB" },
1081    { 0x86A5, "GL_ACTIVE_VERTEX_UNITS_ARB" },
1082    { 0x86A6, "GL_WEIGHT_SUM_UNITY_ARB" },
1083    { 0x86A7, "GL_VERTEX_BLEND_ARB" },
1084    { 0x86A8, "GL_CURRENT_WEIGHT_ARB" },
1085    { 0x86A9, "GL_WEIGHT_ARRAY_TYPE_ARB" },
1086    { 0x86AA, "GL_WEIGHT_ARRAY_STRIDE_ARB" },
1087    { 0x86AB, "GL_WEIGHT_ARRAY_SIZE_ARB" },
1088    { 0x86AC, "GL_WEIGHT_ARRAY_POINTER_ARB" },
1089    { 0x86AD, "GL_WEIGHT_ARRAY_ARB" },
1090    { 0x86AE, "GL_DOT3_RGB" },
1091    { 0x86AF, "GL_DOT3_RGBA" },
1092    { 0x86B0, "GL_COMPRESSED_RGB_FXT1_3DFX" },
1093    { 0x86B1, "GL_COMPRESSED_RGBA_FXT1_3DFX" },
1094    { 0x86B2, "GL_MULTISAMPLE_3DFX" },
1095    { 0x86B3, "GL_SAMPLE_BUFFERS_3DFX" },
1096    { 0x86B4, "GL_SAMPLES_3DFX" },
1097    { 0x8722, "GL_MODELVIEW2_ARB" },
1098    { 0x8723, "GL_MODELVIEW3_ARB" },
1099    { 0x8724, "GL_MODELVIEW4_ARB" },
1100    { 0x8725, "GL_MODELVIEW5_ARB" },
1101    { 0x8726, "GL_MODELVIEW6_ARB" },
1102    { 0x8727, "GL_MODELVIEW7_ARB" },
1103    { 0x8728, "GL_MODELVIEW8_ARB" },
1104    { 0x8729, "GL_MODELVIEW9_ARB" },
1105    { 0x872A, "GL_MODELVIEW10_ARB" },
1106    { 0x872B, "GL_MODELVIEW11_ARB" },
1107    { 0x872C, "GL_MODELVIEW12_ARB" },
1108    { 0x872D, "GL_MODELVIEW13_ARB" },
1109    { 0x872E, "GL_MODELVIEW14_ARB" },
1110    { 0x872F, "GL_MODELVIEW15_ARB" },
1111    { 0x8730, "GL_MODELVIEW16_ARB" },
1112    { 0x8731, "GL_MODELVIEW17_ARB" },
1113    { 0x8732, "GL_MODELVIEW18_ARB" },
1114    { 0x8733, "GL_MODELVIEW19_ARB" },
1115    { 0x8734, "GL_MODELVIEW20_ARB" },
1116    { 0x8735, "GL_MODELVIEW21_ARB" },
1117    { 0x8736, "GL_MODELVIEW22_ARB" },
1118    { 0x8737, "GL_MODELVIEW23_ARB" },
1119    { 0x8738, "GL_MODELVIEW24_ARB" },
1120    { 0x8739, "GL_MODELVIEW25_ARB" },
1121    { 0x873A, "GL_MODELVIEW26_ARB" },
1122    { 0x873B, "GL_MODELVIEW27_ARB" },
1123    { 0x873C, "GL_MODELVIEW28_ARB" },
1124    { 0x873D, "GL_MODELVIEW29_ARB" },
1125    { 0x873E, "GL_MODELVIEW30_ARB" },
1126    { 0x873F, "GL_MODELVIEW31_ARB" },
1127    { 0x8740, "GL_DOT3_RGB_EXT" },
1128 
1129    /* Both GL_DOT3_RGBA_EXT and GL_PROGRAM_BINARY_LENGTH were accidentally
1130     * assigned the same value.  The generator script prefers "core" names to
1131     * extension names, so only GL_PROGRAM_BINARY_LENGTH is checked.
1132     */
1133 /*   { 0x8741, "GL_DOT3_RGBA_EXT" },*/
1134    { 0x8741, "GL_PROGRAM_BINARY_LENGTH" },
1135 
1136    { 0x8742, "GL_MIRROR_CLAMP_EXT" },
1137    { 0x8743, "GL_MIRROR_CLAMP_TO_EDGE_EXT" },
1138    { 0x8744, "GL_MODULATE_ADD_ATI" },
1139    { 0x8745, "GL_MODULATE_SIGNED_ADD_ATI" },
1140    { 0x8746, "GL_MODULATE_SUBTRACT_ATI" },
1141    { 0x8757, "GL_YCBCR_MESA" },
1142    { 0x8758, "GL_PACK_INVERT_MESA" },
1143    { 0x8759, "GL_DEBUG_OBJECT_MESA" },
1144    { 0x875A, "GL_DEBUG_PRINT_MESA" },
1145    { 0x875B, "GL_DEBUG_ASSERT_MESA" },
1146    { 0x8764, "GL_BUFFER_SIZE" },
1147    { 0x8765, "GL_BUFFER_USAGE" },
1148    { 0x8775, "GL_BUMP_ROT_MATRIX_ATI" },
1149    { 0x8776, "GL_BUMP_ROT_MATRIX_SIZE_ATI" },
1150    { 0x8777, "GL_BUMP_NUM_TEX_UNITS_ATI" },
1151    { 0x8778, "GL_BUMP_TEX_UNITS_ATI" },
1152    { 0x8779, "GL_DUDV_ATI" },
1153    { 0x877A, "GL_DU8DV8_ATI" },
1154    { 0x877B, "GL_BUMP_ENVMAP_ATI" },
1155    { 0x877C, "GL_BUMP_TARGET_ATI" },
1156    { 0x87FE, "GL_NUM_PROGRAM_BINARY_FORMATS" },
1157    { 0x87FF, "GL_PROGRAM_BINARY_FORMATS" },
1158    { 0x8800, "GL_STENCIL_BACK_FUNC" },
1159    { 0x8801, "GL_STENCIL_BACK_FAIL" },
1160    { 0x8802, "GL_STENCIL_BACK_PASS_DEPTH_FAIL" },
1161    { 0x8803, "GL_STENCIL_BACK_PASS_DEPTH_PASS" },
1162    { 0x8804, "GL_FRAGMENT_PROGRAM_ARB" },
1163    { 0x8805, "GL_PROGRAM_ALU_INSTRUCTIONS_ARB" },
1164    { 0x8806, "GL_PROGRAM_TEX_INSTRUCTIONS_ARB" },
1165    { 0x8807, "GL_PROGRAM_TEX_INDIRECTIONS_ARB" },
1166    { 0x8808, "GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB" },
1167    { 0x8809, "GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB" },
1168    { 0x880A, "GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB" },
1169    { 0x880B, "GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB" },
1170    { 0x880C, "GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB" },
1171    { 0x880D, "GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB" },
1172    { 0x880E, "GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB" },
1173    { 0x880F, "GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB" },
1174    { 0x8810, "GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB" },
1175    { 0x8814, "GL_RGBA32F" },
1176    { 0x8815, "GL_RGB32F" },
1177    { 0x8816, "GL_ALPHA32F_ARB" },
1178    { 0x8817, "GL_INTENSITY32F_ARB" },
1179    { 0x8818, "GL_LUMINANCE32F_ARB" },
1180    { 0x8819, "GL_LUMINANCE_ALPHA32F_ARB" },
1181    { 0x881A, "GL_RGBA16F" },
1182    { 0x881B, "GL_RGB16F" },
1183    { 0x881C, "GL_ALPHA16F_ARB" },
1184    { 0x881D, "GL_INTENSITY16F_ARB" },
1185    { 0x881E, "GL_LUMINANCE16F_ARB" },
1186    { 0x881F, "GL_LUMINANCE_ALPHA16F_ARB" },
1187    { 0x8820, "GL_RGBA_FLOAT_MODE_ARB" },
1188    { 0x8824, "GL_MAX_DRAW_BUFFERS" },
1189    { 0x8825, "GL_DRAW_BUFFER0" },
1190    { 0x8826, "GL_DRAW_BUFFER1" },
1191    { 0x8827, "GL_DRAW_BUFFER2" },
1192    { 0x8828, "GL_DRAW_BUFFER3" },
1193    { 0x8829, "GL_DRAW_BUFFER4" },
1194    { 0x882A, "GL_DRAW_BUFFER5" },
1195    { 0x882B, "GL_DRAW_BUFFER6" },
1196    { 0x882C, "GL_DRAW_BUFFER7" },
1197    { 0x882D, "GL_DRAW_BUFFER8" },
1198    { 0x882E, "GL_DRAW_BUFFER9" },
1199    { 0x882F, "GL_DRAW_BUFFER10" },
1200    { 0x8830, "GL_DRAW_BUFFER11" },
1201    { 0x8831, "GL_DRAW_BUFFER12" },
1202    { 0x8832, "GL_DRAW_BUFFER13" },
1203    { 0x8833, "GL_DRAW_BUFFER14" },
1204    { 0x8834, "GL_DRAW_BUFFER15" },
1205    { 0x883D, "GL_BLEND_EQUATION_ALPHA" },
1206    { 0x8840, "GL_MATRIX_PALETTE_ARB" },
1207    { 0x8841, "GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB" },
1208    { 0x8842, "GL_MAX_PALETTE_MATRICES_ARB" },
1209    { 0x8843, "GL_CURRENT_PALETTE_MATRIX_ARB" },
1210    { 0x8844, "GL_MATRIX_INDEX_ARRAY_ARB" },
1211    { 0x8845, "GL_CURRENT_MATRIX_INDEX_ARB" },
1212    { 0x8846, "GL_MATRIX_INDEX_ARRAY_SIZE_ARB" },
1213    { 0x8847, "GL_MATRIX_INDEX_ARRAY_TYPE_ARB" },
1214    { 0x8848, "GL_MATRIX_INDEX_ARRAY_STRIDE_ARB" },
1215    { 0x8849, "GL_MATRIX_INDEX_ARRAY_POINTER_ARB" },
1216    { 0x884A, "GL_TEXTURE_DEPTH_SIZE" },
1217    { 0x884B, "GL_DEPTH_TEXTURE_MODE" },
1218    { 0x884C, "GL_TEXTURE_COMPARE_MODE" },
1219    { 0x884D, "GL_TEXTURE_COMPARE_FUNC" },
1220    { 0x884E, "GL_COMPARE_REF_TO_TEXTURE" },
1221    { 0x884F, "GL_TEXTURE_CUBE_MAP_SEAMLESS" },
1222    { 0x8861, "GL_POINT_SPRITE" },
1223    { 0x8862, "GL_COORD_REPLACE" },
1224    { 0x8863, "GL_POINT_SPRITE_R_MODE_NV" },
1225    { 0x8864, "GL_QUERY_COUNTER_BITS" },
1226    { 0x8865, "GL_CURRENT_QUERY" },
1227    { 0x8866, "GL_QUERY_RESULT" },
1228    { 0x8867, "GL_QUERY_RESULT_AVAILABLE" },
1229    { 0x8868, "GL_MAX_FRAGMENT_PROGRAM_LOCAL_PARAMETERS_NV" },
1230    { 0x8869, "GL_MAX_VERTEX_ATTRIBS" },
1231    { 0x886A, "GL_VERTEX_ATTRIB_ARRAY_NORMALIZED" },
1232    { 0x886E, "GL_DEPTH_STENCIL_TO_RGBA_NV" },
1233    { 0x886F, "GL_DEPTH_STENCIL_TO_BGRA_NV" },
1234    { 0x8870, "GL_FRAGMENT_PROGRAM_NV" },
1235    { 0x8871, "GL_MAX_TEXTURE_COORDS" },
1236    { 0x8872, "GL_MAX_TEXTURE_IMAGE_UNITS" },
1237    { 0x8873, "GL_FRAGMENT_PROGRAM_BINDING_NV" },
1238    { 0x8874, "GL_PROGRAM_ERROR_STRING_ARB" },
1239    { 0x8875, "GL_PROGRAM_FORMAT_ASCII_ARB" },
1240    { 0x8876, "GL_PROGRAM_FORMAT_ARB" },
1241    { 0x888F, "GL_TEXTURE_UNSIGNED_REMAP_MODE_NV" },
1242    { 0x8890, "GL_DEPTH_BOUNDS_TEST_EXT" },
1243    { 0x8891, "GL_DEPTH_BOUNDS_EXT" },
1244    { 0x8892, "GL_ARRAY_BUFFER" },
1245    { 0x8893, "GL_ELEMENT_ARRAY_BUFFER" },
1246    { 0x8894, "GL_ARRAY_BUFFER_BINDING" },
1247    { 0x8895, "GL_ELEMENT_ARRAY_BUFFER_BINDING" },
1248    { 0x8896, "GL_VERTEX_ARRAY_BUFFER_BINDING" },
1249    { 0x8897, "GL_NORMAL_ARRAY_BUFFER_BINDING" },
1250    { 0x8898, "GL_COLOR_ARRAY_BUFFER_BINDING" },
1251    { 0x8899, "GL_INDEX_ARRAY_BUFFER_BINDING" },
1252    { 0x889A, "GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING" },
1253    { 0x889B, "GL_EDGE_FLAG_ARRAY_BUFFER_BINDING" },
1254    { 0x889C, "GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING" },
1255    { 0x889D, "GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING" },
1256    { 0x889E, "GL_WEIGHT_ARRAY_BUFFER_BINDING" },
1257    { 0x889F, "GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING" },
1258    { 0x88A0, "GL_PROGRAM_INSTRUCTIONS_ARB" },
1259    { 0x88A1, "GL_MAX_PROGRAM_INSTRUCTIONS_ARB" },
1260    { 0x88A2, "GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB" },
1261    { 0x88A3, "GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB" },
1262    { 0x88A4, "GL_PROGRAM_TEMPORARIES_ARB" },
1263    { 0x88A5, "GL_MAX_PROGRAM_TEMPORARIES_ARB" },
1264    { 0x88A6, "GL_PROGRAM_NATIVE_TEMPORARIES_ARB" },
1265    { 0x88A7, "GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB" },
1266    { 0x88A8, "GL_PROGRAM_PARAMETERS_ARB" },
1267    { 0x88A9, "GL_MAX_PROGRAM_PARAMETERS_ARB" },
1268    { 0x88AA, "GL_PROGRAM_NATIVE_PARAMETERS_ARB" },
1269    { 0x88AB, "GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB" },
1270    { 0x88AC, "GL_PROGRAM_ATTRIBS_ARB" },
1271    { 0x88AD, "GL_MAX_PROGRAM_ATTRIBS_ARB" },
1272    { 0x88AE, "GL_PROGRAM_NATIVE_ATTRIBS_ARB" },
1273    { 0x88AF, "GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB" },
1274    { 0x88B0, "GL_PROGRAM_ADDRESS_REGISTERS_ARB" },
1275    { 0x88B1, "GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB" },
1276    { 0x88B2, "GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB" },
1277    { 0x88B3, "GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB" },
1278    { 0x88B4, "GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB" },
1279    { 0x88B5, "GL_MAX_PROGRAM_ENV_PARAMETERS_ARB" },
1280    { 0x88B6, "GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB" },
1281    { 0x88B7, "GL_TRANSPOSE_CURRENT_MATRIX_ARB" },
1282    { 0x88B8, "GL_READ_ONLY" },
1283    { 0x88B9, "GL_WRITE_ONLY" },
1284    { 0x88BA, "GL_READ_WRITE" },
1285    { 0x88BB, "GL_BUFFER_ACCESS" },
1286    { 0x88BC, "GL_BUFFER_MAPPED" },
1287    { 0x88BD, "GL_BUFFER_MAP_POINTER" },
1288    { 0x88BF, "GL_TIME_ELAPSED" },
1289    { 0x88C0, "GL_MATRIX0_ARB" },
1290    { 0x88C1, "GL_MATRIX1_ARB" },
1291    { 0x88C2, "GL_MATRIX2_ARB" },
1292    { 0x88C3, "GL_MATRIX3_ARB" },
1293    { 0x88C4, "GL_MATRIX4_ARB" },
1294    { 0x88C5, "GL_MATRIX5_ARB" },
1295    { 0x88C6, "GL_MATRIX6_ARB" },
1296    { 0x88C7, "GL_MATRIX7_ARB" },
1297    { 0x88C8, "GL_MATRIX8_ARB" },
1298    { 0x88C9, "GL_MATRIX9_ARB" },
1299    { 0x88CA, "GL_MATRIX10_ARB" },
1300    { 0x88CB, "GL_MATRIX11_ARB" },
1301    { 0x88CC, "GL_MATRIX12_ARB" },
1302    { 0x88CD, "GL_MATRIX13_ARB" },
1303    { 0x88CE, "GL_MATRIX14_ARB" },
1304    { 0x88CF, "GL_MATRIX15_ARB" },
1305    { 0x88D0, "GL_MATRIX16_ARB" },
1306    { 0x88D1, "GL_MATRIX17_ARB" },
1307    { 0x88D2, "GL_MATRIX18_ARB" },
1308    { 0x88D3, "GL_MATRIX19_ARB" },
1309    { 0x88D4, "GL_MATRIX20_ARB" },
1310    { 0x88D5, "GL_MATRIX21_ARB" },
1311    { 0x88D6, "GL_MATRIX22_ARB" },
1312    { 0x88D7, "GL_MATRIX23_ARB" },
1313    { 0x88D8, "GL_MATRIX24_ARB" },
1314    { 0x88D9, "GL_MATRIX25_ARB" },
1315    { 0x88DA, "GL_MATRIX26_ARB" },
1316    { 0x88DB, "GL_MATRIX27_ARB" },
1317    { 0x88DC, "GL_MATRIX28_ARB" },
1318    { 0x88DD, "GL_MATRIX29_ARB" },
1319    { 0x88DE, "GL_MATRIX30_ARB" },
1320    { 0x88DF, "GL_MATRIX31_ARB" },
1321    { 0x88E0, "GL_STREAM_DRAW" },
1322    { 0x88E1, "GL_STREAM_READ" },
1323    { 0x88E2, "GL_STREAM_COPY" },
1324    { 0x88E4, "GL_STATIC_DRAW" },
1325    { 0x88E5, "GL_STATIC_READ" },
1326    { 0x88E6, "GL_STATIC_COPY" },
1327    { 0x88E8, "GL_DYNAMIC_DRAW" },
1328    { 0x88E9, "GL_DYNAMIC_READ" },
1329    { 0x88EA, "GL_DYNAMIC_COPY" },
1330    { 0x88EB, "GL_PIXEL_PACK_BUFFER" },
1331    { 0x88EC, "GL_PIXEL_UNPACK_BUFFER" },
1332    { 0x88ED, "GL_PIXEL_PACK_BUFFER_BINDING" },
1333    { 0x88EF, "GL_PIXEL_UNPACK_BUFFER_BINDING" },
1334    { 0x88F0, "GL_DEPTH24_STENCIL8" },
1335    { 0x88F1, "GL_TEXTURE_STENCIL_SIZE" },
1336    { 0x88F4, "GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV" },
1337    { 0x88F5, "GL_MAX_PROGRAM_CALL_DEPTH_NV" },
1338    { 0x88F6, "GL_MAX_PROGRAM_IF_DEPTH_NV" },
1339    { 0x88F7, "GL_MAX_PROGRAM_LOOP_DEPTH_NV" },
1340    { 0x88F8, "GL_MAX_PROGRAM_LOOP_COUNT_NV" },
1341    { 0x88F9, "GL_SRC1_COLOR" },
1342    { 0x88FA, "GL_ONE_MINUS_SRC1_COLOR" },
1343    { 0x88FB, "GL_ONE_MINUS_SRC1_ALPHA" },
1344    { 0x88FC, "GL_MAX_DUAL_SOURCE_DRAW_BUFFERS" },
1345    { 0x88FD, "GL_VERTEX_ATTRIB_ARRAY_INTEGER" },
1346    { 0x88FE, "GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB" },
1347    { 0x88FF, "GL_MAX_ARRAY_TEXTURE_LAYERS" },
1348    { 0x8904, "GL_MIN_PROGRAM_TEXEL_OFFSET" },
1349    { 0x8905, "GL_MAX_PROGRAM_TEXEL_OFFSET" },
1350    { 0x8910, "GL_STENCIL_TEST_TWO_SIDE_EXT" },
1351    { 0x8911, "GL_ACTIVE_STENCIL_FACE_EXT" },
1352    { 0x8912, "GL_MIRROR_CLAMP_TO_BORDER_EXT" },
1353    { 0x8914, "GL_SAMPLES_PASSED" },
1354    { 0x8916, "GL_GEOMETRY_VERTICES_OUT" },
1355    { 0x8917, "GL_GEOMETRY_INPUT_TYPE" },
1356    { 0x8918, "GL_GEOMETRY_OUTPUT_TYPE" },
1357    { 0x8919, "GL_SAMPLER_BINDING" },
1358    { 0x891A, "GL_CLAMP_VERTEX_COLOR" },
1359    { 0x891B, "GL_CLAMP_FRAGMENT_COLOR" },
1360    { 0x891C, "GL_CLAMP_READ_COLOR" },
1361    { 0x891D, "GL_FIXED_ONLY" },
1362    { 0x8920, "GL_FRAGMENT_SHADER_ATI" },
1363    { 0x8921, "GL_REG_0_ATI" },
1364    { 0x8922, "GL_REG_1_ATI" },
1365    { 0x8923, "GL_REG_2_ATI" },
1366    { 0x8924, "GL_REG_3_ATI" },
1367    { 0x8925, "GL_REG_4_ATI" },
1368    { 0x8926, "GL_REG_5_ATI" },
1369    { 0x8927, "GL_REG_6_ATI" },
1370    { 0x8928, "GL_REG_7_ATI" },
1371    { 0x8929, "GL_REG_8_ATI" },
1372    { 0x892A, "GL_REG_9_ATI" },
1373    { 0x892B, "GL_REG_10_ATI" },
1374    { 0x892C, "GL_REG_11_ATI" },
1375    { 0x892D, "GL_REG_12_ATI" },
1376    { 0x892E, "GL_REG_13_ATI" },
1377    { 0x892F, "GL_REG_14_ATI" },
1378    { 0x8930, "GL_REG_15_ATI" },
1379    { 0x8931, "GL_REG_16_ATI" },
1380    { 0x8932, "GL_REG_17_ATI" },
1381    { 0x8933, "GL_REG_18_ATI" },
1382    { 0x8934, "GL_REG_19_ATI" },
1383    { 0x8935, "GL_REG_20_ATI" },
1384    { 0x8936, "GL_REG_21_ATI" },
1385    { 0x8937, "GL_REG_22_ATI" },
1386    { 0x8938, "GL_REG_23_ATI" },
1387    { 0x8939, "GL_REG_24_ATI" },
1388    { 0x893A, "GL_REG_25_ATI" },
1389    { 0x893B, "GL_REG_26_ATI" },
1390    { 0x893C, "GL_REG_27_ATI" },
1391    { 0x893D, "GL_REG_28_ATI" },
1392    { 0x893E, "GL_REG_29_ATI" },
1393    { 0x893F, "GL_REG_30_ATI" },
1394    { 0x8940, "GL_REG_31_ATI" },
1395    { 0x8941, "GL_CON_0_ATI" },
1396    { 0x8942, "GL_CON_1_ATI" },
1397    { 0x8943, "GL_CON_2_ATI" },
1398    { 0x8944, "GL_CON_3_ATI" },
1399    { 0x8945, "GL_CON_4_ATI" },
1400    { 0x8946, "GL_CON_5_ATI" },
1401    { 0x8947, "GL_CON_6_ATI" },
1402    { 0x8948, "GL_CON_7_ATI" },
1403    { 0x8949, "GL_CON_8_ATI" },
1404    { 0x894A, "GL_CON_9_ATI" },
1405    { 0x894B, "GL_CON_10_ATI" },
1406    { 0x894C, "GL_CON_11_ATI" },
1407    { 0x894D, "GL_CON_12_ATI" },
1408    { 0x894E, "GL_CON_13_ATI" },
1409    { 0x894F, "GL_CON_14_ATI" },
1410    { 0x8950, "GL_CON_15_ATI" },
1411    { 0x8951, "GL_CON_16_ATI" },
1412    { 0x8952, "GL_CON_17_ATI" },
1413    { 0x8953, "GL_CON_18_ATI" },
1414    { 0x8954, "GL_CON_19_ATI" },
1415    { 0x8955, "GL_CON_20_ATI" },
1416    { 0x8956, "GL_CON_21_ATI" },
1417    { 0x8957, "GL_CON_22_ATI" },
1418    { 0x8958, "GL_CON_23_ATI" },
1419    { 0x8959, "GL_CON_24_ATI" },
1420    { 0x895A, "GL_CON_25_ATI" },
1421    { 0x895B, "GL_CON_26_ATI" },
1422    { 0x895C, "GL_CON_27_ATI" },
1423    { 0x895D, "GL_CON_28_ATI" },
1424    { 0x895E, "GL_CON_29_ATI" },
1425    { 0x895F, "GL_CON_30_ATI" },
1426    { 0x8960, "GL_CON_31_ATI" },
1427    { 0x8961, "GL_MOV_ATI" },
1428    { 0x8963, "GL_ADD_ATI" },
1429    { 0x8964, "GL_MUL_ATI" },
1430    { 0x8965, "GL_SUB_ATI" },
1431    { 0x8966, "GL_DOT3_ATI" },
1432    { 0x8967, "GL_DOT4_ATI" },
1433    { 0x8968, "GL_MAD_ATI" },
1434    { 0x8969, "GL_LERP_ATI" },
1435    { 0x896A, "GL_CND_ATI" },
1436    { 0x896B, "GL_CND0_ATI" },
1437    { 0x896C, "GL_DOT2_ADD_ATI" },
1438    { 0x896D, "GL_SECONDARY_INTERPOLATOR_ATI" },
1439    { 0x896E, "GL_NUM_FRAGMENT_REGISTERS_ATI" },
1440    { 0x896F, "GL_NUM_FRAGMENT_CONSTANTS_ATI" },
1441    { 0x8970, "GL_NUM_PASSES_ATI" },
1442    { 0x8971, "GL_NUM_INSTRUCTIONS_PER_PASS_ATI" },
1443    { 0x8972, "GL_NUM_INSTRUCTIONS_TOTAL_ATI" },
1444    { 0x8973, "GL_NUM_INPUT_INTERPOLATOR_COMPONENTS_ATI" },
1445    { 0x8974, "GL_NUM_LOOPBACK_COMPONENTS_ATI" },
1446    { 0x8975, "GL_COLOR_ALPHA_PAIRING_ATI" },
1447    { 0x8976, "GL_SWIZZLE_STR_ATI" },
1448    { 0x8977, "GL_SWIZZLE_STQ_ATI" },
1449    { 0x8978, "GL_SWIZZLE_STR_DR_ATI" },
1450    { 0x8979, "GL_SWIZZLE_STQ_DQ_ATI" },
1451    { 0x897A, "GL_SWIZZLE_STRQ_ATI" },
1452    { 0x897B, "GL_SWIZZLE_STRQ_DQ_ATI" },
1453    { 0x8A11, "GL_UNIFORM_BUFFER" },
1454    { 0x8A12, "GL_BUFFER_SERIALIZED_MODIFY_APPLE" },
1455    { 0x8A13, "GL_BUFFER_FLUSHING_UNMAP_APPLE" },
1456    { 0x8A19, "GL_RELEASED_APPLE" },
1457    { 0x8A1A, "GL_VOLATILE_APPLE" },
1458    { 0x8A1B, "GL_RETAINED_APPLE" },
1459    { 0x8A1C, "GL_UNDEFINED_APPLE" },
1460    { 0x8A1D, "GL_PURGEABLE_APPLE" },
1461    { 0x8A28, "GL_UNIFORM_BUFFER_BINDING" },
1462    { 0x8A29, "GL_UNIFORM_BUFFER_START" },
1463    { 0x8A2A, "GL_UNIFORM_BUFFER_SIZE" },
1464    { 0x8A2B, "GL_MAX_VERTEX_UNIFORM_BLOCKS" },
1465    { 0x8A2C, "GL_MAX_GEOMETRY_UNIFORM_BLOCKS" },
1466    { 0x8A2D, "GL_MAX_FRAGMENT_UNIFORM_BLOCKS" },
1467    { 0x8A2E, "GL_MAX_COMBINED_UNIFORM_BLOCKS" },
1468    { 0x8A2F, "GL_MAX_UNIFORM_BUFFER_BINDINGS" },
1469    { 0x8A30, "GL_MAX_UNIFORM_BLOCK_SIZE" },
1470    { 0x8A31, "GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS" },
1471    { 0x8A32, "GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS" },
1472    { 0x8A33, "GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS" },
1473    { 0x8A34, "GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT" },
1474    { 0x8A35, "GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH" },
1475    { 0x8A36, "GL_ACTIVE_UNIFORM_BLOCKS" },
1476    { 0x8A37, "GL_UNIFORM_TYPE" },
1477    { 0x8A38, "GL_UNIFORM_SIZE" },
1478    { 0x8A39, "GL_UNIFORM_NAME_LENGTH" },
1479    { 0x8A3A, "GL_UNIFORM_BLOCK_INDEX" },
1480    { 0x8A3B, "GL_UNIFORM_OFFSET" },
1481    { 0x8A3C, "GL_UNIFORM_ARRAY_STRIDE" },
1482    { 0x8A3D, "GL_UNIFORM_MATRIX_STRIDE" },
1483    { 0x8A3E, "GL_UNIFORM_IS_ROW_MAJOR" },
1484    { 0x8A3F, "GL_UNIFORM_BLOCK_BINDING" },
1485    { 0x8A40, "GL_UNIFORM_BLOCK_DATA_SIZE" },
1486    { 0x8A41, "GL_UNIFORM_BLOCK_NAME_LENGTH" },
1487    { 0x8A42, "GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS" },
1488    { 0x8A43, "GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES" },
1489    { 0x8A44, "GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER" },
1490    { 0x8A45, "GL_UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER" },
1491    { 0x8A46, "GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER" },
1492    { 0x8A48, "GL_TEXTURE_SRGB_DECODE_EXT" },
1493    { 0x8A49, "GL_DECODE_EXT" },
1494    { 0x8A4A, "GL_SKIP_DECODE_EXT" },
1495    { 0x8B30, "GL_FRAGMENT_SHADER" },
1496    { 0x8B31, "GL_VERTEX_SHADER" },
1497    { 0x8B40, "GL_PROGRAM_OBJECT_ARB" },
1498    { 0x8B48, "GL_SHADER_OBJECT_ARB" },
1499    { 0x8B49, "GL_MAX_FRAGMENT_UNIFORM_COMPONENTS" },
1500    { 0x8B4A, "GL_MAX_VERTEX_UNIFORM_COMPONENTS" },
1501    { 0x8B4B, "GL_MAX_VARYING_COMPONENTS" },
1502    { 0x8B4C, "GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS" },
1503    { 0x8B4D, "GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS" },
1504    { 0x8B4E, "GL_OBJECT_TYPE_ARB" },
1505    { 0x8B4F, "GL_SHADER_TYPE" },
1506    { 0x8B50, "GL_FLOAT_VEC2" },
1507    { 0x8B51, "GL_FLOAT_VEC3" },
1508    { 0x8B52, "GL_FLOAT_VEC4" },
1509    { 0x8B53, "GL_INT_VEC2" },
1510    { 0x8B54, "GL_INT_VEC3" },
1511    { 0x8B55, "GL_INT_VEC4" },
1512    { 0x8B56, "GL_BOOL" },
1513    { 0x8B57, "GL_BOOL_VEC2" },
1514    { 0x8B58, "GL_BOOL_VEC3" },
1515    { 0x8B59, "GL_BOOL_VEC4" },
1516    { 0x8B5A, "GL_FLOAT_MAT2" },
1517    { 0x8B5B, "GL_FLOAT_MAT3" },
1518    { 0x8B5C, "GL_FLOAT_MAT4" },
1519    { 0x8B5D, "GL_SAMPLER_1D" },
1520    { 0x8B5E, "GL_SAMPLER_2D" },
1521    { 0x8B5F, "GL_SAMPLER_3D" },
1522    { 0x8B60, "GL_SAMPLER_CUBE" },
1523    { 0x8B61, "GL_SAMPLER_1D_SHADOW" },
1524    { 0x8B62, "GL_SAMPLER_2D_SHADOW" },
1525    { 0x8B63, "GL_SAMPLER_2D_RECT" },
1526    { 0x8B64, "GL_SAMPLER_2D_RECT_SHADOW" },
1527    { 0x8B65, "GL_FLOAT_MAT2x3" },
1528    { 0x8B66, "GL_FLOAT_MAT2x4" },
1529    { 0x8B67, "GL_FLOAT_MAT3x2" },
1530    { 0x8B68, "GL_FLOAT_MAT3x4" },
1531    { 0x8B69, "GL_FLOAT_MAT4x2" },
1532    { 0x8B6A, "GL_FLOAT_MAT4x3" },
1533    { 0x8B80, "GL_DELETE_STATUS" },
1534    { 0x8B81, "GL_COMPILE_STATUS" },
1535    { 0x8B82, "GL_LINK_STATUS" },
1536    { 0x8B83, "GL_VALIDATE_STATUS" },
1537    { 0x8B84, "GL_INFO_LOG_LENGTH" },
1538    { 0x8B85, "GL_ATTACHED_SHADERS" },
1539    { 0x8B86, "GL_ACTIVE_UNIFORMS" },
1540    { 0x8B87, "GL_ACTIVE_UNIFORM_MAX_LENGTH" },
1541    { 0x8B88, "GL_SHADER_SOURCE_LENGTH" },
1542    { 0x8B89, "GL_ACTIVE_ATTRIBUTES" },
1543    { 0x8B8A, "GL_ACTIVE_ATTRIBUTE_MAX_LENGTH" },
1544    { 0x8B8B, "GL_FRAGMENT_SHADER_DERIVATIVE_HINT" },
1545    { 0x8B8C, "GL_SHADING_LANGUAGE_VERSION" },
1546    { 0x8B8D, "GL_CURRENT_PROGRAM" },
1547    { 0x8B9A, "GL_IMPLEMENTATION_COLOR_READ_TYPE" },
1548    { 0x8B9B, "GL_IMPLEMENTATION_COLOR_READ_FORMAT" },
1549    { 0x8C10, "GL_TEXTURE_RED_TYPE" },
1550    { 0x8C11, "GL_TEXTURE_GREEN_TYPE" },
1551    { 0x8C12, "GL_TEXTURE_BLUE_TYPE" },
1552    { 0x8C13, "GL_TEXTURE_ALPHA_TYPE" },
1553    { 0x8C14, "GL_TEXTURE_LUMINANCE_TYPE" },
1554    { 0x8C15, "GL_TEXTURE_INTENSITY_TYPE" },
1555    { 0x8C16, "GL_TEXTURE_DEPTH_TYPE" },
1556    { 0x8C17, "GL_UNSIGNED_NORMALIZED" },
1557    { 0x8C18, "GL_TEXTURE_1D_ARRAY" },
1558    { 0x8C19, "GL_PROXY_TEXTURE_1D_ARRAY" },
1559    { 0x8C1A, "GL_TEXTURE_2D_ARRAY" },
1560    { 0x8C1B, "GL_PROXY_TEXTURE_2D_ARRAY" },
1561    { 0x8C1C, "GL_TEXTURE_BINDING_1D_ARRAY" },
1562    { 0x8C1D, "GL_TEXTURE_BINDING_2D_ARRAY" },
1563    { 0x8C29, "GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS" },
1564    { 0x8C2A, "GL_TEXTURE_BUFFER" },
1565    { 0x8C2B, "GL_MAX_TEXTURE_BUFFER_SIZE" },
1566    { 0x8C2C, "GL_TEXTURE_BINDING_BUFFER" },
1567    { 0x8C2D, "GL_TEXTURE_BUFFER_DATA_STORE_BINDING" },
1568    { 0x8C2E, "GL_TEXTURE_BUFFER_FORMAT" },
1569    { 0x8C2F, "GL_ANY_SAMPLES_PASSED" },
1570    { 0x8C3A, "GL_R11F_G11F_B10F" },
1571    { 0x8C3B, "GL_UNSIGNED_INT_10F_11F_11F_REV" },
1572    { 0x8C3C, "GL_RGBA_SIGNED_COMPONENTS_EXT" },
1573    { 0x8C3D, "GL_RGB9_E5" },
1574    { 0x8C3E, "GL_UNSIGNED_INT_5_9_9_9_REV" },
1575    { 0x8C3F, "GL_TEXTURE_SHARED_SIZE" },
1576    { 0x8C40, "GL_SRGB" },
1577    { 0x8C41, "GL_SRGB8" },
1578    { 0x8C42, "GL_SRGB_ALPHA" },
1579    { 0x8C43, "GL_SRGB8_ALPHA8" },
1580    { 0x8C44, "GL_SLUMINANCE_ALPHA" },
1581    { 0x8C45, "GL_SLUMINANCE8_ALPHA8" },
1582    { 0x8C46, "GL_SLUMINANCE" },
1583    { 0x8C47, "GL_SLUMINANCE8" },
1584    { 0x8C48, "GL_COMPRESSED_SRGB" },
1585    { 0x8C49, "GL_COMPRESSED_SRGB_ALPHA" },
1586    { 0x8C4A, "GL_COMPRESSED_SLUMINANCE" },
1587    { 0x8C4B, "GL_COMPRESSED_SLUMINANCE_ALPHA" },
1588 #if 0
1589    { 0x8C4C, "GL_COMPRESSED_SRGB_S3TC_DXT1_EXT" },
1590    { 0x8C4D, "GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT" },
1591    { 0x8C4E, "GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT" },
1592    { 0x8C4F, "GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT" },
1593    { 0x8C70, "GL_COMPRESSED_LUMINANCE_LATC1_EXT" },
1594    { 0x8C71, "GL_COMPRESSED_SIGNED_LUMINANCE_LATC1_EXT" },
1595    { 0x8C72, "GL_COMPRESSED_LUMINANCE_ALPHA_LATC2_EXT" },
1596    { 0x8C73, "GL_COMPRESSED_SIGNED_LUMINANCE_ALPHA_LATC2_EXT" },
1597 #endif
1598    { 0x8C76, "GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH" },
1599    { 0x8C7F, "GL_TRANSFORM_FEEDBACK_BUFFER_MODE" },
1600    { 0x8C80, "GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS" },
1601    { 0x8C83, "GL_TRANSFORM_FEEDBACK_VARYINGS" },
1602    { 0x8C84, "GL_TRANSFORM_FEEDBACK_BUFFER_START" },
1603    { 0x8C85, "GL_TRANSFORM_FEEDBACK_BUFFER_SIZE" },
1604    { 0x8C87, "GL_PRIMITIVES_GENERATED" },
1605    { 0x8C88, "GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN" },
1606    { 0x8C89, "GL_RASTERIZER_DISCARD" },
1607    { 0x8C8A, "GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS" },
1608    { 0x8C8B, "GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS" },
1609    { 0x8C8C, "GL_INTERLEAVED_ATTRIBS" },
1610    { 0x8C8D, "GL_SEPARATE_ATTRIBS" },
1611    { 0x8C8E, "GL_TRANSFORM_FEEDBACK_BUFFER" },
1612    { 0x8C8F, "GL_TRANSFORM_FEEDBACK_BUFFER_BINDING" },
1613    { 0x8CA0, "GL_POINT_SPRITE_COORD_ORIGIN" },
1614    { 0x8CA1, "GL_LOWER_LEFT" },
1615    { 0x8CA2, "GL_UPPER_LEFT" },
1616    { 0x8CA3, "GL_STENCIL_BACK_REF" },
1617    { 0x8CA4, "GL_STENCIL_BACK_VALUE_MASK" },
1618    { 0x8CA5, "GL_STENCIL_BACK_WRITEMASK" },
1619    { 0x8CA6, "GL_DRAW_FRAMEBUFFER_BINDING" },
1620    { 0x8CA7, "GL_RENDERBUFFER_BINDING" },
1621    { 0x8CA8, "GL_READ_FRAMEBUFFER" },
1622    { 0x8CA9, "GL_DRAW_FRAMEBUFFER" },
1623    { 0x8CAA, "GL_READ_FRAMEBUFFER_BINDING" },
1624    { 0x8CAB, "GL_RENDERBUFFER_SAMPLES" },
1625    { 0x8CAC, "GL_DEPTH_COMPONENT32F" },
1626    { 0x8CAD, "GL_DEPTH32F_STENCIL8" },
1627    { 0x8CD0, "GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE" },
1628    { 0x8CD1, "GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME" },
1629    { 0x8CD2, "GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL" },
1630    { 0x8CD3, "GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE" },
1631    { 0x8CD4, "GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER" },
1632    { 0x8CD5, "GL_FRAMEBUFFER_COMPLETE" },
1633    { 0x8CD6, "GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT" },
1634    { 0x8CD7, "GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT" },
1635    { 0x8CD9, "GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT" },
1636    { 0x8CDA, "GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT" },
1637    { 0x8CDB, "GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER" },
1638    { 0x8CDC, "GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER" },
1639    { 0x8CDD, "GL_FRAMEBUFFER_UNSUPPORTED" },
1640    { 0x8CDF, "GL_MAX_COLOR_ATTACHMENTS" },
1641    { 0x8CE0, "GL_COLOR_ATTACHMENT0" },
1642    { 0x8CE1, "GL_COLOR_ATTACHMENT1" },
1643    { 0x8CE2, "GL_COLOR_ATTACHMENT2" },
1644    { 0x8CE3, "GL_COLOR_ATTACHMENT3" },
1645    { 0x8CE4, "GL_COLOR_ATTACHMENT4" },
1646    { 0x8CE5, "GL_COLOR_ATTACHMENT5" },
1647    { 0x8CE6, "GL_COLOR_ATTACHMENT6" },
1648    { 0x8CE7, "GL_COLOR_ATTACHMENT7" },
1649    { 0x8CE8, "GL_COLOR_ATTACHMENT8" },
1650    { 0x8CE9, "GL_COLOR_ATTACHMENT9" },
1651    { 0x8CEA, "GL_COLOR_ATTACHMENT10" },
1652    { 0x8CEB, "GL_COLOR_ATTACHMENT11" },
1653    { 0x8CEC, "GL_COLOR_ATTACHMENT12" },
1654    { 0x8CED, "GL_COLOR_ATTACHMENT13" },
1655    { 0x8CEE, "GL_COLOR_ATTACHMENT14" },
1656    { 0x8CEF, "GL_COLOR_ATTACHMENT15" },
1657    { 0x8D00, "GL_DEPTH_ATTACHMENT" },
1658    { 0x8D20, "GL_STENCIL_ATTACHMENT" },
1659    { 0x8D40, "GL_FRAMEBUFFER" },
1660    { 0x8D41, "GL_RENDERBUFFER" },
1661    { 0x8D42, "GL_RENDERBUFFER_WIDTH" },
1662    { 0x8D43, "GL_RENDERBUFFER_HEIGHT" },
1663    { 0x8D44, "GL_RENDERBUFFER_INTERNAL_FORMAT" },
1664    { 0x8D46, "GL_STENCIL_INDEX1" },
1665    { 0x8D47, "GL_STENCIL_INDEX4" },
1666    { 0x8D48, "GL_STENCIL_INDEX8" },
1667    { 0x8D49, "GL_STENCIL_INDEX16" },
1668    { 0x8D50, "GL_RENDERBUFFER_RED_SIZE" },
1669    { 0x8D51, "GL_RENDERBUFFER_GREEN_SIZE" },
1670    { 0x8D52, "GL_RENDERBUFFER_BLUE_SIZE" },
1671    { 0x8D53, "GL_RENDERBUFFER_ALPHA_SIZE" },
1672    { 0x8D54, "GL_RENDERBUFFER_DEPTH_SIZE" },
1673    { 0x8D55, "GL_RENDERBUFFER_STENCIL_SIZE" },
1674    { 0x8D56, "GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE" },
1675    { 0x8D57, "GL_MAX_SAMPLES" },
1676    { 0x8D70, "GL_RGBA32UI" },
1677    { 0x8D71, "GL_RGB32UI" },
1678    { 0x8D72, "GL_ALPHA32UI_EXT" },
1679    { 0x8D73, "GL_INTENSITY32UI_EXT" },
1680    { 0x8D74, "GL_LUMINANCE32UI_EXT" },
1681    { 0x8D75, "GL_LUMINANCE_ALPHA32UI_EXT" },
1682    { 0x8D76, "GL_RGBA16UI" },
1683    { 0x8D77, "GL_RGB16UI" },
1684    { 0x8D78, "GL_ALPHA16UI_EXT" },
1685    { 0x8D79, "GL_INTENSITY16UI_EXT" },
1686    { 0x8D7A, "GL_LUMINANCE16UI_EXT" },
1687    { 0x8D7B, "GL_LUMINANCE_ALPHA16UI_EXT" },
1688    { 0x8D7C, "GL_RGBA8UI" },
1689    { 0x8D7D, "GL_RGB8UI" },
1690    { 0x8D7E, "GL_ALPHA8UI_EXT" },
1691    { 0x8D7F, "GL_INTENSITY8UI_EXT" },
1692    { 0x8D80, "GL_LUMINANCE8UI_EXT" },
1693    { 0x8D81, "GL_LUMINANCE_ALPHA8UI_EXT" },
1694    { 0x8D82, "GL_RGBA32I" },
1695    { 0x8D83, "GL_RGB32I" },
1696    { 0x8D84, "GL_ALPHA32I_EXT" },
1697    { 0x8D85, "GL_INTENSITY32I_EXT" },
1698    { 0x8D86, "GL_LUMINANCE32I_EXT" },
1699    { 0x8D87, "GL_LUMINANCE_ALPHA32I_EXT" },
1700    { 0x8D88, "GL_RGBA16I" },
1701    { 0x8D89, "GL_RGB16I" },
1702    { 0x8D8A, "GL_ALPHA16I_EXT" },
1703    { 0x8D8B, "GL_INTENSITY16I_EXT" },
1704    { 0x8D8C, "GL_LUMINANCE16I_EXT" },
1705    { 0x8D8D, "GL_LUMINANCE_ALPHA16I_EXT" },
1706    { 0x8D8E, "GL_RGBA8I" },
1707    { 0x8D8F, "GL_RGB8I" },
1708    { 0x8D90, "GL_ALPHA8I_EXT" },
1709    { 0x8D91, "GL_INTENSITY8I_EXT" },
1710    { 0x8D92, "GL_LUMINANCE8I_EXT" },
1711    { 0x8D93, "GL_LUMINANCE_ALPHA8I_EXT" },
1712    { 0x8D94, "GL_RED_INTEGER" },
1713    { 0x8D95, "GL_GREEN_INTEGER" },
1714    { 0x8D96, "GL_BLUE_INTEGER" },
1715    { 0x8D97, "GL_ALPHA_INTEGER_EXT" },
1716    { 0x8D98, "GL_RGB_INTEGER" },
1717    { 0x8D99, "GL_RGBA_INTEGER" },
1718    { 0x8D9A, "GL_BGR_INTEGER" },
1719    { 0x8D9B, "GL_BGRA_INTEGER" },
1720    { 0x8D9C, "GL_LUMINANCE_INTEGER_EXT" },
1721    { 0x8D9D, "GL_LUMINANCE_ALPHA_INTEGER_EXT" },
1722    { 0x8D9E, "GL_RGBA_INTEGER_MODE_EXT" },
1723    { 0x8D9F, "GL_INT_2_10_10_10_REV" },
1724    { 0x8DA7, "GL_FRAMEBUFFER_ATTACHMENT_LAYERED" },
1725    { 0x8DA8, "GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS" },
1726    { 0x8DA9, "GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_ARB" },
1727    { 0x8DAD, "GL_FLOAT_32_UNSIGNED_INT_24_8_REV" },
1728    { 0x8DB9, "GL_FRAMEBUFFER_SRGB" },
1729    { 0x8DBA, "GL_FRAMEBUFFER_SRGB_CAPABLE_EXT" },
1730    { 0x8DBB, "GL_COMPRESSED_RED_RGTC1" },
1731    { 0x8DBC, "GL_COMPRESSED_SIGNED_RED_RGTC1" },
1732    { 0x8DBD, "GL_COMPRESSED_RG_RGTC2" },
1733    { 0x8DBE, "GL_COMPRESSED_SIGNED_RG_RGTC2" },
1734    { 0x8DC0, "GL_SAMPLER_1D_ARRAY" },
1735    { 0x8DC1, "GL_SAMPLER_2D_ARRAY" },
1736    { 0x8DC2, "GL_SAMPLER_BUFFER" },
1737    { 0x8DC3, "GL_SAMPLER_1D_ARRAY_SHADOW" },
1738    { 0x8DC4, "GL_SAMPLER_2D_ARRAY_SHADOW" },
1739    { 0x8DC5, "GL_SAMPLER_CUBE_SHADOW" },
1740    { 0x8DC6, "GL_UNSIGNED_INT_VEC2" },
1741    { 0x8DC7, "GL_UNSIGNED_INT_VEC3" },
1742    { 0x8DC8, "GL_UNSIGNED_INT_VEC4" },
1743    { 0x8DC9, "GL_INT_SAMPLER_1D" },
1744    { 0x8DCA, "GL_INT_SAMPLER_2D" },
1745    { 0x8DCB, "GL_INT_SAMPLER_3D" },
1746    { 0x8DCC, "GL_INT_SAMPLER_CUBE" },
1747    { 0x8DCD, "GL_INT_SAMPLER_2D_RECT" },
1748    { 0x8DCE, "GL_INT_SAMPLER_1D_ARRAY" },
1749    { 0x8DCF, "GL_INT_SAMPLER_2D_ARRAY" },
1750    { 0x8DD0, "GL_INT_SAMPLER_BUFFER" },
1751    { 0x8DD1, "GL_UNSIGNED_INT_SAMPLER_1D" },
1752    { 0x8DD2, "GL_UNSIGNED_INT_SAMPLER_2D" },
1753    { 0x8DD3, "GL_UNSIGNED_INT_SAMPLER_3D" },
1754    { 0x8DD4, "GL_UNSIGNED_INT_SAMPLER_CUBE" },
1755    { 0x8DD5, "GL_UNSIGNED_INT_SAMPLER_2D_RECT" },
1756    { 0x8DD6, "GL_UNSIGNED_INT_SAMPLER_1D_ARRAY" },
1757    { 0x8DD7, "GL_UNSIGNED_INT_SAMPLER_2D_ARRAY" },
1758    { 0x8DD8, "GL_UNSIGNED_INT_SAMPLER_BUFFER" },
1759    { 0x8DD9, "GL_GEOMETRY_SHADER" },
1760    { 0x8DDA, "GL_GEOMETRY_VERTICES_OUT_ARB" },
1761    { 0x8DDB, "GL_GEOMETRY_INPUT_TYPE_ARB" },
1762    { 0x8DDC, "GL_GEOMETRY_OUTPUT_TYPE_ARB" },
1763    { 0x8DDD, "GL_MAX_GEOMETRY_VARYING_COMPONENTS_ARB" },
1764    { 0x8DDE, "GL_MAX_VERTEX_VARYING_COMPONENTS_ARB" },
1765    { 0x8DDF, "GL_MAX_GEOMETRY_UNIFORM_COMPONENTS" },
1766    { 0x8DE0, "GL_MAX_GEOMETRY_OUTPUT_VERTICES" },
1767    { 0x8DE1, "GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS" },
1768    { 0x8DF0, "GL_LOW_FLOAT" },
1769    { 0x8DF1, "GL_MEDIUM_FLOAT" },
1770    { 0x8DF2, "GL_HIGH_FLOAT" },
1771    { 0x8DF3, "GL_LOW_INT" },
1772    { 0x8DF4, "GL_MEDIUM_INT" },
1773    { 0x8DF5, "GL_HIGH_INT" },
1774    { 0x8DF9, "GL_NUM_SHADER_BINARY_FORMATS" },
1775    { 0x8DFA, "GL_SHADER_COMPILER" },
1776    { 0x8DFB, "GL_MAX_VERTEX_UNIFORM_VECTORS" },
1777    { 0x8DFC, "GL_MAX_VARYING_VECTORS" },
1778    { 0x8DFD, "GL_MAX_FRAGMENT_UNIFORM_VECTORS" },
1779    { 0x8E13, "GL_QUERY_WAIT" },
1780    { 0x8E14, "GL_QUERY_NO_WAIT" },
1781    { 0x8E15, "GL_QUERY_BY_REGION_WAIT" },
1782    { 0x8E16, "GL_QUERY_BY_REGION_NO_WAIT" },
1783    { 0x8E22, "GL_TRANSFORM_FEEDBACK" },
1784    { 0x8E23, "GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED" },
1785    { 0x8E24, "GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE" },
1786    { 0x8E25, "GL_TRANSFORM_FEEDBACK_BINDING" },
1787    { 0x8E42, "GL_TEXTURE_SWIZZLE_R" },
1788    { 0x8E43, "GL_TEXTURE_SWIZZLE_G" },
1789    { 0x8E44, "GL_TEXTURE_SWIZZLE_B" },
1790    { 0x8E45, "GL_TEXTURE_SWIZZLE_A" },
1791    { 0x8E46, "GL_TEXTURE_SWIZZLE_RGBA" },
1792    { 0x8E4C, "GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION" },
1793    { 0x8E4D, "GL_FIRST_VERTEX_CONVENTION" },
1794    { 0x8E4E, "GL_LAST_VERTEX_CONVENTION" },
1795    { 0x8E4F, "GL_PROVOKING_VERTEX" },
1796    { 0x8F36, "GL_COPY_READ_BUFFER" },
1797    { 0x8F37, "GL_COPY_WRITE_BUFFER" },
1798    { 0x8F90, "GL_RED_SNORM" },
1799    { 0x8F91, "GL_RG_SNORM" },
1800    { 0x8F92, "GL_RGB_SNORM" },
1801    { 0x8F93, "GL_RGBA_SNORM" },
1802    { 0x8F94, "GL_R8_SNORM" },
1803    { 0x8F95, "GL_RG8_SNORM" },
1804    { 0x8F96, "GL_RGB8_SNORM" },
1805    { 0x8F97, "GL_RGBA8_SNORM" },
1806    { 0x8F98, "GL_R16_SNORM" },
1807    { 0x8F99, "GL_RG16_SNORM" },
1808    { 0x8F9A, "GL_RGB16_SNORM" },
1809    { 0x8F9B, "GL_RGBA16_SNORM" },
1810    { 0x8F9C, "GL_SIGNED_NORMALIZED" },
1811    { 0x8F9D, "GL_PRIMITIVE_RESTART" },
1812    { 0x8F9E, "GL_PRIMITIVE_RESTART_INDEX" },
1813    { 0x906F, "GL_RGB10_A2UI" },
1814    { 0x9111, "GL_MAX_SERVER_WAIT_TIMEOUT" },
1815    { 0x9112, "GL_OBJECT_TYPE" },
1816    { 0x9113, "GL_SYNC_CONDITION" },
1817    { 0x9114, "GL_SYNC_STATUS" },
1818    { 0x9115, "GL_SYNC_FLAGS" },
1819    { 0x9116, "GL_SYNC_FENCE" },
1820    { 0x9117, "GL_SYNC_GPU_COMMANDS_COMPLETE" },
1821    { 0x9118, "GL_UNSIGNALED" },
1822    { 0x9119, "GL_SIGNALED" },
1823    { 0x911A, "GL_ALREADY_SIGNALED" },
1824    { 0x911B, "GL_TIMEOUT_EXPIRED" },
1825    { 0x911C, "GL_CONDITION_SATISFIED" },
1826    { 0x911D, "GL_WAIT_FAILED" },
1827    { 0x911F, "GL_BUFFER_ACCESS_FLAGS" },
1828    { 0x9120, "GL_BUFFER_MAP_LENGTH" },
1829    { 0x9121, "GL_BUFFER_MAP_OFFSET" },
1830    { 0x9122, "GL_MAX_VERTEX_OUTPUT_COMPONENTS" },
1831    { 0x9123, "GL_MAX_GEOMETRY_INPUT_COMPONENTS" },
1832    { 0x9124, "GL_MAX_GEOMETRY_OUTPUT_COMPONENTS" },
1833    { 0x9125, "GL_MAX_FRAGMENT_INPUT_COMPONENTS" },
1834    { 0x9126, "GL_CONTEXT_PROFILE_MASK" },
1835    { 0x912F, "GL_TEXTURE_IMMUTABLE_FORMAT" },
1836    { 0x9143, "GL_MAX_DEBUG_MESSAGE_LENGTH_ARB" },
1837    { 0x9144, "GL_MAX_DEBUG_LOGGED_MESSAGES_ARB" },
1838    { 0x9145, "GL_DEBUG_LOGGED_MESSAGES_ARB" },
1839    { 0x9146, "GL_DEBUG_SEVERITY_HIGH_ARB" },
1840    { 0x9147, "GL_DEBUG_SEVERITY_MEDIUM_ARB" },
1841    { 0x9148, "GL_DEBUG_SEVERITY_LOW_ARB" },
1842    { 0x19262, "GL_RASTER_POSITION_UNCLIPPED_IBM" },
1843    { 0, NULL }
1844 };
1845 
1846 const struct enum_info alternate_names[] = {
1847    { 0x8513, "GL_TEXTURE_CUBE_MAP_ARB" },
1848    { 0x8514, "GL_TEXTURE_BINDING_CUBE_MAP_ARB" },
1849    { 0x8515, "GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB" },
1850    { 0x8516, "GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB" },
1851    { 0x8517, "GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB" },
1852    { 0x8518, "GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB" },
1853    { 0x8519, "GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB" },
1854    { 0x851A, "GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB" },
1855    { 0, NULL }
1856 };
1857