Build failure with 1.9.13 with GCC 13.0.1_pre20230212 (../../include/sudo_fatal.h:174:31: error: expected identifier or '(' before 'void'
) · Issue #239 · sudo-project/sudo (original) (raw)
This is with and without defec5d applied, fwiw.
Clang 16.0.0_rc2 and GCC 12.2.1_p20230211 are fine, but GCC 13.0.1_pre20230212 isn't. Looking into it more now.
Build errors excerpt:
In file included from ./gidlist.c:31:
../../include/sudo_fatal.h:174:1: warning: 'noreturn' attribute ignored [-Wattributes]
174 | sudo_dso_public sudo_noreturn void sudo_fatal_nodebug_v1(const char *fmt, ...) sudo_printf0like(1, 2);
| ^~~~~~~~~~~~~~~
../../include/sudo_fatal.h:174:31: error: expected identifier or '(' before 'void'
174 | sudo_dso_public sudo_noreturn void sudo_fatal_nodebug_v1(const char *fmt, ...) sudo_printf0like(1, 2);
| ^~~~
../../include/sudo_fatal.h:175:1: warning: 'noreturn' attribute ignored [-Wattributes]
175 | sudo_dso_public sudo_noreturn void sudo_fatalx_nodebug_v1(const char *fmt, ...) sudo_printflike(1, 2);
| ^~~~~~~~~~~~~~~
../../include/sudo_fatal.h:175:31: error: expected identifier or '(' before 'void'
175 | sudo_dso_public sudo_noreturn void sudo_fatalx_nodebug_v1(const char *fmt, ...) sudo_printflike(1, 2);
| ^~~~
../../include/sudo_fatal.h:176:1: warning: 'noreturn' attribute ignored [-Wattributes]
176 | sudo_dso_public sudo_noreturn void sudo_gai_fatal_nodebug_v1(int errnum, const char *fmt, ...) sudo_printflike(2, 3);
| ^~~~~~~~~~~~~~~
../../include/sudo_fatal.h:176:31: error: expected identifier or '(' before 'void'
176 | sudo_dso_public sudo_noreturn void sudo_gai_fatal_nodebug_v1(int errnum, const char *fmt, ...) sudo_printflike(2, 3);
| ^~~~
../../include/sudo_fatal.h:177:1: warning: 'noreturn' attribute ignored [-Wattributes]
177 | sudo_dso_public sudo_noreturn void sudo_vfatal_nodebug_v1(const char *fmt, va_list ap) sudo_printf0like(1, 0);
| ^~~~~~~~~~~~~~~
../../include/sudo_fatal.h:177:31: error: expected identifier or '(' before 'void'
177 | sudo_dso_public sudo_noreturn void sudo_vfatal_nodebug_v1(const char *fmt, va_list ap) sudo_printf0like(1, 0);
| ^~~~
../../include/sudo_fatal.h:178:1: warning: 'noreturn' attribute ignored [-Wattributes]
178 | sudo_dso_public sudo_noreturn void sudo_vfatalx_nodebug_v1(const char *fmt, va_list ap) sudo_printflike(1, 0);
| ^~~~~~~~~~~~~~~
../../include/sudo_fatal.h:178:31: error: expected identifier or '(' before 'void'
178 | sudo_dso_public sudo_noreturn void sudo_vfatalx_nodebug_v1(const char *fmt, va_list ap) sudo_printflike(1, 0);
| ^~~~
../../include/sudo_fatal.h:179:1: warning: 'noreturn' attribute ignored [-Wattributes]
179 | sudo_dso_public sudo_noreturn void sudo_gai_vfatal_nodebug_v1(int errnum, const char *fmt, va_list ap) sudo_printflike(2, 0);
| ^~~~~~~~~~~~~~~
../../include/sudo_fatal.h:179:31: error: expected identifier or '(' before 'void'
179 | sudo_dso_public sudo_noreturn void sudo_gai_vfatal_nodebug_v1(int errnum, const char *fmt, va_list ap) sudo_printflike(2, 0);
| ^~~~
make[1]: *** [Makefile:918: gidlist.lo] Error 1
make[1]: *** Waiting for unfinished jobs....
In file included from ./mkdir_parents.c:42:
../../include/sudo_fatal.h:174:1: warning: 'noreturn' attribute ignored [-Wattributes]
174 | sudo_dso_public sudo_noreturn void sudo_fatal_nodebug_v1(const char *fmt, ...) sudo_printf0like(1, 2);
| ^~~~~~~~~~~~~~~
../../include/sudo_fatal.h:174:31: error: expected identifier or '(' before 'void'
174 | sudo_dso_public sudo_noreturn void sudo_fatal_nodebug_v1(const char *fmt, ...) sudo_printf0like(1, 2);
| ^~~~
../../include/sudo_fatal.h:175:1: warning: 'noreturn' attribute ignored [-Wattributes]
175 | sudo_dso_public sudo_noreturn void sudo_fatalx_nodebug_v1(const char *fmt, ...) sudo_printflike(1, 2);
| ^~~~~~~~~~~~~~~
../../include/sudo_fatal.h:175:31: error: expected identifier or '(' before 'void'
175 | sudo_dso_public sudo_noreturn void sudo_fatalx_nodebug_v1(const char *fmt, ...) sudo_printflike(1, 2);
| ^~~~
../../include/sudo_fatal.h:176:1: warning: 'noreturn' attribute ignored [-Wattributes]
176 | sudo_dso_public sudo_noreturn void sudo_gai_fatal_nodebug_v1(int errnum, const char *fmt, ...) sudo_printflike(2, 3);
| ^~~~~~~~~~~~~~~
../../include/sudo_fatal.h:176:31: error: expected identifier or '(' before 'void'
176 | sudo_dso_public sudo_noreturn void sudo_gai_fatal_nodebug_v1(int errnum, const char *fmt, ...) sudo_printflike(2, 3);
| ^~~~
../../include/sudo_fatal.h:177:1: warning: 'noreturn' attribute ignored [-Wattributes]
177 | sudo_dso_public sudo_noreturn void sudo_vfatal_nodebug_v1(const char *fmt, va_list ap) sudo_printf0like(1, 0);
| ^~~~~~~~~~~~~~~
../../include/sudo_fatal.h:177:31: error: expected identifier or '(' before 'void'
177 | sudo_dso_public sudo_noreturn void sudo_vfatal_nodebug_v1(const char *fmt, va_list ap) sudo_printf0like(1, 0);
| ^~~~
../../include/sudo_fatal.h:178:1: warning: 'noreturn' attribute ignored [-Wattributes]
178 | sudo_dso_public sudo_noreturn void sudo_vfatalx_nodebug_v1(const char *fmt, va_list ap) sudo_printflike(1, 0);
| ^~~~~~~~~~~~~~~
../../include/sudo_fatal.h:178:31: error: expected identifier or '(' before 'void'
178 | sudo_dso_public sudo_noreturn void sudo_vfatalx_nodebug_v1(const char *fmt, va_list ap) sudo_printflike(1, 0);
| ^~~~
../../include/sudo_fatal.h:179:1: warning: 'noreturn' attribute ignored [-Wattributes]
179 | sudo_dso_public sudo_noreturn void sudo_gai_vfatal_nodebug_v1(int errnum, const char *fmt, va_list ap) sudo_printflike(2, 0);
| ^~~~~~~~~~~~~~~
../../include/sudo_fatal.h:179:31: error: expected identifier or '(' before 'void'
179 | sudo_dso_public sudo_noreturn void sudo_gai_vfatal_nodebug_v1(int errnum, const char *fmt, va_list ap) sudo_printflike(2, 0);
| ^~~~
make[1]: *** [Makefile:1104: mkdir_parents.lo] Error 1
In file included from ./fatal.c:43:
../../include/sudo_fatal.h:174:1: warning: 'noreturn' attribute ignored [-Wattributes]
174 | sudo_dso_public sudo_noreturn void sudo_fatal_nodebug_v1(const char *fmt, ...) sudo_printf0like(1, 2);
| ^~~~~~~~~~~~~~~
../../include/sudo_fatal.h:174:31: error: expected identifier or '(' before 'void'
174 | sudo_dso_public sudo_noreturn void sudo_fatal_nodebug_v1(const char *fmt, ...) sudo_printf0like(1, 2);
| ^~~~
../../include/sudo_fatal.h:175:1: warning: 'noreturn' attribute ignored [-Wattributes]
175 | sudo_dso_public sudo_noreturn void sudo_fatalx_nodebug_v1(const char *fmt, ...) sudo_printflike(1, 2);
| ^~~~~~~~~~~~~~~
../../include/sudo_fatal.h:175:31: error: expected identifier or '(' before 'void'
175 | sudo_dso_public sudo_noreturn void sudo_fatalx_nodebug_v1(const char *fmt, ...) sudo_printflike(1, 2);
| ^~~~
../../include/sudo_fatal.h:176:1: warning: 'noreturn' attribute ignored [-Wattributes]
176 | sudo_dso_public sudo_noreturn void sudo_gai_fatal_nodebug_v1(int errnum, const char *fmt, ...) sudo_printflike(2, 3);
| ^~~~~~~~~~~~~~~
../../include/sudo_fatal.h:176:31: error: expected identifier or '(' before 'void'
176 | sudo_dso_public sudo_noreturn void sudo_gai_fatal_nodebug_v1(int errnum, const char *fmt, ...) sudo_printflike(2, 3);
| ^~~~
../../include/sudo_fatal.h:177:1: warning: 'noreturn' attribute ignored [-Wattributes]
177 | sudo_dso_public sudo_noreturn void sudo_vfatal_nodebug_v1(const char *fmt, va_list ap) sudo_printf0like(1, 0);
| ^~~~~~~~~~~~~~~
../../include/sudo_fatal.h:177:31: error: expected identifier or '(' before 'void'
177 | sudo_dso_public sudo_noreturn void sudo_vfatal_nodebug_v1(const char *fmt, va_list ap) sudo_printf0like(1, 0);
| ^~~~
../../include/sudo_fatal.h:178:1: warning: 'noreturn' attribute ignored [-Wattributes]
178 | sudo_dso_public sudo_noreturn void sudo_vfatalx_nodebug_v1(const char *fmt, va_list ap) sudo_printflike(1, 0);
| ^~~~~~~~~~~~~~~
../../include/sudo_fatal.h:178:31: error: expected identifier or '(' before 'void'
178 | sudo_dso_public sudo_noreturn void sudo_vfatalx_nodebug_v1(const char *fmt, va_list ap) sudo_printflike(1, 0);
| ^~~~
../../include/sudo_fatal.h:179:1: warning: 'noreturn' attribute ignored [-Wattributes]
179 | sudo_dso_public sudo_noreturn void sudo_gai_vfatal_nodebug_v1(int errnum, const char *fmt, va_list ap) sudo_printflike(2, 0);
| ^~~~~~~~~~~~~~~
../../include/sudo_fatal.h:179:31: error: expected identifier or '(' before 'void'
179 | sudo_dso_public sudo_noreturn void sudo_gai_vfatal_nodebug_v1(int errnum, const char *fmt, va_list ap) sudo_printflike(2, 0);
| ^~~~
In file included from ./json.c:38:
../../include/sudo_fatal.h:174:1: warning: 'noreturn' attribute ignored [-Wattributes]
174 | sudo_dso_public sudo_noreturn void sudo_fatal_nodebug_v1(const char *fmt, ...) sudo_printf0like(1, 2);
| ^~~~~~~~~~~~~~~
../../include/sudo_fatal.h:174:31: error: expected identifier or '(' before 'void'
174 | sudo_dso_public sudo_noreturn void sudo_fatal_nodebug_v1(const char *fmt, ...) sudo_printf0like(1, 2);
| ^~~~
../../include/sudo_fatal.h:175:1: warning: 'noreturn' attribute ignored [-Wattributes]
175 | sudo_dso_public sudo_noreturn void sudo_fatalx_nodebug_v1(const char *fmt, ...) sudo_printflike(1, 2);
| ^~~~~~~~~~~~~~~
../../include/sudo_fatal.h:175:31: error: expected identifier or '(' before 'void'
175 | sudo_dso_public sudo_noreturn void sudo_fatalx_nodebug_v1(const char *fmt, ...) sudo_printflike(1, 2);
| ^~~~
../../include/sudo_fatal.h:176:1: warning: 'noreturn' attribute ignored [-Wattributes]
176 | sudo_dso_public sudo_noreturn void sudo_gai_fatal_nodebug_v1(int errnum, const char *fmt, ...) sudo_printflike(2, 3);
| ^~~~~~~~~~~~~~~
../../include/sudo_fatal.h:176:31: error: expected identifier or '(' before 'void'
176 | sudo_dso_public sudo_noreturn void sudo_gai_fatal_nodebug_v1(int errnum, const char *fmt, ...) sudo_printflike(2, 3);
| ^~~~
../../include/sudo_fatal.h:177:1: warning: 'noreturn' attribute ignored [-Wattributes]
177 | sudo_dso_public sudo_noreturn void sudo_vfatal_nodebug_v1(const char *fmt, va_list ap) sudo_printf0like(1, 0);
| ^~~~~~~~~~~~~~~
../../include/sudo_fatal.h:177:31: error: expected identifier or '(' before 'void'
177 | sudo_dso_public sudo_noreturn void sudo_vfatal_nodebug_v1(const char *fmt, va_list ap) sudo_printf0like(1, 0);
| ^~~~
../../include/sudo_fatal.h:178:1: warning: 'noreturn' attribute ignored [-Wattributes]
178 | sudo_dso_public sudo_noreturn void sudo_vfatalx_nodebug_v1(const char *fmt, va_list ap) sudo_printflike(1, 0);
| ^~~~~~~~~~~~~~~
../../include/sudo_fatal.h:178:31: error: expected identifier or '(' before 'void'
178 | sudo_dso_public sudo_noreturn void sudo_vfatalx_nodebug_v1(const char *fmt, va_list ap) sudo_printflike(1, 0);
| ^~~~
../../include/sudo_fatal.h:179:1: warning: 'noreturn' attribute ignored [-Wattributes]
179 | sudo_dso_public sudo_noreturn void sudo_gai_vfatal_nodebug_v1(int errnum, const char *fmt, va_list ap) sudo_printflike(2, 0);
| ^~~~~~~~~~~~~~~
../../include/sudo_fatal.h:179:31: error: expected identifier or '(' before 'void'
179 | sudo_dso_public sudo_noreturn void sudo_gai_vfatal_nodebug_v1(int errnum, const char *fmt, va_list ap) sudo_printflike(2, 0);
| ^~~~
./json.c: In function 'json_expand_buf':
../../include/sudo_fatal.h:97:5: warning: implicit declaration of function 'sudo_fatalx_nodebug_v1'; did you mean 'sudo_fatalx_nodebug'? [-Wimplicit-function-declaration]
97 | sudo_fatalx_nodebug_v1(__VA_ARGS__); \
| ^~~~~~~~~~~~~~~~~~~~~~
./json.c:55:13: note: in expansion of macro 'sudo_fatalx'
55 | sudo_fatalx(U_("%s: %s"),
| ^~~~~~~~~~~
make[1]: *** [Makefile:712: fatal.lo] Error 1
make[1]: *** [Makefile:1008: json.lo] Error 1
In file included from ./event.c:42:
../../include/sudo_fatal.h:174:1: warning: 'noreturn' attribute ignored [-Wattributes]
174 | sudo_dso_public sudo_noreturn void sudo_fatal_nodebug_v1(const char *fmt, ...) sudo_printf0like(1, 2);
| ^~~~~~~~~~~~~~~
../../include/sudo_fatal.h:174:31: error: expected identifier or '(' before 'void'
174 | sudo_dso_public sudo_noreturn void sudo_fatal_nodebug_v1(const char *fmt, ...) sudo_printf0like(1, 2);
| ^~~~
../../include/sudo_fatal.h:175:1: warning: 'noreturn' attribute ignored [-Wattributes]
175 | sudo_dso_public sudo_noreturn void sudo_fatalx_nodebug_v1(const char *fmt, ...) sudo_printflike(1, 2);
| ^~~~~~~~~~~~~~~
../../include/sudo_fatal.h:175:31: error: expected identifier or '(' before 'void'
175 | sudo_dso_public sudo_noreturn void sudo_fatalx_nodebug_v1(const char *fmt, ...) sudo_printflike(1, 2);
| ^~~~
../../include/sudo_fatal.h:176:1: warning: 'noreturn' attribute ignored [-Wattributes]
176 | sudo_dso_public sudo_noreturn void sudo_gai_fatal_nodebug_v1(int errnum, const char *fmt, ...) sudo_printflike(2, 3);
| ^~~~~~~~~~~~~~~
../../include/sudo_fatal.h:176:31: error: expected identifier or '(' before 'void'
176 | sudo_dso_public sudo_noreturn void sudo_gai_fatal_nodebug_v1(int errnum, const char *fmt, ...) sudo_printflike(2, 3);
| ^~~~
../../include/sudo_fatal.h:177:1: warning: 'noreturn' attribute ignored [-Wattributes]
177 | sudo_dso_public sudo_noreturn void sudo_vfatal_nodebug_v1(const char *fmt, va_list ap) sudo_printf0like(1, 0);
| ^~~~~~~~~~~~~~~
../../include/sudo_fatal.h:177:31: error: expected identifier or '(' before 'void'
177 | sudo_dso_public sudo_noreturn void sudo_vfatal_nodebug_v1(const char *fmt, va_list ap) sudo_printf0like(1, 0);
| ^~~~
../../include/sudo_fatal.h:178:1: warning: 'noreturn' attribute ignored [-Wattributes]
178 | sudo_dso_public sudo_noreturn void sudo_vfatalx_nodebug_v1(const char *fmt, va_list ap) sudo_printflike(1, 0);
| ^~~~~~~~~~~~~~~
../../include/sudo_fatal.h:178:31: error: expected identifier or '(' before 'void'
178 | sudo_dso_public sudo_noreturn void sudo_vfatalx_nodebug_v1(const char *fmt, va_list ap) sudo_printflike(1, 0);
| ^~~~
../../include/sudo_fatal.h:179:1: warning: 'noreturn' attribute ignored [-Wattributes]
179 | sudo_dso_public sudo_noreturn void sudo_gai_vfatal_nodebug_v1(int errnum, const char *fmt, va_list ap) sudo_printflike(2, 0);
| ^~~~~~~~~~~~~~~
../../include/sudo_fatal.h:179:31: error: expected identifier or '(' before 'void'
179 | sudo_dso_public sudo_noreturn void sudo_gai_vfatal_nodebug_v1(int errnum, const char *fmt, va_list ap) sudo_printflike(2, 0);
| ^~~~
make[1]: *** [Makefile:663: event.lo] Error 1
make[1]: Leaving directory '/var/tmp/portage/app-admin/sudo-1.9.13/work/sudo-1.9.13/lib/util'
make: *** [Makefile:108: all] Error 2
Full log: build.log