On 13 February 2017 at 18:47, Carsten Haitzler <ras...@rasterman.com> wrote:

> On Mon, 13 Feb 2017 12:22:26 +0900 Jean-Philippe André <j...@videolan.org>
> said:
>
> > Hi,
> >
> > On 12 February 2017 at 00:54, Carsten Haitzler <ras...@rasterman.com>
> wrote:
> >
> > > raster pushed a commit to branch master.
> > >
> > > http://git.enlightenment.org/core/efl.git/commit/?id=
> > > 6d4b85f820d4bd16c29e0de0b0c44b1ab6935b3e
> > >
> > > commit 6d4b85f820d4bd16c29e0de0b0c44b1ab6935b3e
> > > Author: Carsten Haitzler (Rasterman) <ras...@rasterman.com>
> > > Date:   Sat Feb 11 22:53:04 2017 +0900
> > >
> > >     eo base - fix warnings for debug logs to get format string types
> happy
> > >
> > >     gcc is very unhappy with these log prints - specifically on arm
> 32bit.
> > >     this fixes it so we can focus on real warnings/issues.
> > > ---
> > >  src/lib/eo/eo.c | 18 +++++++++---------
> > >  1 file changed, 9 insertions(+), 9 deletions(-)
> > >
> > > diff --git a/src/lib/eo/eo.c b/src/lib/eo/eo.c
> > > index a8abd3c..f13a9af 100644
> > > --- a/src/lib/eo/eo.c
> > > +++ b/src/lib/eo/eo.c
> > > @@ -2510,12 +2510,12 @@ _eo_log_obj_entry_show(const Eo_Log_Obj_Entry
> > > *entry, int log_level, const char
> > >               if (info.dli_sname)
> > >                 {
> > >                    eina_log_print(_eo_log_objs_dom, log_level, file,
> > > func_name, line,
> > > -                                 "   %#016" PRIx64 ": %s+%#" PRIx64 "
> (in
> > > %s %#" PRIx64 ")",
> > > -                                 (uint64_t)entry->bt[i],
> > > +                                 "   0x%016llx: %s+%llu (in %s
> 0x%llx)",
> > > +                                 (unsigned long
> > > long)(uintptr_t)entry->bt[i],
> > >                                   info.dli_sname,
> > > -                                 (char *)entry->bt[i] - (char
> > > *)info.dli_saddr,
> > > +                                 (unsigned long long)(uintptr_t)((char
> > > *)entry->bt[i] - (char *)info.dli_saddr),
> > >                                   info.dli_fname ? info.dli_fname :
> "??",
> > > -                                 (uint64_t)info.dli_fbase);
> > > +                                 (unsigned long
> long)(uintptr_t)info.dli_
> > > fbase);
> > >                    continue;
> > >                 }
> > >
> >
> > PRIx64 was the correct way to print [u]int64_t. PRIxPTR for [u]intptr_t.
> > I don't think the double cast to ull is what we wanted here.
>
> gcc on arm was totally unhappy with it and spewed out quite a lot of
> warnings.
>
>
Probably because PRIx64 was used instead of PRIxPTR (for the difference
between char *). Pointers are not 64 bit on arm 32 bit.
I can't test right now so it's just a wild guess :)

-- 
Jean-Philippe André
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to