From: Bennett E. Todd (bet@internet.sbi.com)
Date: 06/16/92


From: bet@internet.sbi.com (Bennett E. Todd)
Subject: Re: Size-change of ino_t
Date: Tue, 16 Jun 1992 23:18:44 GMT

I think the way to make a change like this is _not_ to introduce a new
and different call visible at the C source level, but to just change the
interface.

I'd go ahead and create a new system call, with the new interface.
Change the header file. Make the libc.a glue for the routine point to
the new routine --- make the old routine inaccessible to anything but
precompiled binaries, which can use it for backward compatibility.
Eventually the old backwards-compatibility binary interface can be
phased out (at the same time as the shared library that accesses it is
dropped).

With ANSI function prototyping throughout /usr/include, this strategy is
safe from ``silent'' failures due to type mismatches. Anything that
needs editing to accomodate the changed interface, will trigger a nicely
explanatory compiler error message.

Long Live ``gcc -Wall''!

-Bennett
bet@sbi.com