[EMAIL PROTECTED] (Jack Howarth) writes:

> Geoff,
>     Can you explain why we don't have...
> 
> Index: unwind-dw2-fde-darwin.c
> ===================================================================
> --- unwind-dw2-fde-darwin.c     (revision 117350)
> +++ unwind-dw2-fde-darwin.c     (working copy)
> @@ -61,7 +61,7 @@ struct mach_header;
>  struct mach_header_64;
>  extern char *getsectdatafromheader (struct mach_header*, const char*,
>                         const char *, unsigned long *);
> -extern char *getsectdatafromheader_64 (struct mach_header*, const char*,
> +extern char *getsectdatafromheader_64 (struct mach_header_64*, const char*,
>                         const char *, unsigned long *);
>  
>  /* This is referenced from KEYMGR_GCC3_DW2_OBJ_LIST.  */
> @@ -157,8 +157,12 @@ examine_objects (void *pc, struct dwarf_
>  
>         /* For ppc only check whether or not we have __DATA eh frames.  */
>  #ifdef __ppc__
> +#if __LP64__
> +       fde = getsectdatafromheader ((struct mach_header_64 *)image->mh, 
> "__DATA", "__eh_frame", &sz);
> +#else
>         fde = getsectdatafromheader (image->mh, "__DATA", "__eh_frame", &sz);
>  #endif
> +#endif
>  
>         if (fde == NULL)
>           {
> 
> Thanks in advance for any clarifications.

__ppc__ and __LP64__ should not be defined together.  On Darwin,
__ppc__ means 32-bit powerpc.

Reply via email to