Run script/sync.sh: 0.4.0-alpha.2+3603.20231007
diff --git a/release/c/wuffs-v0.4.c b/release/c/wuffs-v0.4.c
index 5e8ec2f..bce9eb9 100644
--- a/release/c/wuffs-v0.4.c
+++ b/release/c/wuffs-v0.4.c
@@ -42,6 +42,8 @@
 // <LICENSE-MIT or https://opensource.org/licenses/MIT>, at your
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
+//
+// SPDX-License-Identifier: Apache-2.0 OR MIT
 
 #include <stdbool.h>
 #include <stdint.h>
@@ -79,15 +81,15 @@
 // each major.minor branch, the commit count should increase monotonically.
 //
 // WUFFS_VERSION was overridden by "wuffs gen -version" based on revision
-// 5336b511e03b6166e6c2b8eed260e4d2b3fc1ae5 committed on 2023-10-06.
+// ae8531f7f846fbbe3a7340bf88499ad294a1367b committed on 2023-10-07.
 #define WUFFS_VERSION 0x000040000
 #define WUFFS_VERSION_MAJOR 0
 #define WUFFS_VERSION_MINOR 4
 #define WUFFS_VERSION_PATCH 0
-#define WUFFS_VERSION_PRE_RELEASE_LABEL "alpha.1"
-#define WUFFS_VERSION_BUILD_METADATA_COMMIT_COUNT 3597
-#define WUFFS_VERSION_BUILD_METADATA_COMMIT_DATE 20231006
-#define WUFFS_VERSION_STRING "0.4.0-alpha.1+3597.20231006"
+#define WUFFS_VERSION_PRE_RELEASE_LABEL "alpha.2"
+#define WUFFS_VERSION_BUILD_METADATA_COMMIT_COUNT 3603
+#define WUFFS_VERSION_BUILD_METADATA_COMMIT_DATE 20231007
+#define WUFFS_VERSION_STRING "0.4.0-alpha.2+3603.20231007"
 
 // ---------------- Configuration
 
@@ -195,7 +197,7 @@
 // ---------------- CPU Architecture
 
 static inline bool  //
