Update.
authorUlrich Drepper <drepper@redhat.com>
Thu, 6 Dec 2001 07:59:42 +0000 (07:59 +0000)
committerUlrich Drepper <drepper@redhat.com>
Thu, 6 Dec 2001 07:59:42 +0000 (07:59 +0000)
* string/tester.c: Add tests for strcasecmp and strncasecmp.
* Versions.def (libc): Add GCC_3.0.
__deregister_frame_info_bases, _Unwind_Find_FDE): Add for GCC_3.0.

ChangeLog
Versions.def
elf/Versions
scripts/versions.awk
string/tester.c

index 0bf76aa..222b69e 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -3,6 +3,7 @@
        * sysdeps/generic/strcasecmp.c (__strcasecmp): Little performance
        patch.
        * sysdeps/generic/strncase.c: Likewise.
+       * string/tester.c: Add tests for strcasecmp and strncasecmp.
 
 2001-12-05  Geoff Keating  <geoffk@redhat.com>
 
 2001-10-02  Jakub Jelinek  <jakub@redhat.com>
            H.J. Lu  <hjl@gnu.org>
 
+       * Versions.def (libc): Add GCC_3.0.
        * configure.in (libc_cv_gcc_static_libgcc): Set to -static-libgcc
        if gcc supports this flag.
        (EXPORT_UNWIND_FIND_FDE): Define unless target configure disables it.
        * elf/Versions (__register_frame_info, __deregister_frame_info): Add
        for GLIBC_2.0.
        (__register_frame_info_bases, __register_frame_info_table_bases,
-       __deregister_frame_info_bases, _Unwind_Find_FDE): Add for GLIBC_2.2.5.
+       __deregister_frame_info_bases, _Unwind_Find_FDE): Add for GCC_3.0.
        * elf/Makefile (routines): Add unwind-dw2-fde.
        (shared-only-routines): Add unwind-dw2-fde.
        * sysdeps/alpha/gccframe.h: New file.
index 830a610..a5829cf 100644 (file)
@@ -17,6 +17,9 @@ libc {
 %ifdef USE_IN_LIBIO
   HURD_CTHREADS_0.3
 %endif
+%ifdef EXPORT_UNWIND_FIND_FDE
+  GCC_3.0
+%endif
 }
 libcrypt {
   GLIBC_2.0
index a0e691c..0c34804 100644 (file)
@@ -21,7 +21,7 @@ libc {
     dl_iterate_phdr;
   }
 %ifdef EXPORT_UNWIND_FIND_FDE
-  GLIBC_2.2.5 {
+  GCC_3.0 {
     __register_frame_info_bases; __deregister_frame_info_bases;
     __register_frame_info_table_bases; _Unwind_Find_FDE;
   }
index 64ac2d9..1c03fd3 100644 (file)
@@ -61,7 +61,10 @@ BEGIN {
 # current library.  This is the only place where we print something to
 # the intermediate file.
 /^   / {
-  printf("%s %s %s\n", actlib, actver, $0) | sort;
+  sortver=actver
+  # Ensure GLIBC_ versions come always first
+  sub(/^GLIBC_/," GLIBC_",sortver)
+  printf("%s %s %s\n", actlib, sortver, $0) | sort;
 }
 
 
index 39ae0d8..eb630a1 100644 (file)
@@ -1302,6 +1302,52 @@ test_strerror (void)
   check(strerror(ENOENT) != 0, 3);
 }
 
+static void
+test_strcasecmp (void)
+{
+  it = "strcasecmp";
+  /* Note that the locale is "C".  */
+  check(strcasecmp("a", "a") == 0, 1);
+  check(strcasecmp("a", "A") == 0, 2);
+  check(strcasecmp("A", "a") == 0, 3);
+  check(strcasecmp("a", "b") < 0, 4);
+  check(strcasecmp("c", "b") > 0, 5);
+  check(strcasecmp("abc", "AbC") == 0, 6);
+  check(strcasecmp("0123456789", "0123456789") == 0, 7);
+  check(strcasecmp("", "0123456789") < 0, 8);
+  check(strcasecmp("AbC", "") > 0, 9);
+  check(strcasecmp("AbC", "A") > 0, 10);
+  check(strcasecmp("AbC", "Ab") > 0, 11);
+  check(strcasecmp("AbC", "ab") > 0, 12);
+}
+
+static void
+test_strncasecmp (void)
+{
+  it = "strncasecmp";
+  /* Note that the locale is "C".  */
+  check(strncasecmp("a", "a", 5) == 0, 1);
+  check(strncasecmp("a", "A", 5) == 0, 2);
+  check(strncasecmp("A", "a", 5) == 0, 3);
+  check(strncasecmp("a", "b", 5) < 0, 4);
+  check(strncasecmp("c", "b", 5) > 0, 5);
+  check(strncasecmp("abc", "AbC", 5) == 0, 6);
+  check(strncasecmp("0123456789", "0123456789", 10) == 0, 7);
+  check(strncasecmp("", "0123456789", 10) < 0, 8);
+  check(strncasecmp("AbC", "", 5) > 0, 9);
+  check(strncasecmp("AbC", "A", 5) > 0, 10);
+  check(strncasecmp("AbC", "Ab", 5) > 0, 11);
+  check(strncasecmp("AbC", "ab", 5) > 0, 12);
+  check(strncasecmp("0123456789", "AbC", 0) == 0, 13);
+  check(strncasecmp("AbC", "abc", 1) == 0, 14);
+  check(strncasecmp("AbC", "abc", 2) == 0, 15);
+  check(strncasecmp("AbC", "abc", 3) == 0, 16);
+  check(strncasecmp("AbC", "abcd", 3) == 0, 17);
+  check(strncasecmp("AbC", "abcd", 4) < 0, 18);
+  check(strncasecmp("ADC", "abcd", 1) == 0, 19);
+  check(strncasecmp("ADC", "abcd", 2) > 0, 20);
+}
+
 int
 main (void)
 {
@@ -1412,6 +1458,11 @@ main (void)
   /* strerror - VERY system-dependent.  */
   test_strerror ();
 
+  /* strcasecmp.  Without locale dependencies.  */
+  test_strcasecmp ();
+
+  /* strncasecmp.  Without locale dependencies.  */
+  test_strncasecmp ();
 
   if (errors == 0)
     {