Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!rutgers!tut.cis.ohio-state.edu!purdue!haven!adm!smoke!gwyn From: gwyn@smoke.BRL.MIL (Doug Gwyn) Newsgroups: comp.std.c Subject: Re: returning more than 4 bytes Message-ID: <10395@smoke.BRL.MIL> Date: 13 Jun 89 11:47:41 GMT References: <1428@xn.LL.MIT.EDU> <20.UUL1.3#5077@aussie.UUCP> Reply-To: gwyn@brl.arpa (Doug Gwyn) Organization: Ballistic Research Lab (BRL), APG, MD. Lines: 11 In article <20.UUL1.3#5077@aussie.UUCP> rex@aussie.UUCP (Rex Jaeschke) writes: >DEC's VAX C, for example, cannot pass in anything larger than 255 longwords Strictly speaking, a C implementation on such a machine COULD pass an arbitrarily large amount of arguments, using a different design for function linkage than DEC chose. There are numerous architectural design botches that force a language implementor to avoid what the hardware architect thought would be helpful and instead to do things another way. For example, some models of the PDP-11 had a MARK instruction that was supposed to help with procedural language linkage, but I never found a good way to use it.