aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2023-12-06 06:36:15 -0700
committerMike Frysinger <vapier@gentoo.org>2023-12-07 21:41:27 -0700
commit058d0bf5f09a4488b6d7f3d3aa5fa0958e886c3b (patch)
tree2598979d6e4f681429b54cd6f3a31f4d84d112bd
parentad4106f8dd948bf04cb1c427124c711d3eb72766 (diff)
downloadfsf-binutils-gdb-058d0bf5f09a4488b6d7f3d3aa5fa0958e886c3b.zip
fsf-binutils-gdb-058d0bf5f09a4488b6d7f3d3aa5fa0958e886c3b.tar.gz
fsf-binutils-gdb-058d0bf5f09a4488b6d7f3d3aa5fa0958e886c3b.tar.bz2
sim: bfin: gui: fix -Wunused-but-set-variable warnings
Rework the code to use static inline functions when it's disabled rather than macros so the compiler knows the various function args are always used. The ifdef macros are a bit ugly, but get the job done without duplicating the function prototypes.
-rw-r--r--sim/bfin/gui.h34
1 files changed, 22 insertions, 12 deletions
diff --git a/sim/bfin/gui.h b/sim/bfin/gui.h
index ef363b5..daf4398 100644
--- a/sim/bfin/gui.h
+++ b/sim/bfin/gui.h
@@ -21,7 +21,14 @@
#ifndef BFIN_GUI_H
#define BFIN_GUI_H
+/* These macros are ugly. */
#ifdef HAVE_SDL
+# define _BFIN_GUI_INLINE
+# define _BFIN_GUI_STUB(...) ;
+#else
+# define _BFIN_GUI_INLINE ATTRIBUTE_UNUSED static inline
+# define _BFIN_GUI_STUB(val) { return val; }
+#endif
enum gui_color {
GUI_COLOR_RGB_565,
@@ -30,21 +37,24 @@ enum gui_color {
GUI_COLOR_BGR_888,
GUI_COLOR_RGBA_8888,
};
-enum gui_color bfin_gui_color (const char *color);
-int bfin_gui_color_depth (enum gui_color color);
-
-void *bfin_gui_setup (void *state, int enabled, int height, int width,
- enum gui_color color);
+_BFIN_GUI_INLINE
+enum gui_color bfin_gui_color (const char *color)
+ _BFIN_GUI_STUB(GUI_COLOR_RGB_565)
-unsigned bfin_gui_update (void *state, const void *source, unsigned nr_bytes);
+_BFIN_GUI_INLINE
+int bfin_gui_color_depth (enum gui_color color)
+ _BFIN_GUI_STUB(0)
-#else
+_BFIN_GUI_INLINE
+void *bfin_gui_setup (void *state, int enabled, int height, int width,
+ enum gui_color color)
+ _BFIN_GUI_STUB(NULL)
-# define bfin_gui_color(...) 0
-# define bfin_gui_color_depth(...) 0
-# define bfin_gui_setup(...) NULL
-# define bfin_gui_update(...) 0
+_BFIN_GUI_INLINE
+unsigned bfin_gui_update (void *state, const void *source, unsigned nr_bytes)
+ _BFIN_GUI_STUB(0)
-#endif
+#undef _BFIN_GUI_INLINE
+#undef _BFIN_GUI_STUB
#endif