summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYang Tse <yangsita@gmail.com>2011-06-01 12:13:05 +0200
committerYang Tse <yangsita@gmail.com>2011-06-01 12:13:05 +0200
commitf9b24e590c2a0ee4ccd2dce09a2398652bc8a2d2 (patch)
tree3957f2120b415613863ae8eb472eeefa738bf948
parent56c77364d50db01f6971eb52a7917dd073c74431 (diff)
downloadc-ares-f9b24e590c2a0ee4ccd2dce09a2398652bc8a2d2.tar.gz
c-ares-f9b24e590c2a0ee4ccd2dce09a2398652bc8a2d2.tar.bz2
c-ares-f9b24e590c2a0ee4ccd2dce09a2398652bc8a2d2.zip
ares_nowarn: icc 9.1 workaround
-rw-r--r--ares_nowarn.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/ares_nowarn.c b/ares_nowarn.c
index 640412e..701add5 100644
--- a/ares_nowarn.c
+++ b/ares_nowarn.c
@@ -156,18 +156,26 @@ void aresx_FD_ZERO(fd_set *fdset)
unsigned short aresx_htons(unsigned short usnum)
{
+#if (__INTEL_COMPILER == 910) && defined(__i386__)
+ return (unsigned short)(((usnum << 8) & 0xFF00) | ((usnum >> 8) & 0x00FF));
+#else
#pragma warning(push)
#pragma warning(disable:810) /* conversion may lose significant bits */
return htons(usnum);
#pragma warning(pop)
+#endif
}
unsigned short aresx_ntohs(unsigned short usnum)
{
+#if (__INTEL_COMPILER == 910) && defined(__i386__)
+ return (unsigned short)(((usnum << 8) & 0xFF00) | ((usnum >> 8) & 0x00FF));
+#else
#pragma warning(push)
#pragma warning(disable:810) /* conversion may lose significant bits */
return ntohs(usnum);
#pragma warning(pop)
+#endif
}
#endif /* __INTEL_COMPILER && __unix__ */