From: Pedro Alves Date: Wed, 4 Feb 2015 10:05:58 +0000 (+0100) Subject: Fix build breakage due to event loop simplification X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=80bd5fab6252d1cdff1ca95096ebe9b3053c8ec3;hp=23081de0180381317070db296fbe3f587b501ccf;p=deliverable%2Fbinutils-gdb.git Fix build breakage due to event loop simplification commit 70b66289 (Simplify event-loop core, remove two-step event processing) causes a build failure when compiling GDB with gcc/-O2: gdb/event-loop.c: In function ‘gdb_do_one_event’: gdb/event-loop.c:296:10: error: ‘res’ may be used uninitialized in this function [-Werror=maybe-uninitialized] if (res > 0) ^ GCC isn't realizing that event_source_head can never be > 2 and that therefore 'res' is always initialized in all possible paths. Adding a default case that internal_error's makes GCC realize that. Tested on x86_64 Fedora 20. gdb/ChangeLog: 2015-02-04 Pedro Alves Fix build breakage. * event-loop.c (gdb_do_one_event): Add default switch case. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 2266c11163..1116853641 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2015-02-04 Pedro Alves + + Fix build breakage. + * event-loop.c (gdb_do_one_event): Add default switch case. + 2015-02-03 Jan Kratochvil Filter out inferior gcc option -fpreprocessed. diff --git a/gdb/event-loop.c b/gdb/event-loop.c index 7425b3acaa..a2b41a75da 100644 --- a/gdb/event-loop.c +++ b/gdb/event-loop.c @@ -287,6 +287,10 @@ gdb_do_one_event (void) /* Are there any asynchronous event handlers ready? */ res = check_async_event_handlers (); break; + default: + internal_error (__FILE__, __LINE__, + "unexpected event_source_head %d", + event_source_head); } event_source_head++;