From 5ac11b5e882d09e9e1dba34b76f536520a1c34fc Mon Sep 17 00:00:00 2001 From: Greg King Date: Fri, 4 Jan 2019 03:35:49 -0500 Subject: [PATCH] Added an error message, in case there's a typo in the definitions of long command-line options. --- src/cc65/main.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/cc65/main.c b/src/cc65/main.c index 7783587aa..a98603dd8 100644 --- a/src/cc65/main.c +++ b/src/cc65/main.c @@ -256,7 +256,7 @@ static void SetSys (const char* Sys) case TGT_TELESTRAT: DefineNumericMacro ("__TELESTRAT__", 1); break; - + case TGT_NES: DefineNumericMacro ("__NES__", 1); break; @@ -302,6 +302,10 @@ static void FileNameOption (const char* Opt, const char* Arg, StrBuf* Name) if (SB_NotEmpty (Name)) { AbEnd ("Cannot use option `%s' twice", Opt); } + /* A typo in OptTab[] might allow a NULL Arg */ + if (Arg == 0) { + Internal ("Typo in OptTab[]; option '%s' should require an argument", Opt); + } /* Remember the file name for later */ SB_CopyStr (Name, Arg); SB_Terminate (Name); @@ -558,7 +562,7 @@ static void OptDebugOpt (const char* Opt attribute ((unused)), const char* Arg) -static void OptDebugOptOutput (const char* Opt attribute ((unused)), +static void OptDebugOptOutput (const char* Opt attribute ((unused)), const char* Arg attribute ((unused))) /* Output optimization steps */ { -- 2.39.5