Explorar o código

common_funcs: Provide rotr and rotl for MSVC

MerryMage %!s(int64=10) %!d(string=hai) anos
pai
achega
8e1768cf1d
Modificáronse 1 ficheiros con 18 adicións e 12 borrados
  1. 18 12
      src/common/common_funcs.h

+ 18 - 12
src/common/common_funcs.h

@@ -72,18 +72,24 @@ inline u64 _rotr64(u64 x, unsigned int shift){
 }
 }
 
 
 #else // _MSC_VER
 #else // _MSC_VER
-    #if (_MSC_VER < 1900)
-        // Function Cross-Compatibility
-        #define snprintf _snprintf
-    #endif
-
-    // Locale Cross-Compatibility
-    #define locale_t _locale_t
-
-    extern "C" {
-        __declspec(dllimport) void __stdcall DebugBreak(void);
-    }
-    #define Crash() {DebugBreak();}
+
+#if (_MSC_VER < 1900)
+    // Function Cross-Compatibility
+    #define snprintf _snprintf
+#endif
+
+// Locale Cross-Compatibility
+#define locale_t _locale_t
+
+extern "C" {
+    __declspec(dllimport) void __stdcall DebugBreak(void);
+}
+#define Crash() {DebugBreak();}
+
+// cstdlib provides these on MSVC
+#define rotr _rotr
+#define rotl _rotl
+
 #endif // _MSC_VER ndef
 #endif // _MSC_VER ndef
 
 
 // Generic function to get last error message.
 // Generic function to get last error message.