This patch allows building xine-lib with -Werror-implicit-function-declaration flag, ensuring that all the functions have a proper declaration; this allows to avoid further problems like the one related to aac files fixed in patch 180. Index: xine-lib-1.1.1/src/input/libdvdnav/md5.c =================================================================== --- xine-lib-1.1.1.orig/src/input/libdvdnav/md5.c +++ xine-lib-1.1.1/src/input/libdvdnav/md5.c @@ -26,14 +26,8 @@ #include -#if STDC_HEADERS || defined _LIBC -# include -# include -#else -# ifndef HAVE_MEMCPY -# define memcpy(d, s, n) bcopy ((s), (d), (n)) -# endif -#endif +#include +#include #include "md5.h" /* #include "unlocked-io.h" */ Index: xine-lib-1.1.1/src/liba52/a52.h =================================================================== --- xine-lib-1.1.1.orig/src/liba52/a52.h +++ xine-lib-1.1.1/src/liba52/a52.h @@ -58,6 +58,5 @@ void a52_dynrng (a52_state_t * state, sample_t (* call) (sample_t, void *), void * data); int a52_block (a52_state_t * state); void a52_free (a52_state_t * state); -uint16_t crc16_block(uint8_t *data,uint32_t num_bytes); #endif /* A52_H */ Index: xine-lib-1.1.1/src/liba52/xine_decoder.c =================================================================== --- xine-lib-1.1.1.orig/src/liba52/xine_decoder.c +++ xine-lib-1.1.1/src/liba52/xine_decoder.c @@ -69,6 +69,8 @@ int a52file; #endif +uint16_t crc16_block(uint8_t *data,uint32_t num_bytes); + typedef struct { audio_decoder_class_t decoder_class; config_values_t *config;