]> git.ipfire.org Git - thirdparty/glibc.git/blobdiff - locale/programs/locale-spec.c
Prefer https to http for gnu.org and fsf.org URLs
[thirdparty/glibc.git] / locale / programs / locale-spec.c
index 9c432e3ead29881bc8821d58ccbddaf773108ec0..15ac975288fb82f447d930ef281d5183ef26c96d 100644 (file)
@@ -1,27 +1,27 @@
 /* Handle special requests.
-   Copyright (C) 1996, 1997 Free Software Foundation, Inc.
+   Copyright (C) 1996-2019 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1996.
 
-   The GNU C Library is free software; you can redistribute it and/or
-   modify it under the terms of the GNU Library General Public License as
-   published by the Free Software Foundation; either version 2 of the
-   License, or (at your option) any later version.
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published
+   by the Free Software Foundation; version 2 of the License, or
+   (at your option) any later version.
 
-   The GNU C Library is distributed in the hope that it will be useful,
+   This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-   Library General Public License for more details.
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
 
-   You should have received a copy of the GNU Library General Public
-   License along with the GNU C Library; see the file COPYING.LIB.  If not,
-   write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-   Boston, MA 02111-1307, USA.  */
+   You should have received a copy of the GNU General Public License
+   along with this program; if not, see <https://www.gnu.org/licenses/>.  */
 
 #ifdef HAVE_CONFIG_H
 # include <config.h>
 #endif
 
+#include <error.h>
+#include <libintl.h>
 #include <stdio.h>
 #include <string.h>
 #include <wchar.h>
@@ -36,6 +36,7 @@ void
 locale_special (const char *name, int show_category_name,
                int show_keyword_name)
 {
+#if 0
   /* "collate-elements": print collation elements of locale.  */
   if (strcmp (name, "collate-elements") == 0)
     {
@@ -52,14 +53,13 @@ locale_special (const char *name, int show_category_name,
          size_t cnt;
 
          for (cnt = 0; cnt < nelem; ++cnt)
-           if (__collate_element_hash[2 * cnt] != (~((u_int32_t) 0)))
+           if (__collate_element_hash[2 * cnt] != (~((uint32_t) 0)))
              {
                size_t idx = __collate_element_hash[2 * cnt];
 
                printf ("%s<%s>", first ? "" : ";",
                        &__collate_element_strings[idx]);
 
-#if 0
                /* We don't print the string.  This is only confusing
                   because only the programs have to know the
                   encoding.  The code is left in place because it
@@ -80,12 +80,11 @@ locale_special (const char *name, int show_category_name,
                      if (ch != EOF)
                        putchar (ch);
                      else
-                       fputs ("<???>", stdout);
+                       fputs ("<??\?>", stdout);
                    }
 
                  putchar ('"');
                }
-#endif
                first = 0;
              }
        }
@@ -109,7 +108,7 @@ locale_special (const char *name, int show_category_name,
          {
            printf ("%s<%s>", first ? "" : ",",
                    &__collate_symbol_strings[__collate_symbol_hash[2 * cnt]]);
-#if 1
+#if 0
            {
              size_t idx = __collate_symbol_hash[2 * cnt + 1];
              size_t cls;
@@ -125,4 +124,8 @@ locale_special (const char *name, int show_category_name,
       putchar ('\n');
       return;
     }
+#endif
+
+  /* If nothing matches, fail.  */
+  error (1, 0, gettext ("unknown name \"%s\""), name);
 }