From: Björn Jacke Date: Sun, 18 Oct 2020 19:55:22 +0000 (+0200) Subject: talloc/pytalloc: fix studio compler build X-Git-Tag: talloc-2.3.2~11 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=268fcfdd5aa3adbcd6486090ee56aad6e6902a12;p=thirdparty%2Fsamba.git talloc/pytalloc: fix studio compler build Solaris Studio compiler 12.4 is pedantic about prototypes in headers having the external visibility declarations too. It throws errors like: redeclaration must have the same or more restrictive linker scoping: ... Signed-off-by: Bjoern Jacke Reviewed-by: Andrew Bartlett --- diff --git a/lib/talloc/pytalloc.h b/lib/talloc/pytalloc.h index 8ab1e16fe47..9aeb121eb29 100644 --- a/lib/talloc/pytalloc.h +++ b/lib/talloc/pytalloc.h @@ -30,37 +30,37 @@ typedef struct { } pytalloc_Object; /* Return the PyTypeObject for pytalloc_Object. Returns a borrowed reference. */ -PyTypeObject *pytalloc_GetObjectType(void); +_PUBLIC_ PyTypeObject *pytalloc_GetObjectType(void); /* Return the PyTypeObject for pytalloc_BaseObject. Returns a borrowed reference. */ -PyTypeObject *pytalloc_GetBaseObjectType(void); +_PUBLIC_ PyTypeObject *pytalloc_GetBaseObjectType(void); /* Check whether a specific object is a talloc Object. */ -int pytalloc_Check(PyObject *); +_PUBLIC_ int pytalloc_Check(PyObject *); -int pytalloc_BaseObject_check(PyObject *); +_PUBLIC_ int pytalloc_BaseObject_check(PyObject *); -int _pytalloc_check_type(PyObject *py_obj, const char *type_name); +_PUBLIC_ int _pytalloc_check_type(PyObject *py_obj, const char *type_name); #define pytalloc_check_type(py_obj, type) \ _pytalloc_check_type((PyObject *)(py_obj), #type) /* Retrieve the pointer for a pytalloc_object. Like talloc_get_type() * but for pytalloc_Objects. */ -void *_pytalloc_get_type(PyObject *py_obj, const char *type_name); +_PUBLIC_ void *_pytalloc_get_type(PyObject *py_obj, const char *type_name); #define pytalloc_get_type(py_obj, type) ((type *)_pytalloc_get_type((PyObject *)(py_obj), #type)) -void *_pytalloc_get_ptr(PyObject *py_obj); +_PUBLIC_ void *_pytalloc_get_ptr(PyObject *py_obj); #define pytalloc_get_ptr(py_obj) _pytalloc_get_ptr((PyObject *)(py_obj)) -TALLOC_CTX *_pytalloc_get_mem_ctx(PyObject *py_obj); +_PUBLIC_ TALLOC_CTX *_pytalloc_get_mem_ctx(PyObject *py_obj); #define pytalloc_get_mem_ctx(py_obj) _pytalloc_get_mem_ctx((PyObject *)(py_obj)) -const char *_pytalloc_get_name(PyObject *py_obj); +_PUBLIC_ const char *_pytalloc_get_name(PyObject *py_obj); #define pytalloc_get_name(py_obj) _pytalloc_get_name((PyObject *)(py_obj)) -PyObject *pytalloc_steal_ex(PyTypeObject *py_type, TALLOC_CTX *mem_ctx, void *ptr); -PyObject *pytalloc_steal(PyTypeObject *py_type, void *ptr); -PyObject *pytalloc_reference_ex(PyTypeObject *py_type, TALLOC_CTX *mem_ctx, void *ptr); +_PUBLIC_ PyObject *pytalloc_steal_ex(PyTypeObject *py_type, TALLOC_CTX *mem_ctx, void *ptr); +_PUBLIC_ PyObject *pytalloc_steal(PyTypeObject *py_type, void *ptr); +_PUBLIC_ PyObject *pytalloc_reference_ex(PyTypeObject *py_type, TALLOC_CTX *mem_ctx, void *ptr); #define pytalloc_reference(py_type, talloc_ptr) pytalloc_reference_ex(py_type, talloc_ptr, talloc_ptr) #define pytalloc_new(type, typeobj) pytalloc_steal(typeobj, talloc_zero(NULL, type)) @@ -69,15 +69,15 @@ PyObject *pytalloc_reference_ex(PyTypeObject *py_type, TALLOC_CTX *mem_ctx, void * Wrap a generic talloc pointer into a talloc.GenericObject, * this is a subclass of talloc.BaseObject. */ -PyObject *pytalloc_GenericObject_steal_ex(TALLOC_CTX *mem_ctx, void *ptr); +_PUBLIC_ PyObject *pytalloc_GenericObject_steal_ex(TALLOC_CTX *mem_ctx, void *ptr); #define pytalloc_GenericObject_steal(talloc_ptr) \ pytalloc_GenericObject_steal_ex(talloc_ptr, talloc_ptr) -PyObject *pytalloc_GenericObject_reference_ex(TALLOC_CTX *mem_ctx, void *ptr); +_PUBLIC_ PyObject *pytalloc_GenericObject_reference_ex(TALLOC_CTX *mem_ctx, void *ptr); #define pytalloc_GenericObject_reference(talloc_ptr) \ pytalloc_GenericObject_reference_ex(talloc_ptr, talloc_ptr) -size_t pytalloc_BaseObject_size(void); +_PUBLIC_ size_t pytalloc_BaseObject_size(void); -int pytalloc_BaseObject_PyType_Ready(PyTypeObject *type); +_PUBLIC_ int pytalloc_BaseObject_PyType_Ready(PyTypeObject *type); #endif /* _PYTALLOC_H_ */