Subject: Re: [PATCH] refs/files-backend: remove unused open mode parameter

From: Junio C Hamano <[email-masked]>
Date: Mon, 13 Sep 2021 11:22:49 -0700

Han-Wen Nienhuys <[email-masked]> writes:

> On Thu, Sep 9, 2021 at 11:46 PM René Scharfe <[email-masked]> wrote:
>>
>> We only need to provide a mode if we are willing to let open(2) create
>> the file, which is not the case here, so drop the unnecessary parameter.
>
> I was #today years old when I learned that C supports (a limited form
> of) function signature overloading.

I do not think it is that kind of magic.

Like printf(3) that allows its early parameter to affect the way how
its later parameters are recognised, it just allows the flags word
to decide if it needs to grab one extra mode_t out of va_list or
not, which can be done as a plain vanilla varargs function, i.e.

	extern int open(const char *path, int flags, ...);