Enchant
Generic spell checking library
sys_types.in.h
1
/* Provide a more complete sys/types.h.
2
3
Copyright (C) 2011-2023 Free Software Foundation, Inc.
4
5
This file is free software: you can redistribute it and/or modify
6
it under the terms of the GNU Lesser General Public License as
7
published by the Free Software Foundation; either version 2.1 of the
8
License, or (at your option) any later version.
9
10
This file 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, see <https://www.gnu.org/licenses/>. */
17
18
#if __GNUC__ >= 3
19
@PRAGMA_SYSTEM_HEADER@
20
#endif
21
@PRAGMA_COLUMNS@
22
23
/* This file uses #include_next of a system file that defines time_t.
24
For the 'year2038' module to work right, <config.h> needs to have been
25
included before. */
26
#if !_GL_CONFIG_H_INCLUDED
27
#error "Please include config.h first."
28
#endif
29
30
#if defined _WIN32 && !defined __CYGWIN__ \
31
&& (defined __need_off_t || defined __need___off64_t \
32
|| defined __need_ssize_t || defined __need_time_t)
33
34
/* Special invocation convention inside mingw header files. */
35
36
#@INCLUDE_NEXT@ @NEXT_SYS_TYPES_H@
37
38
#else
39
/* Normal invocation convention. */
40
41
#ifndef _@GUARD_PREFIX@_SYS_TYPES_H
42
43
/* The include_next requires a split double-inclusion guard. */
44
# define _GL_INCLUDING_SYS_TYPES_H
45
#@INCLUDE_NEXT@ @NEXT_SYS_TYPES_H@
46
# undef _GL_INCLUDING_SYS_TYPES_H
47
48
#ifndef _@GUARD_PREFIX@_SYS_TYPES_H
49
#define _@GUARD_PREFIX@_SYS_TYPES_H
50
51
/* Override off_t if Large File Support is requested on native Windows. */
52
#if @WINDOWS_64_BIT_OFF_T@
53
/* Same as int64_t in <stdint.h>. */
54
# if defined _MSC_VER
55
# define off_t __int64
56
# else
57
# define off_t long long int
58
# endif
59
/* Indicator, for gnulib internal purposes. */
60
# define _GL_WINDOWS_64_BIT_OFF_T 1
61
#endif
62
63
/* Override dev_t and ino_t if distinguishable inodes support is requested
64
on native Windows. */
65
#if @WINDOWS_STAT_INODES@
66
67
# if @WINDOWS_STAT_INODES@ == 2
68
/* Experimental, not useful in Windows 10. */
69
70
/* Define dev_t to a 64-bit type. */
71
# if !defined GNULIB_defined_dev_t
72
typedef
unsigned
long
long
int
rpl_dev_t;
73
# undef dev_t
74
# define dev_t rpl_dev_t
75
# define GNULIB_defined_dev_t 1
76
# endif
77
78
/* Define ino_t to a 128-bit type. */
79
# if !defined GNULIB_defined_ino_t
80
/* MSVC does not have a 128-bit integer type.
81
GCC has a 128-bit integer type __int128, but only on 64-bit targets. */
82
typedef
struct
{
unsigned
long
long
int
_gl_ino[2]; } rpl_ino_t;
83
# undef ino_t
84
# define ino_t rpl_ino_t
85
# define GNULIB_defined_ino_t 1
86
# endif
87
88
# else
/* @WINDOWS_STAT_INODES@ == 1 */
89
90
/* Define ino_t to a 64-bit type. */
91
# if !defined GNULIB_defined_ino_t
92
typedef
unsigned
long
long
int
rpl_ino_t;
93
# undef ino_t
94
# define ino_t rpl_ino_t
95
# define GNULIB_defined_ino_t 1
96
# endif
97
98
# endif
99
100
/* Indicator, for gnulib internal purposes. */
101
# define _GL_WINDOWS_STAT_INODES @WINDOWS_STAT_INODES@
102
103
#endif
104
105
/* MSVC 9 defines size_t in <stddef.h>, not in <sys/types.h>. */
106
/* But avoid namespace pollution on glibc systems. */
107
#if (defined _WIN32 && ! defined __CYGWIN__) && ! defined __GLIBC__
108
# include <stddef.h>
109
#endif
110
111
#endif
/* _@GUARD_PREFIX@_SYS_TYPES_H */
112
#endif
/* _@GUARD_PREFIX@_SYS_TYPES_H */
113
#endif
/* __need_XXX */
enchant-2.6.5
lib
sys_types.in.h
Generated by
1.9.1