Add bounds check to wuffs_base__make_slice_uNN_ij
diff --git a/internal/cgen/base/fundamental-public.h b/internal/cgen/base/fundamental-public.h
index a44f42c..4bbebba 100644
--- a/internal/cgen/base/fundamental-public.h
+++ b/internal/cgen/base/fundamental-public.h
@@ -1196,7 +1196,7 @@
 wuffs_base__make_slice_u8_ij(uint8_t* ptr, size_t i, size_t j) {
   wuffs_base__slice_u8 ret;
   ret.ptr = ptr + i;
-  ret.len = j - i;
+  ret.len = (j >= i) ? (j - i) : 0;
   return ret;
 }
 
@@ -1204,7 +1204,7 @@
 wuffs_base__make_slice_u16_ij(uint16_t* ptr, size_t i, size_t j) {
   wuffs_base__slice_u16 ret;
   ret.ptr = ptr + i;
-  ret.len = j - i;
+  ret.len = (j >= i) ? (j - i) : 0;
   return ret;
 }
 
@@ -1212,7 +1212,7 @@
 wuffs_base__make_slice_u32_ij(uint32_t* ptr, size_t i, size_t j) {
   wuffs_base__slice_u32 ret;
   ret.ptr = ptr + i;
-  ret.len = j - i;
+  ret.len = (j >= i) ? (j - i) : 0;
   return ret;
 }
 
@@ -1220,7 +1220,7 @@
 wuffs_base__make_slice_u64_ij(uint64_t* ptr, size_t i, size_t j) {
   wuffs_base__slice_u64 ret;
   ret.ptr = ptr + i;
-  ret.len = j - i;
+  ret.len = (j >= i) ? (j - i) : 0;
   return ret;
 }
 
diff --git a/release/c/wuffs-unsupported-snapshot.c b/release/c/wuffs-unsupported-snapshot.c
index 71053a6..77113f2 100644
--- a/release/c/wuffs-unsupported-snapshot.c
+++ b/release/c/wuffs-unsupported-snapshot.c
@@ -1463,7 +1463,7 @@
 wuffs_base__make_slice_u8_ij(uint8_t* ptr, size_t i, size_t j) {
   wuffs_base__slice_u8 ret;
   ret.ptr = ptr + i;
-  ret.len = j - i;
+  ret.len = (j >= i) ? (j - i) : 0;
   return ret;
 }
 
@@ -1471,7 +1471,7 @@
 wuffs_base__make_slice_u16_ij(uint16_t* ptr, size_t i, size_t j) {
   wuffs_base__slice_u16 ret;
   ret.ptr = ptr + i;
-  ret.len = j - i;
+  ret.len = (j >= i) ? (j - i) : 0;
   return ret;
 }
 
@@ -1479,7 +1479,7 @@
 wuffs_base__make_slice_u32_ij(uint32_t* ptr, size_t i, size_t j) {
   wuffs_base__slice_u32 ret;
   ret.ptr = ptr + i;
-  ret.len = j - i;
+  ret.len = (j >= i) ? (j - i) : 0;
   return ret;
 }
 
@@ -1487,7 +1487,7 @@
 wuffs_base__make_slice_u64_ij(uint64_t* ptr, size_t i, size_t j) {
   wuffs_base__slice_u64 ret;
   ret.ptr = ptr + i;
-  ret.len = j - i;
+  ret.len = (j >= i) ? (j - i) : 0;
   return ret;
 }