[PING] [PATCH] gdb: initialize the data_head variable to eliminate compilation warnings
Metzger, Markus T
markus.t.metzger@intel.com
Wed Jul 6 14:02:10 GMT 2022
Hello Enze,
>> On a machine with gcc 12, I get this warning:
>>
>> CXX nat/linux-btrace.o
>> In function ‘btrace_error linux_read_bts(btrace_data_bts*,
>> btrace_target_info*, btrace_read_type)’,
>> inlined from ‘btrace_error linux_read_btrace(btrace_data*,
>> btrace_target_info*, btrace_read_type)’ at ../gdb/nat/linux-
>> btrace.c:935:29:
>> ../gdb/nat/linux-btrace.c:865:21: warning: ‘data_head’ may be used
>> uninitialized [-Wmaybe-uninitialized]
>> 865 | pevent->last_head = data_head;
>> | ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
That's a false positive. Since RETRIES > 0, the loop is executed at least
once and DATA_HEAD is initialized.
>> diff --git a/gdb/nat/linux-btrace.c b/gdb/nat/linux-btrace.c
>> index b0d6dcd7cf1..c31fb5ffe43 100644
>> --- a/gdb/nat/linux-btrace.c
>> +++ b/gdb/nat/linux-btrace.c
>> @@ -789,7 +789,7 @@ linux_read_bts (struct btrace_data_bts *btrace,
>> struct perf_event_buffer *pevent;
>> const uint8_t *begin, *end, *start;
>> size_t buffer_size, size;
>> - __u64 data_head, data_tail;
>> + __u64 data_head = 0, data_tail;
>> unsigned int retries = 5;
>>
>> pevent = &tinfo->variant.bts.bts;
OK to pacify GCC. Thanks for the patch. LGTM.
regards,
markus.
Intel Deutschland GmbH
Registered Address: Am Campeon 10, 85579 Neubiberg, Germany
Tel: +49 89 99 8853-0, www.intel.de <http://www.intel.de>
Managing Directors: Christin Eisenschmid, Sharon Heck, Tiffany Doon Silva
Chairperson of the Supervisory Board: Nicole Lau
Registered Office: Munich
Commercial Register: Amtsgericht Muenchen HRB 186928
More information about the Gdb-patches
mailing list