Allow defining `IREE_HOST_SIZE_T` to other types. (#14040)
I tried redefining these:
```c
// iree/base/config.h
#if !defined(IREE_HOST_SIZE_T)
#define IREE_HOST_SIZE_T size_t
#define PRIhsz "zu"
#endif // !IREE_HOST_SIZE_T
```
to `uint32_t` and `PRIu32` while debugging some issues with Emscripten
builds, but many parts of the project failed to build.
`IREE_HOST_SIZE_T` should really be set to `size_t` in most/all cases,
but the project should still build if someone wants to redefine it.
Some cases were obviously using the wrong format specifier (e.g. `zu`
instead of `PRIhsz`), but other were more subtle (e.g. interop between
`std::string` with `iree_string_view_t` or using `SIZE_MAX` instead of
`IREE_HOST_SIZE_MAX`). I tried to update as many places as I could
safely.
diff --git a/experimental/cuda2/cuda_driver.c b/experimental/cuda2/cuda_driver.c
index b72dab2..4fab559 100644
--- a/experimental/cuda2/cuda_driver.c
+++ b/experimental/cuda2/cuda_driver.c
@@ -448,7 +448,8 @@
"no compatible CUDA devices were found");
} else if (default_device_index >= device_count) {
status = iree_make_status(IREE_STATUS_NOT_FOUND,
- "default device %d not found (of %ld enumerated)",
+ "default device %d not found (of %" PRIhsz
+ " enumerated)",
default_device_index, device_count);
} else {
*out_device = IREE_DEVICE_ID_TO_CUDEVICE(