|
Message-ID: <CAPG2z0_sSXmZ57KZczqL6nAbnLP7py35ka09QCMMe_5eOe=0Dw@mail.gmail.com>
Date: Wed, 22 Jun 2022 16:05:20 +0800
From: He X <xw897002528@...il.com>
To: musl@...ts.openwall.com
Subject: g++ fpermissive compilation error for strdupa
Hi!
Since *alloca* will return *void**, g++ will report error(*-fpermissive,
invalid conversion from void* to char**), if you do *strcpy(alloca(32),
str)*, which is the definition of *strdupa* on musl. I've patched it by
type casting to fix the build of bazel. Could this be merged upstream?
--- a/include/string.h 2022-04-08 01:12:40.000000000 +0800
+++ b/include/string.h 2022-04-08 01:12:40.000000000 +0800
@@ -88,7 +88,7 @@
#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 *);
char *strchrnul(const char *, int);
char *strcasestr(const char *, const char *);
--
Best regards,
xhe
Content of type "text/html" skipped
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.