__attribute__: mark some functions with LAST_ARG_MUST_BE_NULL

Some varargs functions that use NULL-terminated parameter list were
missing __attributes__ ((sentinel)) aka LAST_ARG_MUST_BE_NULL.

Add them.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Junio C Hamano 2024-06-08 11:37:46 -07:00
parent f52c9a2a28
commit ba744647ea
4 changed files with 5 additions and 0 deletions

View file

@ -300,6 +300,7 @@ static void err(struct add_p_state *s, const char *fmt, ...)
va_end(args); va_end(args);
} }
LAST_ARG_MUST_BE_NULL
static void setup_child_process(struct add_p_state *s, static void setup_child_process(struct add_p_state *s,
struct child_process *cp, ...) struct child_process *cp, ...)
{ {

2
attr.h
View file

@ -190,6 +190,8 @@ struct attr_check {
}; };
struct attr_check *attr_check_alloc(void); struct attr_check *attr_check_alloc(void);
LAST_ARG_MUST_BE_NULL
struct attr_check *attr_check_initl(const char *, ...); struct attr_check *attr_check_initl(const char *, ...);
struct attr_check *attr_check_dup(const struct attr_check *check); struct attr_check *attr_check_dup(const struct attr_check *check);

1
hook.h
View file

@ -86,5 +86,6 @@ int run_hooks(const char *hook_name);
* argument. These things will be used as positional arguments to the * argument. These things will be used as positional arguments to the
* hook. This function behaves like the old run_hook_le() API. * hook. This function behaves like the old run_hook_le() API.
*/ */
LAST_ARG_MUST_BE_NULL
int run_hooks_l(const char *hook_name, ...); int run_hooks_l(const char *hook_name, ...);
#endif #endif

View file

@ -70,6 +70,7 @@ static void setup_enlistment_directory(int argc, const char **argv,
strbuf_release(&path); strbuf_release(&path);
} }
LAST_ARG_MUST_BE_NULL
static int run_git(const char *arg, ...) static int run_git(const char *arg, ...)
{ {
struct child_process cmd = CHILD_PROCESS_INIT; struct child_process cmd = CHILD_PROCESS_INIT;