From 8a594d098c72e576fc35ba26198ed7f5e6ffb75e Mon Sep 17 00:00:00 2001 From: leo60228 Date: Wed, 29 May 2024 19:20:07 -0400 Subject: [PATCH 1/2] Don't assume bash is at /bin/bash --- libc/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libc/Makefile b/libc/Makefile index d9de489f..25e47c03 100644 --- a/libc/Makefile +++ b/libc/Makefile @@ -15,7 +15,7 @@ export AR := $(PREFIX)ar export AS := $(PREFIX)as endif -SHELL := /bin/bash -o pipefail +SHELL := bash -o pipefail ASFLAGS := -mcpu=arm7tdmi From c9f7b9ae1ba50f161aa06af55565a34c1811931f Mon Sep 17 00:00:00 2001 From: leo60228 Date: Wed, 29 May 2024 19:31:08 -0400 Subject: [PATCH 2/2] Fix format-security warnings --- gcc/c-typeck.c | 2 +- gcc/real.c | 5 +---- gcc/toplev.c | 2 +- gcc_arm/c-common.c | 6 +++--- gcc_arm/c-typeck.c | 2 +- gcc_arm/cccp.c | 2 +- gcc_arm/real.c | 5 +---- gcc_arm/toplev.c | 2 +- 8 files changed, 10 insertions(+), 16 deletions(-) diff --git a/gcc/c-typeck.c b/gcc/c-typeck.c index 807dfcfa..b0bfd9c4 100755 --- a/gcc/c-typeck.c +++ b/gcc/c-typeck.c @@ -3133,7 +3133,7 @@ build_unary_op (code, xarg, noconvert) return fold (build1 (code, argtype, arg)); } - error (errstring); + error ("%s", errstring); return error_mark_node; } diff --git a/gcc/real.c b/gcc/real.c index 456edda0..7943b634 100755 --- a/gcc/real.c +++ b/gcc/real.c @@ -4042,8 +4042,6 @@ mtherr (name, code) char *name; int code; { - char errstr[80]; - /* The string passed by the calling program is supposed to be the name of the function in which the error occurred. The code argument selects which error message string will be printed. */ @@ -4066,9 +4064,8 @@ mtherr (name, code) name = "modulus"; else if (strcmp (name, "esqrt") == 0) name = "square root"; - sprintf (errstr, "%s during real %s", ermsg[code], name); if (extra_warnings) - warning (errstr); + warning ("%s during real %s", ermsg[code], name); /* Set global error message word */ merror = code + 1; } diff --git a/gcc/toplev.c b/gcc/toplev.c index f707c28b..ac8e21b7 100755 --- a/gcc/toplev.c +++ b/gcc/toplev.c @@ -1061,7 +1061,7 @@ fatal_io_error(char *name) void fatal_insn(char *message, rtx insn) { - error(message); + error("%s", message); debug_rtx(insn); if (asm_out_file) fflush(asm_out_file); diff --git a/gcc_arm/c-common.c b/gcc_arm/c-common.c index 936b6096..861b194b 100755 --- a/gcc_arm/c-common.c +++ b/gcc_arm/c-common.c @@ -1587,7 +1587,7 @@ check_format_info (info, params) ++format_chars; if (params == 0) { - warning (tfaff); + warning ("%s", tfaff); return; } if (info->first_arg_num != 0) @@ -1630,7 +1630,7 @@ check_format_info (info, params) ++format_chars; if (params == 0) { - warning (tfaff); + warning ("%s", tfaff); return; } cur_param = TREE_VALUE (params); @@ -1825,7 +1825,7 @@ check_format_info (info, params) continue; if (params == 0) { - warning (tfaff); + warning ("%s", tfaff); return; } cur_param = TREE_VALUE (params); diff --git a/gcc_arm/c-typeck.c b/gcc_arm/c-typeck.c index ab3ede71..583793a3 100755 --- a/gcc_arm/c-typeck.c +++ b/gcc_arm/c-typeck.c @@ -3147,7 +3147,7 @@ build_unary_op (code, xarg, noconvert) return fold (build1 (code, argtype, arg)); } - error (errstring); + error ("%s", errstring); return error_mark_node; } diff --git a/gcc_arm/cccp.c b/gcc_arm/cccp.c index 76ae6137..d95a67c0 100755 --- a/gcc_arm/cccp.c +++ b/gcc_arm/cccp.c @@ -8676,7 +8676,7 @@ macroexpand (hp, op) else parse_error = macarg (NULL_PTR, 0); if (parse_error) { - error_with_line (line_for_error (start_line), parse_error); + error_with_line (line_for_error (start_line), "%s", parse_error); break; } i++; diff --git a/gcc_arm/real.c b/gcc_arm/real.c index 7c67f4eb..1a187efb 100755 --- a/gcc_arm/real.c +++ b/gcc_arm/real.c @@ -5703,8 +5703,6 @@ mtherr (name, code) char *name; int code; { - char errstr[80]; - /* The string passed by the calling program is supposed to be the name of the function in which the error occurred. The code argument selects which error message string will be printed. */ @@ -5727,9 +5725,8 @@ mtherr (name, code) name = "modulus"; else if (strcmp (name, "esqrt") == 0) name = "square root"; - sprintf (errstr, "%s during real %s", ermsg[code], name); if (extra_warnings) - warning (errstr); + warning ("%s during real %s", ermsg[code], name); /* Set global error message word */ merror = code + 1; } diff --git a/gcc_arm/toplev.c b/gcc_arm/toplev.c index 29833dad..c16480e4 100755 --- a/gcc_arm/toplev.c +++ b/gcc_arm/toplev.c @@ -1393,7 +1393,7 @@ fatal_insn (message, insn) char *message; rtx insn; { - error (message); + error ("%s", message); debug_rtx (insn); if (asm_out_file) fflush (asm_out_file);