Quellcode durchsuchen

include/starpu_util.h: do not call strerror_r on windows systems

Nathalie Furmento vor 13 Jahren
Ursprung
Commit
1fc2863e2b
1 geänderte Dateien mit 17 neuen und 8 gelöschten Zeilen
  1. 17 8
      include/starpu_util.h

+ 17 - 8
include/starpu_util.h

@@ -46,14 +46,23 @@ extern "C"
 
 #define STARPU_ABORT()		abort()
 
-#define STARPU_CHECK_RETURN_VALUE(err, message) {if (err < 0) { \
-	char xmessage[256]; strerror_r(err, xmessage, 256); \
-	fprintf(stderr, "StarPU function <%s> returned unexpected value: <%d:%s>\n", message, err, xmessage); \
-	STARPU_ASSERT(0); }}
-#define STARPU_CHECK_RETURN_VALUE_IS(err, value, message) {if (err != value) { \
-	char xmessage[256]; strerror_r(err, xmessage, 256); \
-	fprintf(stderr, "StarPU function <%s> returned unexpected value: <%d:%s>\n", message, err, xmessage); \
-	STARPU_ASSERT(0); }}
+#if defined(STARPU_HAVE_WINDOWS)
+#  define STARPU_CHECK_RETURN_VALUE(err, message) {if (err < 0) { \
+			char xmessage[256]; strerror_r(-err, xmessage, 256); \
+			fprintf(stderr, "StarPU function <%s> returned unexpected value: <%d:%s>\n", message, err, xmessage); \
+			STARPU_ASSERT(0); }}
+#  define STARPU_CHECK_RETURN_VALUE_IS(err, value, message) {if (err != value) { \
+			char xmessage[256]; strerror_r(-err, xmessage, 256); \
+			fprintf(stderr, "StarPU function <%s> returned unexpected value: <%d:%s>\n", message, err, xmessage); \
+			STARPU_ASSERT(0); }}
+#else
+#  define STARPU_CHECK_RETURN_VALUE(err, message) {if (err < 0) {		\
+			fprintf(stderr, "StarPU function <%s> returned unexpected value: <%d>\n", message, err); \
+			STARPU_ASSERT(0); }}
+#  define STARPU_CHECK_RETURN_VALUE_IS(err, value, message) {if (err != value) { \
+			fprintf(stderr, "StarPU function <%s> returned unexpected value: <%d>\n", message, err); \
+			STARPU_ASSERT(0); }}
+#endif /* STARPU_HAVE_WINDOWS */
 
 #ifdef __GNUC__
 #  define STARPU_UNLIKELY(expr)          (__builtin_expect(!!(expr),0))