Skip to content

[v9_16] Work around an MSVC bug

Michał Kępień requested to merge 1742-work-around-an-msvc-bug-v9_16 into v9_16

The assembly code generated by MSVC for at least some signed comparisons involving atomic variables incorrectly uses unsigned conditional jumps instead of signed ones. In particular, the checks in isc_log_wouldlog() are affected in a way which breaks logging on Windows and thus also all system tests involving a named instance. Work around the issue by assigning the values returned by atomic_load_acquire() calls in isc_log_wouldlog() to local variables before performing comparisons.

(cherry picked from commit 4c4f5ccc)

Closes #1742 (closed)

Merge request reports