]> granicus.if.org Git - curl/commitdiff
Disable optimizations when compiling function Curl_freeaddrinfo() with icc 9.1 on...
authorYang Tse <yangsita@gmail.com>
Wed, 22 Apr 2009 15:03:05 +0000 (15:03 +0000)
committerYang Tse <yangsita@gmail.com>
Wed, 22 Apr 2009 15:03:05 +0000 (15:03 +0000)
Previous 'volatile' variables workaround proved useful, but it triggered the following warning:

warning #167: argument of type "volatile Curl_addrinfo *" is incompatible with parameter of type "void *"

lib/curl_addrinfo.c

index 8c85f886548c2db249036c84ab5f23ddc420d702..4e1eb4c26545babf8a767412706afd0d1c1b5bdd 100644 (file)
  * any function call which actually allocates a Curl_addrinfo struct.
  */
 
+#if defined(__INTEL_COMPILER) && (__INTEL_COMPILER == 910) && \
+    defined(__unix__) &&  defined(__i386__)
+#   pragma optimize("", off)
+#endif
+
 void
 Curl_freeaddrinfo(Curl_addrinfo *cahead)
 {
-#if defined(__INTEL_COMPILER) && (__INTEL_COMPILER == 910) && \
-    defined(__unix__) &&  defined(__i386__)
-  /* workaround icc 9.1 optimizer issue */
-  volatile Curl_addrinfo * volatile ca;
-  volatile Curl_addrinfo * volatile canext;
-#else
   Curl_addrinfo *ca, *canext;
-#endif
 
   for(ca = cahead; ca != NULL; ca = canext) {
 
@@ -94,6 +92,10 @@ Curl_freeaddrinfo(Curl_addrinfo *cahead)
   }
 }
 
+#if defined(__INTEL_COMPILER) && (__INTEL_COMPILER == 910) && \
+    defined(__unix__) &&  defined(__i386__)
+#   pragma optimize("", on)
+#endif
 
 #ifdef HAVE_GETADDRINFO
 /*