Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!sun-barr!olivea!samsung!usc!snorkelwacker.mit.edu!bloom-picayune.mit.edu!news From: scs@adam.mit.edu (Steve Summit) Newsgroups: comp.lang.c Subject: Re: Func Protos with K&R Func Defs Message-ID: <1991Feb28.192849.23235@athena.mit.edu> Date: 28 Feb 91 19:28:49 GMT References: <11614@jpl-devvax.JPL.NASA.GOV> <1991Feb28.021715.18153@athena.mit.edu> <1991Feb28.072947.28885@athena.mit.edu> Sender: news@athena.mit.edu (News system) Reply-To: scs@adam.mit.edu Organization: Thermal Technologies, Inc., Cambridge, MA Lines: 31 In article <1991Feb28.072947.28885@athena.mit.edu>, I wrote: >[carefully mixing prototype declarations with old-style function >definitions] works well, although there are two important >caveats which require some care in applying, which is why mixing >prototyped declaration with "old style" definitions is not >generally recommended. I left out a third, important caveat: "old style" definitions (as well as external function declarations without prototypes) are officially "obsolescent," and may be removed from future revisions of the standard. (See X3.159 sections 3.9.4 and 3.9.5 .) Therefore, my last paragraph should read: > If you want to keep using old tools (compilers, > lint, etc.), and if you're not using an automated ANSI->K&R tool, > and if you don't like #ifdefs or other preprocessor tricks in > function definitions, and if you won't mind having to rewrite your code in ten years or so, > use these mixtures in good health. (This is not supposed to sound sarcastic; you should think about what will happen to your code ten years down the line. A surprising amount of code, coddled by compilers which continued to accept them, still used =+ and the like ten years after =op was deprecated.) Steve Summit scs@adam.mit.edu