/* Branch prediction */
#ifdef __GNUC__
-# define likely(p) __builtin_expect(!!(p), 1)
-# define unlikely(p) __builtin_expect(!!(p), 0)
+# define likely(p) __builtin_expect(!!(p), 1)
+# define unlikely(p) __builtin_expect(!!(p), 0)
+# define unreachable() __builtin_unreachable()
#else
-# define likely(p) (!!(p))
-# define unlikely(p) (!!(p))
+# define likely(p) (!!(p))
+# define unlikely(p) (!!(p))
+# define unreachable() ((void)0)
#endif
+#define vlc_assert_unreachable() (assert(!"unreachable"), unreachable())
+
/* Linkage */
#ifdef __cplusplus
# define VLC_EXTERN extern "C"
/* Playlist */
-/* FIXME */
-/**
- * Playlist commands
- */
-typedef enum {
- PLAYLIST_PLAY, /**< No arg. res=can fail*/
- PLAYLIST_VIEWPLAY, /**< arg1= playlist_item_t*,*/
- /** arg2 = playlist_item_t* , res=can fail */
- PLAYLIST_PAUSE, /**< No arg res=can fail*/
- PLAYLIST_STOP, /**< No arg res=can fail*/
- PLAYLIST_SKIP, /**< arg1=int, res=can fail*/
-} playlist_command_t;
-
-
typedef struct playlist_t playlist_t;
typedef struct playlist_item_t playlist_item_t;
typedef struct services_discovery_t services_discovery_t;
float f_float;
char * psz_string;
void * p_address;
- vlc_object_t * p_object;
vlc_list_t * p_list;
mtime_t i_time;
struct { int32_t x; int32_t y; } coords;