-wuffs_base__cpu_arch__have_arm_crc32() {
+wuffs_base__cpu_arch__have_arm_crc32(void) {
 #if defined(WUFFS_BASE__CPU_ARCH__ARM_CRC32)
   return true;
 #else
@@ -204,7 +206,7 @@
 }
 
 static inline bool  //
-wuffs_base__cpu_arch__have_arm_neon() {
+wuffs_base__cpu_arch__have_arm_neon(void) {
 #if defined(WUFFS_BASE__CPU_ARCH__ARM_NEON)
   return true;
 #else
@@ -213,7 +215,7 @@
 }
 
 static inline bool  //
-wuffs_base__cpu_arch__have_x86_avx2() {
+wuffs_base__cpu_arch__have_x86_avx2(void) {
 #if defined(__PCLMUL__) && defined(__POPCNT__) && defined(__SSE4_2__) && \
     defined(__AVX2__)
   return true;
@@ -265,7 +267,7 @@
 }
 
 static inline bool  //
-wuffs_base__cpu_arch__have_x86_bmi2() {
+wuffs_base__cpu_arch__have_x86_bmi2(void) {
 #if defined(__BMI2__)
   return true;
 #else
@@ -299,7 +301,7 @@
 }
 
 static inline bool  //
-wuffs_base__cpu_arch__have_x86_sse42() {
+wuffs_base__cpu_arch__have_x86_sse42(void) {
 #if defined(__PCLMUL__) && defined(__POPCNT__) && defined(__SSE4_2__)
   return true;
 #else
@@ -430,7 +432,7 @@
 } wuffs_base__empty_struct;
 
 static inline wuffs_base__empty_struct  //
-wuffs_base__make_empty_struct() {
+wuffs_base__make_empty_struct(void) {
   wuffs_base__empty_struct ret;
   ret.private_impl = 0;
   return ret;
@@ -1557,7 +1559,7 @@
 }
 
 static inline wuffs_base__slice_u8  //
-wuffs_base__empty_slice_u8() {
+wuffs_base__empty_slice_u8(void) {
   wuffs_base__slice_u8 ret;
   ret.ptr = NULL;
   ret.len = 0;
@@ -1565,7 +1567,7 @@
 }
 
 static inline wuffs_base__slice_u16  //
-wuffs_base__empty_slice_u16() {
+wuffs_base__empty_slice_u16(void) {
   wuffs_base__slice_u16 ret;
   ret.ptr = NULL;
   ret.len = 0;
@@ -1573,7 +1575,7 @@
 }
 
 static inline wuffs_base__slice_u32  //
-wuffs_base__empty_slice_u32() {
+wuffs_base__empty_slice_u32(void) {
   wuffs_base__slice_u32 ret;
   ret.ptr = NULL;
   ret.len = 0;
@@ -1581,7 +1583,7 @@
 }
 
 static inline wuffs_base__slice_u64  //
-wuffs_base__empty_slice_u64() {
+wuffs_base__empty_slice_u64(void) {
   wuffs_base__slice_u64 ret;
   ret.ptr = NULL;
   ret.len = 0;
@@ -1641,7 +1643,7 @@
 }
 
 static inline wuffs_base__table_u8  //
-wuffs_base__empty_table_u8() {
+wuffs_base__empty_table_u8(void) {
   wuffs_base__table_u8 ret;
   ret.ptr = NULL;
   ret.width = 0;
@@ -1651,7 +1653,7 @@
 }
 
 static inline wuffs_base__table_u16  //
-wuffs_base__empty_table_u16() {
+wuffs_base__empty_table_u16(void) {
   wuffs_base__table_u16 ret;
   ret.ptr = NULL;
   ret.width = 0;
@@ -1661,7 +1663,7 @@
 }
 
 static inline wuffs_base__table_u32  //
-wuffs_base__empty_table_u32() {
+wuffs_base__empty_table_u32(void) {
   wuffs_base__table_u32 ret;
   ret.ptr = NULL;
   ret.width = 0;
@@ -1671,7 +1673,7 @@
 }
 
 static inline wuffs_base__table_u64  //
-wuffs_base__empty_table_u64() {
+wuffs_base__empty_table_u64(void) {
   wuffs_base__table_u64 ret;
   ret.ptr = NULL;
   ret.width = 0;
@@ -1834,7 +1836,7 @@
 } wuffs_base__range_ii_u32;
 
 static inline wuffs_base__range_ii_u32  //
-wuffs_base__empty_range_ii_u32() {
+wuffs_base__empty_range_ii_u32(void) {
   wuffs_base__range_ii_u32 ret;
   ret.min_incl = 0;
   ret.max_incl = 0;
@@ -1954,7 +1956,7 @@
 } wuffs_base__range_ie_u32;
 
 static inline wuffs_base__range_ie_u32  //
-wuffs_base__empty_range_ie_u32() {
+wuffs_base__empty_range_ie_u32(void) {
   wuffs_base__range_ie_u32 ret;
   ret.min_incl = 0;
   ret.max_excl = 0;
@@ -2083,7 +2085,7 @@
 } wuffs_base__range_ii_u64;
 
 static inline wuffs_base__range_ii_u64  //
-wuffs_base__empty_range_ii_u64() {
+wuffs_base__empty_range_ii_u64(void) {
   wuffs_base__range_ii_u64 ret;
   ret.min_incl = 0;
   ret.max_incl = 0;
@@ -2203,7 +2205,7 @@
 } wuffs_base__range_ie_u64;
 
 static inline wuffs_base__range_ie_u64  //
-wuffs_base__empty_range_ie_u64() {
+wuffs_base__empty_range_ie_u64(void) {
   wuffs_base__range_ie_u64 ret;
   ret.min_incl = 0;
   ret.max_excl = 0;
@@ -2334,7 +2336,7 @@
 } wuffs_base__rect_ii_u32;
 
 static inline wuffs_base__rect_ii_u32  //
-wuffs_base__empty_rect_ii_u32() {
+wuffs_base__empty_rect_ii_u32(void) {
   wuffs_base__rect_ii_u32 ret;
   ret.min_incl_x = 0;
   ret.min_incl_y = 0;
@@ -2471,7 +2473,7 @@
 } wuffs_base__rect_ie_u32;
 
 static inline wuffs_base__rect_ie_u32  //
-wuffs_base__empty_rect_ie_u32() {
+wuffs_base__empty_rect_ie_u32(void) {
   wuffs_base__rect_ie_u32 ret;
   ret.min_incl_x = 0;
   ret.min_incl_y = 0;
@@ -2644,7 +2646,7 @@
 #define WUFFS_BASE__MORE_INFORMATION__FLAVOR__METADATA_PARSED 5
 
 static inline wuffs_base__more_information  //
-wuffs_base__empty_more_information() {
+wuffs_base__empty_more_information(void) {
   wuffs_base__more_information ret;
   ret.flavor = 0;
   ret.w = 0;
@@ -2957,7 +2959,7 @@
 }
 
 static inline wuffs_base__io_buffer  //
-wuffs_base__empty_io_buffer() {
+wuffs_base__empty_io_buffer(void) {
   wuffs_base__io_buffer ret;
   ret.data.ptr = NULL;
   ret.data.len = 0;
@@ -2969,7 +2971,7 @@
 }
 
 static inline wuffs_base__io_buffer_meta  //
-wuffs_base__empty_io_buffer_meta() {
+wuffs_base__empty_io_buffer_meta(void) {
   wuffs_base__io_buffer_meta ret;
   ret.wi = 0;
   ret.ri = 0;
@@ -3430,7 +3432,7 @@
 }
 
 static inline wuffs_base__slice_token  //
-wuffs_base__empty_slice_token() {
+wuffs_base__empty_slice_token(void) {
   wuffs_base__slice_token ret;
   ret.ptr = NULL;
   ret.len = 0;
@@ -3519,7 +3521,7 @@
 }
 
 static inline wuffs_base__token_buffer  //
-wuffs_base__empty_token_buffer() {
+wuffs_base__empty_token_buffer(void) {
   wuffs_base__token_buffer ret;
   ret.data.ptr = NULL;
   ret.data.len = 0;
@@ -3531,7 +3533,7 @@
 }
 
 static inline wuffs_base__token_buffer_meta  //
-wuffs_base__empty_token_buffer_meta() {
+wuffs_base__empty_token_buffer_meta(void) {
   wuffs_base__token_buffer_meta ret;
   ret.wi = 0;
   ret.ri = 0;
@@ -4369,7 +4371,7 @@
 } wuffs_base__pixel_config;
 
 static inline wuffs_base__pixel_config  //
-wuffs_base__null_pixel_config() {
+wuffs_base__null_pixel_config(void) {
   wuffs_base__pixel_config ret;
   ret.private_impl.pixfmt.repr = 0;
   ret.private_impl.pixsub.repr = 0;
@@ -4578,7 +4580,7 @@
 } wuffs_base__image_config;
 
 static inline wuffs_base__image_config  //
-wuffs_base__null_image_config() {
+wuffs_base__null_image_config(void) {
   wuffs_base__image_config ret;
   ret.pixcfg = wuffs_base__null_pixel_config();
   ret.private_impl.first_frame_io_position = 0;
@@ -4738,7 +4740,7 @@
 } wuffs_base__frame_config;
 
 static inline wuffs_base__frame_config  //
-wuffs_base__null_frame_config() {
+wuffs_base__null_frame_config(void) {
   wuffs_base__frame_config ret;
   ret.private_impl.bounds = wuffs_base__make_rect_ie_u32(0, 0, 0, 0);
   ret.private_impl.duration = 0;
@@ -4970,7 +4972,7 @@
 } wuffs_base__pixel_buffer;
 
 static inline wuffs_base__pixel_buffer  //
-wuffs_base__null_pixel_buffer() {
+wuffs_base__null_pixel_buffer(void) {
   wuffs_base__pixel_buffer ret;
   ret.pixcfg = wuffs_base__null_pixel_config();
   ret.private_impl.planes[0] = wuffs_base__empty_table_u8();
@@ -5220,12 +5222,6 @@
   return wuffs_base__pixel_buffer__color_u32_at(this, x, y);
 }
 
-WUFFS_BASE__MAYBE_STATIC wuffs_base__status  //
-wuffs_base__pixel_buffer__set_color_u32_fill_rect(
-    wuffs_base__pixel_buffer* pb,
-    wuffs_base__rect_ie_u32 rect,
-    wuffs_base__color_u32_argb_premul color);
-
 inline wuffs_base__status  //
 wuffs_base__pixel_buffer::set_color_u32_at(
     uint32_t x,
@@ -5769,7 +5765,7 @@
 // function requires the WUFFS_CONFIG__MODULE__BASE__INTCONV sub-module, not
 // just WUFFS_CONFIG__MODULE__BASE__CORE.
 WUFFS_BASE__MAYBE_STATIC wuffs_base__transform__output  //
-wuffs_base__base_16__encode2(wuffs_base__slice_u8 dst,
+wuffs_base__base_16__encode4(wuffs_base__slice_u8 dst,
                              wuffs_base__slice_u8 src,
                              bool src_closed,
                              uint32_t options);
@@ -6719,7 +6715,7 @@
     uint32_t options);
 
 size_t
-sizeof__wuffs_adler32__hasher();
+sizeof__wuffs_adler32__hasher(void);
 
 // ---------------- Allocs
 
@@ -6730,10 +6726,10 @@
 // std::unique_ptr<T, wuffs_unique_ptr_deleter>.
 
 wuffs_adler32__hasher*
-wuffs_adler32__hasher__alloc();
+wuffs_adler32__hasher__alloc(void);
 
 static inline wuffs_base__hasher_u32*
-wuffs_adler32__hasher__alloc_as__wuffs_base__hasher_u32() {
+wuffs_adler32__hasher__alloc_as__wuffs_base__hasher_u32(void) {
   return (wuffs_base__hasher_u32*)(wuffs_adler32__hasher__alloc());
 }
 
@@ -6950,7 +6946,7 @@
     uint32_t options);
 
 size_t
-sizeof__wuffs_bmp__decoder();
+sizeof__wuffs_bmp__decoder(void);
 
 // ---------------- Allocs
 
@@ -6961,10 +6957,10 @@
 // std::unique_ptr<T, wuffs_unique_ptr_deleter>.
 
 wuffs_bmp__decoder*
-wuffs_bmp__decoder__alloc();
+wuffs_bmp__decoder__alloc(void);
 
 static inline wuffs_base__image_decoder*
-wuffs_bmp__decoder__alloc_as__wuffs_base__image_decoder() {
+wuffs_bmp__decoder__alloc_as__wuffs_base__image_decoder(void) {
   return (wuffs_base__image_decoder*)(wuffs_bmp__decoder__alloc());
 }
 
@@ -7348,7 +7344,7 @@
     uint32_t options);
 
 size_t
-sizeof__wuffs_bzip2__decoder();
+sizeof__wuffs_bzip2__decoder(void);
 
 // ---------------- Allocs
 
@@ -7359,10 +7355,10 @@
 // std::unique_ptr<T, wuffs_unique_ptr_deleter>.
 
 wuffs_bzip2__decoder*
-wuffs_bzip2__decoder__alloc();
+wuffs_bzip2__decoder__alloc(void);
 
 static inline wuffs_base__io_transformer*
-wuffs_bzip2__decoder__alloc_as__wuffs_base__io_transformer() {
+wuffs_bzip2__decoder__alloc_as__wuffs_base__io_transformer(void) {
   return (wuffs_base__io_transformer*)(wuffs_bzip2__decoder__alloc());
 }
 
@@ -7654,7 +7650,7 @@
     uint32_t options);
 
 size_t
-sizeof__wuffs_cbor__decoder();
+sizeof__wuffs_cbor__decoder(void);
 
 // ---------------- Allocs
 
@@ -7665,10 +7661,10 @@
 // std::unique_ptr<T, wuffs_unique_ptr_deleter>.
 
 wuffs_cbor__decoder*
-wuffs_cbor__decoder__alloc();
+wuffs_cbor__decoder__alloc(void);
 
 static inline wuffs_base__token_decoder*
-wuffs_cbor__decoder__alloc_as__wuffs_base__token_decoder() {
+wuffs_cbor__decoder__alloc_as__wuffs_base__token_decoder(void) {
   return (wuffs_base__token_decoder*)(wuffs_cbor__decoder__alloc());
 }
 
@@ -7887,7 +7883,7 @@
     uint32_t options);
 
 size_t
-sizeof__wuffs_crc32__ieee_hasher();
+sizeof__wuffs_crc32__ieee_hasher(void);
 
 // ---------------- Allocs
 
@@ -7898,10 +7894,10 @@
 // std::unique_ptr<T, wuffs_unique_ptr_deleter>.
 
 wuffs_crc32__ieee_hasher*
-wuffs_crc32__ieee_hasher__alloc();
+wuffs_crc32__ieee_hasher__alloc(void);
 
 static inline wuffs_base__hasher_u32*
-wuffs_crc32__ieee_hasher__alloc_as__wuffs_base__hasher_u32() {
+wuffs_crc32__ieee_hasher__alloc_as__wuffs_base__hasher_u32(void) {
   return (wuffs_base__hasher_u32*)(wuffs_crc32__ieee_hasher__alloc());
 }
 
@@ -8127,7 +8123,7 @@
     uint32_t options);
 
 size_t
-sizeof__wuffs_deflate__decoder();
+sizeof__wuffs_deflate__decoder(void);
 
 // ---------------- Allocs
 
@@ -8138,10 +8134,10 @@
 // std::unique_ptr<T, wuffs_unique_ptr_deleter>.
 
 wuffs_deflate__decoder*
-wuffs_deflate__decoder__alloc();
+wuffs_deflate__decoder__alloc(void);
 
 static inline wuffs_base__io_transformer*
-wuffs_deflate__decoder__alloc_as__wuffs_base__io_transformer() {
+wuffs_deflate__decoder__alloc_as__wuffs_base__io_transformer(void) {
   return (wuffs_base__io_transformer*)(wuffs_deflate__decoder__alloc());
 }
 
@@ -8439,7 +8435,7 @@
     uint32_t options);
 
 size_t
-sizeof__wuffs_gif__decoder();
+sizeof__wuffs_gif__decoder(void);
 
 // ---------------- Allocs
 
@@ -8450,10 +8446,10 @@
 // std::unique_ptr<T, wuffs_unique_ptr_deleter>.
 
 wuffs_gif__decoder*
-wuffs_gif__decoder__alloc();
+wuffs_gif__decoder__alloc(void);
 
 static inline wuffs_base__image_decoder*
-wuffs_gif__decoder__alloc_as__wuffs_base__image_decoder() {
+wuffs_gif__decoder__alloc_as__wuffs_base__image_decoder(void) {
   return (wuffs_base__image_decoder*)(wuffs_gif__decoder__alloc());
 }
 
@@ -8905,7 +8901,7 @@
     uint32_t options);
 
 size_t
-sizeof__wuffs_gzip__decoder();
+sizeof__wuffs_gzip__decoder(void);
 
 // ---------------- Allocs
 
@@ -8916,10 +8912,10 @@
 // std::unique_ptr<T, wuffs_unique_ptr_deleter>.
 
 wuffs_gzip__decoder*
-wuffs_gzip__decoder__alloc();
+wuffs_gzip__decoder__alloc(void);
 
 static inline wuffs_base__io_transformer*
-wuffs_gzip__decoder__alloc_as__wuffs_base__io_transformer() {
+wuffs_gzip__decoder__alloc_as__wuffs_base__io_transformer(void) {
   return (wuffs_base__io_transformer*)(wuffs_gzip__decoder__alloc());
 }
 
@@ -9166,7 +9162,7 @@
     uint32_t options);
 
 size_t
-sizeof__wuffs_jpeg__decoder();
+sizeof__wuffs_jpeg__decoder(void);
 
 // ---------------- Allocs
 
@@ -9177,10 +9173,10 @@
 // std::unique_ptr<T, wuffs_unique_ptr_deleter>.
 
 wuffs_jpeg__decoder*
-wuffs_jpeg__decoder__alloc();
+wuffs_jpeg__decoder__alloc(void);
 
 static inline wuffs_base__image_decoder*
-wuffs_jpeg__decoder__alloc_as__wuffs_base__image_decoder() {
+wuffs_jpeg__decoder__alloc_as__wuffs_base__image_decoder(void) {
   return (wuffs_base__image_decoder*)(wuffs_jpeg__decoder__alloc());
 }
 
@@ -9705,7 +9701,7 @@
     uint32_t options);
 
 size_t
-sizeof__wuffs_json__decoder();
+sizeof__wuffs_json__decoder(void);
 
 // ---------------- Allocs
 
@@ -9716,10 +9712,10 @@
 // std::unique_ptr<T, wuffs_unique_ptr_deleter>.
 
 wuffs_json__decoder*
-wuffs_json__decoder__alloc();
+wuffs_json__decoder__alloc(void);
 
 static inline wuffs_base__token_decoder*
-wuffs_json__decoder__alloc_as__wuffs_base__token_decoder() {
+wuffs_json__decoder__alloc_as__wuffs_base__token_decoder(void) {
   return (wuffs_base__token_decoder*)(wuffs_json__decoder__alloc());
 }
 
@@ -9954,7 +9950,7 @@
     uint32_t options);
 
 size_t
-sizeof__wuffs_lzw__decoder();
+sizeof__wuffs_lzw__decoder(void);
 
 // ---------------- Allocs
 
@@ -9965,10 +9961,10 @@
 // std::unique_ptr<T, wuffs_unique_ptr_deleter>.
 
 wuffs_lzw__decoder*
-wuffs_lzw__decoder__alloc();
+wuffs_lzw__decoder__alloc(void);
 
 static inline wuffs_base__io_transformer*
-wuffs_lzw__decoder__alloc_as__wuffs_base__io_transformer() {
+wuffs_lzw__decoder__alloc_as__wuffs_base__io_transformer(void) {
   return (wuffs_base__io_transformer*)(wuffs_lzw__decoder__alloc());
 }
 
@@ -10212,7 +10208,7 @@
     uint32_t options);
 
 size_t
-sizeof__wuffs_netpbm__decoder();
+sizeof__wuffs_netpbm__decoder(void);
 
 // ---------------- Allocs
 
@@ -10223,10 +10219,10 @@
 // std::unique_ptr<T, wuffs_unique_ptr_deleter>.
 
 wuffs_netpbm__decoder*
-wuffs_netpbm__decoder__alloc();
+wuffs_netpbm__decoder__alloc(void);
 
 static inline wuffs_base__image_decoder*
-wuffs_netpbm__decoder__alloc_as__wuffs_base__image_decoder() {
+wuffs_netpbm__decoder__alloc_as__wuffs_base__image_decoder(void) {
   return (wuffs_base__image_decoder*)(wuffs_netpbm__decoder__alloc());
 }
 
@@ -10570,7 +10566,7 @@
     uint32_t options);
 
 size_t
-sizeof__wuffs_nie__decoder();
+sizeof__wuffs_nie__decoder(void);
 
 // ---------------- Allocs
 
@@ -10581,10 +10577,10 @@
 // std::unique_ptr<T, wuffs_unique_ptr_deleter>.
 
 wuffs_nie__decoder*
-wuffs_nie__decoder__alloc();
+wuffs_nie__decoder__alloc(void);
 
 static inline wuffs_base__image_decoder*
-wuffs_nie__decoder__alloc_as__wuffs_base__image_decoder() {
+wuffs_nie__decoder__alloc_as__wuffs_base__image_decoder(void) {
   return (wuffs_base__image_decoder*)(wuffs_nie__decoder__alloc());
 }
 
@@ -10938,7 +10934,7 @@
     uint32_t options);
 
 size_t
-sizeof__wuffs_zlib__decoder();
+sizeof__wuffs_zlib__decoder(void);
 
 // ---------------- Allocs
 
@@ -10949,10 +10945,10 @@
 // std::unique_ptr<T, wuffs_unique_ptr_deleter>.
 
 wuffs_zlib__decoder*
-wuffs_zlib__decoder__alloc();
+wuffs_zlib__decoder__alloc(void);
 
 static inline wuffs_base__io_transformer*
-wuffs_zlib__decoder__alloc_as__wuffs_base__io_transformer() {
+wuffs_zlib__decoder__alloc_as__wuffs_base__io_transformer(void) {
   return (wuffs_base__io_transformer*)(wuffs_zlib__decoder__alloc());
 }
 
@@ -11218,7 +11214,7 @@
     uint32_t options);
 
 size_t
-sizeof__wuffs_png__decoder();
+sizeof__wuffs_png__decoder(void);
 
 // ---------------- Allocs
 
@@ -11229,10 +11225,10 @@
 // std::unique_ptr<T, wuffs_unique_ptr_deleter>.
 
 wuffs_png__decoder*
-wuffs_png__decoder__alloc();
+wuffs_png__decoder__alloc(void);
 
 static inline wuffs_base__image_decoder*
-wuffs_png__decoder__alloc_as__wuffs_base__image_decoder() {
+wuffs_png__decoder__alloc_as__wuffs_base__image_decoder(void) {
   return (wuffs_base__image_decoder*)(wuffs_png__decoder__alloc());
 }
 
@@ -11724,7 +11720,7 @@
     uint32_t options);
 
 size_t
-sizeof__wuffs_tga__decoder();
+sizeof__wuffs_tga__decoder(void);
 
 // ---------------- Allocs
 
@@ -11735,10 +11731,10 @@
 // std::unique_ptr<T, wuffs_unique_ptr_deleter>.
 
 wuffs_tga__decoder*
-wuffs_tga__decoder__alloc();
+wuffs_tga__decoder__alloc(void);
 
 static inline wuffs_base__image_decoder*
-wuffs_tga__decoder__alloc_as__wuffs_base__image_decoder() {
+wuffs_tga__decoder__alloc_as__wuffs_base__image_decoder(void) {
   return (wuffs_base__image_decoder*)(wuffs_tga__decoder__alloc());
 }
 
@@ -12111,7 +12107,7 @@
     uint32_t options);
 
 size_t
-sizeof__wuffs_wbmp__decoder();
+sizeof__wuffs_wbmp__decoder(void);
 
 // ---------------- Allocs
 
@@ -12122,10 +12118,10 @@
 // std::unique_ptr<T, wuffs_unique_ptr_deleter>.
 
 wuffs_wbmp__decoder*
-wuffs_wbmp__decoder__alloc();
+wuffs_wbmp__decoder__alloc(void);
 
 static inline wuffs_base__image_decoder*
-wuffs_wbmp__decoder__alloc_as__wuffs_base__image_decoder() {
+wuffs_wbmp__decoder__alloc_as__wuffs_base__image_decoder(void) {
   return (wuffs_base__image_decoder*)(wuffs_wbmp__decoder__alloc());
 }
 
@@ -12471,7 +12467,7 @@
     uint32_t options);
 
 size_t
-sizeof__wuffs_xxhash32__hasher();
+sizeof__wuffs_xxhash32__hasher(void);
 
 // ---------------- Allocs
 
@@ -12482,10 +12478,10 @@
 // std::unique_ptr<T, wuffs_unique_ptr_deleter>.
 
 wuffs_xxhash32__hasher*
-wuffs_xxhash32__hasher__alloc();
+wuffs_xxhash32__hasher__alloc(void);
 
 static inline wuffs_base__hasher_u32*
-wuffs_xxhash32__hasher__alloc_as__wuffs_base__hasher_u32() {
+wuffs_xxhash32__hasher__alloc_as__wuffs_base__hasher_u32(void) {
   return (wuffs_base__hasher_u32*)(wuffs_xxhash32__hasher__alloc());
 }
 
@@ -12697,7 +12693,7 @@
     uint32_t options);
 
 size_t
-sizeof__wuffs_xxhash64__hasher();
+sizeof__wuffs_xxhash64__hasher(void);
 
 // ---------------- Allocs
 
@@ -12708,10 +12704,10 @@
 // std::unique_ptr<T, wuffs_unique_ptr_deleter>.
 
 wuffs_xxhash64__hasher*
-wuffs_xxhash64__hasher__alloc();
+wuffs_xxhash64__hasher__alloc(void);
 
 static inline wuffs_base__hasher_u64*
-wuffs_xxhash64__hasher__alloc_as__wuffs_base__hasher_u64() {
+wuffs_xxhash64__hasher__alloc_as__wuffs_base__hasher_u64(void) {
   return (wuffs_base__hasher_u64*)(wuffs_xxhash64__hasher__alloc());
 }
 
@@ -27183,7 +27179,7 @@
 }
 
 wuffs_adler32__hasher*
-wuffs_adler32__hasher__alloc() {
+wuffs_adler32__hasher__alloc(void) {
   wuffs_adler32__hasher* x =
       (wuffs_adler32__hasher*)(calloc(sizeof(wuffs_adler32__hasher), 1));
   if (!x) {
@@ -27198,7 +27194,7 @@
 }
 
 size_t
-sizeof__wuffs_adler32__hasher() {
+sizeof__wuffs_adler32__hasher(void) {
   return sizeof(wuffs_adler32__hasher);
 }
 
@@ -27790,7 +27786,7 @@
 }
 
 wuffs_bmp__decoder*
-wuffs_bmp__decoder__alloc() {
+wuffs_bmp__decoder__alloc(void) {
   wuffs_bmp__decoder* x =
       (wuffs_bmp__decoder*)(calloc(sizeof(wuffs_bmp__decoder), 1));
   if (!x) {
@@ -27805,7 +27801,7 @@
 }
 
 size_t
-sizeof__wuffs_bmp__decoder() {
+sizeof__wuffs_bmp__decoder(void) {
   return sizeof(wuffs_bmp__decoder);
 }
 
@@ -30572,7 +30568,7 @@
 }
 
 wuffs_bzip2__decoder*
-wuffs_bzip2__decoder__alloc() {
+wuffs_bzip2__decoder__alloc(void) {
   wuffs_bzip2__decoder* x =
       (wuffs_bzip2__decoder*)(calloc(sizeof(wuffs_bzip2__decoder), 1));
   if (!x) {
@@ -30587,7 +30583,7 @@
 }
 
 size_t
-sizeof__wuffs_bzip2__decoder() {
+sizeof__wuffs_bzip2__decoder(void) {
   return sizeof(wuffs_bzip2__decoder);
 }
 
@@ -32128,7 +32124,7 @@
 }
 
 wuffs_cbor__decoder*
-wuffs_cbor__decoder__alloc() {
+wuffs_cbor__decoder__alloc(void) {
   wuffs_cbor__decoder* x =
       (wuffs_cbor__decoder*)(calloc(sizeof(wuffs_cbor__decoder), 1));
   if (!x) {
@@ -32143,7 +32139,7 @@
 }
 
 size_t
-sizeof__wuffs_cbor__decoder() {
+sizeof__wuffs_cbor__decoder(void) {
   return sizeof(wuffs_cbor__decoder);
 }
 
@@ -33489,7 +33485,7 @@
 }
 
 wuffs_crc32__ieee_hasher*
-wuffs_crc32__ieee_hasher__alloc() {
+wuffs_crc32__ieee_hasher__alloc(void) {
   wuffs_crc32__ieee_hasher* x =
       (wuffs_crc32__ieee_hasher*)(calloc(sizeof(wuffs_crc32__ieee_hasher), 1));
   if (!x) {
@@ -33504,7 +33500,7 @@
 }
 
 size_t
-sizeof__wuffs_crc32__ieee_hasher() {
+sizeof__wuffs_crc32__ieee_hasher(void) {
   return sizeof(wuffs_crc32__ieee_hasher);
 }
 
@@ -34278,7 +34274,7 @@
 }
 
 wuffs_deflate__decoder*
-wuffs_deflate__decoder__alloc() {
+wuffs_deflate__decoder__alloc(void) {
   wuffs_deflate__decoder* x =
       (wuffs_deflate__decoder*)(calloc(sizeof(wuffs_deflate__decoder), 1));
   if (!x) {
@@ -34293,7 +34289,7 @@
 }
 
 size_t
-sizeof__wuffs_deflate__decoder() {
+sizeof__wuffs_deflate__decoder(void) {
   return sizeof(wuffs_deflate__decoder);
 }
 
@@ -36694,7 +36690,7 @@
 }
 
 wuffs_gif__decoder*
-wuffs_gif__decoder__alloc() {
+wuffs_gif__decoder__alloc(void) {
   wuffs_gif__decoder* x =
       (wuffs_gif__decoder*)(calloc(sizeof(wuffs_gif__decoder), 1));
   if (!x) {
@@ -36709,7 +36705,7 @@
 }
 
 size_t
-sizeof__wuffs_gif__decoder() {
+sizeof__wuffs_gif__decoder(void) {
   return sizeof(wuffs_gif__decoder);
 }
 
@@ -39617,7 +39613,7 @@
 }
 
 wuffs_gzip__decoder*
-wuffs_gzip__decoder__alloc() {
+wuffs_gzip__decoder__alloc(void) {
   wuffs_gzip__decoder* x =
       (wuffs_gzip__decoder*)(calloc(sizeof(wuffs_gzip__decoder), 1));
   if (!x) {
@@ -39632,7 +39628,7 @@
 }
 
 size_t
-sizeof__wuffs_gzip__decoder() {
+sizeof__wuffs_gzip__decoder(void) {
   return sizeof(wuffs_gzip__decoder);
 }
 
@@ -40704,7 +40700,7 @@
 }
 
 wuffs_jpeg__decoder*
-wuffs_jpeg__decoder__alloc() {
+wuffs_jpeg__decoder__alloc(void) {
   wuffs_jpeg__decoder* x =
       (wuffs_jpeg__decoder*)(calloc(sizeof(wuffs_jpeg__decoder), 1));
   if (!x) {
@@ -40719,7 +40715,7 @@
 }
 
 size_t
-sizeof__wuffs_jpeg__decoder() {
+sizeof__wuffs_jpeg__decoder(void) {
   return sizeof(wuffs_jpeg__decoder);
 }
 
@@ -47168,7 +47164,7 @@
 }
 
 wuffs_json__decoder*
-wuffs_json__decoder__alloc() {
+wuffs_json__decoder__alloc(void) {
   wuffs_json__decoder* x =
       (wuffs_json__decoder*)(calloc(sizeof(wuffs_json__decoder), 1));
   if (!x) {
@@ -47183,7 +47179,7 @@
 }
 
 size_t
-sizeof__wuffs_json__decoder() {
+sizeof__wuffs_json__decoder(void) {
   return sizeof(wuffs_json__decoder);
 }
 
@@ -49155,7 +49151,7 @@
 }
 
 wuffs_lzw__decoder*
-wuffs_lzw__decoder__alloc() {
+wuffs_lzw__decoder__alloc(void) {
   wuffs_lzw__decoder* x =
       (wuffs_lzw__decoder*)(calloc(sizeof(wuffs_lzw__decoder), 1));
   if (!x) {
@@ -49170,7 +49166,7 @@
 }
 
 size_t
-sizeof__wuffs_lzw__decoder() {
+sizeof__wuffs_lzw__decoder(void) {
   return sizeof(wuffs_lzw__decoder);
 }
 
@@ -49772,7 +49768,7 @@
 }
 
 wuffs_netpbm__decoder*
-wuffs_netpbm__decoder__alloc() {
+wuffs_netpbm__decoder__alloc(void) {
   wuffs_netpbm__decoder* x =
       (wuffs_netpbm__decoder*)(calloc(sizeof(wuffs_netpbm__decoder), 1));
   if (!x) {
@@ -49787,7 +49783,7 @@
 }
 
 size_t
-sizeof__wuffs_netpbm__decoder() {
+sizeof__wuffs_netpbm__decoder(void) {
   return sizeof(wuffs_netpbm__decoder);
 }
 
@@ -50930,7 +50926,7 @@
 }
 
 wuffs_nie__decoder*
-wuffs_nie__decoder__alloc() {
+wuffs_nie__decoder__alloc(void) {
   wuffs_nie__decoder* x =
       (wuffs_nie__decoder*)(calloc(sizeof(wuffs_nie__decoder), 1));
   if (!x) {
@@ -50945,7 +50941,7 @@
 }
 
 size_t
-sizeof__wuffs_nie__decoder() {
+sizeof__wuffs_nie__decoder(void) {
   return sizeof(wuffs_nie__decoder);
 }
 
@@ -51991,7 +51987,7 @@
 }
 
 wuffs_zlib__decoder*
-wuffs_zlib__decoder__alloc() {
+wuffs_zlib__decoder__alloc(void) {
   wuffs_zlib__decoder* x =
       (wuffs_zlib__decoder*)(calloc(sizeof(wuffs_zlib__decoder), 1));
   if (!x) {
@@ -52006,7 +52002,7 @@
 }
 
 size_t
-sizeof__wuffs_zlib__decoder() {
+sizeof__wuffs_zlib__decoder(void) {
   return sizeof(wuffs_zlib__decoder);
 }
 
@@ -52961,7 +52957,7 @@
 }
 
 wuffs_png__decoder*
-wuffs_png__decoder__alloc() {
+wuffs_png__decoder__alloc(void) {
   wuffs_png__decoder* x =
       (wuffs_png__decoder*)(calloc(sizeof(wuffs_png__decoder), 1));
   if (!x) {
@@ -52976,7 +52972,7 @@
 }
 
 size_t
-sizeof__wuffs_png__decoder() {
+sizeof__wuffs_png__decoder(void) {
   return sizeof(wuffs_png__decoder);
 }
 
@@ -59127,7 +59123,7 @@
 }
 
 wuffs_tga__decoder*
-wuffs_tga__decoder__alloc() {
+wuffs_tga__decoder__alloc(void) {
   wuffs_tga__decoder* x =
       (wuffs_tga__decoder*)(calloc(sizeof(wuffs_tga__decoder), 1));
   if (!x) {
@@ -59142,7 +59138,7 @@
 }
 
 size_t
-sizeof__wuffs_tga__decoder() {
+sizeof__wuffs_tga__decoder(void) {
   return sizeof(wuffs_tga__decoder);
 }
 
@@ -60581,7 +60577,7 @@
 }
 
 wuffs_wbmp__decoder*
-wuffs_wbmp__decoder__alloc() {
+wuffs_wbmp__decoder__alloc(void) {
   wuffs_wbmp__decoder* x =
       (wuffs_wbmp__decoder*)(calloc(sizeof(wuffs_wbmp__decoder), 1));
   if (!x) {
@@ -60596,7 +60592,7 @@
 }
 
 size_t
-sizeof__wuffs_wbmp__decoder() {
+sizeof__wuffs_wbmp__decoder(void) {
   return sizeof(wuffs_wbmp__decoder);
 }
 
@@ -61495,7 +61491,7 @@
 }
 
 wuffs_xxhash32__hasher*
-wuffs_xxhash32__hasher__alloc() {
+wuffs_xxhash32__hasher__alloc(void) {
   wuffs_xxhash32__hasher* x =
       (wuffs_xxhash32__hasher*)(calloc(sizeof(wuffs_xxhash32__hasher), 1));
   if (!x) {
@@ -61510,7 +61506,7 @@
 }
 
 size_t
-sizeof__wuffs_xxhash32__hasher() {
+sizeof__wuffs_xxhash32__hasher(void) {
   return sizeof(wuffs_xxhash32__hasher);
 }
 
@@ -61908,7 +61904,7 @@
 }
 
 wuffs_xxhash64__hasher*
-wuffs_xxhash64__hasher__alloc() {
+wuffs_xxhash64__hasher__alloc(void) {
   wuffs_xxhash64__hasher* x =
       (wuffs_xxhash64__hasher*)(calloc(sizeof(wuffs_xxhash64__hasher), 1));
   if (!x) {
@@ -61923,7 +61919,7 @@
 }
 
 size_t
-sizeof__wuffs_xxhash64__hasher() {
+sizeof__wuffs_xxhash64__hasher(void) {
   return sizeof(wuffs_xxhash64__hasher);
 }
 
diff --git a/sync.txt b/sync.txt
index 474895f..b92f4f6 100644
--- a/sync.txt
+++ b/sync.txt
@@ -1,10 +1,10 @@
-script/sync.sh ran on 2023-10-06
-Sibling directory (../wuffs) git revision is 6381a325eb1b4d521115bc8933c784e13c679fcb
+script/sync.sh ran on 2023-10-07
+Sibling directory (../wuffs) git revision is 3eb4e3a6aa4bb41bde2c38dafbe650b252281bad
 Manifest (sha256sum values, filenames, versions):
 bb28889a02c5d89edf6544ded21495462d1f998f8ffa5d095f53ca5db29e2937  release/c/README.md
 3b6a0c78f663bb495d1972fbb2a87c717d70fbac5ea8cc1a50cb9afaa4b03f92  release/c/wuffs-v0.2.c
     #define WUFFS_VERSION_STRING "0.2.0+2078.20191219"
 ca10c422ebd4bf9f2cc469bafec4d5606eed3db0db7cbe21cb5232249ac0fe68  release/c/wuffs-v0.3.c
     #define WUFFS_VERSION_STRING "0.3.3+3399.20230408"
-c3e49886415f495301a4f267d6810e1bce25170eae2a14c79a7b8c8c90f5d430  release/c/wuffs-v0.4.c
-    #define WUFFS_VERSION_STRING "0.4.0-alpha.1+3597.20231006"
+c3a34670b6d00a6566364dbd175401a3ad7926a85547f6595a9c92ceb21b073c  release/c/wuffs-v0.4.c
+    #define WUFFS_VERSION_STRING "0.4.0-alpha.2+3603.20231007"