As far as I know, one can not have more then 1 interface for the same C procedure.
Yet fcntl (2) seems to have 3. How come?
[08:02:50 /tmp]$ man fcntl |head -n17
FCNTL(2)Linux Programmer's ManualFCNTL(2)
NAME
fcntl - manipulate file descriptor
SYNOPSIS
SK Does overloading means having more then 1 procedure with the same name?
Three fcntl definitions mean you can omit last parameter. In fact, fcntl
is defined as extern int fcntl __P ((int __fd, int __cmd, ...));
so implementation will find and extract extra argument. Read
/usr/include/fcntl.h