I suggest you test for the Intel compiler, and if it is there, make the static variable "volatile", and add a comment about why that is being done.
--------------------------------------------------------------------------- Sergey E. Koposov wrote: > On Sat, 2 Sep 2006, Bruce Momjian wrote: > > > Teodor Sigaev wrote: > >>> What does that option do? Is it practical to enable it for the entire > >>> backend? > >> From docs: > >> Disables inline expansion of standard library or intrinsic functions. > >> > >>> And isn't this a straightforward compiler bug they should be notified > >>> about? > >> What's a choice? Now I see 3: > >> 1) -O1 > >> 2) "volatile" > >> 3) -nolib_inline > >> > >> IMHO, only -O1 is guarantee for other possible places... But I'm not > >> familiar > >> enough with such kinds of bugs. > > > > My guess is that the compiler writers saw you calling a libc function, > > and assumed that library could not modify the file static variable, > > forgetting that the libc function can call back into the original file. > > > > Can you detect the Itanium compiler and optimization levels via > > preprocessor symbols, and test for that, and throw an #error? > > No, it's impossible. > Unfortunately the __OPTIMIZE__ preproc. symbol of icc doesn't allow to > distinguish between different optimization levels. (only between -O0 and > anything else). > > Regards, > Sergey > > ******************************************************************* > Sergey E. Koposov > Max Planck Institute for Astronomy/Sternberg Astronomical Institute > Tel: +49-6221-528-349 > Web: http://lnfm1.sai.msu.ru/~math > E-mail: [EMAIL PROTECTED] > > ---------------------------(end of broadcast)--------------------------- > TIP 4: Have you searched our list archives? > > http://archives.postgresql.org -- Bruce Momjian [EMAIL PROTECTED] EnterpriseDB http://www.enterprisedb.com + If your life is a hard drive, Christ can be your backup. + ---------------------------(end of broadcast)--------------------------- TIP 3: Have you checked our extensive FAQ? http://www.postgresql.org/docs/faq