Move in va_copy() define block from stdlib.

This commit is contained in:
Eddy Jansson 2022-04-29 14:01:03 +02:00 committed by Sam Lantinga
parent 7e636b03cc
commit 97774cdf72
2 changed files with 9 additions and 8 deletions

View file

@ -26,6 +26,15 @@
#define _GNU_SOURCE #define _GNU_SOURCE
#endif #endif
/* Do our best to make sure va_copy is working */
#if defined(_MSC_VER) && _MSC_VER <= 1800
/* Visual Studio 2013 tries to link with _vacopy in the C runtime. Newer versions do an inline assignment */
#undef va_copy
#define va_copy(dst, src) dst = src
#elif defined(__GNUC__) && (__GNUC__ < 3)
#define va_copy(dst, src) __va_copy(dst, src)
#endif
/* This is for a variable-length array at the end of a struct: /* This is for a variable-length array at the end of a struct:
struct x { int y; char z[SDL_VARIABLE_LENGTH_ARRAY]; }; struct x { int y; char z[SDL_VARIABLE_LENGTH_ARRAY]; };
Use this because GCC 2 needs different magic than other compilers. */ Use this because GCC 2 needs different magic than other compilers. */

View file

@ -28,14 +28,6 @@
#include "SDL_stdinc.h" #include "SDL_stdinc.h"
#if defined(_MSC_VER) && _MSC_VER <= 1800
/* Visual Studio 2013 tries to link with _vacopy in the C runtime. Newer versions do an inline assignment */
#undef va_copy
#define va_copy(dst, src) dst = src
#elif defined(__GNUC__) && (__GNUC__ < 3)
#define va_copy(to, from) __va_copy(to, from)
#endif
#if !defined(HAVE_VSSCANF) || !defined(HAVE_STRTOL) || !defined(HAVE_STRTOUL) || !defined(HAVE_STRTOD) || !defined(HAVE_STRTOLL) || !defined(HAVE_STRTOULL) #if !defined(HAVE_VSSCANF) || !defined(HAVE_STRTOL) || !defined(HAVE_STRTOUL) || !defined(HAVE_STRTOD) || !defined(HAVE_STRTOLL) || !defined(HAVE_STRTOULL)
#define SDL_isupperhex(X) (((X) >= 'A') && ((X) <= 'F')) #define SDL_isupperhex(X) (((X) >= 'A') && ((X) <= 'F'))
#define SDL_islowerhex(X) (((X) >= 'a') && ((X) <= 'f')) #define SDL_islowerhex(X) (((X) >= 'a') && ((X) <= 'f'))