From 2f2964405b045b8ba8a668f5bb0b5c984a42bbf9 Mon Sep 17 00:00:00 2001 From: navarrop Date: Mon, 14 Jun 2010 09:43:41 +0000 Subject: [PATCH] Do not redefine function in visualc. git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@7848 48e7efb5-ca39-0410-a469-dd3cf9ba447f --- src/win32/compiler/visualc.h | 85 +++++++++++++++++++----------------- 1 file changed, 45 insertions(+), 40 deletions(-) diff --git a/src/win32/compiler/visualc.h b/src/win32/compiler/visualc.h index 8c62ff5756..cd6d11737d 100644 --- a/src/win32/compiler/visualc.h +++ b/src/win32/compiler/visualc.h @@ -326,56 +326,61 @@ the double. For now, GRAS requires the structures to be compacted. */ #undef ADDR2LINE #endif -#if !defined(HAVE_VA_COPY) - #define HAVE_VA_COPY 1 -#endif -/* This macro is not defined in borland stdarg.h include file, adds it. */ -#ifndef va_copy(dest,src) - #define va_copy(dest,src) ((dest)=(src)) -#endif +#ifndef __VISUALC__ -#ifndef __VA_COPY_USE_ASP(d, s) -/* Predefined possible va_copy() implementation (id: ASP) */ - #define __VA_COPY_USE_ASP(d, s) do { *(d) = *(s); } while (0) -#endif + #if !defined(HAVE_VA_COPY) + #define HAVE_VA_COPY 1 + #endif -#ifndef __VA_COPY_USE_ASS(d, s) -/* Predefined possible va_copy() implementation (id: ASS) */ - #define __VA_COPY_USE_ASS(d, s) do { (d) = (s); } while (0) -#endif + /* This macro is not defined in borland stdarg.h include file, adds it. */ + #ifndef va_copy(dest,src) + #define va_copy(dest,src) ((dest)=(src)) + #endif -#ifndef __VA_COPY_USE_C99(d, s) -/* Predefined possible va_copy() implementation (id: C99) */ - #define __VA_COPY_USE_C99(d, s) va_copy((d), (s)) -#endif + #ifndef __VA_COPY_USE_ASP(d, s) + /* Predefined possible va_copy() implementation (id: ASP) */ + #define __VA_COPY_USE_ASP(d, s) do { *(d) = *(s); } while (0) + #endif -#ifndef __VA_COPY_USE_CPP(d, s) -/* Predefined possible va_copy() implementation (id: CPP) */ - #define __VA_COPY_USE_CPP(d, s) memcpy((void *)(d), (void *)(s)), sizeof(*(s)) -#endif + #ifndef __VA_COPY_USE_ASS(d, s) + /* Predefined possible va_copy() implementation (id: ASS) */ + #define __VA_COPY_USE_ASS(d, s) do { (d) = (s); } while (0) + #endif -#ifndef __VA_COPY_USE_CPS(d, s) -/* Predefined possible va_copy() implementation (id: CPS) */ - #define __VA_COPY_USE_CPS(d, s) memcpy((void *)&(d), (void *)&(s)), sizeof((s)) -#endif + #ifndef __VA_COPY_USE_C99(d, s) + /* Predefined possible va_copy() implementation (id: C99) */ + #define __VA_COPY_USE_C99(d, s) va_copy((d), (s)) + #endif -#ifndef __VA_COPY_USE_GCB(d, s) -/* Predefined possible va_copy() implementation (id: GCB) */ - #define __VA_COPY_USE_GCB(d, s) __builtin_va_copy((d), (s)) -#endif + #ifndef __VA_COPY_USE_CPP(d, s) + /* Predefined possible va_copy() implementation (id: CPP) */ + #define __VA_COPY_USE_CPP(d, s) memcpy((void *)(d), (void *)(s)), sizeof(*(s)) + #endif -#ifndef __VA_COPY_USE_GCH(d, s) -/* Predefined possible va_copy() implementation (id: GCH) */ - #define __VA_COPY_USE_GCH(d, s) __va_copy((d), (s)) -#endif -/* Predefined possible va_copy() implementation (id: GCM) */ -#define __VA_COPY_USE_GCM(d, s) VA_COPY((d), (s)) + #ifndef __VA_COPY_USE_CPS(d, s) + /* Predefined possible va_copy() implementation (id: CPS) */ + #define __VA_COPY_USE_CPS(d, s) memcpy((void *)&(d), (void *)&(s)), sizeof((s)) + #endif + #ifndef __VA_COPY_USE_GCB(d, s) + /* Predefined possible va_copy() implementation (id: GCB) */ + #define __VA_COPY_USE_GCB(d, s) __builtin_va_copy((d), (s)) + #endif + + #ifndef __VA_COPY_USE_GCH(d, s) + /* Predefined possible va_copy() implementation (id: GCH) */ + #define __VA_COPY_USE_GCH(d, s) __va_copy((d), (s)) + #endif + /* Predefined possible va_copy() implementation (id: GCM) */ + #define __VA_COPY_USE_GCM(d, s) VA_COPY((d), (s)) + + + /* Optional va_copy() implementation activation */ + #ifndef HAVE_VA_COPY + #define va_copy(d, s) __VA_COPY_USE(d, s) + #endif -/* Optional va_copy() implementation activation */ -#ifndef HAVE_VA_COPY -#define va_copy(d, s) __VA_COPY_USE(d, s) #endif /* xbt contexts are based on our threads implementation */ -- 2.20.1