summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2018-01-17 12:10:41 +0100
committerKevin Mitchell <kevmitch@gmail.com>2018-01-18 00:25:00 -0800
commitda662ef182a5f62ec0c75aa43cbd94d5647add2a (patch)
treee6b81509cdbdb2a1363637d6bc36501338a11df1
parent4f49334318179201e56b62e065d39b7e38485fab (diff)
downloadmpv-da662ef182a5f62ec0c75aa43cbd94d5647add2a.tar.bz2
mpv-da662ef182a5f62ec0c75aa43cbd94d5647add2a.tar.xz
Fix undefined preprocessor behavior
This commit eliminates the following clang warning: warning: macro expansion producing 'defined' has undefined behavior [-Wexpansion-to-defined] Going by the clang commit message, this seems to be explicitly specified as UB by the standard, and they added this warning because MSVC apparently results in different behavior. Whatever, we can just avoid the warning with some small changes.
-rw-r--r--audio/out/ao_alsa.c7
-rw-r--r--audio/out/ao_oss.c6
-rw-r--r--stream/tvi_v4l2.c6
3 files changed, 15 insertions, 4 deletions
diff --git a/audio/out/ao_alsa.c b/audio/out/ao_alsa.c
index 39c3f03118..b86bf5d89e 100644
--- a/audio/out/ao_alsa.c
+++ b/audio/out/ao_alsa.c
@@ -42,8 +42,11 @@
#include <alsa/asoundlib.h>
-#define HAVE_CHMAP_API \
- (defined(SND_CHMAP_API_VERSION) && SND_CHMAP_API_VERSION >= (1 << 16))
+#if defined(SND_CHMAP_API_VERSION) && SND_CHMAP_API_VERSION >= (1 << 16)
+#define HAVE_CHMAP_API 1
+#else
+#define HAVE_CHMAP_API 0
+#endif
#include "ao.h"
#include "internal.h"
diff --git a/audio/out/ao_oss.c b/audio/out/ao_oss.c
index 72413cd9f8..1300a72043 100644
--- a/audio/out/ao_oss.c
+++ b/audio/out/ao_oss.c
@@ -56,7 +56,11 @@
// Define to 0 if the device must be reopened to reset it (stop all playback,
// clear the buffer), and the device should be closed when unused.
// Define to 1 if SNDCTL_DSP_RESET should be used to reset without close.
-#define KEEP_DEVICE (defined(SNDCTL_DSP_RESET) && !defined(__NetBSD__))
+#if defined(SNDCTL_DSP_RESET) && !defined(__NetBSD__)
+#define KEEP_DEVICE 1
+#else
+#define KEEP_DEVICE 0
+#endif
#define PATH_DEV_DSP "/dev/dsp"
#define PATH_DEV_MIXER "/dev/mixer"
diff --git a/stream/tvi_v4l2.c b/stream/tvi_v4l2.c
index bd7ecd1e27..57bf6b875f 100644
--- a/stream/tvi_v4l2.c
+++ b/stream/tvi_v4l2.c
@@ -72,7 +72,11 @@ known issues:
#define V4L2_BUF_FLAG_TIMESTAMP_MONOTONIC 0x2000
#endif
-#define HAVE_CLOCK_GETTIME (defined(_POSIX_TIMERS) && _POSIX_TIMERS > 0)
+#if defined(_POSIX_TIMERS) && _POSIX_TIMERS > 0
+#define HAVE_CLOCK_GETTIME 1
+#else
+#define HAVE_CLOCK_GETTIME 0
+#endif
#define info tvi_info_v4l2
static tvi_handle_t *tvi_init_v4l2(struct mp_log *log, tv_param_t* tv_param);