From: Junio C Hamano Date: Mon, 31 Jan 2022 22:41:59 GMT Subject: Re: [PATCH v4 1/4] i18n: factorize more 'incompatible options' messages Message-ID: In-Reply-To: <2eac2ef502b86d0c15513c8d0e69928ce2140b1f.1643666870.git.gitgitgadget@gmail.com> "Jean-Noël Avila via GitGitGadget" writes: > +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?