Path: utzoo!utgpu!water!watmath!clyde!ima!haddock!karl From: karl@haddock.ISC.COM (Karl Heuer) Newsgroups: comp.lang.c Subject: Re: Why he won't use ANSI C Message-ID: <2932@haddock.ISC.COM> Date: 8 Mar 88 19:35:28 GMT References: <7563@elsie.UUCP> <7022@brl-smoke.ARPA> <7564@elsie.UUCP> <7053@brl-smoke.ARPA> <5212@utah-cs.UUCP> <7170@brl-smoke.ARPA> <7183@brl-smoke.ARPA> <5222@utah-cs.UUCP> <907@micomvax.UUCP> <7290@brl-smoke.ARPA> <2331@umd5.umd.edu> <295@alice.marlow.reuters.co. Reply-To: karl@haddock.ima.isc.com (Karl Heuer) Organization: Interactive Systems, Boston Lines: 14 In article <295@alice.marlow.reuters.co.uk> fox@alice.marlow.reuters.co.uk (Paul Fox) writes: >In article <2331@umd5.umd.edu> chris@trantor.umd.edu (Chris Torek) writes: >>X3J11 has actually done quite well ... There are a few botches [e.g. ...] > >Well, what about the fact that [after declaring a function pointer `fp`] > fp == *fp == **fp == ***fp ? The only new part is that `fp()` is now a valid way to invoke the indirect function. It's always been true that, in any context other than `(*fp)()`, `*fp` would degenerate to `fp`; all they did was remove the special case. (A cleaner approach would have been to deprecate the degeneration, and require an explicit ampersand: `fp = &main`. Too big a change, I suppose.) Karl W. Z. Heuer (ima!haddock!karl or karl@haddock.isc.com), The Walking Lint