[iQue] Define EGCS macro instead of relying on __GNUC__ (#2423)

* [iQue] Define EGCS macro instead of relying on __GNUC__

* Revert longlong.h
This commit is contained in:
cadmic
2025-01-13 05:32:25 -08:00
committed by GitHub
parent dbfa95fd01
commit bdc6b50153
7 changed files with 15 additions and 21 deletions
+10 -11
View File
@@ -1,16 +1,7 @@
#ifndef STDARG_H
#define STDARG_H
// When building with modern GCC, use the official vaarg macros to avoid warnings and possibly bad codegen.
#if __GNUC__ >= 3
#define va_list __builtin_va_list
#define va_start __builtin_va_start
#define va_arg __builtin_va_arg
#define va_end __builtin_va_end
#elif defined(__sgi) /* IDO */
#if defined(__sgi) /* IDO */
#ifndef _VA_LIST_
# define _VA_LIST_
@@ -52,7 +43,7 @@ typedef char* va_list;
/* No cleanup processing is required for the end of a varargs list: */
#define va_end(__list)
#else /* EGCS */
#elif defined(EGCS) /* EGCS */
typedef char * __gnuc_va_list;
@@ -75,6 +66,14 @@ typedef char * __gnuc_va_list;
typedef __gnuc_va_list va_list;
#else /* Modern GCC */
// When building with modern GCC, use the official vaarg macros to avoid warnings and possibly bad codegen.
#define va_list __builtin_va_list
#define va_start __builtin_va_start
#define va_arg __builtin_va_arg
#define va_end __builtin_va_end
#endif
#endif
+2 -2
View File
@@ -52,10 +52,10 @@
#if DEBUG_FEATURES
#define PRINTF osSyncPrintf
#elif defined(EGCS)
#define PRINTF(format, args...) while (0) osSyncPrintf(format, ##args)
#elif IDO_PRINTF_WORKAROUND
#define PRINTF(args) (void)0
#elif defined(__GNUC__) && __GNUC__ < 3
#define PRINTF(format, args...) while (0) osSyncPrintf(format, ##args)
#else
#define PRINTF(format, ...) (void)0
#endif