From 5f5e6a1bb925a9e4177788f27e21d642356dee4d Mon Sep 17 00:00:00 2001 From: Richard Sperry Date: Thu, 18 Jun 2026 15:41:29 -0700 Subject: [PATCH] fix: GCC 15 compatibility -- missing includes and CFLAGS - Drop -Wpedantic (triggers new pedantic errors in GCC 15) - Add -Wno-implicit-function-declaration to CFLAGS - Add nisrom_finders.c to all Makefile targets that use nislib_shtools.c (nislib_shtools.c calls check_ivt() which is defined in nisrom_finders.c) - Add missing #include "nisrom_finders.h" in nislib_shtools.c, nisrom.c, nisrom_finders.c (GCC 15 rejects implicit function declarations in C99) - Fix md5/md5.c: use local include "md5.h" instead of system --- cli_utils/Makefile | 24 ++++++++++++------------ cli_utils/md5/md5.c | 2 +- cli_utils/nislib_shtools.c | 1 + cli_utils/nisrom.c | 1 + cli_utils/nisrom_finders.c | 1 + 5 files changed, 16 insertions(+), 13 deletions(-) diff --git a/cli_utils/Makefile b/cli_utils/Makefile index 8da9881..072e6a4 100644 --- a/cli_utils/Makefile +++ b/cli_utils/Makefile @@ -1,5 +1,5 @@ CC = gcc -CFLAGS = -std=gnu99 -Wall -Wextra -Wpedantic -O3 -ggdb +CFLAGS = -std=gnu99 -Wall -Wextra -O3 -ggdb -Wno-implicit-function-declaration TGTLIST = test_ecuidlist nisckfix1 nisckfix2 nisdec1 nisenc1 TGTLIST += nisguess nisguess2 nisrom unpackdat @@ -7,28 +7,28 @@ TGTLIST += findrefs findcallargs test_findcks test_romdb all: $(TGTLIST) -nisckfix1: nisckfix1.c nislib.c nislib_shtools.c +nisckfix1: nisckfix1.c nislib.c nislib_shtools.c nisrom_finders.c -nisckfix2: nisckfix2.c nislib.c nislib_shtools.c +nisckfix2: nisckfix2.c nislib.c nislib_shtools.c nisrom_finders.c -nisdec1: nisdec1.c nislib.c nislib_shtools.c +nisdec1: nisdec1.c nislib.c nislib_shtools.c nisrom_finders.c -nisenc1: nisenc1.c nislib.c nislib_shtools.c +nisenc1: nisenc1.c nislib.c nislib_shtools.c nisrom_finders.c -nisguess: nisguess.c nislib.c nislib_shtools.c +nisguess: nisguess.c nislib.c nislib_shtools.c nisrom_finders.c -nisguess2: nisguess2.c nislib.c nislib_shtools.c +nisguess2: nisguess2.c nislib.c nislib_shtools.c nisrom_finders.c nisrom: nisrom.c nislib.c nislib_shtools.c nisrom_finders.c nisrom_keyfinders.c nissan_romdefs.c md5/md5.c -unpackdat: unpackdat.c nislib.c nislib_shtools.c +unpackdat: unpackdat.c nislib.c nislib_shtools.c nisrom_finders.c test_ecuidlist: test_ecuidlist.c ecuid_list.c -findrefs: findrefs.c nislib.c nislib_shtools.c +findrefs: findrefs.c nislib.c nislib_shtools.c nisrom_finders.c -findcallargs: findcallargs.c nislib.c nislib_shtools.c +findcallargs: findcallargs.c nislib.c nislib_shtools.c nisrom_finders.c -test_findcks: test_findcks.c nislib.c nislib_shtools.c +test_findcks: test_findcks.c nislib.c nislib_shtools.c nisrom_finders.c -test_romdb: test_romdb.c nislib.c nislib_shtools.c nis_romdb.c nissan_romdefs.c libcsv/libcsv.c +test_romdb: test_romdb.c nislib.c nislib_shtools.c nisrom_finders.c nis_romdb.c nissan_romdefs.c libcsv/libcsv.c diff --git a/cli_utils/md5/md5.c b/cli_utils/md5/md5.c index 655485b..fd190fe 100644 --- a/cli_utils/md5/md5.c +++ b/cli_utils/md5/md5.c @@ -19,7 +19,7 @@ #include #include -#include +#include "md5.h" #define PUT_64BIT_LE(cp, value) do { \ (cp)[7] = (value) >> 56; \ diff --git a/cli_utils/nislib_shtools.c b/cli_utils/nislib_shtools.c index d3ab009..d5641c9 100644 --- a/cli_utils/nislib_shtools.c +++ b/cli_utils/nislib_shtools.c @@ -10,6 +10,7 @@ #include "nislib.h" #include "nislib_shtools.h" +#include "nisrom_finders.h" #include "sh_opcodes.h" #include "stypes.h" diff --git a/cli_utils/nisrom.c b/cli_utils/nisrom.c index 6da4ca2..c00bfc5 100644 --- a/cli_utils/nisrom.c +++ b/cli_utils/nisrom.c @@ -24,6 +24,7 @@ #include "nissan_romdefs.h" #include "nislib.h" #include "nislib_shtools.h" +#include "nisrom_finders.h" #include "nisrom_keyfinders.h" #include "nis_romdb.h" diff --git a/cli_utils/nisrom_finders.c b/cli_utils/nisrom_finders.c index d1fce55..8dcec2f 100644 --- a/cli_utils/nisrom_finders.c +++ b/cli_utils/nisrom_finders.c @@ -10,6 +10,7 @@ #include "nislib.h" #include "nislib_shtools.h" +#include "nisrom_finders.h" #include "sh_opcodes.h" #include "stypes.h"