From 22d27936b3d771a36b170b1f4b4ba58badbf3971 Mon Sep 17 00:00:00 2001 From: "Luke T. Shumaker" Date: Tue, 10 Dec 2024 02:12:39 -0700 Subject: Get lib9p building on rp2040 --- lib9p/9p.c | 7 +++++-- lib9p/9p.generated.c | 3 +++ lib9p/idl.gen | 3 +++ lib9p/internal.h | 5 ++++- 4 files changed, 15 insertions(+), 3 deletions(-) (limited to 'lib9p') diff --git a/lib9p/9p.c b/lib9p/9p.c index 5943b42..a3d81d0 100644 --- a/lib9p/9p.c +++ b/lib9p/9p.c @@ -65,8 +65,11 @@ int lib9p_errorf(struct lib9p_ctx *ctx, uint32_t linux_errno, char const *fmt, . } const char *lib9p_msg_type_str(struct lib9p_ctx *ctx, enum lib9p_msg_type typ) { - assert(0 <= typ && typ <= 0xFF); - return _lib9p_versions[ctx->version].msgs[typ].name; +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wtype-limits" + assert(0 <= typ && typ <= 0xFF); +#pragma GCC diagnostic pop + return _lib9p_versions[ctx->version].msgs[typ].name; } /* main message functions *****************************************************/ diff --git a/lib9p/9p.generated.c b/lib9p/9p.generated.c index f3a907b..badeb95 100644 --- a/lib9p/9p.generated.c +++ b/lib9p/9p.generated.c @@ -27,7 +27,10 @@ static const char *version_strs[LIB9P_VER_NUM] = { }; const char *lib9p_version_str(enum lib9p_version ver) { +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wtype-limits" assert(0 <= ver && ver < LIB9P_VER_NUM); +#pragma GCC diagnostic pop return version_strs[ver]; } diff --git a/lib9p/idl.gen b/lib9p/idl.gen index 262e5f0..cca83da 100755 --- a/lib9p/idl.gen +++ b/lib9p/idl.gen @@ -724,7 +724,10 @@ static const char *version_strs[{c_ver_enum('NUM')}] = {{ ret += "};\n" ret += f""" const char *{idprefix}version_str(enum {idprefix}version ver) {{ +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wtype-limits" assert(0 <= ver && ver < {c_ver_enum('NUM')}); +#pragma GCC diagnostic pop return version_strs[ver]; }} """ diff --git a/lib9p/internal.h b/lib9p/internal.h index 57f7aa7..07bb9d6 100644 --- a/lib9p/internal.h +++ b/lib9p/internal.h @@ -8,7 +8,10 @@ #define _LIB9P_INTERNAL_H_ #include /* for size_t */ -#include /* for SSIZE_MAX */ +#include /* for SSIZE_MAX, not set by newlib */ +#ifndef SSIZE_MAX +#define SSIZE_MAX (SIZE_MAX >> 1) +#endif #include -- cgit v1.2.3-2-g168b