Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.1 6/24/83; site watmath.UUCP Path: utzoo!watmath!dapermezel From: dapermezel@watmath.UUCP (Damon Permezel) Newsgroups: net.lang.c Subject: void avoidance Message-ID: <5927@watmath.UUCP> Date: Sat, 8-Oct-83 14:43:19 EDT Article-I.D.: watmath.5927 Posted: Sat Oct 8 14:43:19 1983 Date-Received: Sun, 9-Oct-83 10:45:25 EDT Organization: U of Waterloo, Ontario Lines: 34 the construct (coid) f() is not meaningless at all. I didn't say it was meaningless. I said it was as devoid of meaning as (void) ++i. .... The complex statement given in the initial flame means something entirely different - that being the call of a (void)-declared function f() that was not declared locally. Au contrair. It does not say that 'f' was declared to be type void elsewhere. It casts 'f' to be a pointer to a function that returns nothing. 'f' could indeed return char *. I have never seen any rules for type cast with void types. I suspect that the present behaviour just 'came out in the wash' with many compilers. Sure, they allow (void) f(); but they also allow (void) ++i; and (void) 1; /* PCC does, at least */ This is not very useful. =damon