Try another variation of the 'volatile' variables icc 9.1 on unix IA32 workaround.
The #pragma optimize("", off) attempt did not fix the problem and SIGSEGV's in Curl_freeaddrinfo() were back.
This commit is contained in:
Родитель
7291f50e8d
Коммит
2236a247d9
|
@ -68,15 +68,17 @@
|
|||
* 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 canext;
|
||||
Curl_addrinfo *ca;
|
||||
#else
|
||||
Curl_addrinfo *ca, *canext;
|
||||
#endif
|
||||
|
||||
for(ca = cahead; ca != NULL; ca = canext) {
|
||||
|
||||
|
@ -92,10 +94,6 @@ Curl_freeaddrinfo(Curl_addrinfo *cahead)
|
|||
}
|
||||
}
|
||||
|
||||
#if defined(__INTEL_COMPILER) && (__INTEL_COMPILER == 910) && \
|
||||
defined(__unix__) && defined(__i386__)
|
||||
# pragma optimize("", on)
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_GETADDRINFO
|
||||
/*
|
||||
|
|
Загрузка…
Ссылка в новой задаче