summaryrefslogtreecommitdiff
path: root/ares_init.c
diff options
context:
space:
mode:
authorYang Tse <yangsita@gmail.com>2009-11-18 02:57:34 +0000
committerYang Tse <yangsita@gmail.com>2009-11-18 02:57:34 +0000
commitf157b574a9e99c4890b0ab760df9c05cfbac7bfb (patch)
treea0825a3b5c162ce86b8edfff722605883e114a35 /ares_init.c
parentcf38264e2a824ab3b511389f38f1425705a23abc (diff)
downloadc-ares-f157b574a9e99c4890b0ab760df9c05cfbac7bfb.tar.gz
c-ares-f157b574a9e99c4890b0ab760df9c05cfbac7bfb.tar.bz2
c-ares-f157b574a9e99c4890b0ab760df9c05cfbac7bfb.zip
workaround icc 9.1 optimizer issue
Diffstat (limited to 'ares_init.c')
-rw-r--r--ares_init.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/ares_init.c b/ares_init.c
index dc3e52c..92537ab 100644
--- a/ares_init.c
+++ b/ares_init.c
@@ -1108,11 +1108,19 @@ static int config_domain(ares_channel channel, char *str)
return set_search(channel, str);
}
+#if defined(__INTEL_COMPILER) && (__INTEL_COMPILER == 910) && \
+ defined(__OPTIMIZE__) && defined(__unix__) && defined(__i386__)
+ /* workaround icc 9.1 optimizer issue */
+# define vqualifier volatile
+#else
+# define vqualifier
+#endif
+
static int config_lookup(ares_channel channel, const char *str,
const char *bindch, const char *filech)
{
char lookups[3], *l;
- const char *p;
+ const char *vqualifier p;
/* Set the lookup order. Only the first letter of each work
* is relevant, and it has to be "b" for DNS or "f" for the