perf script python: Silence -Werror=maybe-uninitialized on gcc 5.3.0
authorArnaldo Carvalho de Melo <acme@redhat.com>
Tue, 12 Jul 2016 14:05:26 +0000 (11:05 -0300)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Tue, 12 Jul 2016 18:20:39 +0000 (15:20 -0300)
Sounds like a compiler bug, but to silence it, initialize those
variables to NULL.

Noticed on:

Target: x86_64-alpine-linux-musl
Configured with: /home/buildozer/aports/main/gcc/src/gcc-5.3.0/configure
--prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info
--build=x86_64-alpine-linux-musl --host=x86_64-alpine-linux-musl
--target=x86_64-alpine-linux-musl --with-pkgversion='Alpine 5.3.0'
--enable-checking=release --disable-fixed-point --disable-libstdcxx-pch
--disable-multilib --disable-nls --disable-werror --disable-symvers
--enable-__cxa_atexit --enable-esp --enable-cloog-backend
--enable-languages=c,c++,objc,java,fortran,ada --disable-libssp
--disable-libmudflap --disable-libsanitizer --enable-shared
--enable-threads --enable-tls --with-system-zlib
Thread model: posix
gcc version 5.3.0 (Alpine 5.3.0)

Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Wang Nan <wangnan0@huawei.com>
Link: http://lkml.kernel.org/n/tip-zyvsjvbl45o7hzcuz78wu2xi@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/util/scripting-engines/trace-event-python.c

index ff13470..6ac6b7a 100644 (file)
@@ -273,7 +273,7 @@ static PyObject *get_field_numeric_entry(struct event_format *event,
                struct format_field *field, void *data)
 {
        bool is_array = field->flags & FIELD_IS_ARRAY;
-       PyObject *obj, *list = NULL;
+       PyObject *obj = NULL, *list = NULL;
        unsigned long long val;
        unsigned int item_size, n_items, i;
 
@@ -392,7 +392,7 @@ static void python_process_tracepoint(struct perf_sample *sample,
                                      struct addr_location *al)
 {
        struct event_format *event = evsel->tp_format;
-       PyObject *handler, *context, *t, *obj, *callchain;
+       PyObject *handler, *context, *t, *obj = NULL, *callchain;
        PyObject *dict = NULL;
        static char handler_name[256];
        struct format_field *field;