git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 1/4] __attribute__: trace2_region_enter_printf() is like "printf"

From
Junio C Hamano <gitster@pobox.com>
Date
Jun 8, 2024, 18:37 UTC
Message-ID
<20240608183747.2084294-2-gitster@pobox.com>
In-Reply-To
<20240608183747.2084294-1-gitster@pobox.com>

The last part of the parameter list the function takes is like parameters to printf. mark it as such.

An existing call that formats a value of type size_t using "%d" was found by the compiler with the help with this annotation; fix it.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
---
 run-command.c | 3 ++-
 trace2.h      | 1 +
 2 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/run-command.c b/run-command.c
index 1b821042b4..ec2c12e98b 100644
--- a/run-command.c
+++ b/run-command.c
@@ -1753,7 +1753,8 @@ void run_processes_parallel(const struct run_process_parallel_opts *opts)
 
 	if (do_trace2)
 		trace2_region_enter_printf(tr2_category, tr2_label, NULL,
-					   "max:%d", opts->processes);
+					   "max:%"PRIuMAX,
+					   (uintmax_t)opts->processes);
 
 	pp_init(&pp, opts, &pp_sig);
 	while (1) {
diff --git a/trace2.h b/trace2.h
index 1f0669bbd2..19e04bf040 100644
--- a/trace2.h
+++ b/trace2.h
@@ -390,6 +390,7 @@ void trace2_region_enter_printf_va_fl(const char *file, int line,
 	trace2_region_enter_printf_va_fl(__FILE__, __LINE__, (category), \
 					 (label), (repo), (fmt), (ap))
 
+__attribute__((format (printf, 6, 7)))
 void trace2_region_enter_printf_fl(const char *file, int line,
 				   const char *category, const char *label,
 				   const struct repository *repo,
-- 
2.45.2-445-g1b76f06508
Previous: Junio C HamanoNext: Patrick Steinhardt
Message 2 of 9 in “varargs functions with __attributes__(())”
  1. 0/4 varargs functions with __attributes__(())Junio C Hamano, Jun 8, 2024
  2. 1/4 __attribute__: trace2_region_enter_printf() is like "printf"Junio C Hamano, Jun 8, 2024
  3. Patrick SteinhardtJun 10, 2024
  4. Junio C HamanoJun 10, 2024
  5. 2/4 __attribute__: remove redundant attribute declaration for git_die_config()Junio C Hamano, Jun 8, 2024
  6. 3/4 __attribute__: mark some functions with LAST_ARG_MUST_BE_NULLJunio C Hamano, Jun 8, 2024
  7. 4/4 __attribute__: add a few missing format attributesJunio C Hamano, Jun 8, 2024
  8. Jeff KingJun 11, 2024
  9. Junio C HamanoJun 11, 2024

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.