7 Apr
2016
7 Apr
'16
9:51 a.m.
It turns out we need both the 'volatile' trick on line 19 and removing the -fno-honor-nans compiler flag in order to work around the problem at line 40. Neither workaround is sufficient on their own.
I had started to test removing/adding flags one by one too for cctbx/xray/convert.h. Just had a look at the outcomes: in that case, removing -fno-honor-nans is enough; the volatile hack can be removed. It makes no sense to me but that’s usually the case with optimiser bugs. Well, anyway, we are walking on a tight rope with Xcode 7.3, and perhaps even onward since clang trunk brings the same havoc.