#if defined (WIN32) && defined (DLL_EXPORT)
# ifdef __cplusplus
# define VLC_PUBLIC_API extern "C" __declspec(dllexport)
-# define VLC_PRIVATE_API extern "C" __declspec(dllexport)
# define VLC_EXPORT( type, name, args ) extern "C" __declspec(dllexport) type name args
# define VLC_INTERNAL( type, name, args ) extern "C" type name args
# else
# define VLC_PUBLIC_API extern __declspec(dllexport)
-# define VLC_PRIVATE_API extern __declspec(dllexport)
# define VLC_EXPORT( type, name, args ) __declspec(dllexport) type name args
# define VLC_INTERNAL( type, name, args ) type name args
# endif
# ifdef __cplusplus
# ifdef HAVE_ATTRIBUTE_VISIBILITY
# define VLC_PUBLIC_API extern "C" __attribute__((visibility("default")))
-# define VLC_PRIVATE_API extern "C" __attribute__((visibility("default")))
# define VLC_EXPORT( type, name, args ) extern "C" __attribute__((visibility("default"))) type name args
# define VLC_INTERNAL( type, name, args ) extern "C" __attribute__((visibility("hidden"))) type name args
# else
# else
# ifdef HAVE_ATTRIBUTE_VISIBILITY
# define VLC_PUBLIC_API extern __attribute__((visibility("default")))
-# define VLC_PRIVATE_API extern __attribute__((visibility("default")))
# define VLC_EXPORT( type, name, args ) __attribute__((visibility("default"))) type name args
# define VLC_INTERNAL( type, name, args ) __attribute__((visibility("hidden"))) type name args
# else
# define VLC_PUBLIC_API extern
-# define VLC_PRIVATE_API extern
# define VLC_EXPORT( type, name, args ) extern type name args
# define VLC_INTERNAL( type, name, args ) type name args
# endif