about summary refs log tree commit diff
path: root/string/test-ffs.c
diff options
context:
space:
mode:
authorSiddhesh Poyarekar <siddhesh@sourceware.org>2020-11-12 13:16:02 +0530
committerSiddhesh Poyarekar <siddhesh@sourceware.org>2020-11-12 14:54:24 +0530
commitb7aa84d5a5d0deaf7657191e0cd9d1d83d145dab (patch)
tree5596b98d1b364a2917d6e947e9d5c73ecad882d4 /string/test-ffs.c
parent7163ace3318d666d40771f5c8e7c4a148827070f (diff)
downloadglibc-b7aa84d5a5d0deaf7657191e0cd9d1d83d145dab.tar.gz
glibc-b7aa84d5a5d0deaf7657191e0cd9d1d83d145dab.tar.xz
glibc-b7aa84d5a5d0deaf7657191e0cd9d1d83d145dab.zip
Don't use nested function in test-ffs
There is no real need to use a nested function in that test, so break
it out so that it can build with clang too.
Diffstat (limited to 'string/test-ffs.c')
-rw-r--r--string/test-ffs.c36
1 files changed, 14 insertions, 22 deletions
diff --git a/string/test-ffs.c b/string/test-ffs.c
index 0df488fa2b..af03df90a1 100644
--- a/string/test-ffs.c
+++ b/string/test-ffs.c
@@ -20,28 +20,25 @@
 #include <stdlib.h>
 #include <stdio.h>
 #include <string.h>
+#include <support/check.h>
+
+void try (const char *name, long long int param, int value, int expected)
+{
+  if (value != expected)
+    {
+      printf ("%s(%#llx) expected %d got %d\n",
+	      name, param, expected, value);
+      support_record_failure ();
+    }
+  else
+    printf ("%s(%#llx) as expected %d\n", name, param, value);
+}
 
 int
 do_test (void)
 {
-  int failures = 0;
   int i;
 
-  auto void try (const char *name, long long int param, int value,
-		 int expected);
-
-  void try (const char *name, long long int param, int value, int expected)
-    {
-      if (value != expected)
-	{
-	  printf ("%s(%#llx) expected %d got %d\n",
-		  name, param, expected, value);
-	  ++failures;
-	}
-      else
-	printf ("%s(%#llx) as expected %d\n", name, param, value);
-    }
-
 #define TEST(fct, type) \
   try (#fct, 0, fct ((type) 0), 0);					      \
   for (i=0 ; i < 8 * sizeof (type); i++)				      \
@@ -54,12 +51,7 @@ do_test (void)
   TEST (ffsl, long int);
   TEST (ffsll, long long int);
 
-  if (failures)
-    printf ("Test FAILED!  %d failure%s.\n", failures, &"s"[failures == 1]);
-  else
-    puts ("Test succeeded.");
-
-  return failures;
+  return 0;
 }
 
 #include <support/test-driver.c>