Message ID | 20201111142203.2359370-4-kuhn.chenqun@huawei.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | fix uninitialized variable warning | expand |
diff --git a/util/qemu-timer.c b/util/qemu-timer.c index 8b73882fbb..3910003e86 100644 --- a/util/qemu-timer.c +++ b/util/qemu-timer.c @@ -183,7 +183,7 @@ bool qemu_clock_has_timers(QEMUClockType type) bool timerlist_expired(QEMUTimerList *timer_list) { - int64_t expire_time; + int64_t expire_time = -1; if (!qatomic_read(&timer_list->active_timers)) { return false; @@ -213,7 +213,7 @@ bool qemu_clock_expired(QEMUClockType type) int64_t timerlist_deadline_ns(QEMUTimerList *timer_list) { int64_t delta; - int64_t expire_time; + int64_t expire_time = -1; if (!qatomic_read(&timer_list->active_timers)) { return -1;
After the WITH_QEMU_LOCK_GUARD macro is added, the compiler cannot identify that the statements in the macro must be executed. As a result, some variables assignment statements in the macro may be considered as unexecuted by the compiler. When the -Wmaybe-uninitialized capability is enabled on GCC9,the compiler showed warning: util/qemu-timer.c: In function ‘timerlist_expired’: util/qemu-timer.c:199:24: warning: ‘expire_time’ may be used uninitialized in this function [-Wmaybe-uninitialized] 199 | return expire_time <= qemu_clock_get_ns(timer_list->clock->type); | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ util/qemu-timer.c: In function ‘timerlist_deadline_ns’: util/qemu-timer.c:237:11: warning: ‘expire_time’ may be used uninitialized in this function [-Wmaybe-uninitialized] 237 | delta = expire_time - qemu_clock_get_ns(timer_list->clock->type); | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Add a default value for 'expire_time' to prevented the warning. Reported-by: Euler Robot <euler.robot@huawei.com> Signed-off-by: Chen Qun <kuhn.chenqun@huawei.com> --- Cc: Paolo Bonzini <pbonzini@redhat.com> --- util/qemu-timer.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)