Add mouse and keyboard configuration file
[profile/ivi/xorg-x11-server.git] / glx / indirect_size_get.c
1 /* DO NOT EDIT - This file generated automatically by glX_proto_size.py (from Mesa) script */
2
3 /*
4  * (C) Copyright IBM Corporation 2004
5  * All Rights Reserved.
6  * 
7  * Permission is hereby granted, free of charge, to any person obtaining a
8  * copy of this software and associated documentation files (the "Software"),
9  * to deal in the Software without restriction, including without limitation
10  * the rights to use, copy, modify, merge, publish, distribute, sub license,
11  * and/or sell copies of the Software, and to permit persons to whom the
12  * Software is furnished to do so, subject to the following conditions:
13  * 
14  * The above copyright notice and this permission notice (including the next
15  * paragraph) shall be included in all copies or substantial portions of the
16  * Software.
17  * 
18  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
19  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20  * FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.  IN NO EVENT SHALL
21  * IBM,
22  * AND/OR THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
23  * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
24  * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
25  * SOFTWARE.
26  */
27
28
29 #include <GL/gl.h>
30 #include "indirect_size_get.h"
31 #include "glxserver.h"
32 #include "indirect_util.h"
33 #include "indirect_size.h"
34
35 #  if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96) || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590))
36 #    define PURE __attribute__((pure))
37 #  else
38 #    define PURE
39 #  endif
40
41 #  if defined(__i386__) && defined(__GNUC__) && !defined(__CYGWIN__) && !defined(__MINGW32__)
42 #    define FASTCALL __attribute__((fastcall))
43 #  else
44 #    define FASTCALL
45 #  endif
46
47 #  if (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 3) || (defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590))) && defined(__ELF__)
48 #    define INTERNAL  __attribute__((visibility("internal")))
49 #  else
50 #    define INTERNAL
51 #  endif
52
53
54 #if defined(__CYGWIN__) || defined(__MINGW32__) || defined(__APPLE__)
55 #  undef HAVE_ALIAS
56 #endif
57 #ifdef HAVE_ALIAS
58 #  define ALIAS2(from,to) \
59     INTERNAL PURE FASTCALL GLint __gl ## from ## _size( GLenum e ) \
60         __attribute__ ((alias( # to )));
61 #  define ALIAS(from,to) ALIAS2( from, __gl ## to ## _size )
62 #else
63 #  define ALIAS(from,to) \
64     INTERNAL PURE FASTCALL GLint __gl ## from ## _size( GLenum e ) \
65     { return __gl ## to ## _size( e ); }
66 #endif
67
68
69 INTERNAL PURE FASTCALL GLint
70 __glCallLists_size(GLenum e)
71 {
72     switch (e) {
73     case GL_BYTE:
74     case GL_UNSIGNED_BYTE:
75         return 1;
76     case GL_SHORT:
77     case GL_UNSIGNED_SHORT:
78     case GL_2_BYTES:
79         return 2;
80     case GL_3_BYTES:
81         return 3;
82     case GL_INT:
83     case GL_UNSIGNED_INT:
84     case GL_FLOAT:
85     case GL_4_BYTES:
86         return 4;
87     default:
88         return 0;
89     }
90 }
91
92 INTERNAL PURE FASTCALL GLint
93 __glFogfv_size(GLenum e)
94 {
95     switch (e) {
96     case GL_FOG_INDEX:
97     case GL_FOG_DENSITY:
98     case GL_FOG_START:
99     case GL_FOG_END:
100     case GL_FOG_MODE:
101     case GL_FOG_OFFSET_VALUE_SGIX:
102     case GL_FOG_DISTANCE_MODE_NV:
103         return 1;
104     case GL_FOG_COLOR:
105         return 4;
106     default:
107         return 0;
108     }
109 }
110
111 INTERNAL PURE FASTCALL GLint
112 __glLightfv_size(GLenum e)
113 {
114     switch (e) {
115     case GL_SPOT_EXPONENT:
116     case GL_SPOT_CUTOFF:
117     case GL_CONSTANT_ATTENUATION:
118     case GL_LINEAR_ATTENUATION:
119     case GL_QUADRATIC_ATTENUATION:
120         return 1;
121     case GL_SPOT_DIRECTION:
122         return 3;
123     case GL_AMBIENT:
124     case GL_DIFFUSE:
125     case GL_SPECULAR:
126     case GL_POSITION:
127         return 4;
128     default:
129         return 0;
130     }
131 }
132
133 INTERNAL PURE FASTCALL GLint
134 __glLightModelfv_size(GLenum e)
135 {
136     switch (e) {
137     case GL_LIGHT_MODEL_LOCAL_VIEWER:
138     case GL_LIGHT_MODEL_TWO_SIDE:
139     case GL_LIGHT_MODEL_COLOR_CONTROL:
140 /*      case GL_LIGHT_MODEL_COLOR_CONTROL_EXT:*/
141         return 1;
142     case GL_LIGHT_MODEL_AMBIENT:
143         return 4;
144     default:
145         return 0;
146     }
147 }
148
149 INTERNAL PURE FASTCALL GLint
150 __glMaterialfv_size(GLenum e)
151 {
152     switch (e) {
153     case GL_SHININESS:
154         return 1;
155     case GL_COLOR_INDEXES:
156         return 3;
157     case GL_AMBIENT:
158     case GL_DIFFUSE:
159     case GL_SPECULAR:
160     case GL_EMISSION:
161     case GL_AMBIENT_AND_DIFFUSE:
162         return 4;
163     default:
164         return 0;
165     }
166 }
167
168 INTERNAL PURE FASTCALL GLint
169 __glTexParameterfv_size(GLenum e)
170 {
171     switch (e) {
172     case GL_TEXTURE_MAG_FILTER:
173     case GL_TEXTURE_MIN_FILTER:
174     case GL_TEXTURE_WRAP_S:
175     case GL_TEXTURE_WRAP_T:
176     case GL_TEXTURE_PRIORITY:
177     case GL_TEXTURE_WRAP_R:
178     case GL_TEXTURE_COMPARE_FAIL_VALUE_ARB:
179 /*      case GL_SHADOW_AMBIENT_SGIX:*/
180     case GL_TEXTURE_MIN_LOD:
181     case GL_TEXTURE_MAX_LOD:
182     case GL_TEXTURE_BASE_LEVEL:
183     case GL_TEXTURE_MAX_LEVEL:
184     case GL_TEXTURE_CLIPMAP_FRAME_SGIX:
185     case GL_TEXTURE_LOD_BIAS_S_SGIX:
186     case GL_TEXTURE_LOD_BIAS_T_SGIX:
187     case GL_TEXTURE_LOD_BIAS_R_SGIX:
188     case GL_GENERATE_MIPMAP:
189 /*      case GL_GENERATE_MIPMAP_SGIS:*/
190     case GL_TEXTURE_COMPARE_SGIX:
191     case GL_TEXTURE_COMPARE_OPERATOR_SGIX:
192     case GL_TEXTURE_MAX_CLAMP_S_SGIX:
193     case GL_TEXTURE_MAX_CLAMP_T_SGIX:
194     case GL_TEXTURE_MAX_CLAMP_R_SGIX:
195     case GL_TEXTURE_MAX_ANISOTROPY_EXT:
196     case GL_TEXTURE_LOD_BIAS:
197 /*      case GL_TEXTURE_LOD_BIAS_EXT:*/
198     case GL_DEPTH_TEXTURE_MODE:
199 /*      case GL_DEPTH_TEXTURE_MODE_ARB:*/
200     case GL_TEXTURE_COMPARE_MODE:
201 /*      case GL_TEXTURE_COMPARE_MODE_ARB:*/
202     case GL_TEXTURE_COMPARE_FUNC:
203 /*      case GL_TEXTURE_COMPARE_FUNC_ARB:*/
204     case GL_TEXTURE_UNSIGNED_REMAP_MODE_NV:
205         return 1;
206     case GL_TEXTURE_CLIPMAP_CENTER_SGIX:
207     case GL_TEXTURE_CLIPMAP_OFFSET_SGIX:
208         return 2;
209     case GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX:
210         return 3;
211     case GL_TEXTURE_BORDER_COLOR:
212     case GL_POST_TEXTURE_FILTER_BIAS_SGIX:
213     case GL_POST_TEXTURE_FILTER_SCALE_SGIX:
214         return 4;
215     default:
216         return 0;
217     }
218 }
219
220 INTERNAL PURE FASTCALL GLint
221 __glTexEnvfv_size(GLenum e)
222 {
223     switch (e) {
224     case GL_ALPHA_SCALE:
225     case GL_TEXTURE_ENV_MODE:
226     case GL_TEXTURE_LOD_BIAS:
227     case GL_COMBINE_RGB:
228     case GL_COMBINE_ALPHA:
229     case GL_RGB_SCALE:
230     case GL_SOURCE0_RGB:
231     case GL_SOURCE1_RGB:
232     case GL_SOURCE2_RGB:
233     case GL_SOURCE3_RGB_NV:
234     case GL_SOURCE0_ALPHA:
235     case GL_SOURCE1_ALPHA:
236     case GL_SOURCE2_ALPHA:
237     case GL_SOURCE3_ALPHA_NV:
238     case GL_OPERAND0_RGB:
239     case GL_OPERAND1_RGB:
240     case GL_OPERAND2_RGB:
241     case GL_OPERAND3_RGB_NV:
242     case GL_OPERAND0_ALPHA:
243     case GL_OPERAND1_ALPHA:
244     case GL_OPERAND2_ALPHA:
245     case GL_OPERAND3_ALPHA_NV:
246     case GL_COORD_REPLACE_ARB:
247 /*      case GL_COORD_REPLACE_NV:*/
248         return 1;
249     case GL_TEXTURE_ENV_COLOR:
250         return 4;
251     default:
252         return 0;
253     }
254 }
255
256 INTERNAL PURE FASTCALL GLint
257 __glTexGendv_size(GLenum e)
258 {
259     switch (e) {
260     case GL_TEXTURE_GEN_MODE:
261         return 1;
262     case GL_OBJECT_PLANE:
263     case GL_EYE_PLANE:
264         return 4;
265     default:
266         return 0;
267     }
268 }
269
270 INTERNAL PURE FASTCALL GLint
271 __glMap1d_size(GLenum e)
272 {
273     switch (e) {
274     case GL_MAP1_INDEX:
275     case GL_MAP1_TEXTURE_COORD_1:
276         return 1;
277     case GL_MAP1_TEXTURE_COORD_2:
278         return 2;
279     case GL_MAP1_NORMAL:
280     case GL_MAP1_TEXTURE_COORD_3:
281     case GL_MAP1_VERTEX_3:
282         return 3;
283     case GL_MAP1_COLOR_4:
284     case GL_MAP1_TEXTURE_COORD_4:
285     case GL_MAP1_VERTEX_4:
286         return 4;
287     default:
288         return 0;
289     }
290 }
291
292 INTERNAL PURE FASTCALL GLint
293 __glMap2d_size(GLenum e)
294 {
295     switch (e) {
296     case GL_MAP2_INDEX:
297     case GL_MAP2_TEXTURE_COORD_1:
298         return 1;
299     case GL_MAP2_TEXTURE_COORD_2:
300         return 2;
301     case GL_MAP2_NORMAL:
302     case GL_MAP2_TEXTURE_COORD_3:
303     case GL_MAP2_VERTEX_3:
304         return 3;
305     case GL_MAP2_COLOR_4:
306     case GL_MAP2_TEXTURE_COORD_4:
307     case GL_MAP2_VERTEX_4:
308         return 4;
309     default:
310         return 0;
311     }
312 }
313
314 INTERNAL PURE FASTCALL GLint
315 __glGetBooleanv_size(GLenum e)
316 {
317     switch (e) {
318     case GL_CURRENT_INDEX:
319     case GL_CURRENT_RASTER_INDEX:
320     case GL_CURRENT_RASTER_POSITION_VALID:
321     case GL_CURRENT_RASTER_DISTANCE:
322     case GL_POINT_SMOOTH:
323     case GL_POINT_SIZE:
324     case GL_SMOOTH_POINT_SIZE_GRANULARITY:
325     case GL_LINE_SMOOTH:
326     case GL_LINE_WIDTH:
327     case GL_LINE_WIDTH_GRANULARITY:
328     case GL_LINE_STIPPLE:
329     case GL_LINE_STIPPLE_PATTERN:
330     case GL_LINE_STIPPLE_REPEAT:
331     case GL_LIST_MODE:
332     case GL_MAX_LIST_NESTING:
333     case GL_LIST_BASE:
334     case GL_LIST_INDEX:
335     case GL_POLYGON_SMOOTH:
336     case GL_POLYGON_STIPPLE:
337     case GL_EDGE_FLAG:
338     case GL_CULL_FACE:
339     case GL_CULL_FACE_MODE:
340     case GL_FRONT_FACE:
341     case GL_LIGHTING:
342     case GL_LIGHT_MODEL_LOCAL_VIEWER:
343     case GL_LIGHT_MODEL_TWO_SIDE:
344     case GL_SHADE_MODEL:
345     case GL_COLOR_MATERIAL_FACE:
346     case GL_COLOR_MATERIAL_PARAMETER:
347     case GL_COLOR_MATERIAL:
348     case GL_FOG:
349     case GL_FOG_INDEX:
350     case GL_FOG_DENSITY:
351     case GL_FOG_START:
352     case GL_FOG_END:
353     case GL_FOG_MODE:
354     case GL_DEPTH_TEST:
355     case GL_DEPTH_WRITEMASK:
356     case GL_DEPTH_CLEAR_VALUE:
357     case GL_DEPTH_FUNC:
358     case GL_STENCIL_TEST:
359     case GL_STENCIL_CLEAR_VALUE:
360     case GL_STENCIL_FUNC:
361     case GL_STENCIL_VALUE_MASK:
362     case GL_STENCIL_FAIL:
363     case GL_STENCIL_PASS_DEPTH_FAIL:
364     case GL_STENCIL_PASS_DEPTH_PASS:
365     case GL_STENCIL_REF:
366     case GL_STENCIL_WRITEMASK:
367     case GL_MATRIX_MODE:
368     case GL_NORMALIZE:
369     case GL_MODELVIEW_STACK_DEPTH:
370     case GL_PROJECTION_STACK_DEPTH:
371     case GL_TEXTURE_STACK_DEPTH:
372     case GL_ATTRIB_STACK_DEPTH:
373     case GL_CLIENT_ATTRIB_STACK_DEPTH:
374     case GL_ALPHA_TEST:
375     case GL_ALPHA_TEST_FUNC:
376     case GL_ALPHA_TEST_REF:
377     case GL_DITHER:
378     case GL_BLEND_DST:
379     case GL_BLEND_SRC:
380     case GL_BLEND:
381     case GL_LOGIC_OP_MODE:
382     case GL_LOGIC_OP:
383     case GL_AUX_BUFFERS:
384     case GL_DRAW_BUFFER:
385     case GL_READ_BUFFER:
386     case GL_SCISSOR_TEST:
387     case GL_INDEX_CLEAR_VALUE:
388     case GL_INDEX_WRITEMASK:
389     case GL_INDEX_MODE:
390     case GL_RGBA_MODE:
391     case GL_DOUBLEBUFFER:
392     case GL_STEREO:
393     case GL_RENDER_MODE:
394     case GL_PERSPECTIVE_CORRECTION_HINT:
395     case GL_POINT_SMOOTH_HINT:
396     case GL_LINE_SMOOTH_HINT:
397     case GL_POLYGON_SMOOTH_HINT:
398     case GL_FOG_HINT:
399     case GL_TEXTURE_GEN_S:
400     case GL_TEXTURE_GEN_T:
401     case GL_TEXTURE_GEN_R:
402     case GL_TEXTURE_GEN_Q:
403     case GL_PIXEL_MAP_I_TO_I:
404     case GL_PIXEL_MAP_I_TO_I_SIZE:
405     case GL_PIXEL_MAP_S_TO_S_SIZE:
406     case GL_PIXEL_MAP_I_TO_R_SIZE:
407     case GL_PIXEL_MAP_I_TO_G_SIZE:
408     case GL_PIXEL_MAP_I_TO_B_SIZE:
409     case GL_PIXEL_MAP_I_TO_A_SIZE:
410     case GL_PIXEL_MAP_R_TO_R_SIZE:
411     case GL_PIXEL_MAP_G_TO_G_SIZE:
412     case GL_PIXEL_MAP_B_TO_B_SIZE:
413     case GL_PIXEL_MAP_A_TO_A_SIZE:
414     case GL_UNPACK_SWAP_BYTES:
415     case GL_UNPACK_LSB_FIRST:
416     case GL_UNPACK_ROW_LENGTH:
417     case GL_UNPACK_SKIP_ROWS:
418     case GL_UNPACK_SKIP_PIXELS:
419     case GL_UNPACK_ALIGNMENT:
420     case GL_PACK_SWAP_BYTES:
421     case GL_PACK_LSB_FIRST:
422     case GL_PACK_ROW_LENGTH:
423     case GL_PACK_SKIP_ROWS:
424     case GL_PACK_SKIP_PIXELS:
425     case GL_PACK_ALIGNMENT:
426     case GL_MAP_COLOR:
427     case GL_MAP_STENCIL:
428     case GL_INDEX_SHIFT:
429     case GL_INDEX_OFFSET:
430     case GL_RED_SCALE:
431     case GL_RED_BIAS:
432     case GL_ZOOM_X:
433     case GL_ZOOM_Y:
434     case GL_GREEN_SCALE:
435     case GL_GREEN_BIAS:
436     case GL_BLUE_SCALE:
437     case GL_BLUE_BIAS:
438     case GL_ALPHA_SCALE:
439     case GL_ALPHA_BIAS:
440     case GL_DEPTH_SCALE:
441     case GL_DEPTH_BIAS:
442     case GL_MAX_EVAL_ORDER:
443     case GL_MAX_LIGHTS:
444     case GL_MAX_CLIP_PLANES:
445     case GL_MAX_TEXTURE_SIZE:
446     case GL_MAX_PIXEL_MAP_TABLE:
447     case GL_MAX_ATTRIB_STACK_DEPTH:
448     case GL_MAX_MODELVIEW_STACK_DEPTH:
449     case GL_MAX_NAME_STACK_DEPTH:
450     case GL_MAX_PROJECTION_STACK_DEPTH:
451     case GL_MAX_TEXTURE_STACK_DEPTH:
452     case GL_MAX_CLIENT_ATTRIB_STACK_DEPTH:
453     case GL_SUBPIXEL_BITS:
454     case GL_INDEX_BITS:
455     case GL_RED_BITS:
456     case GL_GREEN_BITS:
457     case GL_BLUE_BITS:
458     case GL_ALPHA_BITS:
459     case GL_DEPTH_BITS:
460     case GL_STENCIL_BITS:
461     case GL_ACCUM_RED_BITS:
462     case GL_ACCUM_GREEN_BITS:
463     case GL_ACCUM_BLUE_BITS:
464     case GL_ACCUM_ALPHA_BITS:
465     case GL_NAME_STACK_DEPTH:
466     case GL_AUTO_NORMAL:
467     case GL_MAP1_COLOR_4:
468     case GL_MAP1_INDEX:
469     case GL_MAP1_NORMAL:
470     case GL_MAP1_TEXTURE_COORD_1:
471     case GL_MAP1_TEXTURE_COORD_2:
472     case GL_MAP1_TEXTURE_COORD_3:
473     case GL_MAP1_TEXTURE_COORD_4:
474     case GL_MAP1_VERTEX_3:
475     case GL_MAP1_VERTEX_4:
476     case GL_MAP2_COLOR_4:
477     case GL_MAP2_INDEX:
478     case GL_MAP2_NORMAL:
479     case GL_MAP2_TEXTURE_COORD_1:
480     case GL_MAP2_TEXTURE_COORD_2:
481     case GL_MAP2_TEXTURE_COORD_3:
482     case GL_MAP2_TEXTURE_COORD_4:
483     case GL_MAP2_VERTEX_3:
484     case GL_MAP2_VERTEX_4:
485     case GL_MAP1_GRID_SEGMENTS:
486     case GL_TEXTURE_1D:
487     case GL_TEXTURE_2D:
488     case GL_POLYGON_OFFSET_UNITS:
489     case GL_CLIP_PLANE0:
490     case GL_CLIP_PLANE1:
491     case GL_CLIP_PLANE2:
492     case GL_CLIP_PLANE3:
493     case GL_CLIP_PLANE4:
494     case GL_CLIP_PLANE5:
495     case GL_LIGHT0:
496     case GL_LIGHT1:
497     case GL_LIGHT2:
498     case GL_LIGHT3:
499     case GL_LIGHT4:
500     case GL_LIGHT5:
501     case GL_LIGHT6:
502     case GL_LIGHT7:
503     case GL_BLEND_EQUATION:
504 /*      case GL_BLEND_EQUATION_EXT:*/
505     case GL_CONVOLUTION_1D:
506     case GL_CONVOLUTION_2D:
507     case GL_SEPARABLE_2D:
508     case GL_MAX_CONVOLUTION_WIDTH:
509 /*      case GL_MAX_CONVOLUTION_WIDTH_EXT:*/
510     case GL_MAX_CONVOLUTION_HEIGHT:
511 /*      case GL_MAX_CONVOLUTION_HEIGHT_EXT:*/
512     case GL_POST_CONVOLUTION_RED_SCALE:
513 /*      case GL_POST_CONVOLUTION_RED_SCALE_EXT:*/
514     case GL_POST_CONVOLUTION_GREEN_SCALE:
515 /*      case GL_POST_CONVOLUTION_GREEN_SCALE_EXT:*/
516     case GL_POST_CONVOLUTION_BLUE_SCALE:
517 /*      case GL_POST_CONVOLUTION_BLUE_SCALE_EXT:*/
518     case GL_POST_CONVOLUTION_ALPHA_SCALE:
519 /*      case GL_POST_CONVOLUTION_ALPHA_SCALE_EXT:*/
520     case GL_POST_CONVOLUTION_RED_BIAS:
521 /*      case GL_POST_CONVOLUTION_RED_BIAS_EXT:*/
522     case GL_POST_CONVOLUTION_GREEN_BIAS:
523 /*      case GL_POST_CONVOLUTION_GREEN_BIAS_EXT:*/
524     case GL_POST_CONVOLUTION_BLUE_BIAS:
525 /*      case GL_POST_CONVOLUTION_BLUE_BIAS_EXT:*/
526     case GL_POST_CONVOLUTION_ALPHA_BIAS:
527 /*      case GL_POST_CONVOLUTION_ALPHA_BIAS_EXT:*/
528     case GL_HISTOGRAM:
529     case GL_MINMAX:
530     case GL_POLYGON_OFFSET_FACTOR:
531     case GL_RESCALE_NORMAL:
532 /*      case GL_RESCALE_NORMAL_EXT:*/
533     case GL_TEXTURE_BINDING_1D:
534     case GL_TEXTURE_BINDING_2D:
535     case GL_TEXTURE_BINDING_3D:
536     case GL_PACK_SKIP_IMAGES:
537     case GL_PACK_IMAGE_HEIGHT:
538     case GL_UNPACK_SKIP_IMAGES:
539     case GL_UNPACK_IMAGE_HEIGHT:
540     case GL_TEXTURE_3D:
541     case GL_MAX_3D_TEXTURE_SIZE:
542     case GL_VERTEX_ARRAY:
543     case GL_NORMAL_ARRAY:
544     case GL_COLOR_ARRAY:
545     case GL_INDEX_ARRAY:
546     case GL_TEXTURE_COORD_ARRAY:
547     case GL_EDGE_FLAG_ARRAY:
548     case GL_VERTEX_ARRAY_SIZE:
549     case GL_VERTEX_ARRAY_TYPE:
550     case GL_VERTEX_ARRAY_STRIDE:
551     case GL_NORMAL_ARRAY_TYPE:
552     case GL_NORMAL_ARRAY_STRIDE:
553     case GL_COLOR_ARRAY_SIZE:
554     case GL_COLOR_ARRAY_TYPE:
555     case GL_COLOR_ARRAY_STRIDE:
556     case GL_INDEX_ARRAY_TYPE:
557     case GL_INDEX_ARRAY_STRIDE:
558     case GL_TEXTURE_COORD_ARRAY_SIZE:
559     case GL_TEXTURE_COORD_ARRAY_TYPE:
560     case GL_TEXTURE_COORD_ARRAY_STRIDE:
561     case GL_EDGE_FLAG_ARRAY_STRIDE:
562     case GL_MULTISAMPLE:
563 /*      case GL_MULTISAMPLE_ARB:*/
564     case GL_SAMPLE_ALPHA_TO_COVERAGE:
565 /*      case GL_SAMPLE_ALPHA_TO_COVERAGE_ARB:*/
566     case GL_SAMPLE_ALPHA_TO_ONE:
567 /*      case GL_SAMPLE_ALPHA_TO_ONE_ARB:*/
568     case GL_SAMPLE_COVERAGE:
569 /*      case GL_SAMPLE_COVERAGE_ARB:*/
570     case GL_SAMPLE_BUFFERS:
571 /*      case GL_SAMPLE_BUFFERS_ARB:*/
572     case GL_SAMPLES:
573 /*      case GL_SAMPLES_ARB:*/
574     case GL_SAMPLE_COVERAGE_VALUE:
575 /*      case GL_SAMPLE_COVERAGE_VALUE_ARB:*/
576     case GL_SAMPLE_COVERAGE_INVERT:
577 /*      case GL_SAMPLE_COVERAGE_INVERT_ARB:*/
578     case GL_COLOR_MATRIX_STACK_DEPTH:
579     case GL_MAX_COLOR_MATRIX_STACK_DEPTH:
580     case GL_POST_COLOR_MATRIX_RED_SCALE:
581     case GL_POST_COLOR_MATRIX_GREEN_SCALE:
582     case GL_POST_COLOR_MATRIX_BLUE_SCALE:
583     case GL_POST_COLOR_MATRIX_ALPHA_SCALE:
584     case GL_POST_COLOR_MATRIX_RED_BIAS:
585     case GL_POST_COLOR_MATRIX_GREEN_BIAS:
586     case GL_POST_COLOR_MATRIX_BLUE_BIAS:
587     case GL_POST_COLOR_MATRIX_ALPHA_BIAS:
588     case GL_BLEND_DST_RGB:
589     case GL_BLEND_SRC_RGB:
590     case GL_BLEND_DST_ALPHA:
591     case GL_BLEND_SRC_ALPHA:
592     case GL_COLOR_TABLE:
593     case GL_POST_CONVOLUTION_COLOR_TABLE:
594     case GL_POST_COLOR_MATRIX_COLOR_TABLE:
595     case GL_MAX_ELEMENTS_VERTICES:
596     case GL_MAX_ELEMENTS_INDICES:
597     case GL_CLIP_VOLUME_CLIPPING_HINT_EXT:
598     case GL_POINT_SIZE_MIN:
599     case GL_POINT_SIZE_MAX:
600     case GL_POINT_FADE_THRESHOLD_SIZE:
601     case GL_OCCLUSION_TEST_HP:
602     case GL_OCCLUSION_TEST_RESULT_HP:
603     case GL_LIGHT_MODEL_COLOR_CONTROL:
604     case GL_CURRENT_FOG_COORD:
605     case GL_FOG_COORDINATE_ARRAY_TYPE:
606     case GL_FOG_COORDINATE_ARRAY_STRIDE:
607     case GL_FOG_COORD_ARRAY:
608     case GL_COLOR_SUM_ARB:
609     case GL_SECONDARY_COLOR_ARRAY_SIZE:
610     case GL_SECONDARY_COLOR_ARRAY_TYPE:
611     case GL_SECONDARY_COLOR_ARRAY_STRIDE:
612     case GL_SECONDARY_COLOR_ARRAY:
613     case GL_ACTIVE_TEXTURE:
614 /*      case GL_ACTIVE_TEXTURE_ARB:*/
615     case GL_CLIENT_ACTIVE_TEXTURE:
616 /*      case GL_CLIENT_ACTIVE_TEXTURE_ARB:*/
617     case GL_MAX_TEXTURE_UNITS:
618 /*      case GL_MAX_TEXTURE_UNITS_ARB:*/
619     case GL_MAX_RENDERBUFFER_SIZE_EXT:
620     case GL_TEXTURE_COMPRESSION_HINT:
621 /*      case GL_TEXTURE_COMPRESSION_HINT_ARB:*/
622     case GL_TEXTURE_RECTANGLE_ARB:
623 /*      case GL_TEXTURE_RECTANGLE_NV:*/
624     case GL_TEXTURE_BINDING_RECTANGLE_ARB:
625 /*      case GL_TEXTURE_BINDING_RECTANGLE_NV:*/
626     case GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB:
627 /*      case GL_MAX_RECTANGLE_TEXTURE_SIZE_NV:*/
628     case GL_MAX_TEXTURE_LOD_BIAS:
629     case GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT:
630     case GL_MAX_SHININESS_NV:
631     case GL_MAX_SPOT_EXPONENT_NV:
632     case GL_TEXTURE_CUBE_MAP:
633 /*      case GL_TEXTURE_CUBE_MAP_ARB:*/
634     case GL_TEXTURE_BINDING_CUBE_MAP:
635 /*      case GL_TEXTURE_BINDING_CUBE_MAP_ARB:*/
636     case GL_MAX_CUBE_MAP_TEXTURE_SIZE:
637 /*      case GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB:*/
638     case GL_MULTISAMPLE_FILTER_HINT_NV:
639     case GL_FOG_DISTANCE_MODE_NV:
640     case GL_VERTEX_PROGRAM_ARB:
641     case GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB:
642     case GL_MAX_PROGRAM_MATRICES_ARB:
643     case GL_CURRENT_MATRIX_STACK_DEPTH_ARB:
644     case GL_VERTEX_PROGRAM_POINT_SIZE_ARB:
645     case GL_VERTEX_PROGRAM_TWO_SIDE_ARB:
646     case GL_PROGRAM_ERROR_POSITION_ARB:
647     case GL_DEPTH_CLAMP_NV:
648     case GL_NUM_COMPRESSED_TEXTURE_FORMATS:
649 /*      case GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB:*/
650     case GL_MAX_VERTEX_UNITS_ARB:
651     case GL_ACTIVE_VERTEX_UNITS_ARB:
652     case GL_WEIGHT_SUM_UNITY_ARB:
653     case GL_VERTEX_BLEND_ARB:
654     case GL_CURRENT_WEIGHT_ARB:
655     case GL_WEIGHT_ARRAY_TYPE_ARB:
656     case GL_WEIGHT_ARRAY_STRIDE_ARB:
657     case GL_WEIGHT_ARRAY_SIZE_ARB:
658     case GL_WEIGHT_ARRAY_ARB:
659     case GL_PACK_INVERT_MESA:
660     case GL_STENCIL_BACK_FUNC_ATI:
661     case GL_STENCIL_BACK_FAIL_ATI:
662     case GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI:
663     case GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI:
664     case GL_FRAGMENT_PROGRAM_ARB:
665     case GL_MAX_DRAW_BUFFERS_ARB:
666 /*      case GL_MAX_DRAW_BUFFERS_ATI:*/
667     case GL_DRAW_BUFFER0_ARB:
668 /*      case GL_DRAW_BUFFER0_ATI:*/
669     case GL_DRAW_BUFFER1_ARB:
670 /*      case GL_DRAW_BUFFER1_ATI:*/
671     case GL_DRAW_BUFFER2_ARB:
672 /*      case GL_DRAW_BUFFER2_ATI:*/
673     case GL_DRAW_BUFFER3_ARB:
674 /*      case GL_DRAW_BUFFER3_ATI:*/
675     case GL_DRAW_BUFFER4_ARB:
676 /*      case GL_DRAW_BUFFER4_ATI:*/
677     case GL_DRAW_BUFFER5_ARB:
678 /*      case GL_DRAW_BUFFER5_ATI:*/
679     case GL_DRAW_BUFFER6_ARB:
680 /*      case GL_DRAW_BUFFER6_ATI:*/
681     case GL_DRAW_BUFFER7_ARB:
682 /*      case GL_DRAW_BUFFER7_ATI:*/
683     case GL_DRAW_BUFFER8_ARB:
684 /*      case GL_DRAW_BUFFER8_ATI:*/
685     case GL_DRAW_BUFFER9_ARB:
686 /*      case GL_DRAW_BUFFER9_ATI:*/
687     case GL_DRAW_BUFFER10_ARB:
688 /*      case GL_DRAW_BUFFER10_ATI:*/
689     case GL_DRAW_BUFFER11_ARB:
690 /*      case GL_DRAW_BUFFER11_ATI:*/
691     case GL_DRAW_BUFFER12_ARB:
692 /*      case GL_DRAW_BUFFER12_ATI:*/
693     case GL_DRAW_BUFFER13_ARB:
694 /*      case GL_DRAW_BUFFER13_ATI:*/
695     case GL_DRAW_BUFFER14_ARB:
696 /*      case GL_DRAW_BUFFER14_ATI:*/
697     case GL_DRAW_BUFFER15_ARB:
698 /*      case GL_DRAW_BUFFER15_ATI:*/
699     case GL_BLEND_EQUATION_ALPHA_EXT:
700     case GL_MATRIX_PALETTE_ARB:
701     case GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB:
702     case GL_MAX_PALETTE_MATRICES_ARB:
703     case GL_CURRENT_PALETTE_MATRIX_ARB:
704     case GL_MATRIX_INDEX_ARRAY_ARB:
705     case GL_CURRENT_MATRIX_INDEX_ARB:
706     case GL_MATRIX_INDEX_ARRAY_SIZE_ARB:
707     case GL_MATRIX_INDEX_ARRAY_TYPE_ARB:
708     case GL_MATRIX_INDEX_ARRAY_STRIDE_ARB:
709     case GL_COMPARE_REF_DEPTH_TO_TEXTURE_EXT:
710     case GL_POINT_SPRITE_ARB:
711 /*      case GL_POINT_SPRITE_NV:*/
712     case GL_POINT_SPRITE_R_MODE_NV:
713     case GL_MAX_VERTEX_ATTRIBS_ARB:
714     case GL_MAX_TEXTURE_COORDS_ARB:
715     case GL_MAX_TEXTURE_IMAGE_UNITS_ARB:
716     case GL_DEPTH_BOUNDS_TEST_EXT:
717     case GL_ARRAY_BUFFER_BINDING_ARB:
718     case GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB:
719     case GL_VERTEX_ARRAY_BUFFER_BINDING_ARB:
720     case GL_NORMAL_ARRAY_BUFFER_BINDING_ARB:
721     case GL_COLOR_ARRAY_BUFFER_BINDING_ARB:
722     case GL_INDEX_ARRAY_BUFFER_BINDING_ARB:
723     case GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB:
724     case GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB:
725     case GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB:
726     case GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB:
727     case GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB:
728     case GL_MAX_ARRAY_TEXTURE_LAYERS_EXT:
729     case GL_STENCIL_TEST_TWO_SIDE_EXT:
730     case GL_ACTIVE_STENCIL_FACE_EXT:
731     case GL_TEXTURE_BINDING_1D_ARRAY_EXT:
732     case GL_TEXTURE_BINDING_2D_ARRAY_EXT:
733     case GL_DRAW_FRAMEBUFFER_BINDING_EXT:
734     case GL_RENDERBUFFER_BINDING_EXT:
735     case GL_READ_FRAMEBUFFER_BINDING_EXT:
736     case GL_MAX_COLOR_ATTACHMENTS_EXT:
737     case GL_RASTER_POSITION_UNCLIPPED_IBM:
738         return 1;
739     case GL_SMOOTH_POINT_SIZE_RANGE:
740     case GL_LINE_WIDTH_RANGE:
741     case GL_POLYGON_MODE:
742     case GL_DEPTH_RANGE:
743     case GL_MAX_VIEWPORT_DIMS:
744     case GL_MAP1_GRID_DOMAIN:
745     case GL_MAP2_GRID_SEGMENTS:
746     case GL_ALIASED_POINT_SIZE_RANGE:
747     case GL_ALIASED_LINE_WIDTH_RANGE:
748     case GL_DEPTH_BOUNDS_EXT:
749         return 2;
750     case GL_CURRENT_NORMAL:
751     case GL_POINT_DISTANCE_ATTENUATION:
752         return 3;
753     case GL_CURRENT_COLOR:
754     case GL_CURRENT_TEXTURE_COORDS:
755     case GL_CURRENT_RASTER_COLOR:
756     case GL_CURRENT_RASTER_TEXTURE_COORDS:
757     case GL_CURRENT_RASTER_POSITION:
758     case GL_LIGHT_MODEL_AMBIENT:
759     case GL_FOG_COLOR:
760     case GL_ACCUM_CLEAR_VALUE:
761     case GL_VIEWPORT:
762     case GL_SCISSOR_BOX:
763     case GL_COLOR_CLEAR_VALUE:
764     case GL_COLOR_WRITEMASK:
765     case GL_MAP2_GRID_DOMAIN:
766     case GL_BLEND_COLOR:
767 /*      case GL_BLEND_COLOR_EXT:*/
768     case GL_CURRENT_SECONDARY_COLOR:
769         return 4;
770     case GL_MODELVIEW_MATRIX:
771     case GL_PROJECTION_MATRIX:
772     case GL_TEXTURE_MATRIX:
773     case GL_MODELVIEW0_ARB:
774     case GL_COLOR_MATRIX:
775     case GL_MODELVIEW1_ARB:
776     case GL_CURRENT_MATRIX_ARB:
777     case GL_MODELVIEW2_ARB:
778     case GL_MODELVIEW3_ARB:
779     case GL_MODELVIEW4_ARB:
780     case GL_MODELVIEW5_ARB:
781     case GL_MODELVIEW6_ARB:
782     case GL_MODELVIEW7_ARB:
783     case GL_MODELVIEW8_ARB:
784     case GL_MODELVIEW9_ARB:
785     case GL_MODELVIEW10_ARB:
786     case GL_MODELVIEW11_ARB:
787     case GL_MODELVIEW12_ARB:
788     case GL_MODELVIEW13_ARB:
789     case GL_MODELVIEW14_ARB:
790     case GL_MODELVIEW15_ARB:
791     case GL_MODELVIEW16_ARB:
792     case GL_MODELVIEW17_ARB:
793     case GL_MODELVIEW18_ARB:
794     case GL_MODELVIEW19_ARB:
795     case GL_MODELVIEW20_ARB:
796     case GL_MODELVIEW21_ARB:
797     case GL_MODELVIEW22_ARB:
798     case GL_MODELVIEW23_ARB:
799     case GL_MODELVIEW24_ARB:
800     case GL_MODELVIEW25_ARB:
801     case GL_MODELVIEW26_ARB:
802     case GL_MODELVIEW27_ARB:
803     case GL_MODELVIEW28_ARB:
804     case GL_MODELVIEW29_ARB:
805     case GL_MODELVIEW30_ARB:
806     case GL_MODELVIEW31_ARB:
807     case GL_TRANSPOSE_CURRENT_MATRIX_ARB:
808         return 16;
809     case GL_FOG_COORDINATE_SOURCE:
810     case GL_COMPRESSED_TEXTURE_FORMATS:
811         return __glGetBooleanv_variable_size(e);
812     default:
813         return 0;
814     }
815 }
816
817 INTERNAL PURE FASTCALL GLint
818 __glGetTexParameterfv_size(GLenum e)
819 {
820     switch (e) {
821     case GL_TEXTURE_MAG_FILTER:
822     case GL_TEXTURE_MIN_FILTER:
823     case GL_TEXTURE_WRAP_S:
824     case GL_TEXTURE_WRAP_T:
825     case GL_TEXTURE_PRIORITY:
826     case GL_TEXTURE_RESIDENT:
827     case GL_TEXTURE_WRAP_R:
828     case GL_TEXTURE_COMPARE_FAIL_VALUE_ARB:
829 /*      case GL_SHADOW_AMBIENT_SGIX:*/
830     case GL_TEXTURE_MIN_LOD:
831     case GL_TEXTURE_MAX_LOD:
832     case GL_TEXTURE_BASE_LEVEL:
833     case GL_TEXTURE_MAX_LEVEL:
834     case GL_TEXTURE_CLIPMAP_FRAME_SGIX:
835     case GL_TEXTURE_LOD_BIAS_S_SGIX:
836     case GL_TEXTURE_LOD_BIAS_T_SGIX:
837     case GL_TEXTURE_LOD_BIAS_R_SGIX:
838     case GL_GENERATE_MIPMAP:
839 /*      case GL_GENERATE_MIPMAP_SGIS:*/
840     case GL_TEXTURE_COMPARE_SGIX:
841     case GL_TEXTURE_COMPARE_OPERATOR_SGIX:
842     case GL_TEXTURE_MAX_CLAMP_S_SGIX:
843     case GL_TEXTURE_MAX_CLAMP_T_SGIX:
844     case GL_TEXTURE_MAX_CLAMP_R_SGIX:
845     case GL_TEXTURE_MAX_ANISOTROPY_EXT:
846     case GL_TEXTURE_LOD_BIAS:
847 /*      case GL_TEXTURE_LOD_BIAS_EXT:*/
848     case GL_DEPTH_TEXTURE_MODE:
849 /*      case GL_DEPTH_TEXTURE_MODE_ARB:*/
850     case GL_TEXTURE_COMPARE_MODE:
851 /*      case GL_TEXTURE_COMPARE_MODE_ARB:*/
852     case GL_TEXTURE_COMPARE_FUNC:
853 /*      case GL_TEXTURE_COMPARE_FUNC_ARB:*/
854     case GL_TEXTURE_UNSIGNED_REMAP_MODE_NV:
855         return 1;
856     case GL_TEXTURE_CLIPMAP_CENTER_SGIX:
857     case GL_TEXTURE_CLIPMAP_OFFSET_SGIX:
858         return 2;
859     case GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX:
860         return 3;
861     case GL_TEXTURE_BORDER_COLOR:
862     case GL_POST_TEXTURE_FILTER_BIAS_SGIX:
863     case GL_POST_TEXTURE_FILTER_SCALE_SGIX:
864         return 4;
865     default:
866         return 0;
867     }
868 }
869
870 INTERNAL PURE FASTCALL GLint
871 __glGetTexLevelParameterfv_size(GLenum e)
872 {
873     switch (e) {
874     case GL_TEXTURE_WIDTH:
875     case GL_TEXTURE_HEIGHT:
876     case GL_TEXTURE_COMPONENTS:
877     case GL_TEXTURE_BORDER:
878     case GL_TEXTURE_RED_SIZE:
879 /*      case GL_TEXTURE_RED_SIZE_EXT:*/
880     case GL_TEXTURE_GREEN_SIZE:
881 /*      case GL_TEXTURE_GREEN_SIZE_EXT:*/
882     case GL_TEXTURE_BLUE_SIZE:
883 /*      case GL_TEXTURE_BLUE_SIZE_EXT:*/
884     case GL_TEXTURE_ALPHA_SIZE:
885 /*      case GL_TEXTURE_ALPHA_SIZE_EXT:*/
886     case GL_TEXTURE_LUMINANCE_SIZE:
887 /*      case GL_TEXTURE_LUMINANCE_SIZE_EXT:*/
888     case GL_TEXTURE_INTENSITY_SIZE:
889 /*      case GL_TEXTURE_INTENSITY_SIZE_EXT:*/
890     case GL_TEXTURE_DEPTH:
891     case GL_TEXTURE_INDEX_SIZE_EXT:
892     case GL_TEXTURE_COMPRESSED_IMAGE_SIZE:
893 /*      case GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB:*/
894     case GL_TEXTURE_COMPRESSED:
895 /*      case GL_TEXTURE_COMPRESSED_ARB:*/
896     case GL_TEXTURE_DEPTH_SIZE:
897 /*      case GL_TEXTURE_DEPTH_SIZE_ARB:*/
898         return 1;
899     default:
900         return 0;
901     }
902 }
903
904 INTERNAL PURE FASTCALL GLint
905 __glColorTableParameterfv_size(GLenum e)
906 {
907     switch (e) {
908     case GL_COLOR_TABLE_SCALE:
909     case GL_COLOR_TABLE_BIAS:
910         return 4;
911     default:
912         return 0;
913     }
914 }
915
916 INTERNAL PURE FASTCALL GLint
917 __glGetColorTableParameterfv_size(GLenum e)
918 {
919     switch (e) {
920     case GL_COLOR_TABLE_FORMAT:
921 /*      case GL_COLOR_TABLE_FORMAT_EXT:*/
922     case GL_COLOR_TABLE_WIDTH:
923 /*      case GL_COLOR_TABLE_WIDTH_EXT:*/
924     case GL_COLOR_TABLE_RED_SIZE:
925 /*      case GL_COLOR_TABLE_RED_SIZE_EXT:*/
926     case GL_COLOR_TABLE_GREEN_SIZE:
927 /*      case GL_COLOR_TABLE_GREEN_SIZE_EXT:*/
928     case GL_COLOR_TABLE_BLUE_SIZE:
929 /*      case GL_COLOR_TABLE_BLUE_SIZE_EXT:*/
930     case GL_COLOR_TABLE_ALPHA_SIZE:
931 /*      case GL_COLOR_TABLE_ALPHA_SIZE_EXT:*/
932     case GL_COLOR_TABLE_LUMINANCE_SIZE:
933 /*      case GL_COLOR_TABLE_LUMINANCE_SIZE_EXT:*/
934     case GL_COLOR_TABLE_INTENSITY_SIZE:
935 /*      case GL_COLOR_TABLE_INTENSITY_SIZE_EXT:*/
936         return 1;
937     case GL_COLOR_TABLE_SCALE:
938     case GL_COLOR_TABLE_BIAS:
939         return 4;
940     default:
941         return 0;
942     }
943 }
944
945 INTERNAL PURE FASTCALL GLint
946 __glConvolutionParameterfv_size(GLenum e)
947 {
948     switch (e) {
949     case GL_CONVOLUTION_BORDER_MODE:
950 /*      case GL_CONVOLUTION_BORDER_MODE_EXT:*/
951         return 1;
952     case GL_CONVOLUTION_FILTER_SCALE:
953 /*      case GL_CONVOLUTION_FILTER_SCALE_EXT:*/
954     case GL_CONVOLUTION_FILTER_BIAS:
955 /*      case GL_CONVOLUTION_FILTER_BIAS_EXT:*/
956     case GL_CONVOLUTION_BORDER_COLOR:
957 /*      case GL_CONVOLUTION_BORDER_COLOR_HP:*/
958         return 4;
959     default:
960         return 0;
961     }
962 }
963
964 INTERNAL PURE FASTCALL GLint
965 __glGetConvolutionParameterfv_size(GLenum e)
966 {
967     switch (e) {
968     case GL_CONVOLUTION_BORDER_MODE:
969 /*      case GL_CONVOLUTION_BORDER_MODE_EXT:*/
970     case GL_CONVOLUTION_FORMAT:
971 /*      case GL_CONVOLUTION_FORMAT_EXT:*/
972     case GL_CONVOLUTION_WIDTH:
973 /*      case GL_CONVOLUTION_WIDTH_EXT:*/
974     case GL_CONVOLUTION_HEIGHT:
975 /*      case GL_CONVOLUTION_HEIGHT_EXT:*/
976     case GL_MAX_CONVOLUTION_WIDTH:
977 /*      case GL_MAX_CONVOLUTION_WIDTH_EXT:*/
978     case GL_MAX_CONVOLUTION_HEIGHT:
979 /*      case GL_MAX_CONVOLUTION_HEIGHT_EXT:*/
980         return 1;
981     case GL_CONVOLUTION_FILTER_SCALE:
982 /*      case GL_CONVOLUTION_FILTER_SCALE_EXT:*/
983     case GL_CONVOLUTION_FILTER_BIAS:
984 /*      case GL_CONVOLUTION_FILTER_BIAS_EXT:*/
985     case GL_CONVOLUTION_BORDER_COLOR:
986 /*      case GL_CONVOLUTION_BORDER_COLOR_HP:*/
987         return 4;
988     default:
989         return 0;
990     }
991 }
992
993 INTERNAL PURE FASTCALL GLint
994 __glGetHistogramParameterfv_size(GLenum e)
995 {
996     switch (e) {
997     case GL_HISTOGRAM_WIDTH:
998     case GL_HISTOGRAM_FORMAT:
999     case GL_HISTOGRAM_RED_SIZE:
1000     case GL_HISTOGRAM_GREEN_SIZE:
1001     case GL_HISTOGRAM_BLUE_SIZE:
1002     case GL_HISTOGRAM_ALPHA_SIZE:
1003     case GL_HISTOGRAM_LUMINANCE_SIZE:
1004     case GL_HISTOGRAM_SINK:
1005         return 1;
1006     default:
1007         return 0;
1008     }
1009 }
1010
1011 INTERNAL PURE FASTCALL GLint
1012 __glGetMinmaxParameterfv_size(GLenum e)
1013 {
1014     switch (e) {
1015     case GL_MINMAX_FORMAT:
1016     case GL_MINMAX_SINK:
1017         return 1;
1018     default:
1019         return 0;
1020     }
1021 }
1022
1023 INTERNAL PURE FASTCALL GLint
1024 __glGetProgramivARB_size(GLenum e)
1025 {
1026     switch (e) {
1027     case GL_PROGRAM_LENGTH_ARB:
1028     case GL_PROGRAM_BINDING_ARB:
1029     case GL_PROGRAM_ALU_INSTRUCTIONS_ARB:
1030     case GL_PROGRAM_TEX_INSTRUCTIONS_ARB:
1031     case GL_PROGRAM_TEX_INDIRECTIONS_ARB:
1032     case GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB:
1033     case GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB:
1034     case GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB:
1035     case GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB:
1036     case GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB:
1037     case GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB:
1038     case GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB:
1039     case GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB:
1040     case GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB:
1041     case GL_PROGRAM_FORMAT_ARB:
1042     case GL_PROGRAM_INSTRUCTIONS_ARB:
1043     case GL_MAX_PROGRAM_INSTRUCTIONS_ARB:
1044     case GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB:
1045     case GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB:
1046     case GL_PROGRAM_TEMPORARIES_ARB:
1047     case GL_MAX_PROGRAM_TEMPORARIES_ARB:
1048     case GL_PROGRAM_NATIVE_TEMPORARIES_ARB:
1049     case GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB:
1050     case GL_PROGRAM_PARAMETERS_ARB:
1051     case GL_MAX_PROGRAM_PARAMETERS_ARB:
1052     case GL_PROGRAM_NATIVE_PARAMETERS_ARB:
1053     case GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB:
1054     case GL_PROGRAM_ATTRIBS_ARB:
1055     case GL_MAX_PROGRAM_ATTRIBS_ARB:
1056     case GL_PROGRAM_NATIVE_ATTRIBS_ARB:
1057     case GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB:
1058     case GL_PROGRAM_ADDRESS_REGISTERS_ARB:
1059     case GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB:
1060     case GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB:
1061     case GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB:
1062     case GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB:
1063     case GL_MAX_PROGRAM_ENV_PARAMETERS_ARB:
1064     case GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB:
1065     case GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV:
1066     case GL_MAX_PROGRAM_CALL_DEPTH_NV:
1067     case GL_MAX_PROGRAM_IF_DEPTH_NV:
1068     case GL_MAX_PROGRAM_LOOP_DEPTH_NV:
1069     case GL_MAX_PROGRAM_LOOP_COUNT_NV:
1070         return 1;
1071     default:
1072         return 0;
1073     }
1074 }
1075
1076 INTERNAL PURE FASTCALL GLint
1077 __glGetVertexAttribdvARB_size(GLenum e)
1078 {
1079     switch (e) {
1080     case GL_VERTEX_PROGRAM_ARB:
1081     case GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB:
1082     case GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB:
1083     case GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB:
1084     case GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB:
1085     case GL_CURRENT_VERTEX_ATTRIB_ARB:
1086     case GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB:
1087         return 1;
1088     default:
1089         return 0;
1090     }
1091 }
1092
1093 INTERNAL PURE FASTCALL GLint
1094 __glGetQueryObjectivARB_size(GLenum e)
1095 {
1096     switch (e) {
1097     case GL_QUERY_RESULT_ARB:
1098     case GL_QUERY_RESULT_AVAILABLE_ARB:
1099         return 1;
1100     default:
1101         return 0;
1102     }
1103 }
1104
1105 INTERNAL PURE FASTCALL GLint
1106 __glGetQueryivARB_size(GLenum e)
1107 {
1108     switch (e) {
1109     case GL_QUERY_COUNTER_BITS_ARB:
1110     case GL_CURRENT_QUERY_ARB:
1111         return 1;
1112     default:
1113         return 0;
1114     }
1115 }
1116
1117 INTERNAL PURE FASTCALL GLint
1118 __glPointParameterfvEXT_size(GLenum e)
1119 {
1120     switch (e) {
1121     case GL_POINT_SIZE_MIN:
1122 /*      case GL_POINT_SIZE_MIN_ARB:*/
1123 /*      case GL_POINT_SIZE_MIN_SGIS:*/
1124     case GL_POINT_SIZE_MAX:
1125 /*      case GL_POINT_SIZE_MAX_ARB:*/
1126 /*      case GL_POINT_SIZE_MAX_SGIS:*/
1127     case GL_POINT_FADE_THRESHOLD_SIZE:
1128 /*      case GL_POINT_FADE_THRESHOLD_SIZE_ARB:*/
1129 /*      case GL_POINT_FADE_THRESHOLD_SIZE_SGIS:*/
1130     case GL_POINT_SPRITE_R_MODE_NV:
1131     case GL_POINT_SPRITE_COORD_ORIGIN:
1132         return 1;
1133     case GL_POINT_DISTANCE_ATTENUATION:
1134 /*      case GL_POINT_DISTANCE_ATTENUATION_ARB:*/
1135 /*      case GL_POINT_DISTANCE_ATTENUATION_SGIS:*/
1136         return 3;
1137     default:
1138         return 0;
1139     }
1140 }
1141
1142 INTERNAL PURE FASTCALL GLint
1143 __glGetProgramivNV_size(GLenum e)
1144 {
1145     switch (e) {
1146     case GL_PROGRAM_LENGTH_NV:
1147     case GL_PROGRAM_TARGET_NV:
1148     case GL_PROGRAM_RESIDENT_NV:
1149         return 1;
1150     default:
1151         return 0;
1152     }
1153 }
1154
1155 INTERNAL PURE FASTCALL GLint
1156 __glGetVertexAttribdvNV_size(GLenum e)
1157 {
1158     switch (e) {
1159     case GL_ATTRIB_ARRAY_SIZE_NV:
1160     case GL_ATTRIB_ARRAY_STRIDE_NV:
1161     case GL_ATTRIB_ARRAY_TYPE_NV:
1162     case GL_CURRENT_ATTRIB_NV:
1163         return 1;
1164     default:
1165         return 0;
1166     }
1167 }
1168
1169 INTERNAL PURE FASTCALL GLint
1170 __glGetFramebufferAttachmentParameterivEXT_size(GLenum e)
1171 {
1172     switch (e) {
1173     case GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT:
1174     case GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT:
1175     case GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT:
1176     case GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT:
1177     case GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT:
1178         return 1;
1179     default:
1180         return 0;
1181     }
1182 }
1183
1184 ALIAS(Fogiv, Fogfv)
1185     ALIAS(Lightiv, Lightfv)
1186     ALIAS(LightModeliv, LightModelfv)
1187     ALIAS(Materialiv, Materialfv)
1188     ALIAS(TexParameteriv, TexParameterfv)
1189     ALIAS(TexEnviv, TexEnvfv)
1190     ALIAS(TexGenfv, TexGendv)
1191     ALIAS(TexGeniv, TexGendv)
1192     ALIAS(Map1f, Map1d)
1193     ALIAS(Map2f, Map2d)
1194     ALIAS(GetDoublev, GetBooleanv)
1195     ALIAS(GetFloatv, GetBooleanv)
1196     ALIAS(GetIntegerv, GetBooleanv)
1197     ALIAS(GetLightfv, Lightfv)
1198     ALIAS(GetLightiv, Lightfv)
1199     ALIAS(GetMaterialfv, Materialfv)
1200     ALIAS(GetMaterialiv, Materialfv)
1201     ALIAS(GetTexEnvfv, TexEnvfv)
1202     ALIAS(GetTexEnviv, TexEnvfv)
1203     ALIAS(GetTexGendv, TexGendv)
1204     ALIAS(GetTexGenfv, TexGendv)
1205     ALIAS(GetTexGeniv, TexGendv)
1206     ALIAS(GetTexParameteriv, GetTexParameterfv)
1207     ALIAS(GetTexLevelParameteriv, GetTexLevelParameterfv)
1208     ALIAS(ColorTableParameteriv, ColorTableParameterfv)
1209     ALIAS(GetColorTableParameteriv, GetColorTableParameterfv)
1210     ALIAS(ConvolutionParameteriv, ConvolutionParameterfv)
1211     ALIAS(GetConvolutionParameteriv, GetConvolutionParameterfv)
1212     ALIAS(GetHistogramParameteriv, GetHistogramParameterfv)
1213     ALIAS(GetMinmaxParameteriv, GetMinmaxParameterfv)
1214     ALIAS(GetVertexAttribfvARB, GetVertexAttribdvARB)
1215     ALIAS(GetVertexAttribivARB, GetVertexAttribdvARB)
1216     ALIAS(GetQueryObjectuivARB, GetQueryObjectivARB)
1217     ALIAS(GetVertexAttribfvNV, GetVertexAttribdvNV)
1218     ALIAS(GetVertexAttribivNV, GetVertexAttribdvNV)
1219     ALIAS(PointParameterivNV, PointParameterfvEXT)
1220 #  undef PURE
1221 #  undef FASTCALL
1222 #  undef INTERNAL