* [PATCH] fix a invalid conversion from 'void*' to 'char*'
@ 2017-05-13 9:42 liu.ming50
2017-05-28 1:46 ` Rich Felker
0 siblings, 1 reply; 2+ messages in thread
From: liu.ming50 @ 2017-05-13 9:42 UTC (permalink / raw)
To: musl; +Cc: Ming Liu
From: Ming Liu <peter.x.liu@external.atlascopco.com>
A compiling warning is observed with gcc -Wconversion option, fixed
by casting 'void*' to 'char*'.
Signed-off-by: Ming Liu <peter.x.liu@external.atlascopco.com>
---
include/string.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/include/string.h b/include/string.h
index ff9badb..b6b2d82 100644
--- a/include/string.h
+++ b/include/string.h
@@ -85,7 +85,7 @@ size_t strlcpy (char *, const char *, size_t);
#endif
#ifdef _GNU_SOURCE
-#define strdupa(x) strcpy(alloca(strlen(x)+1),x)
+#define strdupa(x) strcpy((char*)alloca(strlen(x)+1),x)
int strverscmp (const char *, const char *);
int strcasecmp_l (const char *, const char *, locale_t);
int strncasecmp_l (const char *, const char *, size_t, locale_t);
--
2.7.4
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [PATCH] fix a invalid conversion from 'void*' to 'char*'
2017-05-13 9:42 [PATCH] fix a invalid conversion from 'void*' to 'char*' liu.ming50
@ 2017-05-28 1:46 ` Rich Felker
0 siblings, 0 replies; 2+ messages in thread
From: Rich Felker @ 2017-05-28 1:46 UTC (permalink / raw)
To: musl
On Sat, May 13, 2017 at 11:42:01AM +0200, liu.ming50@gmail.com wrote:
> From: Ming Liu <peter.x.liu@external.atlascopco.com>
>
> A compiling warning is observed with gcc -Wconversion option, fixed
> by casting 'void*' to 'char*'.
>
> Signed-off-by: Ming Liu <peter.x.liu@external.atlascopco.com>
> ---
> include/string.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/include/string.h b/include/string.h
> index ff9badb..b6b2d82 100644
> --- a/include/string.h
> +++ b/include/string.h
> @@ -85,7 +85,7 @@ size_t strlcpy (char *, const char *, size_t);
> #endif
>
> #ifdef _GNU_SOURCE
> -#define strdupa(x) strcpy(alloca(strlen(x)+1),x)
> +#define strdupa(x) strcpy((char*)alloca(strlen(x)+1),x)
> int strverscmp (const char *, const char *);
> int strcasecmp_l (const char *, const char *, locale_t);
> int strncasecmp_l (const char *, const char *, size_t, locale_t);
> --
> 2.7.4
Apologies for not replying sooner; I've been behind on everything.
Generally it's the intent of GCC not to produce warnings for code in
or expanded from system headers. If you're getting warnings like this,
check that you don't have an installation problem (or maybe explicit
-I of system header path) that confuses GCC and makes it think these
are not system headers.
Casting the return value of allocation functions is generally
Considered Harmful in C, and not something you want to be doing, but
perhaps the problems is arising when this macro is used in C++ code?
Can you be more specific about how you encountered it? If it really is
invalid as C++ perhaps something should be changed since the header is
intended to be usable as C++.
Rich
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2017-05-28 1:46 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-05-13 9:42 [PATCH] fix a invalid conversion from 'void*' to 'char*' liu.ming50
2017-05-28 1:46 ` Rich Felker
Code repositories for project(s) associated with this public inbox
https://git.vuxu.org/mirror/musl/
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).