From 330386bee280f15e018de11fa9221de2b5ca5a1a Mon Sep 17 00:00:00 2001 From: mccallum Date: Thu, 9 Jan 1997 15:45:08 +0000 Subject: [PATCH] (mframe_build_return): Change the way values of type smaller than (int) are returned---don't offset into the int. (Recommended by Richard Frith-Macdonald .) git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@2027 72102866-910b-0410-8b05-ffd578937521 --- Source/mframe.m | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Source/mframe.m b/Source/mframe.m index 0b5ceac5a..1e113ce7f 100644 --- a/Source/mframe.m +++ b/Source/mframe.m @@ -1,5 +1,5 @@ /* Implementation of functions for dissecting/making method calls - Copyright (C) 1994, 1995, 1996 Free Software Foundation, Inc. + Copyright (C) 1994, 1995, 1996, 1997 Free Software Foundation, Inc. Written by: Andrew Kachites McCallum Created: Oct 1994 @@ -874,9 +874,14 @@ mframe_build_return (arglist_t argframe, /* xxx Is this the right test? Use sizeof(int) instead? */ if (retsize < sizeof(void*)) { +#if 1 + /* Frith-Macdonald said this worked better 21 Nov 96. */ + (*decoder) (-1, retframe, tmptype, flags); +#else *(void**)retframe = 0; (*decoder) (-1, ((char*)retframe)+sizeof(void*)-retsize, tmptype, flags); +#endif } else {