"Fossies" - the Fresh Open Source Software Archive

Member "plptools-1.0.15/intl/ngettext.c" (31 Oct 2019, 1907 Bytes) of package /linux/privat/plptools-1.0.15.tar.gz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) C and C++ source code syntax highlighting (style: standard) with prefixed line numbers and code folding option. Alternatively you can here view or download the uninterpreted source code file. See also the last Fossies "Diffs" side-by-side code changes report for "ngettext.c": 1.0.13_vs_1.0.14-Source.

    1 /* Implementation of ngettext(3) function.
    2    Copyright (C) 1995-2015 Free Software Foundation, Inc.
    3 
    4    This program is free software: you can redistribute it and/or modify
    5    it under the terms of the GNU Lesser General Public License as published by
    6    the Free Software Foundation; either version 2.1 of the License, or
    7    (at your option) any later version.
    8 
    9    This program is distributed in the hope that it will be useful,
   10    but WITHOUT ANY WARRANTY; without even the implied warranty of
   11    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   12    GNU Lesser General Public License for more details.
   13 
   14    You should have received a copy of the GNU Lesser General Public License
   15    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
   16 
   17 #ifdef HAVE_CONFIG_H
   18 # include <config.h>
   19 #endif
   20 
   21 #ifdef _LIBC
   22 # define __need_NULL
   23 # include <stddef.h>
   24 #else
   25 # include <stdlib.h>        /* Just for NULL.  */
   26 #endif
   27 
   28 #include "gettextP.h"
   29 #ifdef _LIBC
   30 # include <libintl.h>
   31 #else
   32 # include "libgnuintl.h"
   33 #endif
   34 
   35 #include <locale.h>
   36 
   37 /* @@ end of prolog @@ */
   38 
   39 /* Names for the libintl functions are a problem.  They must not clash
   40    with existing names and they should follow ANSI C.  But this source
   41    code is also used in GNU C Library where the names have a __
   42    prefix.  So we have to make a difference here.  */
   43 #ifdef _LIBC
   44 # define NGETTEXT __ngettext
   45 # define DCNGETTEXT __dcngettext
   46 #else
   47 # define NGETTEXT libintl_ngettext
   48 # define DCNGETTEXT libintl_dcngettext
   49 #endif
   50 
   51 /* Look up MSGID in the current default message catalog for the current
   52    LC_MESSAGES locale.  If not found, returns MSGID itself (the default
   53    text).  */
   54 char *
   55 NGETTEXT (const char *msgid1, const char *msgid2, unsigned long int n)
   56 {
   57   return DCNGETTEXT (NULL, msgid1, msgid2, n, LC_MESSAGES);
   58 }
   59 
   60 #ifdef _LIBC
   61 /* Alias for function name in GNU C Library.  */
   62 weak_alias (__ngettext, ngettext);
   63 #endif