From: Leonid Bloch <lbloch@janustech.com>
Not checking the value of malloc will cause a warning with GCC 10.1,
which may result in configuration failure, with the following line in
config.log:
config-temp/qemu-conf.c:2:18: error: ignoring return value of ‘malloc’ declared with attribute ‘warn_unused_result’ [-Werror=unused-result]
2 | int main(void) { malloc(1); return 0; }
| ^~~~~~~~~
Signed-off-by: Leonid Bloch <lb.workbox@gmail.com>
---
configure | 20 +++++++++++++++++---
1 file changed, 17 insertions(+), 3 deletions(-)
diff --git a/configure b/configure
index 2fc05c4465..d0220b2944 100755
--- a/configure
+++ b/configure
@@ -4567,7 +4567,13 @@ fi
if test "$tcmalloc" = "yes" ; then
cat > $TMPC << EOF
#include <stdlib.h>
-int main(void) { malloc(1); return 0; }
+int main(void) {
+ void *tmp = malloc(1);
+ if (tmp != NULL) {
+ return 0;
+ }
+ return 1;
+}
EOF
if compile_prog "" "-ltcmalloc" ; then
@@ -4583,7 +4589,13 @@ fi
if test "$jemalloc" = "yes" ; then
cat > $TMPC << EOF
#include <stdlib.h>
-int main(void) { malloc(1); return 0; }
+int main(void) {
+ void *tmp = malloc(1);
+ if (tmp != NULL) {
+ return 0;
+ }
+ return 1;
+}
EOF
if compile_prog "" "-ljemalloc" ; then
@@ -6144,7 +6156,9 @@ if test "$sanitizers" = "yes" ; then
#include <stdlib.h>
int main(void) {
void *tmp = malloc(10);
- return *(int *)(tmp + 2);
+ if (tmp != NULL) {
+ return *(int *)(tmp + 2);
+ }
}
EOF
if compile_prog "$CPU_CFLAGS -Werror -fsanitize=undefined" ""; then
--
2.26.2
On 5/25/20 12:12 AM, Leonid Bloch wrote:
> From: Leonid Bloch <lbloch@janustech.com>
>
> Not checking the value of malloc will cause a warning with GCC 10.1,
> which may result in configuration failure, with the following line in
> config.log:
>
> config-temp/qemu-conf.c:2:18: error: ignoring return value of ‘malloc’ declared with attribute ‘warn_unused_result’ [-Werror=unused-result]
> 2 | int main(void) { malloc(1); return 0; }
> | ^~~~~~~~~
Do we want to add -Wno-unused-result to compile_prog()?
>
> Signed-off-by: Leonid Bloch <lb.workbox@gmail.com>
> ---
> configure | 20 +++++++++++++++++---
> 1 file changed, 17 insertions(+), 3 deletions(-)
>
> diff --git a/configure b/configure
> index 2fc05c4465..d0220b2944 100755
> --- a/configure
> +++ b/configure
> @@ -4567,7 +4567,13 @@ fi
> if test "$tcmalloc" = "yes" ; then
> cat > $TMPC << EOF
> #include <stdlib.h>
> -int main(void) { malloc(1); return 0; }
> +int main(void) {
> + void *tmp = malloc(1);
> + if (tmp != NULL) {
> + return 0;
> + }
> + return 1;
> +}
> EOF
>
> if compile_prog "" "-ltcmalloc" ; then
> @@ -4583,7 +4589,13 @@ fi
> if test "$jemalloc" = "yes" ; then
> cat > $TMPC << EOF
> #include <stdlib.h>
> -int main(void) { malloc(1); return 0; }
> +int main(void) {
> + void *tmp = malloc(1);
> + if (tmp != NULL) {
> + return 0;
> + }
> + return 1;
> +}
> EOF
>
> if compile_prog "" "-ljemalloc" ; then
> @@ -6144,7 +6156,9 @@ if test "$sanitizers" = "yes" ; then
> #include <stdlib.h>
> int main(void) {
> void *tmp = malloc(10);
> - return *(int *)(tmp + 2);
> + if (tmp != NULL) {
> + return *(int *)(tmp + 2);
> + }
> }
> EOF
> if compile_prog "$CPU_CFLAGS -Werror -fsanitize=undefined" ""; then
>
On 25/05/20 00:12, Leonid Bloch wrote:
> From: Leonid Bloch <lbloch@janustech.com>
>
> Not checking the value of malloc will cause a warning with GCC 10.1,
> which may result in configuration failure, with the following line in
> config.log:
>
> config-temp/qemu-conf.c:2:18: error: ignoring return value of ‘malloc’ declared with attribute ‘warn_unused_result’ [-Werror=unused-result]
> 2 | int main(void) { malloc(1); return 0; }
> | ^~~~~~~~~
>
> Signed-off-by: Leonid Bloch <lb.workbox@gmail.com>
> ---
> configure | 20 +++++++++++++++++---
> 1 file changed, 17 insertions(+), 3 deletions(-)
>
> diff --git a/configure b/configure
> index 2fc05c4465..d0220b2944 100755
> --- a/configure
> +++ b/configure
> @@ -4567,7 +4567,13 @@ fi
> if test "$tcmalloc" = "yes" ; then
> cat > $TMPC << EOF
> #include <stdlib.h>
> -int main(void) { malloc(1); return 0; }
> +int main(void) {
> + void *tmp = malloc(1);
> + if (tmp != NULL) {
> + return 0;
> + }
> + return 1;
> +}
> EOF
>
> if compile_prog "" "-ltcmalloc" ; then
> @@ -4583,7 +4589,13 @@ fi
> if test "$jemalloc" = "yes" ; then
> cat > $TMPC << EOF
> #include <stdlib.h>
> -int main(void) { malloc(1); return 0; }
> +int main(void) {
> + void *tmp = malloc(1);
> + if (tmp != NULL) {
> + return 0;
> + }
> + return 1;
> +}
> EOF
>
> if compile_prog "" "-ljemalloc" ; then
> @@ -6144,7 +6156,9 @@ if test "$sanitizers" = "yes" ; then
> #include <stdlib.h>
> int main(void) {
> void *tmp = malloc(10);
> - return *(int *)(tmp + 2);
> + if (tmp != NULL) {
> + return *(int *)(tmp + 2);
> + }
> }
> EOF
> if compile_prog "$CPU_CFLAGS -Werror -fsanitize=undefined" ""; then
>
Queued, thanks.
Paolo
© 2016 - 2026 Red Hat, Inc.