~ubuntu-branches/ubuntu/vivid/gtk-vnc/vivid

« back to all changes in this revision

Viewing changes to gnulib/lib/wchar.in.h

  • Committer: Bazaar Package Importer
  • Author(s): Laurent Léonard
  • Date: 2011-02-24 11:01:07 UTC
  • mfrom: (1.2.2 upstream) (19.1.1 experimental)
  • Revision ID: james.westby@ubuntu.com-20110224110107-207t4aa9q1zs6621
Tags: 0.4.3-1
* [fbdc9dd] Imported Upstream version 0.4.3
* [f7c6520] Redo patch

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/* A substitute for ISO C99 <wchar.h>, for platforms that have issues.
2
 
 
3
 
   Copyright (C) 2007-2008 Free Software Foundation, Inc.
4
 
 
5
 
   This program is free software; you can redistribute it and/or modify
6
 
   it under the terms of the GNU Lesser General Public License as published by
7
 
   the Free Software Foundation; either version 2.1, or (at your option)
8
 
   any later version.
9
 
 
10
 
   This program is distributed in the hope that it will be useful,
11
 
   but WITHOUT ANY WARRANTY; without even the implied warranty of
12
 
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13
 
   GNU Lesser General Public License for more details.
14
 
 
15
 
   You should have received a copy of the GNU Lesser General Public License
16
 
   along with this program; if not, write to the Free Software Foundation,
17
 
   Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.  */
18
 
 
19
 
/* Written by Eric Blake.  */
20
 
 
21
 
/*
22
 
 * ISO C 99 <wchar.h> for platforms that have issues.
23
 
 * <http://www.opengroup.org/susv3xbd/wchar.h.html>
24
 
 *
25
 
 * For now, this just ensures proper prerequisite inclusion order and
26
 
 * the declaration of wcwidth().
27
 
 */
28
 
 
29
 
@PRAGMA_SYSTEM_HEADER@
30
 
 
31
 
#ifdef __need_mbstate_t
32
 
/* Special invocation convention inside uClibc header files.  */
33
 
 
34
 
#@INCLUDE_NEXT@ @NEXT_WCHAR_H@
35
 
 
36
 
#else
37
 
/* Normal invocation convention.  */
38
 
 
39
 
#ifndef _GL_WCHAR_H
40
 
 
41
 
/* Tru64 with Desktop Toolkit C has a bug: <stdio.h> must be included before
42
 
   <wchar.h>.
43
 
   BSD/OS 4.0.1 has a bug: <stddef.h>, <stdio.h> and <time.h> must be
44
 
   included before <wchar.h>.  */
45
 
#include <stddef.h>
46
 
#include <stdio.h>
47
 
#include <time.h>
48
 
 
49
 
/* Include the original <wchar.h> if it exists.
50
 
   Some builds of uClibc lack it.  */
51
 
/* The include_next requires a split double-inclusion guard.  */
52
 
#if @HAVE_WCHAR_H@
53
 
# @INCLUDE_NEXT@ @NEXT_WCHAR_H@
54
 
#endif
55
 
 
56
 
#ifndef _GL_WCHAR_H
57
 
#define _GL_WCHAR_H
58
 
 
59
 
/* The definition of GL_LINK_WARNING is copied here.  */
60
 
 
61
 
#ifdef __cplusplus
62
 
extern "C" {
63
 
#endif
64
 
 
65
 
 
66
 
/* Define wint_t.  (Also done in wctype.in.h.)  */
67
 
#if !@HAVE_WINT_T@ && !defined wint_t
68
 
# define wint_t int
69
 
#endif
70
 
 
71
 
 
72
 
/* Return the number of screen columns needed for WC.  */
73
 
#if @GNULIB_WCWIDTH@
74
 
# if @REPLACE_WCWIDTH@
75
 
#  undef wcwidth
76
 
#  define wcwidth rpl_wcwidth
77
 
extern int wcwidth (wchar_t);
78
 
# else
79
 
#  if !defined wcwidth && !@HAVE_DECL_WCWIDTH@
80
 
/* wcwidth exists but is not declared.  */
81
 
extern int wcwidth (int /* actually wchar_t */);
82
 
#  endif
83
 
# endif
84
 
#elif defined GNULIB_POSIXCHECK
85
 
# undef wcwidth
86
 
# define wcwidth(w) \
87
 
    (GL_LINK_WARNING ("wcwidth is unportable - " \
88
 
                      "use gnulib module wcwidth for portability"), \
89
 
     wcwidth (w))
90
 
#endif
91
 
 
92
 
 
93
 
#ifdef __cplusplus
94
 
}
95
 
#endif
96
 
 
97
 
#endif /* _GL_WCHAR_H */
98
 
#endif /* _GL_WCHAR_H */
99
 
#endif