Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.1a 7/7/83; site rlgvax.UUCP Path: utzoo!linus!philabs!seismo!rlgvax!guy From: guy@rlgvax.UUCP (Guy Harris) Newsgroups: net.lang.c Subject: Re: void casts; and C definition question Message-ID: <1236@rlgvax.UUCP> Date: Mon, 3-Oct-83 09:14:57 EDT Article-I.D.: rlgvax.1236 Posted: Mon Oct 3 09:14:57 1983 Date-Received: Wed, 5-Oct-83 08:38:07 EDT References: <5873@watmath.UUCP> <327@wjh12.UUCP> Organization: CCI Office Systems Group, Reston, VA Lines: 14 The language should *not* guarantee that calling a function without having properly declared the type of the function's return value should work, because not all implementations can guarantee this. If pointers and "int"s are different sizes (as they are on several 68000 implementations, on Zilog's segmented Z8000 implementation (I assume), and probably on several other machines with a decently-sized address space but either weak support for 32-bit integers (like the 68K with its lack of 32-bit mul/div) or performance losses for 32-bit integers) if you don't say "char *malloc()" or whatever you are *guaranteed* to lose. Programs which depend on this working should either be changed not to or be hacked on such implementations to use "long"s instead of "int"s. Guy Harris {seismo,mcnc,we13,brl-bmd,allegra}!rlgvax!guy