Skip to content

Commit bb4cd06

Browse files
committed
Merge branch 'jk/report-fn-typedef' into seen
* jk/report-fn-typedef: usage: define a type for a reporting function
2 parents ab53ea7 + bb5bec3 commit bb4cd06

File tree

2 files changed

+16
-14
lines changed

2 files changed

+16
-14
lines changed

git-compat-util.h

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -489,11 +489,13 @@ static inline int const_error(void)
489489
#define error_errno(...) (error_errno(__VA_ARGS__), const_error())
490490
#endif
491491

492-
void set_die_routine(NORETURN_PTR void (*routine)(const char *err, va_list params));
493-
void set_error_routine(void (*routine)(const char *err, va_list params));
494-
extern void (*get_error_routine(void))(const char *err, va_list params);
495-
void set_warn_routine(void (*routine)(const char *warn, va_list params));
496-
extern void (*get_warn_routine(void))(const char *warn, va_list params);
492+
typedef void (*report_fn)(const char *, va_list params);
493+
494+
void set_die_routine(NORETURN_PTR report_fn routine);
495+
void set_error_routine(report_fn routine);
496+
report_fn get_error_routine(void);
497+
void set_warn_routine(report_fn routine);
498+
report_fn get_warn_routine(void);
497499
void set_die_is_recursing_routine(int (*routine)(void));
498500

499501
int starts_with(const char *str, const char *prefix);

usage.c

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -108,33 +108,33 @@ static int die_is_recursing_builtin(void)
108108

109109
/* If we are in a dlopen()ed .so write to a global variable would segfault
110110
* (ugh), so keep things static. */
111-
static NORETURN_PTR void (*usage_routine)(const char *err, va_list params) = usage_builtin;
112-
static NORETURN_PTR void (*die_routine)(const char *err, va_list params) = die_builtin;
113-
static void (*error_routine)(const char *err, va_list params) = error_builtin;
114-
static void (*warn_routine)(const char *err, va_list params) = warn_builtin;
111+
static NORETURN_PTR report_fn usage_routine = usage_builtin;
112+
static NORETURN_PTR report_fn die_routine = die_builtin;
113+
static report_fn error_routine = error_builtin;
114+
static report_fn warn_routine = warn_builtin;
115115
static int (*die_is_recursing)(void) = die_is_recursing_builtin;
116116

117-
void set_die_routine(NORETURN_PTR void (*routine)(const char *err, va_list params))
117+
void set_die_routine(NORETURN_PTR report_fn routine)
118118
{
119119
die_routine = routine;
120120
}
121121

122-
void set_error_routine(void (*routine)(const char *err, va_list params))
122+
void set_error_routine(report_fn routine)
123123
{
124124
error_routine = routine;
125125
}
126126

127-
void (*get_error_routine(void))(const char *err, va_list params)
127+
report_fn get_error_routine(void)
128128
{
129129
return error_routine;
130130
}
131131

132-
void set_warn_routine(void (*routine)(const char *warn, va_list params))
132+
void set_warn_routine(report_fn routine)
133133
{
134134
warn_routine = routine;
135135
}
136136

137-
void (*get_warn_routine(void))(const char *warn, va_list params)
137+
report_fn get_warn_routine(void)
138138
{
139139
return warn_routine;
140140
}

0 commit comments

Comments
 (0)