Message ID | 20200524221204.9791-1-lb.workbox@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | configure: Do not ignore malloc value | expand |
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
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