This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: fix cast-to-int problem in unwind-dw2.c


On Wed, May 07, 2003 at 10:13:24PM -0700, Richard Henderson wrote:
> On Wed, May 07, 2003 at 10:14:32PM -0400, Daniel Jacobowitz wrote:
> > In a function which returns an _Unwind_Word?  Won't that re-introduce
> > the warning somewhere?
> 
> No.  sizeof(_Unwind_Ptr) == sizeof(void*), by definition.

I guess I'm just being dense.  The function looks like:

_Unwind_Word
_Unwind_GetCFA (struct _Unwind_Context *context)
{
  return (_Unwind_Ptr) context->cfa;
}

If (_Unwind_Word) (_Unwind_Word) context->cfa was wrong, why isn't
(_Unwind_Word) (_Unwind_Ptr) context->cfa?


Oh, and:
#if defined(__ia64__) && defined(__hpux__)
typedef unsigned _Unwind_Ptr __attribute__((__mode__(__word__)));

In IA64/hpux ilp32 mode, that's 64 bits and void* is 32 bits.

-- 
Daniel Jacobowitz
MontaVista Software                         Debian GNU/Linux Developer


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]