Discussion:
[PATCH] Fix posix_memalign() attributes
Sebastian Huber
2018-10-22 09:27:44 UTC
Permalink
The malloc, alloc_size and alloc_aligned attributes must be only used in
case the function returns the pointer to the allocated memory.

See also:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87683

Signed-off-by: Sebastian Huber <***@embedded-brains.de>
---
newlib/libc/include/stdlib.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/newlib/libc/include/stdlib.h b/newlib/libc/include/stdlib.h
index 1972be79b..9773d3672 100644
--- a/newlib/libc/include/stdlib.h
+++ b/newlib/libc/include/stdlib.h
@@ -282,8 +282,8 @@ int _unsetenv_r (struct _reent *, const char *__string);
#endif /* !__CYGWIN__ */

#if __POSIX_VISIBLE >= 200112
-int posix_memalign (void **, size_t, size_t) __malloc_like __nonnull((1))
- __alloc_align(2) __alloc_size(3) __result_use_check;
+int posix_memalign (void **, size_t, size_t) __nonnull((1))
+ __result_use_check;
#endif

char * _dtoa_r (struct _reent *, double, int, int, int *, int*, char**);
--
2.16.4
Corinna Vinschen
2018-10-23 08:14:08 UTC
Permalink
Post by Sebastian Huber
The malloc, alloc_size and alloc_aligned attributes must be only used in
case the function returns the pointer to the allocated memory.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87683
---
newlib/libc/include/stdlib.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/newlib/libc/include/stdlib.h b/newlib/libc/include/stdlib.h
index 1972be79b..9773d3672 100644
--- a/newlib/libc/include/stdlib.h
+++ b/newlib/libc/include/stdlib.h
@@ -282,8 +282,8 @@ int _unsetenv_r (struct _reent *, const char *__string);
#endif /* !__CYGWIN__ */
#if __POSIX_VISIBLE >= 200112
-int posix_memalign (void **, size_t, size_t) __malloc_like __nonnull((1))
- __alloc_align(2) __alloc_size(3) __result_use_check;
+int posix_memalign (void **, size_t, size_t) __nonnull((1))
+ __result_use_check;
#endif
char * _dtoa_r (struct _reent *, double, int, int, int *, int*, char**);
--
2.16.4
Thanks, please push.


Corinna
--
Corinna Vinschen
Cygwin Maintainer
Red Hat
Loading...