ref: 1b4187e51f76dea56924b610c98840f0828dd9e0
parent: cbaaec98ca14ecb6bc8521b9fb7a9c319cb20f4e
author: Antonio Niño Díaz <antonio_nd@outlook.com>
date: Mon Apr 2 18:25:09 EDT 2018
Cleanup GCC compiler attributes Added define 'unused_' for '__attribute__((unused))'. The oldest version of GCC with online docs (GCC 2.95.3, released in March 16, 2001 [1]) already has support for this attribute, so it doesn't make sense to check the version. Renamed 'noreturn' to 'noreturn_' for consistency. [1] https://gcc.gnu.org/onlinedocs/ Signed-off-by: Antonio Niño Díaz <antonio_nd@outlook.com>
--- a/include/asm/main.h
+++ b/include/asm/main.h
@@ -46,7 +46,7 @@
* It is also used when the assembler goes into an invalid state (for example,
* when it fails to allocate memory).
*/
-noreturn void fatalerror(const char *fmt, ...);
+noreturn_ void fatalerror(const char *fmt, ...);
/*
* Used for errors that make it impossible to assemble correctly, but don't
--- a/include/extern/err.h
+++ b/include/extern/err.h
@@ -34,10 +34,10 @@
void warnx(const char *fmt, ...);
void vwarnx(const char *fmt, va_list ap);
-noreturn void err(int status, const char *fmt, ...);
-noreturn void verr(int status, const char *fmt, va_list ap);
-noreturn void errx(int status, const char *fmt, ...);
-noreturn void verrx(int status, const char *fmt, va_list ap);
+noreturn_ void err(int status, const char *fmt, ...);
+noreturn_ void verr(int status, const char *fmt, va_list ap);
+noreturn_ void errx(int status, const char *fmt, ...);
+noreturn_ void verrx(int status, const char *fmt, va_list ap);
#endif /* ERR_IN_LIBC */
--- a/include/helpers.h
+++ b/include/helpers.h
@@ -11,10 +11,12 @@
#ifdef __GNUC__
/* GCC or compatible */
- #define noreturn __attribute__ ((noreturn))
+ #define noreturn_ __attribute__ ((noreturn))
+ #define unused_ __attribute__ ((unused))
#else
/* Unsupported, but no need to throw a fit */
- #define noreturn
+ #define noreturn_
+ #define unused_
#endif
#endif /* HELPERS_H */
--- a/include/link/script.h
+++ b/include/link/script.h
@@ -13,7 +13,7 @@
#include "helpers.h"
-noreturn void script_fatalerror(const char *fmt, ...);
+noreturn_ void script_fatalerror(const char *fmt, ...);
void script_Parse(const char *path);
--- a/src/asm/globlex.c
+++ b/src/asm/globlex.c
@@ -20,6 +20,8 @@
#include "asm/symbol.h"
#include "asm/symbol.h"
+#include "helpers.h"
+
#include "asmy.h"
bool oDontExpandStrings;
@@ -219,7 +221,7 @@
return 0;
}
-uint32_t PutUniqueArg(__attribute ((unused)) char *src, uint32_t size)
+uint32_t PutUniqueArg(unused_ char *src, uint32_t size)
{
char *s;
--- a/src/asm/symbol.c
+++ b/src/asm/symbol.c
@@ -25,6 +25,7 @@
#include "extern/err.h"
+#include "helpers.h"
#include "version.h"
struct sSymbol *tHashedSymbols[HASHSIZE];
@@ -62,7 +63,7 @@
memmove(string, new_beginning, strlen(new_beginning) + 1);
}
-int32_t Callback_NARG(__attribute__ ((unused)) struct sSymbol *sym)
+int32_t Callback_NARG(unused_ struct sSymbol *sym)
{
uint32_t i = 0;
@@ -72,7 +73,7 @@
return i;
}
-int32_t Callback__LINE__(struct sSymbol __attribute__((unused)) *sym)
+int32_t Callback__LINE__(unused_ struct sSymbol *sym)
{
return nLineNo;
}
--- a/src/extern/err.c
+++ b/src/extern/err.c
@@ -33,7 +33,7 @@
putc('\n', stderr);
}
-noreturn void rgbds_verr(int status, const char *fmt, va_list ap)
+noreturn_ void rgbds_verr(int status, const char *fmt, va_list ap)
{
fprintf(stderr, "error");
if (fmt) {
@@ -44,7 +44,7 @@
exit(status);
}
-noreturn void rgbds_verrx(int status, const char *fmt, va_list ap)
+noreturn_ void rgbds_verrx(int status, const char *fmt, va_list ap)
{
fprintf(stderr, "error");
if (fmt) {
@@ -73,7 +73,7 @@
va_end(ap);
}
-noreturn void rgbds_err(int status, const char *fmt, ...)
+noreturn_ void rgbds_err(int status, const char *fmt, ...)
{
va_list ap;
@@ -82,7 +82,7 @@
va_end(ap);
}
-noreturn void rgbds_errx(int status, const char *fmt, ...)
+noreturn_ void rgbds_errx(int status, const char *fmt, ...)
{
va_list ap;
--- a/src/link/lexer.l
+++ b/src/link/lexer.l
@@ -179,7 +179,7 @@
fprintf(stderr, "%s(%d)", linkerscript_path, include_line[i]);
}
-noreturn void script_fatalerror(const char *fmt, ...)
+noreturn_ void script_fatalerror(const char *fmt, ...)
{
va_list args;
va_start(args, fmt);