// Memory allocation //
///////////////////////
-extern void * lzma_attribute((__malloc__)) lzma_attr_alloc_size(1)
+extern void * lzma_attr_alloc_size(1)
lzma_alloc(size_t size, const lzma_allocator *allocator)
{
// Some malloc() variants return NULL if called with size == 0.
}
-extern void * lzma_attribute((__malloc__)) lzma_attr_alloc_size(1)
+extern void * lzma_attr_alloc_size(1)
lzma_alloc_zero(size_t size, const lzma_allocator *allocator)
{
// Some calloc() variants return NULL if called with size == 0.
/// Allocates memory
extern void *lzma_alloc(size_t size, const lzma_allocator *allocator)
- lzma_attribute((__malloc__)) lzma_attr_alloc_size(1);
+ lzma_attr_alloc_size(1);
/// Allocates memory and zeroes it (like calloc()). This can be faster
/// than lzma_alloc() + memzero() while being backward compatible with
/// custom allocators.
-extern void * lzma_attribute((__malloc__)) lzma_attr_alloc_size(1)
+extern void * lzma_attr_alloc_size(1)
lzma_alloc_zero(size_t size, const lzma_allocator *allocator);
/// Frees memory
/// \brief Safe realloc() that never returns NULL
extern void *xrealloc(void *ptr, size_t size)
- lzma_attribute((__malloc__)) lzma_attr_alloc_size(2);
+ lzma_attr_alloc_size(2);
/// \brief Safe strdup() that never returns NULL
-extern char *xstrdup(const char *src) lzma_attribute((__malloc__));
+extern char *xstrdup(const char *src);
/// \brief Fancy version of strtoull()