Am 31.01.22 um 23:41 schrieb Junio C Hamano:
"Jean-Noël Avila via GitGitGadget" [off-list ref] writes:
quoted
+inline void die_for_incompatible_opt3(int opt1, const char *opt1_name,
+ int opt2, const char *opt2_name,
+ int opt3, const char *opt3_name)
+{
+ die_for_incompatible_opt4(opt1, opt1_name,
+ opt2, opt2_name,
+ opt3, opt3_name,
+ 0, "");
+}
I haven't seen a non-static inline function defined in a common
header files. Does this actually work? In my build, ld choked on
this one.
Otherwise make it "static inline"? Or just
#define die_for_incompatible_opt3(o1,n1,o2,n2,o3,n3) \
die_for_incompatible_opt4((o1), (n1), \
(o2), (n2), \
(o3), (n3), \
0, "")
perhaps?
Please no macros where they are not a clear advantage. Make it a
function, either static inline, or out-of-line (the latter would be my
personal preference in this case because the function is not called in a
hot path).
-- Hannes