On Wed, 2012-08-08 at 13:18 -0300, Arnaldo Carvalho de Melo wrote: > Em Wed, Aug 08, 2012 at 06:05:50PM +0300, Andy Shevchenko escreveu: > > util/symbol.c: In function ‘hex2u64’: > > util/symbol.c:2836:2: error: passing argument 2 of ‘strtoull’ from incompatible pointer type [-Werror] > > In file included from util/symbol.c:3:0: > > /usr/include/stdlib.h:215:31: note: expected ‘char ** restrict’ but argument is of type ‘const char **’ > > cc1: all warnings being treated as errors > > make[1]: *** [util/symbol.o] Error 1 > > make[1]: Leaving directory `/home/andy/prj/linux-2.6/tools/perf' > > make: *** [perf] Error 2 > > > > Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> > > --- > > tools/perf/util/symbol.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/tools/perf/util/symbol.c b/tools/perf/util/symbol.c > > index ba2a489..26e695c 100644 > > --- a/tools/perf/util/symbol.c > > +++ b/tools/perf/util/symbol.c > > @@ -2831,7 +2831,7 @@ int machines__create_kernel_maps(struct rb_root *machines, pid_t pid) > > */ > > int hex2u64(const char *ptr, u64 *long_val) > > { > > - const char *p = ptr; > > + char *p; > > > > *long_val = strtoull(ptr, &p, 16); > > What tree is this against? Here I have: Ah, it's a fix on top on mine other fix. I'll resend squashed version soon. > > /* > * While we find nice hex chars, build a long_val. > * Return number of chars processed. > */ > int hex2u64(const char *ptr, u64 *long_val) > { > const char *p = ptr; > *long_val = 0; > > while (*p) { > const int hex_val = hex(*p); > > if (hex_val < 0) > break; > > *long_val = (*long_val << 4) | hex_val; > p++; > } > > return p - ptr; > } > > - Arnaldo -- Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx> Intel Finland Oy -- To unsubscribe from this list: send the line "unsubscribe linux-next" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html