the fixes below cover specific warnings. but there's more i wasn't able to fix.
seems like this should be easy ... but iirc i've reported it before ... expr.c:210:17: warning: conflicting types for built-in function ‘exp2’ static intmax_t exp2 __P((void)); there's some weirdness with the nested ifdefs around the decl in externs.h: subst.c: In function ‘process_substitute’: subst.c:5774:5: warning: implicit declaration of function ‘fpurge’ [-Wimplicit-function-declaration] fpurge (stdout); i'm guessing you don't care about the volatile warnings: execute_cmd.c: In function ‘execute_function’: execute_cmd.c:4658:16: warning: assignment discards ‘volatile’ qualifier from pointer target type [-Wdiscarded-qualifiers] fa->source_a = bash_source_a; execute_cmd.c:4660:16: warning: assignment discards ‘volatile’ qualifier from pointer target type [-Wdiscarded-qualifiers] fa->lineno_a = bash_lineno_a; evalstring.c: In function ‘parse_and_execute’: evalstring.c:239:16: warning: passing argument 1 of ‘sigemptyset’ discards ‘volatile’ qualifier from pointer target type [-Wdiscarded-qualifiers] sigemptyset (&pe_sigmask); and here's the ones i did fix. ===================================================================== execute_cmd.c: In function ‘coproc_pidchk’: execute_cmd.c:2119:1: warning: type of ‘status’ defaults to ‘int’ [-Wimplicit-int] coproc_pidchk (pid, status) --- a/execute_cmd.c +++ b/execute_cmd.c @@ -2118,6 +2118,7 @@ coproc_fdrestore (cp) void coproc_pidchk (pid, status) pid_t pid; + int status; { struct coproc *cp; ===================================================================== /usr/homes/chet/src/bash/src/parse.y: In function ‘shell_getc’: /usr/homes/chet/src/bash/src/parse.y:2315:24: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘long unsigned int’ [-Wformat=] --- a/parse.y +++ b/parse.y @@ -2312,7 +2312,7 @@ shell_getc (remove_quoted_newline) if (n <= 2) /* we have to save 1 for the newline added below */ { if (truncating == 0) - internal_warning("shell_getc: shell_input_line_size (%zu) exceeds SIZE_MAX (%llu): line truncated", shell_input_line_size, (unsigned long)SIZE_MAX); + internal_warning("shell_getc: shell_input_line_size (%zu) exceeds SIZE_MAX (%u): line truncated", shell_input_line_size, SIZE_MAX); shell_input_line[i] = '\0'; truncating = 1; } ===================================================================== subst.c: In function ‘skip_double_quoted’: subst.c:975:1: warning: type of ‘flags’ defaults to ‘int’ [-Wimplicit-int] skip_double_quoted (string, slen, sind, flags) --- a/subst.c +++ b/subst.c @@ -976,6 +976,7 @@ skip_double_quoted (string, slen, sind, flags) char *string; size_t slen; int sind; + int flags; { int c, i; char *ret; ===================================================================== jobs.c: In function ‘get_original_tty_job_signals’: jobs.c:2130:4: warning: implicit declaration of function ‘set_original_signal’ [-Wimplicit-function-declaration] set_original_signal (SIGTSTP, SIG_DFL); --- a/trap.h +++ b/trap.h @@ -22,6 +22,7 @@ #define _TRAP_H_ #include "stdc.h" +#include "sig.h" #if !defined (SIG_DFL) #include "bashtypes.h" @@ -95,6 +96,7 @@ extern void restore_original_signals __P((void)); extern void get_original_signal __P((int)); extern void get_all_original_signals __P((void)); +extern void set_original_signal __P((int, SigHandler *)); extern char *signal_name __P((int)); -mike
signature.asc
Description: Digital signature