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 |