about summary refs log tree commit diff
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2021-10-05 14:25:40 +0000
committerFlorian Weimer <fweimer@redhat.com>2023-01-11 14:11:21 +0100
commit26c7c6bac9da305b634a661aa491dae2756581ec (patch)
treeae788066e784bc3a351fef5a69e6868de22ed08b
parent92d5c52aaac0fa8e58b92e96bf2025d6848a2845 (diff)
downloadglibc-26c7c6bac9da305b634a661aa491dae2756581ec.tar.gz
glibc-26c7c6bac9da305b634a661aa491dae2756581ec.tar.xz
glibc-26c7c6bac9da305b634a661aa491dae2756581ec.zip
Fix stdlib/tst-setcontext.c for GCC 12 -Warray-compare
Building stdlib/tst-setcontext.c fails with GCC mainline:

tst-setcontext.c: In function 'f2':
tst-setcontext.c:61:16: error: comparison between two arrays [-Werror=array-compare]
   61 |   if (on_stack < st2 || on_stack >= st2 + sizeof (st2))
      |                ^
tst-setcontext.c:61:16: note: use '&on_stack[0] < &st2[0]' to compare the addresses

The comparison in this case is deliberate, so adjust it as suggested
in that note.

Tested with build-many-glibcs.py (GCC mainline) for aarch64-linux-gnu.

(cherry picked from commit a0f0c08e4fe18e78866539b0571f8e4b57dba7a3)
-rw-r--r--stdlib/tst-setcontext.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/stdlib/tst-setcontext.c b/stdlib/tst-setcontext.c
index 1b511708c1..1c2925bb76 100644
--- a/stdlib/tst-setcontext.c
+++ b/stdlib/tst-setcontext.c
@@ -58,7 +58,7 @@ f2 (void)
   puts ("start f2");
 
   printf ("&on_stack=%p\n", on_stack);
-  if (on_stack < st2 || on_stack >= st2 + sizeof (st2))
+  if (&on_stack[0] < &st2[0] || &on_stack[0] >= st2 + sizeof (st2))
     {
       printf ("%s: memory stack is not where it belongs!", __FUNCTION__);
       exit (1);