From 5f78776ab10ca691df6a39760795257e30121be5 Mon Sep 17 00:00:00 2001 From: Mike Frysinger Date: Mon, 10 Jan 2011 21:52:08 +0000 Subject: [PATCH] sim: add noreturn markings to more hw abort/halt funcs These functions either call abort() themselves, or call functions which are already marked noreturn. Either way, they don't return, so mark them as such so calling code can assume this. This fixes some uninitialized warnings due to code paths that end in an abort function. Signed-off-by: Mike Frysinger --- sim/common/ChangeLog | 5 +++++ sim/common/hw-device.h | 6 +++--- sim/common/sim-hw.h | 2 +- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/sim/common/ChangeLog b/sim/common/ChangeLog index ea0ce2070b0..04ea93b61ae 100644 --- a/sim/common/ChangeLog +++ b/sim/common/ChangeLog @@ -1,3 +1,8 @@ +2010-01-10 Mike Frysinger + + * hw-device.h (hw_abort, hw_vabort, hw_halt): Add noreturn attribute. + * sim-hw.h (sim_hw_abort): Likewise. + 2011-01-05 Mike Frysinger * sim-load.c (sim_load_file): Change buffer type to unsigned char *. diff --git a/sim/common/hw-device.h b/sim/common/hw-device.h index 4ac61b1ad0b..b0f66eb53f6 100644 --- a/sim/common/hw-device.h +++ b/sim/common/hw-device.h @@ -433,17 +433,17 @@ int hw_ioctl void hw_abort (struct hw *me, const char *fmt, - ...) __attribute__ ((format (printf, 2, 3))); + ...) __attribute__ ((format (printf, 2, 3), noreturn)); void hw_vabort (struct hw *me, const char *fmt, - va_list ap); + va_list ap) __attribute__ ((noreturn)); void hw_halt (struct hw *me, int reason, - int status); + int status) __attribute__ ((noreturn)); #define hw_trace_p(hw) ((hw)->trace_of_hw_p + 0) diff --git a/sim/common/sim-hw.h b/sim/common/sim-hw.h index 1e0d3b37eb9..e85cecc2b11 100644 --- a/sim/common/sim-hw.h +++ b/sim/common/sim-hw.h @@ -49,7 +49,7 @@ void sim_hw_abort (SIM_DESC sd, struct hw *hw, const char *fmt, - ...) __attribute__ ((format (printf, 3, 4))); + ...) __attribute__ ((format (printf, 3, 4), noreturn)); -- 2.30.2