diff options
author | wm4 <wm4@nowhere> | 2018-01-17 12:10:41 +0100 |
---|---|---|
committer | Kevin Mitchell <kevmitch@gmail.com> | 2018-01-18 00:25:00 -0800 |
commit | da662ef182a5f62ec0c75aa43cbd94d5647add2a (patch) | |
tree | e6b81509cdbdb2a1363637d6bc36501338a11df1 | |
parent | 4f49334318179201e56b62e065d39b7e38485fab (diff) | |
download | mpv-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.c | 7 | ||||
-rw-r--r-- | audio/out/ao_oss.c | 6 | ||||
-rw-r--r-- | stream/tvi_v4l2.c | 6 |
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); |