The code will be extremely unreadable using #ifdefs, could you please reconsider the special case of OpenMP? Ignored OpenMP pragmas won't affect the behavior of the program in any way (if correctly used). I'll send you the patch soon, it just passed all previously succeeding tests.