Silence a few clang warnings
Provide preprocessor handling for OS-dependent code; use it for darwin