From mboxrd@z Thu Jan 1 00:00:00 1970 Message-ID: Date: Fri, 20 May 2005 11:00:31 -0400 From: Russ Cox To: Sergey Reva , Fans of the OS Plan 9 from Bell Labs <9fans@cse.psu.edu> Subject: Re: [9fans] return vlong In-Reply-To: <5114550406.20050520175310@mail.ru> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline References: <5114550406.20050520175310@mail.ru> Cc: Topicbox-Message-UUID: 4dc08f02-ead0-11e9-9d60-3106f5b1d025 a call to a function that returns a vlong or structure passes an invisible (to the c programmer) first argument that is a pointer to somewhere to write the return value. so the following two functions have equivalent assembly (but different c types): vlong return0(void) { return 0; } void return0(vlong *v) { *v =3D 0; } russ