diff --git a/auto/bin/parse_spec.pl b/auto/bin/parse_spec.pl
index 5142230..2f7b6eb 100755
--- a/auto/bin/parse_spec.pl
+++ b/auto/bin/parse_spec.pl
@@ -149,7 +149,7 @@ my %regex = (
prefix => qr/^(?:[aw]?gl|glX)/, # gl | agl | wgl | glX
tprefix => qr/^(?:[AW]?GL|GLX)_/, # GL_ | AGL_ | WGL_ | GLX_
section => compile_regex('^(', join('|', @sections), ')$'), # sections in spec
- token => qr/^([A-Z0-9][A-Z0-9_x]*):?\s+((?:0x)?[0-9A-F]+)([^\?]*)$/, # define tokens
+ token => qr/^([A-Z0-9][A-Z0-9_x]*):?\s+((?:0x)?[0-9A-Fa-f]+)(|\s[^\?]*)$/, # define tokens
types => compile_regex('\b(', join('|', keys %typemap), ')\b'), # var types
voidtype => compile_regex('\b(', keys %voidtypemap, ')\b '), # void type
);
diff --git a/auto/src/eglew_head.h b/auto/src/eglew_head.h
index 58488ae..df2f1d9 100644
--- a/auto/src/eglew_head.h
+++ b/auto/src/eglew_head.h
@@ -69,6 +69,7 @@ typedef void *EGLOutputPortEXT;
typedef void *EGLSyncNV;
typedef khronos_utime_nanoseconds_t EGLTimeNV;
typedef khronos_utime_nanoseconds_t EGLuint64NV;
+typedef khronos_stime_nanoseconds_t EGLnsecsANDROID;
struct EGLClientPixmapHI;
diff --git a/doc/glew.html b/doc/glew.html
index 8769246..c507511 100644
--- a/doc/glew.html
+++ b/doc/glew.html
@@ -465,252 +465,253 @@ THE POSSIBILITY OF SUCH DAMAGE.
| 356 | | EXT_vertex_attrib_64bit |
| 357 | | EXT_vertex_shader |
| 358 | | EXT_vertex_weighting |
-| 359 | | EXT_x11_sync_object |
+| 359 | | EXT_window_rectangles |
+| 360 | | EXT_x11_sync_object |
| | |
-| 360 | | GREMEDY_frame_terminator |
-| 361 | | GREMEDY_string_marker |
+| 361 | | GREMEDY_frame_terminator |
+| 362 | | GREMEDY_string_marker |
| | |
-| 362 | | HP_convolution_border_modes |
-| 363 | | HP_image_transform |
-| 364 | | HP_occlusion_test |
-| 365 | | HP_texture_lighting |
+| 363 | | HP_convolution_border_modes |
+| 364 | | HP_image_transform |
+| 365 | | HP_occlusion_test |
+| 366 | | HP_texture_lighting |
| | |
-| 366 | | IBM_cull_vertex |
-| 367 | | IBM_multimode_draw_arrays |
-| 368 | | IBM_rasterpos_clip |
-| 369 | | IBM_static_data |
-| 370 | | IBM_texture_mirrored_repeat |
-| 371 | | IBM_vertex_array_lists |
+| 367 | | IBM_cull_vertex |
+| 368 | | IBM_multimode_draw_arrays |
+| 369 | | IBM_rasterpos_clip |
+| 370 | | IBM_static_data |
+| 371 | | IBM_texture_mirrored_repeat |
+| 372 | | IBM_vertex_array_lists |
| | |
-| 372 | | INGR_color_clamp |
-| 373 | | INGR_interlace_read |
+| 373 | | INGR_color_clamp |
+| 374 | | INGR_interlace_read |
| | |
-| 374 | | INTEL_fragment_shader_ordering |
-| 375 | | INTEL_framebuffer_CMAA |
-| 376 | | INTEL_map_texture |
-| 377 | | INTEL_parallel_arrays |
-| 378 | | INTEL_performance_query |
-| 379 | | INTEL_texture_scissor |
+| 375 | | INTEL_fragment_shader_ordering |
+| 376 | | INTEL_framebuffer_CMAA |
+| 377 | | INTEL_map_texture |
+| 378 | | INTEL_parallel_arrays |
+| 379 | | INTEL_performance_query |
+| 380 | | INTEL_texture_scissor |
| | |
-| 380 | | KHR_blend_equation_advanced |
-| 381 | | KHR_blend_equation_advanced_coherent |
-| 382 | | KHR_context_flush_control |
-| 383 | | KHR_debug |
-| 384 | | KHR_no_error |
-| 385 | | KHR_robust_buffer_access_behavior |
-| 386 | | KHR_robustness |
-| 387 | | KHR_texture_compression_astc_hdr |
-| 388 | | KHR_texture_compression_astc_ldr |
-| 389 | | KHR_texture_compression_astc_sliced_3d |
+| 381 | | KHR_blend_equation_advanced |
+| 382 | | KHR_blend_equation_advanced_coherent |
+| 383 | | KHR_context_flush_control |
+| 384 | | KHR_debug |
+| 385 | | KHR_no_error |
+| 386 | | KHR_robust_buffer_access_behavior |
+| 387 | | KHR_robustness |
+| 388 | | KHR_texture_compression_astc_hdr |
+| 389 | | KHR_texture_compression_astc_ldr |
+| 390 | | KHR_texture_compression_astc_sliced_3d |
| | |
-| 390 | | KTX_buffer_region |
+| 391 | | KTX_buffer_region |
| | |
-| 391 | | MESAX_texture_stack |
+| 392 | | MESAX_texture_stack |
| | |
-| 392 | | MESA_pack_invert |
-| 393 | | MESA_resize_buffers |
-| 394 | | MESA_window_pos |
-| 395 | | MESA_ycbcr_texture |
+| 393 | | MESA_pack_invert |
+| 394 | | MESA_resize_buffers |
+| 395 | | MESA_window_pos |
+| 396 | | MESA_ycbcr_texture |
| | |
-| 396 | | NVX_conditional_render |
-| 397 | | NVX_gpu_memory_info |
-| 398 | | NVX_linked_gpu_multicast |
+| 397 | | NVX_conditional_render |
+| 398 | | NVX_gpu_memory_info |
+| 399 | | NVX_linked_gpu_multicast |
| | |
-| 399 | | NV_bindless_multi_draw_indirect |
-| 400 | | NV_bindless_multi_draw_indirect_count |
-| 401 | | NV_bindless_texture |
-| 402 | | NV_blend_equation_advanced |
-| 403 | | NV_blend_equation_advanced_coherent |
-| 404 | | NV_blend_square |
-| 405 | | NV_clip_space_w_scaling |
-| 406 | | NV_command_list |
-| 407 | | NV_compute_program5 |
-| 408 | | NV_conditional_render |
-| 409 | | NV_conservative_raster |
-| 410 | | NV_conservative_raster_dilate |
-| 411 | | NV_conservative_raster_pre_snap_triangles |
-| 412 | | NV_copy_depth_to_color |
-| 413 | | NV_copy_image |
-| 414 | | NV_deep_texture3D |
-| 415 | | NV_depth_buffer_float |
-| 416 | | NV_depth_clamp |
-| 417 | | NV_depth_range_unclamped |
-| 418 | | NV_draw_texture |
-| 419 | | NV_draw_vulkan_image |
-| 420 | | NV_evaluators |
-| 421 | | NV_explicit_multisample |
-| 422 | | NV_fence |
-| 423 | | NV_fill_rectangle |
-| 424 | | NV_float_buffer |
-| 425 | | NV_fog_distance |
-| 426 | | NV_fragment_coverage_to_color |
-| 427 | | NV_fragment_program |
-| 428 | | NV_fragment_program2 |
-| 429 | | NV_fragment_program4 |
-| 430 | | NV_fragment_program_option |
-| 431 | | NV_fragment_shader_interlock |
-| 432 | | NV_framebuffer_mixed_samples |
-| 433 | | NV_framebuffer_multisample_coverage |
-| 434 | | NV_geometry_program4 |
-| 435 | | NV_geometry_shader4 |
-| 436 | | NV_geometry_shader_passthrough |
-| 437 | | NV_gpu_program4 |
-| 438 | | NV_gpu_program5 |
-| 439 | | NV_gpu_program5_mem_extended |
-| 440 | | NV_gpu_program_fp64 |
-| 441 | | NV_gpu_shader5 |
-| 442 | | NV_half_float |
-| 443 | | NV_internalformat_sample_query |
-| 444 | | NV_light_max_exponent |
-| 445 | | NV_multisample_coverage |
-| 446 | | NV_multisample_filter_hint |
-| 447 | | NV_occlusion_query |
-| 448 | | NV_packed_depth_stencil |
-| 449 | | NV_parameter_buffer_object |
-| 450 | | NV_parameter_buffer_object2 |
-| 451 | | NV_path_rendering |
-| 452 | | NV_path_rendering_shared_edge |
-| 453 | | NV_pixel_data_range |
-| 454 | | NV_point_sprite |
-| 455 | | NV_present_video |
-| 456 | | NV_primitive_restart |
-| 457 | | NV_register_combiners |
-| 458 | | NV_register_combiners2 |
-| 459 | | NV_robustness_video_memory_purge |
-| 460 | | NV_sample_locations |
-| 461 | | NV_sample_mask_override_coverage |
-| 462 | | NV_shader_atomic_counters |
-| 463 | | NV_shader_atomic_float |
-| 464 | | NV_shader_atomic_float64 |
-| 465 | | NV_shader_atomic_fp16_vector |
-| 466 | | NV_shader_atomic_int64 |
-| 467 | | NV_shader_buffer_load |
-| 468 | | NV_shader_storage_buffer_object |
-| 469 | | NV_shader_thread_group |
-| 470 | | NV_shader_thread_shuffle |
-| 471 | | NV_stereo_view_rendering |
-| 472 | | NV_tessellation_program5 |
-| 473 | | NV_texgen_emboss |
-| 474 | | NV_texgen_reflection |
-| 475 | | NV_texture_barrier |
-| 476 | | NV_texture_compression_vtc |
-| 477 | | NV_texture_env_combine4 |
-| 478 | | NV_texture_expand_normal |
-| 479 | | NV_texture_multisample |
-| 480 | | NV_texture_rectangle |
-| 481 | | NV_texture_shader |
-| 482 | | NV_texture_shader2 |
-| 483 | | NV_texture_shader3 |
-| 484 | | NV_transform_feedback |
-| 485 | | NV_transform_feedback2 |
-| 486 | | NV_uniform_buffer_unified_memory |
-| 487 | | NV_vdpau_interop |
-| 488 | | NV_vertex_array_range |
-| 489 | | NV_vertex_array_range2 |
-| 490 | | NV_vertex_attrib_integer_64bit |
-| 491 | | NV_vertex_buffer_unified_memory |
-| 492 | | NV_vertex_program |
-| 493 | | NV_vertex_program1_1 |
-| 494 | | NV_vertex_program2 |
-| 495 | | NV_vertex_program2_option |
-| 496 | | NV_vertex_program3 |
-| 497 | | NV_vertex_program4 |
-| 498 | | NV_video_capture |
-| 499 | | NV_viewport_array2 |
-| 500 | | NV_viewport_swizzle |
+| 400 | | NV_bindless_multi_draw_indirect |
+| 401 | | NV_bindless_multi_draw_indirect_count |
+| 402 | | NV_bindless_texture |
+| 403 | | NV_blend_equation_advanced |
+| 404 | | NV_blend_equation_advanced_coherent |
+| 405 | | NV_blend_square |
+| 406 | | NV_clip_space_w_scaling |
+| 407 | | NV_command_list |
+| 408 | | NV_compute_program5 |
+| 409 | | NV_conditional_render |
+| 410 | | NV_conservative_raster |
+| 411 | | NV_conservative_raster_dilate |
+| 412 | | NV_conservative_raster_pre_snap_triangles |
+| 413 | | NV_copy_depth_to_color |
+| 414 | | NV_copy_image |
+| 415 | | NV_deep_texture3D |
+| 416 | | NV_depth_buffer_float |
+| 417 | | NV_depth_clamp |
+| 418 | | NV_depth_range_unclamped |
+| 419 | | NV_draw_texture |
+| 420 | | NV_draw_vulkan_image |
+| 421 | | NV_evaluators |
+| 422 | | NV_explicit_multisample |
+| 423 | | NV_fence |
+| 424 | | NV_fill_rectangle |
+| 425 | | NV_float_buffer |
+| 426 | | NV_fog_distance |
+| 427 | | NV_fragment_coverage_to_color |
+| 428 | | NV_fragment_program |
+| 429 | | NV_fragment_program2 |
+| 430 | | NV_fragment_program4 |
+| 431 | | NV_fragment_program_option |
+| 432 | | NV_fragment_shader_interlock |
+| 433 | | NV_framebuffer_mixed_samples |
+| 434 | | NV_framebuffer_multisample_coverage |
+| 435 | | NV_geometry_program4 |
+| 436 | | NV_geometry_shader4 |
+| 437 | | NV_geometry_shader_passthrough |
+| 438 | | NV_gpu_program4 |
+| 439 | | NV_gpu_program5 |
+| 440 | | NV_gpu_program5_mem_extended |
+| 441 | | NV_gpu_program_fp64 |
+| 442 | | NV_gpu_shader5 |
+| 443 | | NV_half_float |
+| 444 | | NV_internalformat_sample_query |
+| 445 | | NV_light_max_exponent |
+| 446 | | NV_multisample_coverage |
+| 447 | | NV_multisample_filter_hint |
+| 448 | | NV_occlusion_query |
+| 449 | | NV_packed_depth_stencil |
+| 450 | | NV_parameter_buffer_object |
+| 451 | | NV_parameter_buffer_object2 |
+| 452 | | NV_path_rendering |
+| 453 | | NV_path_rendering_shared_edge |
+| 454 | | NV_pixel_data_range |
+| 455 | | NV_point_sprite |
+| 456 | | NV_present_video |
+| 457 | | NV_primitive_restart |
+| 458 | | NV_register_combiners |
+| 459 | | NV_register_combiners2 |
+| 460 | | NV_robustness_video_memory_purge |
+| 461 | | NV_sample_locations |
+| 462 | | NV_sample_mask_override_coverage |
+| 463 | | NV_shader_atomic_counters |
+| 464 | | NV_shader_atomic_float |
+| 465 | | NV_shader_atomic_float64 |
+| 466 | | NV_shader_atomic_fp16_vector |
+| 467 | | NV_shader_atomic_int64 |
+| 468 | | NV_shader_buffer_load |
+| 469 | | NV_shader_storage_buffer_object |
+| 470 | | NV_shader_thread_group |
+| 471 | | NV_shader_thread_shuffle |
+| 472 | | NV_stereo_view_rendering |
+| 473 | | NV_tessellation_program5 |
+| 474 | | NV_texgen_emboss |
+| 475 | | NV_texgen_reflection |
+| 476 | | NV_texture_barrier |
+| 477 | | NV_texture_compression_vtc |
+| 478 | | NV_texture_env_combine4 |
+| 479 | | NV_texture_expand_normal |
+| 480 | | NV_texture_multisample |
+| 481 | | NV_texture_rectangle |
+| 482 | | NV_texture_shader |
+| 483 | | NV_texture_shader2 |
+| 484 | | NV_texture_shader3 |
+| 485 | | NV_transform_feedback |
+| 486 | | NV_transform_feedback2 |
+| 487 | | NV_uniform_buffer_unified_memory |
+| 488 | | NV_vdpau_interop |
+| 489 | | NV_vertex_array_range |
+| 490 | | NV_vertex_array_range2 |
+| 491 | | NV_vertex_attrib_integer_64bit |
+| 492 | | NV_vertex_buffer_unified_memory |
+| 493 | | NV_vertex_program |
+| 494 | | NV_vertex_program1_1 |
+| 495 | | NV_vertex_program2 |
+| 496 | | NV_vertex_program2_option |
+| 497 | | NV_vertex_program3 |
+| 498 | | NV_vertex_program4 |
+| 499 | | NV_video_capture |
+| 500 | | NV_viewport_array2 |
+| 501 | | NV_viewport_swizzle |
| | |
-| 501 | | OES_byte_coordinates |
-| 502 | | OES_compressed_paletted_texture |
-| 503 | | OES_read_format |
-| 504 | | OES_single_precision |
+| 502 | | OES_byte_coordinates |
+| 503 | | OES_compressed_paletted_texture |
+| 504 | | OES_read_format |
+| 505 | | OES_single_precision |
| | |
-| 505 | | OML_interlace |
-| 506 | | OML_resample |
-| 507 | | OML_subsample |
+| 506 | | OML_interlace |
+| 507 | | OML_resample |
+| 508 | | OML_subsample |
| | |
-| 508 | | OVR_multiview |
-| 509 | | OVR_multiview2 |
+| 509 | | OVR_multiview |
+| 510 | | OVR_multiview2 |
| | |
-| 510 | | PGI_misc_hints |
-| 511 | | PGI_vertex_hints |
+| 511 | | PGI_misc_hints |
+| 512 | | PGI_vertex_hints |
| | |
-| 512 | | REGAL_ES1_0_compatibility |
-| 513 | | REGAL_ES1_1_compatibility |
-| 514 | | REGAL_enable |
-| 515 | | REGAL_error_string |
-| 516 | | REGAL_extension_query |
-| 517 | | REGAL_log |
-| 518 | | REGAL_proc_address |
+| 513 | | REGAL_ES1_0_compatibility |
+| 514 | | REGAL_ES1_1_compatibility |
+| 515 | | REGAL_enable |
+| 516 | | REGAL_error_string |
+| 517 | | REGAL_extension_query |
+| 518 | | REGAL_log |
+| 519 | | REGAL_proc_address |
| | |
-| 519 | | REND_screen_coordinates |
+| 520 | | REND_screen_coordinates |
| | |
-| 520 | | S3_s3tc |
+| 521 | | S3_s3tc |
| | |
-| 521 | | SGIS_color_range |
-| 522 | | SGIS_detail_texture |
-| 523 | | SGIS_fog_function |
-| 524 | | SGIS_generate_mipmap |
-| 525 | | SGIS_multisample |
-| 526 | | SGIS_pixel_texture |
-| 527 | | SGIS_point_line_texgen |
-| 528 | | SGIS_sharpen_texture |
-| 529 | | SGIS_texture4D |
-| 530 | | SGIS_texture_border_clamp |
-| 531 | | SGIS_texture_edge_clamp |
-| 532 | | SGIS_texture_filter4 |
-| 533 | | SGIS_texture_lod |
-| 534 | | SGIS_texture_select |
+| 522 | | SGIS_color_range |
+| 523 | | SGIS_detail_texture |
+| 524 | | SGIS_fog_function |
+| 525 | | SGIS_generate_mipmap |
+| 526 | | SGIS_multisample |
+| 527 | | SGIS_pixel_texture |
+| 528 | | SGIS_point_line_texgen |
+| 529 | | SGIS_sharpen_texture |
+| 530 | | SGIS_texture4D |
+| 531 | | SGIS_texture_border_clamp |
+| 532 | | SGIS_texture_edge_clamp |
+| 533 | | SGIS_texture_filter4 |
+| 534 | | SGIS_texture_lod |
+| 535 | | SGIS_texture_select |
| | |
-| 535 | | SGIX_async |
-| 536 | | SGIX_async_histogram |
-| 537 | | SGIX_async_pixel |
-| 538 | | SGIX_blend_alpha_minmax |
-| 539 | | SGIX_clipmap |
-| 540 | | SGIX_convolution_accuracy |
-| 541 | | SGIX_depth_texture |
-| 542 | | SGIX_flush_raster |
-| 543 | | SGIX_fog_offset |
-| 544 | | SGIX_fog_texture |
-| 545 | | SGIX_fragment_specular_lighting |
-| 546 | | SGIX_framezoom |
-| 547 | | SGIX_interlace |
-| 548 | | SGIX_ir_instrument1 |
-| 549 | | SGIX_list_priority |
-| 550 | | SGIX_pixel_texture |
-| 551 | | SGIX_pixel_texture_bits |
-| 552 | | SGIX_reference_plane |
-| 553 | | SGIX_resample |
-| 554 | | SGIX_shadow |
-| 555 | | SGIX_shadow_ambient |
-| 556 | | SGIX_sprite |
-| 557 | | SGIX_tag_sample_buffer |
-| 558 | | SGIX_texture_add_env |
-| 559 | | SGIX_texture_coordinate_clamp |
-| 560 | | SGIX_texture_lod_bias |
-| 561 | | SGIX_texture_multi_buffer |
-| 562 | | SGIX_texture_range |
-| 563 | | SGIX_texture_scale_bias |
-| 564 | | SGIX_vertex_preclip |
-| 565 | | SGIX_vertex_preclip_hint |
-| 566 | | SGIX_ycrcb |
+| 536 | | SGIX_async |
+| 537 | | SGIX_async_histogram |
+| 538 | | SGIX_async_pixel |
+| 539 | | SGIX_blend_alpha_minmax |
+| 540 | | SGIX_clipmap |
+| 541 | | SGIX_convolution_accuracy |
+| 542 | | SGIX_depth_texture |
+| 543 | | SGIX_flush_raster |
+| 544 | | SGIX_fog_offset |
+| 545 | | SGIX_fog_texture |
+| 546 | | SGIX_fragment_specular_lighting |
+| 547 | | SGIX_framezoom |
+| 548 | | SGIX_interlace |
+| 549 | | SGIX_ir_instrument1 |
+| 550 | | SGIX_list_priority |
+| 551 | | SGIX_pixel_texture |
+| 552 | | SGIX_pixel_texture_bits |
+| 553 | | SGIX_reference_plane |
+| 554 | | SGIX_resample |
+| 555 | | SGIX_shadow |
+| 556 | | SGIX_shadow_ambient |
+| 557 | | SGIX_sprite |
+| 558 | | SGIX_tag_sample_buffer |
+| 559 | | SGIX_texture_add_env |
+| 560 | | SGIX_texture_coordinate_clamp |
+| 561 | | SGIX_texture_lod_bias |
+| 562 | | SGIX_texture_multi_buffer |
+| 563 | | SGIX_texture_range |
+| 564 | | SGIX_texture_scale_bias |
+| 565 | | SGIX_vertex_preclip |
+| 566 | | SGIX_vertex_preclip_hint |
+| 567 | | SGIX_ycrcb |
| | |
-| 567 | | SGI_color_matrix |
-| 568 | | SGI_color_table |
-| 569 | | SGI_texture_color_table |
+| 568 | | SGI_color_matrix |
+| 569 | | SGI_color_table |
+| 570 | | SGI_texture_color_table |
| | |
-| 570 | | SUNX_constant_data |
+| 571 | | SUNX_constant_data |
| | |
-| 571 | | SUN_convolution_border_modes |
-| 572 | | SUN_global_alpha |
-| 573 | | SUN_mesh_array |
-| 574 | | SUN_read_video_pixels |
-| 575 | | SUN_slice_accum |
-| 576 | | SUN_triangle_list |
-| 577 | | SUN_vertex |
+| 572 | | SUN_convolution_border_modes |
+| 573 | | SUN_global_alpha |
+| 574 | | SUN_mesh_array |
+| 575 | | SUN_read_video_pixels |
+| 576 | | SUN_slice_accum |
+| 577 | | SUN_triangle_list |
+| 578 | | SUN_vertex |
| | |
-| 578 | | WIN_phong_shading |
-| 579 | | WIN_specular_fog |
-| 580 | | WIN_swap_hint |
+| 579 | | WIN_phong_shading |
+| 580 | | WIN_specular_fog |
+| 581 | | WIN_swap_hint |