aboutsummaryrefslogtreecommitdiff
path: root/string/endian.h
diff options
context:
space:
mode:
Diffstat (limited to 'string/endian.h')
-rw-r--r--string/endian.h25
1 files changed, 13 insertions, 12 deletions
diff --git a/string/endian.h b/string/endian.h
index 18e6708..dcc9a65 100644
--- a/string/endian.h
+++ b/string/endian.h
@@ -58,37 +58,38 @@
#if defined __USE_MISC && !defined __ASSEMBLER__
/* Conversion interfaces. */
# include <bits/byteswap.h>
+# include <bits/uintn-identity.h>
# if __BYTE_ORDER == __LITTLE_ENDIAN
# define htobe16(x) __bswap_16 (x)
-# define htole16(x) (x)
+# define htole16(x) __uint16_identity (x)
# define be16toh(x) __bswap_16 (x)
-# define le16toh(x) (x)
+# define le16toh(x) __uint16_identity (x)
# define htobe32(x) __bswap_32 (x)
-# define htole32(x) (x)
+# define htole32(x) __uint32_identity (x)
# define be32toh(x) __bswap_32 (x)
-# define le32toh(x) (x)
+# define le32toh(x) __uint32_identity (x)
# define htobe64(x) __bswap_64 (x)
-# define htole64(x) (x)
+# define htole64(x) __uint64_identity (x)
# define be64toh(x) __bswap_64 (x)
-# define le64toh(x) (x)
+# define le64toh(x) __uint64_identity (x)
# else
-# define htobe16(x) (x)
+# define htobe16(x) __uint16_identity (x)
# define htole16(x) __bswap_16 (x)
-# define be16toh(x) (x)
+# define be16toh(x) __uint16_identity (x)
# define le16toh(x) __bswap_16 (x)
-# define htobe32(x) (x)
+# define htobe32(x) __uint32_identity (x)
# define htole32(x) __bswap_32 (x)
-# define be32toh(x) (x)
+# define be32toh(x) __uint32_identity (x)
# define le32toh(x) __bswap_32 (x)
-# define htobe64(x) (x)
+# define htobe64(x) __uint64_identity (x)
# define htole64(x) __bswap_64 (x)
-# define be64toh(x) (x)
+# define be64toh(x) __uint64_identity (x)
# define le64toh(x) __bswap_64 (x)
# endif
#endif