Include string.h to fix: interpret.c:401:7: error: implicitly declaring library function 'strcmp' with type 'int (const char *, const char *)' [-Werror,-Wimplicit-function-declaration] Add braces for if statements to fix: interpret.c:132:2: warning: add explicit braces to avoid dangling else [-Wdangling-else] interpret.c:139:2: warning: add explicit braces to avoid dangling else [-Wdangling-else] interpret.c:146:2: warning: add explicit braces to avoid dangling else [-Wdangling-else] --- interpret.c.orig 2015-11-21 17:42:11.000000000 -0600 +++ interpret.c 2023-01-12 19:12:58.000000000 -0600 @@ -21,6 +21,7 @@ /*LINTLIBRARY*/ #include #include +#include #include "cupl.h" #include "tokens.h" @@ -126,24 +127,30 @@ /* count label definitions */ if (tp->type == LABEL) + { if (tp->cdr->type == BLOCK) tp->car->syminf->blabeldef++; else if (tp->cdr->type != END) tp->car->syminf->slabeldef++; + } /* count block label references */ if (BLABELREF(tp->type)) + { if (tp->car && tp->car->type == IDENTIFIER) tp->car->syminf->blabelref++; else if (tp->cdr && tp->cdr->type == IDENTIFIER) tp->cdr->syminf->blabelref++; + } /* count statement label references */ if (SLABELREF(tp->type)) + { if (tp->car && tp->car->type == IDENTIFIER) tp->car->syminf->slabelref++; else if (tp->cdr && tp->cdr->type == IDENTIFIER) tp->cdr->syminf->slabelref++; + } /* count identifier assignments */ if (VARSET(tp->type))