-VLC_EXPORT( void *, __vlc_object_create, ( vlc_object_t *, int ) );
-VLC_EXPORT( void, __vlc_object_set_destructor, ( vlc_object_t *, vlc_destructor_t ) );
-VLC_EXPORT( void, __vlc_object_attach, ( vlc_object_t *, vlc_object_t * ) );
-VLC_EXPORT( void, __vlc_object_detach, ( vlc_object_t * ) );
-#if defined (__GNUC__) && !defined __cplusplus
-__attribute__((deprecated))
-#endif
-VLC_EXPORT( void *, __vlc_object_find, ( vlc_object_t *, int, int ) );
-VLC_EXPORT( vlc_object_t *, vlc_object_find_name, ( vlc_object_t *, const char *, int ) );
-VLC_EXPORT( void *, __vlc_object_hold, ( vlc_object_t * ) );
-VLC_EXPORT( void, __vlc_object_release, ( vlc_object_t * ) );
-VLC_EXPORT( vlc_list_t *, __vlc_list_find, ( vlc_object_t *, int, int ) );
-VLC_EXPORT( vlc_list_t *, __vlc_list_children, ( vlc_object_t * ) );
-VLC_EXPORT( void, vlc_list_release, ( vlc_list_t * ) );
-
-/*}@*/
+VLC_API void *vlc_object_create( vlc_object_t *, size_t ) VLC_MALLOC VLC_USED;
+VLC_API vlc_object_t *vlc_object_find_name( vlc_object_t *, const char * ) VLC_USED VLC_DEPRECATED;
+VLC_API void * vlc_object_hold( vlc_object_t * );
+VLC_API void vlc_object_release( vlc_object_t * );
+VLC_API vlc_list_t *vlc_list_children( vlc_object_t * ) VLC_USED;
+VLC_API void vlc_list_release( vlc_list_t * );
+VLC_API char *vlc_object_get_name( const vlc_object_t * ) VLC_USED;
+#define vlc_object_get_name(o) vlc_object_get_name(VLC_OBJECT(o))