message: Add a workaround for macOS to avoid serialising size_t
  * We never should have serialised size_t in the first place so this shouldn't
  have happened, but since we want to keep some semblence of best-effort
  backwards compatibility, we'll keep the code and just disable it on macOS.
diff: @@ -2240,7 +2240,13 @@ void DoSerialise(SerialiserType &ser, VkDescriptorUpdateTemplateEntry &el)
  // serialise them as uint64_t. Unfortunately this wasn't correct initially and they were
  // serialised as-is making a 32-bit/64-bit incompatibility, so for older versions all we can do is
  // continue to serialise them as size_t as it's impossible to know which one was used.
  +//
  +// On mac we can't compile a size_t serialise, which is good in general but makes this backwards
  +// compatibility a bit more annoying. We just assume a 64-bit capture.
  +
  +#if DISABLED(RDOC_APPLE)
  if(ser.VersionAtLeast(0xE))
  +#endif
  {
  uint64_t offset = el.offset;
  uint64_t stride = el.stride;
  @@ -2249,11 +2255,13 @@ void DoSerialise(SerialiserType &ser, VkDescriptorUpdateTemplateEntry &el)
  el.offset = (size_t)offset;
  el.stride = (size_t)stride;
  }
  +#if DISABLED(RDOC_APPLE)
  else
  {
  SERIALISE_MEMBER(offset);
  SERIALISE_MEMBER(stride);
  }
  +#endif
  }
  template <typename SerialiserType>
  