Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # 1 "/home/ubuntu/tor-browser-build/gitian-builder/inputs/tor-browser/memory/replace/realloc/realloc.c"
- # 1 "/home/ubuntu/tor-browser-build/gitian-builder/inputs/tor-browser/obj-x86_64-unknown-linux-gnu/memory/replace/realloc//"
- # 1 "<built-in>"
- # 1 "<command-line>"
- # 1 "/home/ubuntu/tor-browser-build/gitian-builder/inputs/tor-browser/config/gcc_hidden.h" 1
- /* This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- /* Begin all files as hidden visibility */
- #pragma GCC visibility push(hidden)
- # 1 "<command-line>" 2
- # 1 "./../../../mozilla-config.h" 1
- /* List of defines generated by configure. Included with preprocessor flag,
- * -include, to avoid long list of -D defines on the compile command-line.
- * Do not edit.
- */
- # 181 "./../../../mozilla-config.h"
- /* The c99 defining the limit macros (UINT32_MAX for example), says:
- * C++ implementations should define these macros only when __STDC_LIMIT_MACROS
- * is defined before <stdint.h> is included. */
- /* Force-include hunspell_alloc_hooks.h and hunspell_fopen_hooks.h for hunspell,
- * so that we don't need to modify it directly.
- *
- * HUNSPELL_STATIC is defined in extensions/spellcheck/hunspell/src/Makefile.in,
- * unless --enable-system-hunspell is defined.
- */
- # 1 "<command-line>" 2
- # 1 "/home/ubuntu/tor-browser-build/gitian-builder/inputs/tor-browser/memory/replace/realloc/realloc.c"
- // This header will declare all the replacement functions, such that you don't need
- // to worry about exporting them with the right idiom (dllexport, visibility...)
- # 1 "../../../dist/include/replace_malloc.h" 1
- /* This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this file,
- * You can obtain one at http://mozilla.org/MPL/2.0/. */
- /*
- * The replace_malloc facility allows an external library to replace or
- * supplement the jemalloc implementation.
- *
- * The external library may be hooked by setting one of the following
- * environment variables to the library path:
- * - LD_PRELOAD on Linux,
- * - DYLD_INSERT_LIBRARIES on OSX,
- * - MOZ_REPLACE_MALLOC_LIB on Windows and Android.
- *
- * An initialization function is called before any malloc replacement
- * function, and has the following declaration:
- *
- * void replace_init(const malloc_table_t *)
- *
- * The const malloc_table_t pointer given to that function is a table
- * containing pointers to the original jemalloc implementation, so that
- * replacement functions can call them back if they need to. The pointer
- * itself can safely be kept around (no need to copy the table itself).
- *
- * The functions to be implemented in the external library are of the form:
- *
- * void *replace_malloc(size_t size)
- * {
- * // Fiddle with the size if necessary.
- * // orig->malloc doesn't have to be called if the external library
- * // provides its own allocator, but in this case it will have to
- * // implement all functions.
- * void *ptr = orig->malloc(size);
- * // Do whatever you want with the ptr.
- * return ptr;
- * }
- *
- * where "orig" is the pointer obtained from replace_init.
- *
- * See malloc_decls.h for a list of functions that can be replaced this
- * way. The implementations are all in the form:
- * return_type replace_name(arguments [,...])
- *
- * They don't all need to be provided.
- *
- * Building a replace-malloc library is like rocket science. It can end up
- * with things blowing up, especially when trying to use complex types, and
- * even more especially when these types come from XPCOM or other parts of the
- * Mozilla codebase.
- * It is recommended to add the following to a replace-malloc implementation's
- * Makefile.in:
- * MOZ_GLUE_LDFLAGS = # Don't link against mozglue
- * WRAP_LDFLAGS = # Never wrap malloc function calls with -Wl,--wrap
- * STL_FLAGS = # Avoid STL wrapping
- *
- * If your replace-malloc implementation lives under memory/replace, these
- * are taken care of by memory/replace/defs.mk.
- */
- /* Implementing a replace-malloc library is incompatible with using mozalloc. */
- # 1 "../../../dist/include/mozilla/Types.h" 1
- /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- /* mfbt foundational types and macros. */
- /*
- * This header must be valid C and C++, includable by code embedding either
- * SpiderMonkey or Gecko.
- */
- /*
- * Expose all the integer types defined in C99's <stdint.h> (and the integer
- * limit and constant macros, if compiling C code or if compiling C++ code and
- * the right __STDC_*_MACRO has been defined for each). These are all usable
- * throughout mfbt code, and throughout Mozilla code more generally.
- */
- # 1 "../../../dist/include/mozilla/StandardInteger.h" 1
- /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- /* Implements the C99 <stdint.h> interface for C and C++ code. */
- /*
- * The C99 standard header <stdint.h> exposes typedefs for common fixed-width
- * integer types. It would be feasible to simply #include <stdint.h>, but
- * MSVC++ versions prior to 2010 don't provide <stdint.h>. We could solve this
- * by reimplementing <stdint.h> for MSVC++ 2008 and earlier. But then we reach
- * a second problem: our custom <stdint.h> might conflict with a <stdint.h>
- * defined by an embedder already looking to work around the MSVC++ <stdint.h>
- * absence.
- *
- * We address these issues in this manner:
- *
- * 1. If the preprocessor macro MOZ_CUSTOM_STDINT_H is defined to a path to a
- * custom <stdint.h> implementation, we will #include it. Embedders using
- * a custom <stdint.h> must define this macro to an implementation that
- * will work with their embedding.
- * 2. Otherwise, if we are compiling with a an MSVC++ version without
- * <stdint.h>, #include our custom <stdint.h> reimplementation.
- * 3. Otherwise, #include the standard <stdint.h> provided by the compiler.
- *
- * Note that we can't call this file "stdint.h" or something case-insensitively
- * equal to "stdint.h" because then MSVC (and other compilers on
- * case-insensitive file systems) will include this file, rather than the system
- * stdint.h, when we ask for <stdint.h> below.
- */
- # 1 "../../../dist/system_wrappers/stdint.h" 1
- # 2 "../../../dist/system_wrappers/stdint.h" 3
- #pragma GCC visibility push(default)
- # 1 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stdint.h" 1 3 4
- # 1 "/usr/include/stdint.h" 1 3 4
- /* Copyright (C) 1997,1998,1999,2000,2001,2006 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- /*
- * ISO C99: 7.18 Integer types <stdint.h>
- */
- # 1 "../../../dist/system_wrappers/features.h" 1 3 4
- # 2 "../../../dist/system_wrappers/features.h" 3
- #pragma GCC visibility push(default)
- # 1 "/usr/include/features.h" 1 3 4
- /* Copyright (C) 1991-1993,1995-2007,2009,2010,2011
- Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- /* These are defined by the user (or the compiler)
- to specify the desired environment:
- __STRICT_ANSI__ ISO Standard C.
- _ISOC99_SOURCE Extensions to ISO C89 from ISO C99.
- _POSIX_SOURCE IEEE Std 1003.1.
- _POSIX_C_SOURCE If ==1, like _POSIX_SOURCE; if >=2 add IEEE Std 1003.2;
- if >=199309L, add IEEE Std 1003.1b-1993;
- if >=199506L, add IEEE Std 1003.1c-1995;
- if >=200112L, all of IEEE 1003.1-2004
- if >=200809L, all of IEEE 1003.1-2008
- _XOPEN_SOURCE Includes POSIX and XPG things. Set to 500 if
- Single Unix conformance is wanted, to 600 for the
- sixth revision, to 700 for the seventh revision.
- _XOPEN_SOURCE_EXTENDED XPG things and X/Open Unix extensions.
- _LARGEFILE_SOURCE Some more functions for correct standard I/O.
- _LARGEFILE64_SOURCE Additional functionality from LFS for large files.
- _FILE_OFFSET_BITS=N Select default filesystem interface.
- _BSD_SOURCE ISO C, POSIX, and 4.3BSD things.
- _SVID_SOURCE ISO C, POSIX, and SVID things.
- _ATFILE_SOURCE Additional *at interfaces.
- _GNU_SOURCE All of the above, plus GNU extensions.
- _REENTRANT Select additionally reentrant object.
- _THREAD_SAFE Same as _REENTRANT, often used by other systems.
- _FORTIFY_SOURCE If set to numeric value > 0 additional security
- measures are defined, according to level.
- The `-ansi' switch to the GNU C compiler defines __STRICT_ANSI__.
- If none of these are defined, the default is to have _SVID_SOURCE,
- _BSD_SOURCE, and _POSIX_SOURCE set to one and _POSIX_C_SOURCE set to
- 200112L. If more than one of these are defined, they accumulate.
- For example __STRICT_ANSI__, _POSIX_SOURCE and _POSIX_C_SOURCE
- together give you ISO C, 1003.1, and 1003.2, but nothing else.
- These are defined by this file and are used by the
- header files to decide what to declare or define:
- __USE_ISOC99 Define ISO C99 things.
- __USE_ISOC95 Define ISO C90 AMD1 (C95) things.
- __USE_POSIX Define IEEE Std 1003.1 things.
- __USE_POSIX2 Define IEEE Std 1003.2 things.
- __USE_POSIX199309 Define IEEE Std 1003.1, and .1b things.
- __USE_POSIX199506 Define IEEE Std 1003.1, .1b, .1c and .1i things.
- __USE_XOPEN Define XPG things.
- __USE_XOPEN_EXTENDED Define X/Open Unix things.
- __USE_UNIX98 Define Single Unix V2 things.
- __USE_XOPEN2K Define XPG6 things.
- __USE_XOPEN2KXSI Define XPG6 XSI things.
- __USE_XOPEN2K8 Define XPG7 things.
- __USE_XOPEN2K8XSI Define XPG7 XSI things.
- __USE_LARGEFILE Define correct standard I/O things.
- __USE_LARGEFILE64 Define LFS things with separate names.
- __USE_FILE_OFFSET64 Define 64bit interface as default.
- __USE_BSD Define 4.3BSD things.
- __USE_SVID Define SVID things.
- __USE_MISC Define things common to BSD and System V Unix.
- __USE_ATFILE Define *at interfaces and AT_* constants for them.
- __USE_GNU Define GNU extensions.
- __USE_REENTRANT Define reentrant/thread-safe *_r functions.
- __USE_FORTIFY_LEVEL Additional security measures used, according to level.
- __FAVOR_BSD Favor 4.3BSD things in cases of conflict.
- The macros `__GNU_LIBRARY__', `__GLIBC__', and `__GLIBC_MINOR__' are
- defined by this file unconditionally. `__GNU_LIBRARY__' is provided
- only for compatibility. All new code should use the other symbols
- to test for features.
- All macros listed above as possibly being defined by this file are
- explicitly undefined if they are not explicitly defined.
- Feature-test macros that are not defined by the user or compiler
- but are implied by the other feature-test macros defined (or by the
- lack of any definitions) are defined by the file. */
- /* Undefine everything, so we get a clean slate. */
- # 124 "/usr/include/features.h" 3 4
- /* Suppress kernel-name space pollution unless user expressedly asks
- for it. */
- /* Always use ISO C things. */
- /* Convenience macros to test the versions of glibc and gcc.
- Use them like this:
- #if __GNUC_PREREQ (2,8)
- ... code requiring gcc 2.8 or later ...
- #endif
- Note - they won't work for gcc1 or glibc1, since the _MINOR macros
- were not defined then. */
- # 148 "/usr/include/features.h" 3 4
- /* If _BSD_SOURCE was defined by the user, favor BSD over POSIX. */
- /* If _GNU_SOURCE was defined by the user, turn on all the other features. */
- # 179 "/usr/include/features.h" 3 4
- /* If nothing (other than _GNU_SOURCE) is defined,
- define _BSD_SOURCE and _SVID_SOURCE. */
- /* This is to enable the ISO C99 extension. Also recognize the old macro
- which was used prior to the standard acceptance. This macro will
- eventually go away and the features enabled by default once the ISO C99
- standard is widely adopted. */
- /* This is to enable the ISO C90 Amendment 1:1995 extension. */
- /* If none of the ANSI/POSIX macros are defined, use POSIX.1 and POSIX.2
- (and IEEE Std 1003.1b-1993 unless _XOPEN_SOURCE is defined). */
- # 323 "/usr/include/features.h" 3 4
- /* Define __STDC_IEC_559__ and other similar macros. */
- # 1 "/usr/include/x86_64-linux-gnu/bits/predefs.h" 1 3 4
- /* Copyright (C) 2005 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- # 26 "/usr/include/x86_64-linux-gnu/bits/predefs.h" 3 4
- /* We do support the IEC 559 math functionality, real and complex. */
- # 325 "/usr/include/features.h" 2 3 4
- /* wchar_t uses ISO 10646-1 (2nd ed., published 2000-09-15) / Unicode 3.1. */
- /* This macro indicates that the installed library is the GNU C Library.
- For historic reasons the value now is 6 and this will stay from now
- on. The use of this variable is deprecated. Use __GLIBC__ and
- __GLIBC_MINOR__ now (see below) when you want to test for a specific
- GNU C library version and use the values in <gnu/lib-names.h> to get
- the sonames of the shared libraries. */
- /* Major and minor version number of the GNU C library package. Use
- these macros to test for features in specific releases. */
- /* Decide whether a compiler supports the long long datatypes. */
- /* This is here only because every header file already includes this one. */
- # 1 "../../../dist/system_wrappers/sys/cdefs.h" 1 3 4
- # 2 "../../../dist/system_wrappers/sys/cdefs.h" 3
- #pragma GCC visibility push(default)
- # 1 "/usr/include/x86_64-linux-gnu/sys/cdefs.h" 1 3 4
- /* Copyright (C) 1992-2001, 2002, 2004, 2005, 2006, 2007, 2009, 2011
- Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- /* We are almost always included from features.h. */
- /* The GNU libc does not support any K&R compilers or the traditional mode
- of ISO C compilers anymore. Check for some of the combinations not
- anymore supported. */
- /* Some user header file might have defined this before. */
- /* All functions, except those with callbacks or those that
- synchronize memory, are leaf functions. */
- # 51 "/usr/include/x86_64-linux-gnu/sys/cdefs.h" 3 4
- /* GCC can always grok prototypes. For C++ programs we add throw()
- to help it optimize the function calls. But this works only with
- gcc 2.8.x and egcs. For gcc 3.2 and up we even mark C functions
- as non-throwing using a function attribute since programs can use
- the -fexceptions options for C code as well. */
- # 86 "/usr/include/x86_64-linux-gnu/sys/cdefs.h" 3 4
- /* These two macros are not used in glibc anymore. They are kept here
- only because some other projects expect the macros to be defined. */
- /* For these things, GCC behaves the ANSI way normally,
- and the non-ANSI way under -traditional. */
- /* This is not a typedef so `const __ptr_t' does the right thing. */
- /* C++ needs to know that types and declarations are C, not C++. */
- # 112 "/usr/include/x86_64-linux-gnu/sys/cdefs.h" 3 4
- /* The standard library needs the functions from the ISO C90 standard
- in the std namespace. At the same time we want to be safe for
- future changes and we include the ISO C99 code in the non-standard
- namespace __c99. The C++ wrapper header take case of adding the
- definitions to the global namespace. */
- # 125 "/usr/include/x86_64-linux-gnu/sys/cdefs.h" 3 4
- /* For compatibility we do not add the declarations into any
- namespace. They will end up in the global namespace which is what
- old code expects. */
- # 137 "/usr/include/x86_64-linux-gnu/sys/cdefs.h" 3 4
- /* Support for bounded pointers. */
- /* Fortify support. */
- # 161 "/usr/include/x86_64-linux-gnu/sys/cdefs.h" 3 4
- /* Support for flexible arrays. */
- /* GCC 2.97 supports C99 flexible array members. */
- # 179 "/usr/include/x86_64-linux-gnu/sys/cdefs.h" 3 4
- /* __asm__ ("xyz") is used throughout the headers to rename functions
- at the assembly language level. This is wrapped by the __REDIRECT
- macro, in order to support compilers that can do this some other
- way. When compilers don't support asm-names at all, we have to do
- preprocessor tricks instead (which don't have exactly the right
- semantics, but it's the best we can do).
- Example:
- int __REDIRECT(setpgrp, (__pid_t pid, __pid_t pgrp), setpgid); */
- # 206 "/usr/include/x86_64-linux-gnu/sys/cdefs.h" 3 4
- /*
- #elif __SOME_OTHER_COMPILER__
- # define __REDIRECT(name, proto, alias) name proto; _Pragma("let " #name " = " #alias)
- )
- */
- /* GCC has various useful declarations that can be made with the
- `__attribute__' syntax. All of the ways we use this do fine if
- they are omitted for compilers that don't understand it. */
- /* At some point during the gcc 2.96 development the `malloc' attribute
- for functions was introduced. We don't want to use it unconditionally
- (although this would be possible) since it generates warnings. */
- /* At some point during the gcc 2.96 development the `pure' attribute
- for functions was introduced. We don't want to use it unconditionally
- (although this would be possible) since it generates warnings. */
- /* This declaration tells the compiler that the value is constant. */
- /* At some point during the gcc 3.1 development the `used' attribute
- for functions was introduced. We don't want to use it unconditionally
- (although this would be possible) since it generates warnings. */
- # 257 "/usr/include/x86_64-linux-gnu/sys/cdefs.h" 3 4
- /* gcc allows marking deprecated functions. */
- /* At some point during the gcc 2.8 development the `format_arg' attribute
- for functions was introduced. We don't want to use it unconditionally
- (although this would be possible) since it generates warnings.
- If several `format_arg' attributes are given for the same function, in
- gcc-3.0 and older, all but the last one are ignored. In newer gccs,
- all designated arguments are considered. */
- /* At some point during the gcc 2.97 development the `strfmon' format
- attribute for functions was introduced. We don't want to use it
- unconditionally (although this would be possible) since it
- generates warnings. */
- /* The nonull function attribute allows to mark pointer parameters which
- must not be NULL. */
- /* If fortification mode, we warn about unused results of certain
- function calls which can lead to problems. */
- # 310 "/usr/include/x86_64-linux-gnu/sys/cdefs.h" 3 4
- /* Forces a function to be always inlined. */
- /* GCC 4.3 and above with -std=c99 or -std=gnu99 implements ISO C99
- inline semantics, unless -fgnu89-inline is used. */
- # 340 "/usr/include/x86_64-linux-gnu/sys/cdefs.h" 3 4
- /* GCC 4.3 and above allow passing all anonymous arguments of an
- __extern_always_inline function to some other vararg function. */
- /* It is possible to compile containing GCC extensions even if GCC is
- run in pedantic mode if the uses are carefully marked using the
- `__extension__' keyword. But this is not generally available before
- version 2.8. */
- /* __restrict is known in EGCS 1.2 and above. */
- /* ISO C99 also allows to declare arrays as non-overlapping. The syntax is
- array_name[restrict]
- GCC 3.1 supports this. */
- # 378 "/usr/include/x86_64-linux-gnu/sys/cdefs.h" 3 4
- # 1 "/usr/include/x86_64-linux-gnu/bits/wordsize.h" 1 3 4
- /* Determine the wordsize from the preprocessor defines. */
- # 379 "/usr/include/x86_64-linux-gnu/sys/cdefs.h" 2 3 4
- # 4 "../../../dist/system_wrappers/sys/cdefs.h" 2 3
- #pragma GCC visibility pop
- # 358 "/usr/include/features.h" 2 3 4
- /* If we don't have __REDIRECT, prototypes will be missing if
- __USE_FILE_OFFSET64 but not __USE_LARGEFILE[64]. */
- /* Decide whether we can define 'extern inline' functions in headers. */
- /* There are some functions that must be declared 'extern inline' even with
- -Os when building LIBC, or they'll end up undefined. */
- /* This is here only because every header file already includes this one.
- Get the definitions of all the appropriate `__stub_FUNCTION' symbols.
- <gnu/stubs.h> contains `#define __stub_FUNCTION' when FUNCTION is a stub
- that will always return failure (and set errno to ENOSYS). */
- # 1 "/usr/include/x86_64-linux-gnu/gnu/stubs.h" 1 3 4
- /* This file selects the right generated file of `__stub_FUNCTION' macros
- based on the architecture being compiled for. */
- # 1 "/usr/include/x86_64-linux-gnu/bits/wordsize.h" 1 3 4
- /* Determine the wordsize from the preprocessor defines. */
- # 5 "/usr/include/x86_64-linux-gnu/gnu/stubs.h" 2 3 4
- # 1 "/usr/include/x86_64-linux-gnu/gnu/stubs-64.h" 1 3 4
- /* This file is automatically generated.
- It defines a symbol `__stub_FUNCTION' for each function
- in the C library which is a stub, meaning it will fail
- every time called, usually setting errno to ENOSYS. */
- # 10 "/usr/include/x86_64-linux-gnu/gnu/stubs.h" 2 3 4
- # 390 "/usr/include/features.h" 2 3 4
- # 4 "../../../dist/system_wrappers/features.h" 2 3
- #pragma GCC visibility pop
- # 27 "/usr/include/stdint.h" 2 3 4
- # 1 "/usr/include/x86_64-linux-gnu/bits/wchar.h" 1 3 4
- /* wchar_t type related definitions.
- Copyright (C) 2000 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- /* Use GCC's __WCHAR_MAX__ when available. */
- /* GCC may also define __WCHAR_UNSIGNED__.
- Use L'\0' to give the expression the correct (unsigned) type. */
- # 28 "/usr/include/stdint.h" 2 3 4
- # 1 "/usr/include/x86_64-linux-gnu/bits/wordsize.h" 1 3 4
- /* Determine the wordsize from the preprocessor defines. */
- # 29 "/usr/include/stdint.h" 2 3 4
- /* Exact integral types. */
- /* Signed. */
- /* There is some amount of overlap with <sys/types.h> as known by inet code */
- typedef signed char int8_t;
- typedef short int int16_t;
- typedef int int32_t;
- typedef long int int64_t;
- /* Unsigned. */
- typedef unsigned char uint8_t;
- typedef unsigned short int uint16_t;
- typedef unsigned int uint32_t;
- typedef unsigned long int uint64_t;
- /* Small types. */
- /* Signed. */
- typedef signed char int_least8_t;
- typedef short int int_least16_t;
- typedef int int_least32_t;
- typedef long int int_least64_t;
- /* Unsigned. */
- typedef unsigned char uint_least8_t;
- typedef unsigned short int uint_least16_t;
- typedef unsigned int uint_least32_t;
- typedef unsigned long int uint_least64_t;
- /* Fast types. */
- /* Signed. */
- typedef signed char int_fast8_t;
- typedef long int int_fast16_t;
- typedef long int int_fast32_t;
- typedef long int int_fast64_t;
- /* Unsigned. */
- typedef unsigned char uint_fast8_t;
- typedef unsigned long int uint_fast16_t;
- typedef unsigned long int uint_fast32_t;
- typedef unsigned long int uint_fast64_t;
- # 117 "/usr/include/stdint.h" 3 4
- /* Types for `void *' pointers. */
- typedef long int intptr_t;
- typedef unsigned long int uintptr_t;
- # 133 "/usr/include/stdint.h" 3 4
- /* Largest integral types. */
- typedef long int intmax_t;
- typedef unsigned long int uintmax_t;
- # 145 "/usr/include/stdint.h" 3 4
- /* The ISO C99 standard specifies that in C++ implementations these
- macros should only be defined if explicitly requested. */
- # 157 "/usr/include/stdint.h" 3 4
- /* Limits of integral types. */
- /* Minimum of signed integral types. */
- /* Maximum of signed integral types. */
- /* Maximum of unsigned integral types. */
- /* Minimum of signed integral types having a minimum size. */
- /* Maximum of signed integral types having a minimum size. */
- /* Maximum of unsigned integral types having a minimum size. */
- /* Minimum of fast signed integral types having a minimum size. */
- # 205 "/usr/include/stdint.h" 3 4
- /* Maximum of fast signed integral types having a minimum size. */
- # 216 "/usr/include/stdint.h" 3 4
- /* Maximum of fast unsigned integral types having a minimum size. */
- # 228 "/usr/include/stdint.h" 3 4
- /* Values to test for integral types holding `void *' pointer. */
- # 240 "/usr/include/stdint.h" 3 4
- /* Minimum for largest signed integral type. */
- /* Maximum for largest signed integral type. */
- /* Maximum for largest unsigned integral type. */
- /* Limits of other integer types. */
- /* Limits of `ptrdiff_t' type. */
- # 260 "/usr/include/stdint.h" 3 4
- /* Limits of `sig_atomic_t'. */
- /* Limit of `size_t' type. */
- /* Limits of `wchar_t'. */
- /* These constants might also be defined in <wchar.h>. */
- /* Limits of `wint_t'. */
- /* The ISO C99 standard specifies that in C++ implementations these
- should only be defined if explicitly requested. */
- /* Signed. */
- # 299 "/usr/include/stdint.h" 3 4
- /* Unsigned. */
- # 309 "/usr/include/stdint.h" 3 4
- /* Maximal type. */
- # 4 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stdint.h" 2 3 4
- # 4 "../../../dist/system_wrappers/stdint.h" 2 3
- #pragma GCC visibility pop
- # 41 "../../../dist/include/mozilla/StandardInteger.h" 2
- # 23 "../../../dist/include/mozilla/Types.h" 2
- /* Also expose size_t. */
- # 1 "../../../dist/system_wrappers/stddef.h" 1
- # 2 "../../../dist/system_wrappers/stddef.h" 3
- #pragma GCC visibility push(default)
- # 1 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 1 3 4
- /* Copyright (C) 1989, 1997, 1998, 1999, 2000, 2002, 2004, 2009
- Free Software Foundation, Inc.
- This file is part of GCC.
- GCC 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; either version 3, or (at your option)
- any later version.
- GCC 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 General Public License for more details.
- Under Section 7 of GPL version 3, you are granted additional
- permissions described in the GCC Runtime Library Exception, version
- 3.1, as published by the Free Software Foundation.
- You should have received a copy of the GNU General Public License and
- a copy of the GCC Runtime Library Exception along with this program;
- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
- <http://www.gnu.org/licenses/>. */
- /*
- * ISO C Standard: 7.17 Common definitions <stddef.h>
- */
- /* Any one of these symbols __need_* means that GNU libc
- wants us just to define one data type. So don't define
- the symbols that indicate this file's entire job has been done. */
- /* snaroff@next.com says the NeXT needs this. */
- /* Irix 5.1 needs this. */
- /* This avoids lossage on SunOS but only if stdtypes.h comes first.
- There's no way to win with the other order! Sun lossage. */
- /* On 4.3bsd-net2, make sure ansi.h is included, so we have
- one less case to deal with in the following. */
- /* On FreeBSD 5, machine/ansi.h does not exist anymore... */
- /* In 4.3bsd-net2, machine/ansi.h defines these symbols, which are
- defined if the corresponding type is *not* defined.
- FreeBSD-2.1 defines _MACHINE_ANSI_H_ instead of _ANSI_H_.
- NetBSD defines _I386_ANSI_H_ and _X86_64_ANSI_H_ instead of _ANSI_H_ */
- # 95 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* Sequent's header files use _PTRDIFF_T_ in some conflicting way.
- Just ignore it. */
- /* On VxWorks, <type/vxTypesBase.h> may have defined macros like
- _TYPE_size_t which will typedef size_t. fixincludes patched the
- vxTypesBase.h so that this macro is only defined if _GCC_SIZE_T is
- not defined, and so that defining this macro defines _GCC_SIZE_T.
- If we find that the macros are still defined at this point, we must
- invoke them so that the type is defined as expected. */
- # 120 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* In case nobody has defined these types, but we aren't running under
- GCC 2.00, make sure that __PTRDIFF_TYPE__, __SIZE_TYPE__, and
- __WCHAR_TYPE__ have reasonable values. This can happen if the
- parts of GCC is compiled by an older compiler, that actually
- include gstddef.h, such as collect2. */
- /* Signed type of difference of two pointers. */
- /* Define this type if we are doing the whole job,
- or if we want this type in particular. */
- # 150 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- typedef long int ptrdiff_t;
- # 160 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* If this symbol has done its job, get rid of it. */
- /* Unsigned type of `sizeof' something. */
- /* Define this type if we are doing the whole job,
- or if we want this type in particular. */
- # 212 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- typedef long unsigned int size_t;
- # 238 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* Wide character type.
- Locale-writers should change this as necessary to
- be big enough to hold unique values not between 0 and 127,
- and not (wchar_t) -1, for each defined multibyte character. */
- /* Define this type if we are doing the whole job,
- or if we want this type in particular. */
- # 279 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* On BSD/386 1.1, at least, machine/ansi.h defines _BSD_WCHAR_T_
- instead of _WCHAR_T_, and _BSD_RUNE_T_ (which, unlike the other
- symbols in the _FOO_T_ family, stays defined even after its
- corresponding type is defined). If we define wchar_t, then we
- must undef _WCHAR_T_; for BSD/386 1.1 (and perhaps others), if
- we undef _WCHAR_T_, then we must also define rune_t, since
- headers like runetype.h assume that if machine/ansi.h is included,
- and _BSD_WCHAR_T_ is not defined, then rune_t is available.
- machine/ansi.h says, "Note that _WCHAR_T_ and _RUNE_T_ must be of
- the same type." */
- # 306 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* FreeBSD 5 can't be handled well using "traditional" logic above
- since it no longer defines _BSD_RUNE_T_ yet still desires to export
- rune_t in some cases... */
- # 324 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- typedef int wchar_t;
- # 358 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* In 4.3bsd-net2, leave these undefined to indicate that size_t, etc.
- are already defined. */
- /* BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. */
- /* NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. */
- # 394 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* A null pointer constant. */
- # 412 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* Offset of member MEMBER in a struct of type TYPE. */
- # 4 "../../../dist/system_wrappers/stddef.h" 2 3
- #pragma GCC visibility pop
- # 26 "../../../dist/include/mozilla/Types.h" 2
- /* Implement compiler and linker macros needed for APIs. */
- /*
- * MOZ_EXPORT is used to declare and define a symbol or type which is externally
- * visible to users of the current library. It encapsulates various decorations
- * needed to properly export the method's symbol.
- *
- * api.h:
- * extern MOZ_EXPORT int MeaningOfLife(void);
- * extern MOZ_EXPORT int LuggageCombination;
- *
- * api.c:
- * int MeaningOfLife(void) { return 42; }
- * int LuggageCombination = 12345;
- *
- * If you are merely sharing a method across files, just use plain |extern|.
- * These macros are designed for use by library interfaces -- not for normal
- * methods or data used cross-file.
- */
- # 59 "../../../dist/include/mozilla/Types.h"
- /*
- * Whereas implementers use MOZ_EXPORT to declare and define library symbols,
- * users use MOZ_IMPORT_API and MOZ_IMPORT_DATA to access them. Most often the
- * implementer of the library will expose an API macro which expands to either
- * the export or import version of the macro, depending upon the compilation
- * mode.
- */
- # 86 "../../../dist/include/mozilla/Types.h"
- /*
- * Consistent with the above comment, the MFBT_API and MFBT_DATA macros expose
- * export mfbt declarations when building mfbt, and they expose import mfbt
- * declarations when using mfbt.
- */
- /*
- * On linux mozglue is linked in the program and we link libxul.so with
- * -z,defs. Normally that causes the linker to reject undefined references in
- * libxul.so, but as a loophole it allows undefined references to weak
- * symbols. We add the weak attribute to the import version of the MFBT API
- * macros to exploit this.
- */
- # 111 "../../../dist/include/mozilla/Types.h"
- /*
- * C symbols in C++ code must be declared immediately within |extern "C"|
- * blocks. However, in C code, they need not be declared specially. This
- * difference is abstracted behind the MOZ_BEGIN_EXTERN_C and MOZ_END_EXTERN_C
- * macros, so that the user need not know whether he is being used in C or C++
- * code.
- *
- * MOZ_BEGIN_EXTERN_C
- *
- * extern MOZ_EXPORT int MostRandomNumber(void);
- * ...other declarations...
- *
- * MOZ_END_EXTERN_C
- *
- * This said, it is preferable to just use |extern "C"| in C++ header files for
- * its greater clarity.
- */
- # 136 "../../../dist/include/mozilla/Types.h"
- /*
- * GCC's typeof is available when decltype is not.
- */
- # 67 "../../../dist/include/replace_malloc.h" 2
- # 1 "../../../dist/include/malloc_decls.h" 1
- /* This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this file,
- * You can obtain one at http://mozilla.org/MPL/2.0/. */
- /*
- * Helper header to declare all the supported malloc functions.
- * MALLOC_DECL arguments are:
- * - function name
- * - return type
- * - argument types
- */
- # 1 "../../../dist/include/jemalloc_types.h" 1
- /* -*- Mode: C; tab-width: 8; c-basic-offset: 8 -*- */
- /* vim:set softtabstop=8 shiftwidth=8: */
- /*-
- * Copyright (C) 2006-2008 Jason Evans <jasone@FreeBSD.org>.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice(s), this list of conditions and the following disclaimer as
- * the first lines of this file unmodified other than the possible
- * addition of one or more copyright notices.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice(s), this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER(S) ``AS IS'' AND ANY
- * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER(S) BE
- * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
- * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
- * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
- * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
- /* grab size_t */
- # 1 "../../../dist/system_wrappers/stddef.h" 1
- # 2 "../../../dist/system_wrappers/stddef.h" 3
- #pragma GCC visibility push(default)
- # 1 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 1 3 4
- /* Copyright (C) 1989, 1997, 1998, 1999, 2000, 2002, 2004, 2009
- Free Software Foundation, Inc.
- This file is part of GCC.
- GCC 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; either version 3, or (at your option)
- any later version.
- GCC 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 General Public License for more details.
- Under Section 7 of GPL version 3, you are granted additional
- permissions described in the GCC Runtime Library Exception, version
- 3.1, as published by the Free Software Foundation.
- You should have received a copy of the GNU General Public License and
- a copy of the GCC Runtime Library Exception along with this program;
- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
- <http://www.gnu.org/licenses/>. */
- /*
- * ISO C Standard: 7.17 Common definitions <stddef.h>
- */
- # 4 "../../../dist/system_wrappers/stddef.h" 2 3
- #pragma GCC visibility pop
- # 40 "../../../dist/include/jemalloc_types.h" 2
- typedef unsigned char jemalloc_bool;
- /*
- * jemalloc_stats() is not a stable interface. When using jemalloc_stats_t, be
- * sure that the compiled results of jemalloc.c are in sync with this header
- * file.
- */
- typedef struct {
- /*
- * Run-time configuration settings.
- */
- jemalloc_bool opt_abort; /* abort(3) on error? */
- jemalloc_bool opt_junk; /* Fill allocated/free memory with 0xa5/0x5a? */
- jemalloc_bool opt_utrace; /* Trace all allocation events? */
- jemalloc_bool opt_sysv; /* SysV semantics? */
- jemalloc_bool opt_xmalloc; /* abort(3) on OOM? */
- jemalloc_bool opt_zero; /* Fill allocated memory with 0x0? */
- size_t narenas; /* Number of arenas. */
- size_t balance_threshold; /* Arena contention rebalance threshold. */
- size_t quantum; /* Allocation quantum. */
- size_t small_max; /* Max quantum-spaced allocation size. */
- size_t large_max; /* Max sub-chunksize allocation size. */
- size_t chunksize; /* Size of each virtual memory mapping. */
- size_t dirty_max; /* Max dirty pages per arena. */
- /*
- * Current memory usage statistics.
- */
- size_t mapped; /* Bytes mapped (not necessarily committed). */
- size_t committed; /* Bytes committed (readable/writable). */
- size_t allocated; /* Bytes allocated (in use by application). */
- size_t dirty; /* Bytes dirty (committed unused pages). */
- } jemalloc_stats_t;
- # 17 "../../../dist/include/malloc_decls.h" 2
- typedef void * usable_ptr_t;
- # 40 "../../../dist/include/malloc_decls.h"
- typedef void *(malloc_impl_t)(size_t);
- typedef int(posix_memalign_impl_t)(void **, size_t, size_t);
- typedef void *(aligned_alloc_impl_t)(size_t, size_t);
- typedef void *(calloc_impl_t)(size_t, size_t);
- typedef void *(realloc_impl_t)(void *, size_t);
- typedef void(free_impl_t)(void *);
- typedef void *(memalign_impl_t)(size_t, size_t);
- typedef void *(valloc_impl_t)(size_t);
- typedef size_t(malloc_usable_size_impl_t)(usable_ptr_t);
- typedef size_t(malloc_good_size_impl_t)(size_t);
- typedef void(jemalloc_stats_impl_t)(jemalloc_stats_t *);
- typedef void(jemalloc_purge_freed_pages_impl_t)(void);
- typedef void(jemalloc_free_dirty_pages_impl_t)(void);
- # 74 "../../../dist/include/replace_malloc.h" 2
- typedef struct {
- # 1 "../../../dist/include/malloc_decls.h" 1
- /* This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this file,
- * You can obtain one at http://mozilla.org/MPL/2.0/. */
- /*
- * Helper header to declare all the supported malloc functions.
- * MALLOC_DECL arguments are:
- * - function name
- * - return type
- * - argument types
- */
- # 40 "../../../dist/include/malloc_decls.h"
- malloc_impl_t * malloc;
- posix_memalign_impl_t * posix_memalign;
- aligned_alloc_impl_t * aligned_alloc;
- calloc_impl_t * calloc;
- realloc_impl_t * realloc;
- free_impl_t * free;
- memalign_impl_t * memalign;
- valloc_impl_t * valloc;
- malloc_usable_size_impl_t * malloc_usable_size;
- malloc_good_size_impl_t * malloc_good_size;
- jemalloc_stats_impl_t * jemalloc_stats;
- jemalloc_purge_freed_pages_impl_t * jemalloc_purge_freed_pages;
- jemalloc_free_dirty_pages_impl_t * jemalloc_free_dirty_pages;
- # 80 "../../../dist/include/replace_malloc.h" 2
- } malloc_table_t;
- /* MOZ_NO_REPLACE_FUNC_DECL and MOZ_REPLACE_WEAK are only defined in
- * replace_malloc.c. Normally including this header will add function
- * definitions. */
- # 96 "../../../dist/include/replace_malloc.h"
- # 1 "../../../dist/include/malloc_decls.h" 1
- /* This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this file,
- * You can obtain one at http://mozilla.org/MPL/2.0/. */
- /*
- * Helper header to declare all the supported malloc functions.
- * MALLOC_DECL arguments are:
- * - function name
- * - return type
- * - argument types
- */
- # 37 "../../../dist/include/malloc_decls.h"
- __attribute__((visibility("default"))) void replace_init(const malloc_table_t *) ;
- __attribute__((visibility("default"))) void * replace_malloc(size_t) ;
- __attribute__((visibility("default"))) int replace_posix_memalign(void **, size_t, size_t) ;
- __attribute__((visibility("default"))) void * replace_aligned_alloc(size_t, size_t) ;
- __attribute__((visibility("default"))) void * replace_calloc(size_t, size_t) ;
- __attribute__((visibility("default"))) void * replace_realloc(void *, size_t) ;
- __attribute__((visibility("default"))) void replace_free(void *) ;
- __attribute__((visibility("default"))) void * replace_memalign(size_t, size_t) ;
- __attribute__((visibility("default"))) void * replace_valloc(size_t) ;
- __attribute__((visibility("default"))) size_t replace_malloc_usable_size(usable_ptr_t) ;
- __attribute__((visibility("default"))) size_t replace_malloc_good_size(size_t) ;
- __attribute__((visibility("default"))) void replace_jemalloc_stats(jemalloc_stats_t *) ;
- __attribute__((visibility("default"))) void replace_jemalloc_purge_freed_pages(void) ;
- __attribute__((visibility("default"))) void replace_jemalloc_free_dirty_pages(void) ;
- # 97 "../../../dist/include/replace_malloc.h" 2
- /*
- * posix_memalign, aligned_alloc, memalign and valloc all implement some
- * kind of aligned memory allocation. For convenience, replace_posix_memalign,
- * replace_aligned_alloc and replace_valloc can be automatically derived from
- * memalign when MOZ_REPLACE_ONLY_MEMALIGN is defined before including this
- * header. PAGE_SIZE also needs to be defined to the appropriate expression.
- */
- # 137 "../../../dist/include/replace_malloc.h"
- # 4 "/home/ubuntu/tor-browser-build/gitian-builder/inputs/tor-browser/memory/replace/realloc/realloc.c" 2
- # 1 "../../../dist/system_wrappers/stdlib.h" 1
- # 2 "../../../dist/system_wrappers/stdlib.h" 3
- #pragma GCC visibility push(default)
- # 1 "/usr/include/stdlib.h" 1 3 4
- /* Copyright (C) 1991-2007, 2009, 2010, 2011 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- /*
- * ISO C99 Standard: 7.20 General utilities <stdlib.h>
- */
- # 1 "../../../dist/system_wrappers/features.h" 1 3 4
- # 2 "../../../dist/system_wrappers/features.h" 3
- #pragma GCC visibility push(default)
- # 1 "/usr/include/features.h" 1 3 4
- /* Copyright (C) 1991-1993,1995-2007,2009,2010,2011
- Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- # 4 "../../../dist/system_wrappers/features.h" 2 3
- #pragma GCC visibility pop
- # 26 "/usr/include/stdlib.h" 2 3 4
- /* Get size_t, wchar_t and NULL from <stddef.h>. */
- # 1 "../../../dist/system_wrappers/stddef.h" 1 3 4
- # 2 "../../../dist/system_wrappers/stddef.h" 3
- #pragma GCC visibility push(default)
- # 1 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 1 3 4
- /* Copyright (C) 1989, 1997, 1998, 1999, 2000, 2002, 2004, 2009
- Free Software Foundation, Inc.
- This file is part of GCC.
- GCC 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; either version 3, or (at your option)
- any later version.
- GCC 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 General Public License for more details.
- Under Section 7 of GPL version 3, you are granted additional
- permissions described in the GCC Runtime Library Exception, version
- 3.1, as published by the Free Software Foundation.
- You should have received a copy of the GNU General Public License and
- a copy of the GCC Runtime Library Exception along with this program;
- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
- <http://www.gnu.org/licenses/>. */
- /*
- * ISO C Standard: 7.17 Common definitions <stddef.h>
- */
- /* Any one of these symbols __need_* means that GNU libc
- wants us just to define one data type. So don't define
- the symbols that indicate this file's entire job has been done. */
- # 49 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* This avoids lossage on SunOS but only if stdtypes.h comes first.
- There's no way to win with the other order! Sun lossage. */
- /* On 4.3bsd-net2, make sure ansi.h is included, so we have
- one less case to deal with in the following. */
- /* On FreeBSD 5, machine/ansi.h does not exist anymore... */
- /* In 4.3bsd-net2, machine/ansi.h defines these symbols, which are
- defined if the corresponding type is *not* defined.
- FreeBSD-2.1 defines _MACHINE_ANSI_H_ instead of _ANSI_H_.
- NetBSD defines _I386_ANSI_H_ and _X86_64_ANSI_H_ instead of _ANSI_H_ */
- # 95 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* Sequent's header files use _PTRDIFF_T_ in some conflicting way.
- Just ignore it. */
- /* On VxWorks, <type/vxTypesBase.h> may have defined macros like
- _TYPE_size_t which will typedef size_t. fixincludes patched the
- vxTypesBase.h so that this macro is only defined if _GCC_SIZE_T is
- not defined, and so that defining this macro defines _GCC_SIZE_T.
- If we find that the macros are still defined at this point, we must
- invoke them so that the type is defined as expected. */
- # 120 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* In case nobody has defined these types, but we aren't running under
- GCC 2.00, make sure that __PTRDIFF_TYPE__, __SIZE_TYPE__, and
- __WCHAR_TYPE__ have reasonable values. This can happen if the
- parts of GCC is compiled by an older compiler, that actually
- include gstddef.h, such as collect2. */
- /* Signed type of difference of two pointers. */
- /* Define this type if we are doing the whole job,
- or if we want this type in particular. */
- # 160 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* If this symbol has done its job, get rid of it. */
- /* Unsigned type of `sizeof' something. */
- /* Define this type if we are doing the whole job,
- or if we want this type in particular. */
- # 238 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* Wide character type.
- Locale-writers should change this as necessary to
- be big enough to hold unique values not between 0 and 127,
- and not (wchar_t) -1, for each defined multibyte character. */
- /* Define this type if we are doing the whole job,
- or if we want this type in particular. */
- # 358 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* In 4.3bsd-net2, leave these undefined to indicate that size_t, etc.
- are already defined. */
- /* BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. */
- /* NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. */
- # 394 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* A null pointer constant. */
- # 412 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* Offset of member MEMBER in a struct of type TYPE. */
- # 4 "../../../dist/system_wrappers/stddef.h" 2 3
- #pragma GCC visibility pop
- # 34 "/usr/include/stdlib.h" 2 3 4
- /* XPG requires a few symbols from <sys/wait.h> being defined. */
- # 1 "/usr/include/x86_64-linux-gnu/bits/waitflags.h" 1 3 4
- /* Definitions of flag bits for `waitpid' et al.
- Copyright (C) 1992,1996,1997,2000,2004,2005 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- /* Bits in the third argument to `waitpid'. */
- /* Bits in the fourth argument to `waitid'. */
- # 43 "/usr/include/stdlib.h" 2 3 4
- # 1 "/usr/include/x86_64-linux-gnu/bits/waitstatus.h" 1 3 4
- /* Definitions of status bits for `wait' et al.
- Copyright (C) 1992,1994,1996,1997,2000,2004 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- /* Everything extant so far uses these same bits. */
- /* If WIFEXITED(STATUS), the low-order 8 bits of the status. */
- /* If WIFSIGNALED(STATUS), the terminating signal. */
- /* If WIFSTOPPED(STATUS), the signal that stopped the child. */
- /* Nonzero if STATUS indicates normal termination. */
- /* Nonzero if STATUS indicates termination by a signal. */
- /* Nonzero if STATUS indicates the child is stopped. */
- /* Nonzero if STATUS indicates the child continued after a stop. We only
- define this if <bits/waitflags.h> provides the WCONTINUED flag bit. */
- /* Nonzero if STATUS indicates the child dumped core. */
- /* Macros for constructing status values. */
- # 65 "/usr/include/x86_64-linux-gnu/bits/waitstatus.h" 3 4
- # 1 "../../../dist/system_wrappers/endian.h" 1 3 4
- # 2 "../../../dist/system_wrappers/endian.h" 3
- #pragma GCC visibility push(default)
- # 1 "/usr/include/endian.h" 1 3 4
- /* Copyright (C) 1992, 1996, 1997, 2000, 2008 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- # 1 "../../../dist/system_wrappers/features.h" 1 3 4
- # 2 "../../../dist/system_wrappers/features.h" 3
- #pragma GCC visibility push(default)
- # 1 "/usr/include/features.h" 1 3 4
- /* Copyright (C) 1991-1993,1995-2007,2009,2010,2011
- Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- # 4 "../../../dist/system_wrappers/features.h" 2 3
- #pragma GCC visibility pop
- # 23 "/usr/include/endian.h" 2 3 4
- /* Definitions for byte order, according to significance of bytes,
- from low addresses to high addresses. The value is what you get by
- putting '4' in the most significant byte, '3' in the second most
- significant byte, '2' in the second least significant byte, and '1'
- in the least significant byte, and then writing down one digit for
- each byte, starting with the byte at the lowest address at the left,
- and proceeding to the byte with the highest address at the right. */
- /* This file defines `__BYTE_ORDER' for the particular machine. */
- # 1 "/usr/include/x86_64-linux-gnu/bits/endian.h" 1 3 4
- /* x86_64 is little-endian. */
- # 38 "/usr/include/endian.h" 2 3 4
- /* Some machines may need to use a different endianness for floating point
- values. */
- # 60 "/usr/include/endian.h" 3 4
- /* Conversion interfaces. */
- # 1 "/usr/include/x86_64-linux-gnu/bits/byteswap.h" 1 3 4
- /* Macros to swap the order of bytes in integer values.
- Copyright (C) 1997, 1998, 2000, 2002, 2003, 2007, 2008, 2010, 2011
- Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- # 28 "/usr/include/x86_64-linux-gnu/bits/byteswap.h" 3 4
- # 1 "/usr/include/x86_64-linux-gnu/bits/wordsize.h" 1 3 4
- /* Determine the wordsize from the preprocessor defines. */
- # 29 "/usr/include/x86_64-linux-gnu/bits/byteswap.h" 2 3 4
- /* Swap bytes in 16 bit value. */
- # 55 "/usr/include/x86_64-linux-gnu/bits/byteswap.h" 3 4
- /* Swap bytes in 32 bit value. */
- # 67 "/usr/include/x86_64-linux-gnu/bits/byteswap.h" 3 4
- /* To swap the bytes in a word the i486 processors and up provide the
- `bswap' opcode. On i386 we have to use three instructions. */
- # 100 "/usr/include/x86_64-linux-gnu/bits/byteswap.h" 3 4
- /* Swap bytes in 64 bit value. */
- # 62 "/usr/include/endian.h" 2 3 4
- # 4 "../../../dist/system_wrappers/endian.h" 2 3
- #pragma GCC visibility pop
- # 66 "/usr/include/x86_64-linux-gnu/bits/waitstatus.h" 2 3 4
- union wait
- {
- int w_status;
- struct
- {
- unsigned int __w_termsig:7; /* Terminating signal. */
- unsigned int __w_coredump:1; /* Set if dumped core. */
- unsigned int __w_retcode:8; /* Return code if exited normally. */
- unsigned int:16;
- } __wait_terminated;
- struct
- {
- unsigned int __w_stopval:8; /* W_STOPPED if stopped. */
- unsigned int __w_stopsig:8; /* Stopping signal. */
- unsigned int:16;
- } __wait_stopped;
- };
- # 44 "/usr/include/stdlib.h" 2 3 4
- /* Lots of hair to allow traditional BSD use of `union wait'
- as well as POSIX.1 use of `int' for the status word. */
- # 58 "/usr/include/stdlib.h" 3 4
- /* This is the type of the argument to `wait'. The funky union
- causes redeclarations with either `int *' or `union wait *' to be
- allowed without complaint. __WAIT_STATUS_DEFN is the type used in
- the actual function definitions. */
- /* This works in GCC 2.6.1 and later. */
- typedef union
- {
- union wait *__uptr;
- int *__iptr;
- } __WAIT_STATUS __attribute__ ((__transparent_union__));
- # 84 "/usr/include/stdlib.h" 3 4
- /* Define the macros <sys/wait.h> also would define this way. */
- # 96 "/usr/include/stdlib.h" 3 4
- /* Returned by `div'. */
- typedef struct
- {
- int quot; /* Quotient. */
- int rem; /* Remainder. */
- } div_t;
- /* Returned by `ldiv'. */
- typedef struct
- {
- long int quot; /* Quotient. */
- long int rem; /* Remainder. */
- } ldiv_t;
- /* Returned by `lldiv'. */
- __extension__ typedef struct
- {
- long long int quot; /* Quotient. */
- long long int rem; /* Remainder. */
- } lldiv_t;
- /* The largest number rand will return (same as INT_MAX). */
- /* We define these the same for all machines.
- Changes from this to the outside world should be done in `_exit'. */
- /* Maximum length of a multibyte character in the current locale. */
- extern size_t __ctype_get_mb_cur_max (void) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
- /* Convert a string to a floating-point number. */
- extern double atof (__const char *__nptr)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
- /* Convert a string to an integer. */
- extern int atoi (__const char *__nptr)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
- /* Convert a string to a long integer. */
- extern long int atol (__const char *__nptr)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
- /* Convert a string to a long long integer. */
- __extension__ extern long long int atoll (__const char *__nptr)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
- /* Convert a string to a floating-point number. */
- extern double strtod (__const char *__restrict __nptr,
- char **__restrict __endptr)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
- /* Likewise for `float' and `long double' sizes of floating-point numbers. */
- extern float strtof (__const char *__restrict __nptr,
- char **__restrict __endptr) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
- extern long double strtold (__const char *__restrict __nptr,
- char **__restrict __endptr)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
- /* Convert a string to a long integer. */
- extern long int strtol (__const char *__restrict __nptr,
- char **__restrict __endptr, int __base)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
- /* Convert a string to an unsigned long integer. */
- extern unsigned long int strtoul (__const char *__restrict __nptr,
- char **__restrict __endptr, int __base)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
- /* Convert a string to a quadword integer. */
- __extension__
- extern long long int strtoq (__const char *__restrict __nptr,
- char **__restrict __endptr, int __base)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
- /* Convert a string to an unsigned quadword integer. */
- __extension__
- extern unsigned long long int strtouq (__const char *__restrict __nptr,
- char **__restrict __endptr, int __base)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
- /* Convert a string to a quadword integer. */
- __extension__
- extern long long int strtoll (__const char *__restrict __nptr,
- char **__restrict __endptr, int __base)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
- /* Convert a string to an unsigned quadword integer. */
- __extension__
- extern unsigned long long int strtoull (__const char *__restrict __nptr,
- char **__restrict __endptr, int __base)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
- # 308 "/usr/include/stdlib.h" 3 4
- /* Convert N to base 64 using the digits "./0-9A-Za-z", least-significant
- digit first. Returns a pointer to static storage overwritten by the
- next call. */
- extern char *l64a (long int __n) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
- /* Read a number from a string S in base 64 as above. */
- extern long int a64l (__const char *__s)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
- # 1 "../../../dist/system_wrappers/sys/types.h" 1 3 4
- # 2 "../../../dist/system_wrappers/sys/types.h" 3
- #pragma GCC visibility push(default)
- # 1 "/usr/include/x86_64-linux-gnu/sys/types.h" 1 3 4
- /* Copyright (C) 1991,1992,1994-2002,2006,2010 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- /*
- * POSIX Standard: 2.6 Primitive System Data Types <sys/types.h>
- */
- # 1 "../../../dist/system_wrappers/features.h" 1 3 4
- # 2 "../../../dist/system_wrappers/features.h" 3
- #pragma GCC visibility push(default)
- # 1 "/usr/include/features.h" 1 3 4
- /* Copyright (C) 1991-1993,1995-2007,2009,2010,2011
- Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- # 4 "../../../dist/system_wrappers/features.h" 2 3
- #pragma GCC visibility pop
- # 27 "/usr/include/x86_64-linux-gnu/sys/types.h" 2 3 4
- # 1 "/usr/include/x86_64-linux-gnu/bits/types.h" 1 3 4
- /* bits/types.h -- definitions of __*_t types underlying *_t types.
- Copyright (C) 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- /*
- * Never include this file directly; use <sys/types.h> instead.
- */
- # 1 "../../../dist/system_wrappers/features.h" 1 3 4
- # 2 "../../../dist/system_wrappers/features.h" 3
- #pragma GCC visibility push(default)
- # 1 "/usr/include/features.h" 1 3 4
- /* Copyright (C) 1991-1993,1995-2007,2009,2010,2011
- Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- # 4 "../../../dist/system_wrappers/features.h" 2 3
- #pragma GCC visibility pop
- # 28 "/usr/include/x86_64-linux-gnu/bits/types.h" 2 3 4
- # 1 "/usr/include/x86_64-linux-gnu/bits/wordsize.h" 1 3 4
- /* Determine the wordsize from the preprocessor defines. */
- # 29 "/usr/include/x86_64-linux-gnu/bits/types.h" 2 3 4
- /* Convenience types. */
- typedef unsigned char __u_char;
- typedef unsigned short int __u_short;
- typedef unsigned int __u_int;
- typedef unsigned long int __u_long;
- /* Fixed-size types, underlying types depend on word size and compiler. */
- typedef signed char __int8_t;
- typedef unsigned char __uint8_t;
- typedef signed short int __int16_t;
- typedef unsigned short int __uint16_t;
- typedef signed int __int32_t;
- typedef unsigned int __uint32_t;
- typedef signed long int __int64_t;
- typedef unsigned long int __uint64_t;
- /* quad_t is also 64 bits. */
- typedef long int __quad_t;
- typedef unsigned long int __u_quad_t;
- # 70 "/usr/include/x86_64-linux-gnu/bits/types.h" 3 4
- /* The machine-dependent file <bits/typesizes.h> defines __*_T_TYPE
- macros for each of the OS types we define below. The definitions
- of those macros must use the following macros for underlying types.
- We define __S<SIZE>_TYPE and __U<SIZE>_TYPE for the signed and unsigned
- variants of each of the following integer types on this machine.
- 16 -- "natural" 16-bit type (always short)
- 32 -- "natural" 32-bit type (always int)
- 64 -- "natural" 64-bit type (long or long long)
- LONG32 -- 32-bit type, traditionally long
- QUAD -- 64-bit type, always long long
- WORD -- natural type of __WORDSIZE bits (int or long)
- LONGWORD -- type of __WORDSIZE bits, traditionally long
- We distinguish WORD/LONGWORD, 32/LONG32, and 64/QUAD so that the
- conventional uses of `long' or `long long' type modifiers match the
- types we define, even when a less-adorned type would be the same size.
- This matters for (somewhat) portably writing printf/scanf formats for
- these types, where using the appropriate l or ll format modifiers can
- make the typedefs and the formats match up across all GNU platforms. If
- we used `long' when it's 64 bits where `long long' is expected, then the
- compiler would warn about the formats not matching the argument types,
- and the programmer changing them to shut up the compiler would break the
- program's portability.
- Here we assume what is presently the case in all the GCC configurations
- we support: long long is always 64 bits, long is always word/address size,
- and int is always 32 bits. */
- # 126 "/usr/include/x86_64-linux-gnu/bits/types.h" 3 4
- /* No need to mark the typedef with __extension__. */
- # 1 "/usr/include/x86_64-linux-gnu/bits/typesizes.h" 1 3 4
- /* bits/typesizes.h -- underlying types for *_t. Generic version.
- Copyright (C) 2002, 2003 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- # 27 "/usr/include/x86_64-linux-gnu/bits/typesizes.h" 3 4
- /* See <bits/types.h> for the meaning of these macros. This file exists so
- that <bits/types.h> need not vary across different GNU platforms. */
- # 62 "/usr/include/x86_64-linux-gnu/bits/typesizes.h" 3 4
- /* Number of descriptors that can fit in an `fd_set'. */
- # 132 "/usr/include/x86_64-linux-gnu/bits/types.h" 2 3 4
- typedef unsigned long int __dev_t; /* Type of device numbers. */
- typedef unsigned int __uid_t; /* Type of user identifications. */
- typedef unsigned int __gid_t; /* Type of group identifications. */
- typedef unsigned long int __ino_t; /* Type of file serial numbers. */
- typedef unsigned long int __ino64_t; /* Type of file serial numbers (LFS).*/
- typedef unsigned int __mode_t; /* Type of file attribute bitmasks. */
- typedef unsigned long int __nlink_t; /* Type of file link counts. */
- typedef long int __off_t; /* Type of file sizes and offsets. */
- typedef long int __off64_t; /* Type of file sizes and offsets (LFS). */
- typedef int __pid_t; /* Type of process identifications. */
- typedef struct { int __val[2]; } __fsid_t; /* Type of file system IDs. */
- typedef long int __clock_t; /* Type of CPU usage counts. */
- typedef unsigned long int __rlim_t; /* Type for resource measurement. */
- typedef unsigned long int __rlim64_t; /* Type for resource measurement (LFS). */
- typedef unsigned int __id_t; /* General type for IDs. */
- typedef long int __time_t; /* Seconds since the Epoch. */
- typedef unsigned int __useconds_t; /* Count of microseconds. */
- typedef long int __suseconds_t; /* Signed count of microseconds. */
- typedef int __daddr_t; /* The type of a disk address. */
- typedef long int __swblk_t; /* Type of a swap block maybe? */
- typedef int __key_t; /* Type of an IPC key. */
- /* Clock ID used in clock and timer functions. */
- typedef int __clockid_t;
- /* Timer ID returned by `timer_create'. */
- typedef void * __timer_t;
- /* Type to represent block size. */
- typedef long int __blksize_t;
- /* Types from the Large File Support interface. */
- /* Type to count number of disk blocks. */
- typedef long int __blkcnt_t;
- typedef long int __blkcnt64_t;
- /* Type to count file system blocks. */
- typedef unsigned long int __fsblkcnt_t;
- typedef unsigned long int __fsblkcnt64_t;
- /* Type to count file system nodes. */
- typedef unsigned long int __fsfilcnt_t;
- typedef unsigned long int __fsfilcnt64_t;
- typedef long int __ssize_t; /* Type of a byte count, or error. */
- /* These few don't really vary by system, they always correspond
- to one of the other defined types. */
- typedef __off64_t __loff_t; /* Type of file sizes and offsets (LFS). */
- typedef __quad_t *__qaddr_t;
- typedef char *__caddr_t;
- /* Duplicates info from stdint.h but this is used in unistd.h. */
- typedef long int __intptr_t;
- /* Duplicate info from sys/socket.h. */
- typedef unsigned int __socklen_t;
- # 31 "/usr/include/x86_64-linux-gnu/sys/types.h" 2 3 4
- typedef __u_char u_char;
- typedef __u_short u_short;
- typedef __u_int u_int;
- typedef __u_long u_long;
- typedef __quad_t quad_t;
- typedef __u_quad_t u_quad_t;
- typedef __fsid_t fsid_t;
- typedef __loff_t loff_t;
- typedef __ino_t ino_t;
- # 61 "/usr/include/x86_64-linux-gnu/sys/types.h" 3 4
- typedef __dev_t dev_t;
- typedef __gid_t gid_t;
- typedef __mode_t mode_t;
- typedef __nlink_t nlink_t;
- typedef __uid_t uid_t;
- typedef __off_t off_t;
- # 99 "/usr/include/x86_64-linux-gnu/sys/types.h" 3 4
- typedef __pid_t pid_t;
- typedef __id_t id_t;
- typedef __ssize_t ssize_t;
- typedef __daddr_t daddr_t;
- typedef __caddr_t caddr_t;
- typedef __key_t key_t;
- # 133 "/usr/include/x86_64-linux-gnu/sys/types.h" 3 4
- # 1 "../../../dist/system_wrappers/time.h" 1 3 4
- # 2 "../../../dist/system_wrappers/time.h" 3
- #pragma GCC visibility push(default)
- # 1 "/usr/include/time.h" 1 3 4
- /* Copyright (C) 1991-2003,2006,2009,2011 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- /*
- * ISO C99 Standard: 7.23 Date and time <time.h>
- */
- # 56 "/usr/include/time.h" 3 4
- # 1 "/usr/include/x86_64-linux-gnu/bits/types.h" 1 3 4
- /* bits/types.h -- definitions of __*_t types underlying *_t types.
- Copyright (C) 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- /*
- * Never include this file directly; use <sys/types.h> instead.
- */
- # 57 "/usr/include/time.h" 2 3 4
- /* Returned by `clock'. */
- typedef __clock_t clock_t;
- # 72 "/usr/include/time.h" 3 4
- # 1 "/usr/include/x86_64-linux-gnu/bits/types.h" 1 3 4
- /* bits/types.h -- definitions of __*_t types underlying *_t types.
- Copyright (C) 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- /*
- * Never include this file directly; use <sys/types.h> instead.
- */
- # 73 "/usr/include/time.h" 2 3 4
- /* Returned by `time'. */
- typedef __time_t time_t;
- # 89 "/usr/include/time.h" 3 4
- # 1 "/usr/include/x86_64-linux-gnu/bits/types.h" 1 3 4
- /* bits/types.h -- definitions of __*_t types underlying *_t types.
- Copyright (C) 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- /*
- * Never include this file directly; use <sys/types.h> instead.
- */
- # 90 "/usr/include/time.h" 2 3 4
- /* Clock ID used in clock and timer functions. */
- typedef __clockid_t clockid_t;
- # 101 "/usr/include/time.h" 3 4
- # 1 "/usr/include/x86_64-linux-gnu/bits/types.h" 1 3 4
- /* bits/types.h -- definitions of __*_t types underlying *_t types.
- Copyright (C) 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- /*
- * Never include this file directly; use <sys/types.h> instead.
- */
- # 102 "/usr/include/time.h" 2 3 4
- /* Timer ID returned by `timer_create'. */
- typedef __timer_t timer_t;
- # 4 "../../../dist/system_wrappers/time.h" 2 3
- #pragma GCC visibility pop
- # 134 "/usr/include/x86_64-linux-gnu/sys/types.h" 2 3 4
- # 147 "/usr/include/x86_64-linux-gnu/sys/types.h" 3 4
- # 1 "../../../dist/system_wrappers/stddef.h" 1 3 4
- # 2 "../../../dist/system_wrappers/stddef.h" 3
- #pragma GCC visibility push(default)
- # 1 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 1 3 4
- /* Copyright (C) 1989, 1997, 1998, 1999, 2000, 2002, 2004, 2009
- Free Software Foundation, Inc.
- This file is part of GCC.
- GCC 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; either version 3, or (at your option)
- any later version.
- GCC 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 General Public License for more details.
- Under Section 7 of GPL version 3, you are granted additional
- permissions described in the GCC Runtime Library Exception, version
- 3.1, as published by the Free Software Foundation.
- You should have received a copy of the GNU General Public License and
- a copy of the GCC Runtime Library Exception along with this program;
- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
- <http://www.gnu.org/licenses/>. */
- /*
- * ISO C Standard: 7.17 Common definitions <stddef.h>
- */
- /* Any one of these symbols __need_* means that GNU libc
- wants us just to define one data type. So don't define
- the symbols that indicate this file's entire job has been done. */
- # 49 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* This avoids lossage on SunOS but only if stdtypes.h comes first.
- There's no way to win with the other order! Sun lossage. */
- /* On 4.3bsd-net2, make sure ansi.h is included, so we have
- one less case to deal with in the following. */
- /* On FreeBSD 5, machine/ansi.h does not exist anymore... */
- /* In 4.3bsd-net2, machine/ansi.h defines these symbols, which are
- defined if the corresponding type is *not* defined.
- FreeBSD-2.1 defines _MACHINE_ANSI_H_ instead of _ANSI_H_.
- NetBSD defines _I386_ANSI_H_ and _X86_64_ANSI_H_ instead of _ANSI_H_ */
- # 95 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* Sequent's header files use _PTRDIFF_T_ in some conflicting way.
- Just ignore it. */
- /* On VxWorks, <type/vxTypesBase.h> may have defined macros like
- _TYPE_size_t which will typedef size_t. fixincludes patched the
- vxTypesBase.h so that this macro is only defined if _GCC_SIZE_T is
- not defined, and so that defining this macro defines _GCC_SIZE_T.
- If we find that the macros are still defined at this point, we must
- invoke them so that the type is defined as expected. */
- # 120 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* In case nobody has defined these types, but we aren't running under
- GCC 2.00, make sure that __PTRDIFF_TYPE__, __SIZE_TYPE__, and
- __WCHAR_TYPE__ have reasonable values. This can happen if the
- parts of GCC is compiled by an older compiler, that actually
- include gstddef.h, such as collect2. */
- /* Signed type of difference of two pointers. */
- /* Define this type if we are doing the whole job,
- or if we want this type in particular. */
- # 160 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* If this symbol has done its job, get rid of it. */
- /* Unsigned type of `sizeof' something. */
- /* Define this type if we are doing the whole job,
- or if we want this type in particular. */
- # 238 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* Wide character type.
- Locale-writers should change this as necessary to
- be big enough to hold unique values not between 0 and 127,
- and not (wchar_t) -1, for each defined multibyte character. */
- /* Define this type if we are doing the whole job,
- or if we want this type in particular. */
- # 358 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* In 4.3bsd-net2, leave these undefined to indicate that size_t, etc.
- are already defined. */
- /* BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. */
- /* NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. */
- # 394 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* A null pointer constant. */
- # 412 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* Offset of member MEMBER in a struct of type TYPE. */
- # 4 "../../../dist/system_wrappers/stddef.h" 2 3
- #pragma GCC visibility pop
- # 148 "/usr/include/x86_64-linux-gnu/sys/types.h" 2 3 4
- /* Old compatibility names for C types. */
- typedef unsigned long int ulong;
- typedef unsigned short int ushort;
- typedef unsigned int uint;
- /* These size-specific names are used by some of the inet code. */
- # 187 "/usr/include/x86_64-linux-gnu/sys/types.h" 3 4
- /* For GCC 2.7 and later, we can use specific type-size attributes. */
- # 201 "/usr/include/x86_64-linux-gnu/sys/types.h" 3 4
- typedef unsigned int u_int8_t __attribute__ ((__mode__ (__QI__)));
- typedef unsigned int u_int16_t __attribute__ ((__mode__ (__HI__)));
- typedef unsigned int u_int32_t __attribute__ ((__mode__ (__SI__)));
- typedef unsigned int u_int64_t __attribute__ ((__mode__ (__DI__)));
- typedef int register_t __attribute__ ((__mode__ (__word__)));
- /* Some code from BIND tests this macro to see if the types above are
- defined. */
- /* In BSD <sys/types.h> is expected to define BYTE_ORDER. */
- # 1 "../../../dist/system_wrappers/endian.h" 1 3 4
- # 2 "../../../dist/system_wrappers/endian.h" 3
- #pragma GCC visibility push(default)
- # 1 "/usr/include/endian.h" 1 3 4
- /* Copyright (C) 1992, 1996, 1997, 2000, 2008 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- # 4 "../../../dist/system_wrappers/endian.h" 2 3
- #pragma GCC visibility pop
- # 218 "/usr/include/x86_64-linux-gnu/sys/types.h" 2 3 4
- /* It also defines `fd_set' and the FD_* macros for `select'. */
- # 1 "../../../dist/system_wrappers/sys/select.h" 1 3 4
- # 2 "../../../dist/system_wrappers/sys/select.h" 3
- #pragma GCC visibility push(default)
- # 1 "/usr/include/x86_64-linux-gnu/sys/select.h" 1 3 4
- /* `fd_set' type and related macros, and `select'/`pselect' declarations.
- Copyright (C) 1996-2003, 2009, 2011 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- /* POSIX 1003.1g: 6.2 Select from File Descriptor Sets <sys/select.h> */
- # 1 "../../../dist/system_wrappers/features.h" 1 3 4
- # 2 "../../../dist/system_wrappers/features.h" 3
- #pragma GCC visibility push(default)
- # 1 "/usr/include/features.h" 1 3 4
- /* Copyright (C) 1991-1993,1995-2007,2009,2010,2011
- Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- # 4 "../../../dist/system_wrappers/features.h" 2 3
- #pragma GCC visibility pop
- # 26 "/usr/include/x86_64-linux-gnu/sys/select.h" 2 3 4
- /* Get definition of needed basic types. */
- # 1 "/usr/include/x86_64-linux-gnu/bits/types.h" 1 3 4
- /* bits/types.h -- definitions of __*_t types underlying *_t types.
- Copyright (C) 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- /*
- * Never include this file directly; use <sys/types.h> instead.
- */
- # 29 "/usr/include/x86_64-linux-gnu/sys/select.h" 2 3 4
- /* Get __FD_* definitions. */
- # 1 "/usr/include/x86_64-linux-gnu/bits/select.h" 1 3 4
- /* Copyright (C) 1997-1999,2001,2008,2009,2011 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- # 1 "/usr/include/x86_64-linux-gnu/bits/wordsize.h" 1 3 4
- /* Determine the wordsize from the preprocessor defines. */
- # 24 "/usr/include/x86_64-linux-gnu/bits/select.h" 2 3 4
- # 32 "/usr/include/x86_64-linux-gnu/sys/select.h" 2 3 4
- /* Get __sigset_t. */
- # 1 "/usr/include/x86_64-linux-gnu/bits/sigset.h" 1 3 4
- /* __sig_atomic_t, __sigset_t, and related definitions. Linux version.
- Copyright (C) 1991, 1992, 1994, 1996, 1997, 2007
- Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- typedef int __sig_atomic_t;
- /* A `sigset_t' has a bit for each signal. */
- typedef struct
- {
- unsigned long int __val[(1024 / (8 * sizeof (unsigned long int)))];
- } __sigset_t;
- /* We only want to define these functions if <signal.h> was actually
- included; otherwise we were included just to define the types. Since we
- are namespace-clean, it wouldn't hurt to define extra macros. But
- trouble can be caused by functions being defined (e.g., any global
- register vars declared later will cause compilation errors). */
- # 35 "/usr/include/x86_64-linux-gnu/sys/select.h" 2 3 4
- typedef __sigset_t sigset_t;
- /* Get definition of timer specification structures. */
- # 1 "../../../dist/system_wrappers/time.h" 1 3 4
- # 2 "../../../dist/system_wrappers/time.h" 3
- #pragma GCC visibility push(default)
- # 1 "/usr/include/time.h" 1 3 4
- /* Copyright (C) 1991-2003,2006,2009,2011 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- /*
- * ISO C99 Standard: 7.23 Date and time <time.h>
- */
- # 116 "/usr/include/time.h" 3 4
- # 1 "/usr/include/x86_64-linux-gnu/bits/types.h" 1 3 4
- /* bits/types.h -- definitions of __*_t types underlying *_t types.
- Copyright (C) 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- /*
- * Never include this file directly; use <sys/types.h> instead.
- */
- # 117 "/usr/include/time.h" 2 3 4
- /* POSIX.1b structure for a time value. This is like a `struct timeval' but
- has nanoseconds instead of microseconds. */
- struct timespec
- {
- __time_t tv_sec; /* Seconds. */
- long int tv_nsec; /* Nanoseconds. */
- };
- # 4 "../../../dist/system_wrappers/time.h" 2 3
- #pragma GCC visibility pop
- # 45 "/usr/include/x86_64-linux-gnu/sys/select.h" 2 3 4
- # 1 "/usr/include/x86_64-linux-gnu/bits/time.h" 1 3 4
- /* System-dependent timing definitions. Linux version.
- Copyright (C) 1996,1997,1999-2003,2010,2011 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- /*
- * Never include this file directly; use <time.h> instead.
- */
- # 1 "/usr/include/x86_64-linux-gnu/bits/types.h" 1 3 4
- /* bits/types.h -- definitions of __*_t types underlying *_t types.
- Copyright (C) 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- /*
- * Never include this file directly; use <sys/types.h> instead.
- */
- # 28 "/usr/include/x86_64-linux-gnu/bits/time.h" 2 3 4
- /* A time value that is accurate to the nearest
- microsecond but also has a range of years. */
- struct timeval
- {
- __time_t tv_sec; /* Seconds. */
- __suseconds_t tv_usec; /* Microseconds. */
- };
- # 47 "/usr/include/x86_64-linux-gnu/sys/select.h" 2 3 4
- typedef __suseconds_t suseconds_t;
- /* The fd_set member is required to be an array of longs. */
- typedef long int __fd_mask;
- /* Some versions of <linux/posix_types.h> define this macros. */
- /* It's easier to assume 8-bit bytes than to get CHAR_BIT. */
- /* fd_set for select and pselect. */
- typedef struct
- {
- /* XPG4.2 requires this member name. Otherwise avoid the name
- from the global namespace. */
- __fd_mask __fds_bits[1024 / (8 * (int) sizeof (__fd_mask))];
- } fd_set;
- /* Maximum number of file descriptors in `fd_set'. */
- /* Sometimes the fd_set member is assumed to have this type. */
- typedef __fd_mask fd_mask;
- /* Number of bits per word of `fd_set' (some code assumes this is 32). */
- /* Access macros for `fd_set'. */
- /* Check the first NFDS descriptors each in READFDS (if not NULL) for read
- readiness, in WRITEFDS (if not NULL) for write readiness, and in EXCEPTFDS
- (if not NULL) for exceptional conditions. If TIMEOUT is not NULL, time out
- after waiting the interval specified therein. Returns the number of ready
- descriptors, or -1 for errors.
- This function is a cancellation point and therefore not marked with
- __THROW. */
- extern int select (int __nfds, fd_set *__restrict __readfds,
- fd_set *__restrict __writefds,
- fd_set *__restrict __exceptfds,
- struct timeval *__restrict __timeout);
- /* Same as above only that the TIMEOUT value is given with higher
- resolution and a sigmask which is been set temporarily. This version
- should be used.
- This function is a cancellation point and therefore not marked with
- __THROW. */
- extern int pselect (int __nfds, fd_set *__restrict __readfds,
- fd_set *__restrict __writefds,
- fd_set *__restrict __exceptfds,
- const struct timespec *__restrict __timeout,
- const __sigset_t *__restrict __sigmask);
- /* Define some inlines helping to catch common problems. */
- # 1 "/usr/include/x86_64-linux-gnu/bits/select2.h" 1 3 4
- /* Checking macros for select functions.
- Copyright (C) 2011 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- /* Helper functions to issue warnings and errors when needed. */
- extern unsigned long int __fdelt_chk (unsigned long int __d);
- extern unsigned long int __fdelt_warn (unsigned long int __d)
- __attribute__((__warning__ ("bit outside of fd_set selected")));
- # 130 "/usr/include/x86_64-linux-gnu/sys/select.h" 2 3 4
- # 4 "../../../dist/system_wrappers/sys/select.h" 2 3
- #pragma GCC visibility pop
- # 221 "/usr/include/x86_64-linux-gnu/sys/types.h" 2 3 4
- /* BSD defines these symbols, so we follow. */
- # 1 "/usr/include/x86_64-linux-gnu/sys/sysmacros.h" 1 3 4
- /* Definitions of macros to access `dev_t' values.
- Copyright (C) 1996, 1997, 1999, 2003, 2004, 2007, 2011
- Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- # 1 "../../../dist/system_wrappers/features.h" 1 3 4
- # 2 "../../../dist/system_wrappers/features.h" 3
- #pragma GCC visibility push(default)
- # 1 "/usr/include/features.h" 1 3 4
- /* Copyright (C) 1991-1993,1995-2007,2009,2010,2011
- Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- # 4 "../../../dist/system_wrappers/features.h" 2 3
- #pragma GCC visibility pop
- # 25 "/usr/include/x86_64-linux-gnu/sys/sysmacros.h" 2 3 4
- /* If the compiler does not know long long it is out of luck. We are
- not going to hack weird hacks to support the dev_t representation
- they need. */
- __extension__
- extern unsigned int gnu_dev_major (unsigned long long int __dev)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
- __extension__
- extern unsigned int gnu_dev_minor (unsigned long long int __dev)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
- __extension__
- extern unsigned long long int gnu_dev_makedev (unsigned int __major,
- unsigned int __minor)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__));
- # 64 "/usr/include/x86_64-linux-gnu/sys/sysmacros.h" 3 4
- /* Access the functions with their traditional names. */
- # 224 "/usr/include/x86_64-linux-gnu/sys/types.h" 2 3 4
- typedef __blksize_t blksize_t;
- /* Types from the Large File Support interface. */
- typedef __blkcnt_t blkcnt_t; /* Type to count number of disk blocks. */
- typedef __fsblkcnt_t fsblkcnt_t; /* Type to count file system blocks. */
- typedef __fsfilcnt_t fsfilcnt_t; /* Type to count file system inodes. */
- # 269 "/usr/include/x86_64-linux-gnu/sys/types.h" 3 4
- /* Now add the thread types. */
- # 1 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" 1 3 4
- /* Copyright (C) 2002,2003,2004,2005,2006,2007 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- # 1 "/usr/include/x86_64-linux-gnu/bits/wordsize.h" 1 3 4
- /* Determine the wordsize from the preprocessor defines. */
- # 24 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" 2 3 4
- # 48 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" 3 4
- /* Thread identifiers. The structure of the attribute type is not
- exposed on purpose. */
- typedef unsigned long int pthread_t;
- typedef union
- {
- char __size[56];
- long int __align;
- } pthread_attr_t;
- typedef struct __pthread_internal_list
- {
- struct __pthread_internal_list *__prev;
- struct __pthread_internal_list *__next;
- } __pthread_list_t;
- # 74 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" 3 4
- /* Data structures for mutex handling. The structure of the attribute
- type is not exposed on purpose. */
- typedef union
- {
- struct __pthread_mutex_s
- {
- int __lock;
- unsigned int __count;
- int __owner;
- unsigned int __nusers;
- /* KIND must stay at this position in the structure to maintain
- binary compatibility. */
- int __kind;
- int __spins;
- __pthread_list_t __list;
- # 101 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" 3 4
- } __data;
- char __size[40];
- long int __align;
- } pthread_mutex_t;
- typedef union
- {
- char __size[4];
- int __align;
- } pthread_mutexattr_t;
- /* Data structure for conditional variable handling. The structure of
- the attribute type is not exposed on purpose. */
- typedef union
- {
- struct
- {
- int __lock;
- unsigned int __futex;
- __extension__ unsigned long long int __total_seq;
- __extension__ unsigned long long int __wakeup_seq;
- __extension__ unsigned long long int __woken_seq;
- void *__mutex;
- unsigned int __nwaiters;
- unsigned int __broadcast_seq;
- } __data;
- char __size[48];
- __extension__ long long int __align;
- } pthread_cond_t;
- typedef union
- {
- char __size[4];
- int __align;
- } pthread_condattr_t;
- /* Keys for thread-specific data */
- typedef unsigned int pthread_key_t;
- /* Once-only execution */
- typedef int pthread_once_t;
- /* Data structure for read-write lock variable handling. The
- structure of the attribute type is not exposed on purpose. */
- typedef union
- {
- struct
- {
- int __lock;
- unsigned int __nr_readers;
- unsigned int __readers_wakeup;
- unsigned int __writer_wakeup;
- unsigned int __nr_readers_queued;
- unsigned int __nr_writers_queued;
- int __writer;
- int __shared;
- unsigned long int __pad1;
- unsigned long int __pad2;
- /* FLAGS must stay at this position in the structure to maintain
- binary compatibility. */
- unsigned int __flags;
- } __data;
- # 187 "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" 3 4
- char __size[56];
- long int __align;
- } pthread_rwlock_t;
- typedef union
- {
- char __size[8];
- long int __align;
- } pthread_rwlockattr_t;
- /* POSIX spinlock data type. */
- typedef volatile int pthread_spinlock_t;
- /* POSIX barriers data type. The structure of the type is
- deliberately not exposed. */
- typedef union
- {
- char __size[32];
- long int __align;
- } pthread_barrier_t;
- typedef union
- {
- char __size[4];
- int __align;
- } pthread_barrierattr_t;
- # 272 "/usr/include/x86_64-linux-gnu/sys/types.h" 2 3 4
- # 4 "../../../dist/system_wrappers/sys/types.h" 2 3
- #pragma GCC visibility pop
- # 321 "/usr/include/stdlib.h" 2 3 4
- /* These are the functions that actually do things. The `random', `srandom',
- `initstate' and `setstate' functions are those from BSD Unices.
- The `rand' and `srand' functions are required by the ANSI standard.
- We provide both interfaces to the same random number generator. */
- /* Return a random long integer between 0 and RAND_MAX inclusive. */
- extern long int random (void) __attribute__ ((__nothrow__ , __leaf__));
- /* Seed the random number generator with the given number. */
- extern void srandom (unsigned int __seed) __attribute__ ((__nothrow__ , __leaf__));
- /* Initialize the random number generator to use state buffer STATEBUF,
- of length STATELEN, and seed it with SEED. Optimal lengths are 8, 16,
- 32, 64, 128 and 256, the bigger the better; values less than 8 will
- cause an error and values greater than 256 will be rounded down. */
- extern char *initstate (unsigned int __seed, char *__statebuf,
- size_t __statelen) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2)));
- /* Switch the random number generator to state buffer STATEBUF,
- which should have been previously initialized by `initstate'. */
- extern char *setstate (char *__statebuf) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
- /* Reentrant versions of the `random' family of functions.
- These functions all use the following data structure to contain
- state, rather than global state variables. */
- struct random_data
- {
- int32_t *fptr; /* Front pointer. */
- int32_t *rptr; /* Rear pointer. */
- int32_t *state; /* Array of state values. */
- int rand_type; /* Type of random number generator. */
- int rand_deg; /* Degree of random number generator. */
- int rand_sep; /* Distance between front and rear. */
- int32_t *end_ptr; /* Pointer behind state table. */
- };
- extern int random_r (struct random_data *__restrict __buf,
- int32_t *__restrict __result) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
- extern int srandom_r (unsigned int __seed, struct random_data *__buf)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2)));
- extern int initstate_r (unsigned int __seed, char *__restrict __statebuf,
- size_t __statelen,
- struct random_data *__restrict __buf)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2, 4)));
- extern int setstate_r (char *__restrict __statebuf,
- struct random_data *__restrict __buf)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
- /* Return a random integer between 0 and RAND_MAX inclusive. */
- extern int rand (void) __attribute__ ((__nothrow__ , __leaf__));
- /* Seed the random number generator with the given number. */
- extern void srand (unsigned int __seed) __attribute__ ((__nothrow__ , __leaf__));
- /* Reentrant interface according to POSIX.1. */
- extern int rand_r (unsigned int *__seed) __attribute__ ((__nothrow__ , __leaf__));
- /* System V style 48-bit random number generator functions. */
- /* Return non-negative, double-precision floating-point value in [0.0,1.0). */
- extern double drand48 (void) __attribute__ ((__nothrow__ , __leaf__));
- extern double erand48 (unsigned short int __xsubi[3]) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
- /* Return non-negative, long integer in [0,2^31). */
- extern long int lrand48 (void) __attribute__ ((__nothrow__ , __leaf__));
- extern long int nrand48 (unsigned short int __xsubi[3])
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
- /* Return signed, long integers in [-2^31,2^31). */
- extern long int mrand48 (void) __attribute__ ((__nothrow__ , __leaf__));
- extern long int jrand48 (unsigned short int __xsubi[3])
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
- /* Seed random number generator. */
- extern void srand48 (long int __seedval) __attribute__ ((__nothrow__ , __leaf__));
- extern unsigned short int *seed48 (unsigned short int __seed16v[3])
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
- extern void lcong48 (unsigned short int __param[7]) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
- /* Data structure for communication with thread safe versions. This
- type is to be regarded as opaque. It's only exported because users
- have to allocate objects of this type. */
- struct drand48_data
- {
- unsigned short int __x[3]; /* Current state. */
- unsigned short int __old_x[3]; /* Old state. */
- unsigned short int __c; /* Additive const. in congruential formula. */
- unsigned short int __init; /* Flag for initializing. */
- unsigned long long int __a; /* Factor in congruential formula. */
- };
- /* Return non-negative, double-precision floating-point value in [0.0,1.0). */
- extern int drand48_r (struct drand48_data *__restrict __buffer,
- double *__restrict __result) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
- extern int erand48_r (unsigned short int __xsubi[3],
- struct drand48_data *__restrict __buffer,
- double *__restrict __result) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
- /* Return non-negative, long integer in [0,2^31). */
- extern int lrand48_r (struct drand48_data *__restrict __buffer,
- long int *__restrict __result)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
- extern int nrand48_r (unsigned short int __xsubi[3],
- struct drand48_data *__restrict __buffer,
- long int *__restrict __result)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
- /* Return signed, long integers in [-2^31,2^31). */
- extern int mrand48_r (struct drand48_data *__restrict __buffer,
- long int *__restrict __result)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
- extern int jrand48_r (unsigned short int __xsubi[3],
- struct drand48_data *__restrict __buffer,
- long int *__restrict __result)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
- /* Seed random number generator. */
- extern int srand48_r (long int __seedval, struct drand48_data *__buffer)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2)));
- extern int seed48_r (unsigned short int __seed16v[3],
- struct drand48_data *__buffer) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
- extern int lcong48_r (unsigned short int __param[7],
- struct drand48_data *__buffer)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2)));
- /* Allocate SIZE bytes of memory. */
- extern void *malloc (size_t __size) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__malloc__)) __attribute__ ((__warn_unused_result__));
- /* Allocate NMEMB elements of SIZE bytes each, all initialized to 0. */
- extern void *calloc (size_t __nmemb, size_t __size)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__malloc__)) __attribute__ ((__warn_unused_result__));
- /* Re-allocate the previously allocated block
- in PTR, making the new block SIZE bytes long. */
- /* __attribute_malloc__ is not used, because if realloc returns
- the same pointer that was passed to it, aliasing needs to be allowed
- between objects pointed by the old and new pointers. */
- extern void *realloc (void *__ptr, size_t __size)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
- /* Free a block allocated by `malloc', `realloc' or `calloc'. */
- extern void free (void *__ptr) __attribute__ ((__nothrow__ , __leaf__));
- /* Free a block. An alias for `free'. (Sun Unices). */
- extern void cfree (void *__ptr) __attribute__ ((__nothrow__ , __leaf__));
- # 1 "../../../dist/system_wrappers/alloca.h" 1 3 4
- # 2 "../../../dist/system_wrappers/alloca.h" 3
- #pragma GCC visibility push(default)
- # 1 "/usr/include/alloca.h" 1 3 4
- /* Copyright (C) 1992, 1996, 1997, 1998, 1999 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- # 1 "../../../dist/system_wrappers/features.h" 1 3 4
- # 2 "../../../dist/system_wrappers/features.h" 3
- #pragma GCC visibility push(default)
- # 1 "/usr/include/features.h" 1 3 4
- /* Copyright (C) 1991-1993,1995-2007,2009,2010,2011
- Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- # 4 "../../../dist/system_wrappers/features.h" 2 3
- #pragma GCC visibility pop
- # 23 "/usr/include/alloca.h" 2 3 4
- # 1 "../../../dist/system_wrappers/stddef.h" 1 3 4
- # 2 "../../../dist/system_wrappers/stddef.h" 3
- #pragma GCC visibility push(default)
- # 1 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 1 3 4
- /* Copyright (C) 1989, 1997, 1998, 1999, 2000, 2002, 2004, 2009
- Free Software Foundation, Inc.
- This file is part of GCC.
- GCC 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; either version 3, or (at your option)
- any later version.
- GCC 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 General Public License for more details.
- Under Section 7 of GPL version 3, you are granted additional
- permissions described in the GCC Runtime Library Exception, version
- 3.1, as published by the Free Software Foundation.
- You should have received a copy of the GNU General Public License and
- a copy of the GCC Runtime Library Exception along with this program;
- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
- <http://www.gnu.org/licenses/>. */
- /*
- * ISO C Standard: 7.17 Common definitions <stddef.h>
- */
- /* Any one of these symbols __need_* means that GNU libc
- wants us just to define one data type. So don't define
- the symbols that indicate this file's entire job has been done. */
- # 49 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* This avoids lossage on SunOS but only if stdtypes.h comes first.
- There's no way to win with the other order! Sun lossage. */
- /* On 4.3bsd-net2, make sure ansi.h is included, so we have
- one less case to deal with in the following. */
- /* On FreeBSD 5, machine/ansi.h does not exist anymore... */
- /* In 4.3bsd-net2, machine/ansi.h defines these symbols, which are
- defined if the corresponding type is *not* defined.
- FreeBSD-2.1 defines _MACHINE_ANSI_H_ instead of _ANSI_H_.
- NetBSD defines _I386_ANSI_H_ and _X86_64_ANSI_H_ instead of _ANSI_H_ */
- # 95 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* Sequent's header files use _PTRDIFF_T_ in some conflicting way.
- Just ignore it. */
- /* On VxWorks, <type/vxTypesBase.h> may have defined macros like
- _TYPE_size_t which will typedef size_t. fixincludes patched the
- vxTypesBase.h so that this macro is only defined if _GCC_SIZE_T is
- not defined, and so that defining this macro defines _GCC_SIZE_T.
- If we find that the macros are still defined at this point, we must
- invoke them so that the type is defined as expected. */
- # 120 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* In case nobody has defined these types, but we aren't running under
- GCC 2.00, make sure that __PTRDIFF_TYPE__, __SIZE_TYPE__, and
- __WCHAR_TYPE__ have reasonable values. This can happen if the
- parts of GCC is compiled by an older compiler, that actually
- include gstddef.h, such as collect2. */
- /* Signed type of difference of two pointers. */
- /* Define this type if we are doing the whole job,
- or if we want this type in particular. */
- # 160 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* If this symbol has done its job, get rid of it. */
- /* Unsigned type of `sizeof' something. */
- /* Define this type if we are doing the whole job,
- or if we want this type in particular. */
- # 238 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* Wide character type.
- Locale-writers should change this as necessary to
- be big enough to hold unique values not between 0 and 127,
- and not (wchar_t) -1, for each defined multibyte character. */
- /* Define this type if we are doing the whole job,
- or if we want this type in particular. */
- # 358 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* In 4.3bsd-net2, leave these undefined to indicate that size_t, etc.
- are already defined. */
- /* BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. */
- /* NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. */
- # 394 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* A null pointer constant. */
- # 412 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* Offset of member MEMBER in a struct of type TYPE. */
- # 4 "../../../dist/system_wrappers/stddef.h" 2 3
- #pragma GCC visibility pop
- # 26 "/usr/include/alloca.h" 2 3 4
- /* Remove any previous definitions. */
- /* Allocate a block that will be freed when the calling function exits. */
- extern void *alloca (size_t __size) __attribute__ ((__nothrow__ , __leaf__));
- # 4 "../../../dist/system_wrappers/alloca.h" 2 3
- #pragma GCC visibility pop
- # 498 "/usr/include/stdlib.h" 2 3 4
- /* Allocate SIZE bytes on a page boundary. The storage cannot be freed. */
- extern void *valloc (size_t __size) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__malloc__)) __attribute__ ((__warn_unused_result__));
- /* Allocate memory of SIZE bytes with an alignment of ALIGNMENT. */
- extern int posix_memalign (void **__memptr, size_t __alignment, size_t __size)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
- /* Abort execution and generate a core-dump. */
- extern void abort (void) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__noreturn__));
- /* Register a function to be called when `exit' is called. */
- extern int atexit (void (*__func) (void)) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
- # 531 "/usr/include/stdlib.h" 3 4
- /* Register a function to be called with the status
- given to `exit' and the given argument. */
- extern int on_exit (void (*__func) (int __status, void *__arg), void *__arg)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
- /* Call all functions registered with `atexit' and `on_exit',
- in the reverse of the order in which they were registered,
- perform stdio cleanup, and terminate program execution with STATUS. */
- extern void exit (int __status) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__noreturn__));
- # 554 "/usr/include/stdlib.h" 3 4
- /* Terminate the program with STATUS without calling any of the
- functions registered with `atexit' or `on_exit'. */
- extern void _Exit (int __status) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__noreturn__));
- /* Return the value of envariable NAME, or NULL if it doesn't exist. */
- extern char *getenv (__const char *__name) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
- /* This function is similar to the above but returns NULL if the
- programs is running with SUID or SGID enabled. */
- extern char *__secure_getenv (__const char *__name)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
- /* The SVID says this is in <stdio.h>, but this seems a better place. */
- /* Put STRING, which is of the form "NAME=VALUE", in the environment.
- If there is no `=', remove NAME from the environment. */
- extern int putenv (char *__string) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
- /* Set NAME to VALUE in the environment.
- If REPLACE is nonzero, overwrite an existing value. */
- extern int setenv (__const char *__name, __const char *__value, int __replace)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2)));
- /* Remove the variable NAME from the environment. */
- extern int unsetenv (__const char *__name) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
- /* The `clearenv' was planned to be added to POSIX.1 but probably
- never made it. Nevertheless the POSIX.9 standard (POSIX bindings
- for Fortran 77) requires this function. */
- extern int clearenv (void) __attribute__ ((__nothrow__ , __leaf__));
- /* Generate a unique temporary file name from TEMPLATE.
- The last six characters of TEMPLATE must be "XXXXXX";
- they are replaced with a string that makes the file name unique.
- Returns TEMPLATE, or a null pointer if it cannot get a unique file name. */
- extern char *mktemp (char *__template) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
- /* Generate a unique temporary file name from TEMPLATE.
- The last six characters of TEMPLATE must be "XXXXXX";
- they are replaced with a string that makes the filename unique.
- Returns a file descriptor open on the file for reading and writing,
- or -1 if it cannot create a uniquely-named file.
- This function is a possible cancellation point and therefore not
- marked with __THROW. */
- extern int mkstemp (char *__template) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
- # 635 "/usr/include/stdlib.h" 3 4
- /* Similar to mkstemp, but the template can have a suffix after the
- XXXXXX. The length of the suffix is specified in the second
- parameter.
- This function is a possible cancellation point and therefore not
- marked with __THROW. */
- extern int mkstemps (char *__template, int __suffixlen) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
- # 658 "/usr/include/stdlib.h" 3 4
- /* Create a unique temporary directory from TEMPLATE.
- The last six characters of TEMPLATE must be "XXXXXX";
- they are replaced with a string that makes the directory name unique.
- Returns TEMPLATE, or a null pointer if it cannot get a unique name.
- The directory is created mode 700. */
- extern char *mkdtemp (char *__template) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
- # 712 "/usr/include/stdlib.h" 3 4
- /* Execute the given line as a shell command.
- This function is a cancellation point and therefore not marked with
- __THROW. */
- extern int system (__const char *__command) __attribute__ ((__warn_unused_result__));
- # 729 "/usr/include/stdlib.h" 3 4
- /* Return the canonical absolute name of file NAME. If RESOLVED is
- null, the result is malloc'd; otherwise, if the canonical name is
- PATH_MAX chars or more, returns null with `errno' set to
- ENAMETOOLONG; if the name fits in fewer than PATH_MAX chars,
- returns the name in RESOLVED. */
- extern char *realpath (__const char *__restrict __name,
- char *__restrict __resolved) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
- /* Shorthand for type of comparison functions. */
- typedef int (*__compar_fn_t) (__const void *, __const void *);
- # 752 "/usr/include/stdlib.h" 3 4
- /* Do a binary search for KEY in BASE, which consists of NMEMB elements
- of SIZE bytes each, using COMPAR to perform the comparisons. */
- extern void *bsearch (__const void *__key, __const void *__base,
- size_t __nmemb, size_t __size, __compar_fn_t __compar)
- __attribute__ ((__nonnull__ (1, 2, 5))) __attribute__ ((__warn_unused_result__));
- /* Sort NMEMB elements of BASE, of SIZE bytes each,
- using COMPAR to perform the comparisons. */
- extern void qsort (void *__base, size_t __nmemb, size_t __size,
- __compar_fn_t __compar) __attribute__ ((__nonnull__ (1, 4)));
- /* Return the absolute value of X. */
- extern int abs (int __x) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)) __attribute__ ((__warn_unused_result__));
- extern long int labs (long int __x) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)) __attribute__ ((__warn_unused_result__));
- __extension__ extern long long int llabs (long long int __x)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)) __attribute__ ((__warn_unused_result__));
- /* Return the `div_t', `ldiv_t' or `lldiv_t' representation
- of the value of NUMER over DENOM. */
- /* GCC may have built-ins for these someday. */
- extern div_t div (int __numer, int __denom)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)) __attribute__ ((__warn_unused_result__));
- extern ldiv_t ldiv (long int __numer, long int __denom)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)) __attribute__ ((__warn_unused_result__));
- __extension__ extern lldiv_t lldiv (long long int __numer,
- long long int __denom)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__const__)) __attribute__ ((__warn_unused_result__));
- /* Convert floating point numbers to strings. The returned values are
- valid only until another call to the same function. */
- /* Convert VALUE to a string with NDIGIT digits and return a pointer to
- this. Set *DECPT with the position of the decimal character and *SIGN
- with the sign of the number. */
- extern char *ecvt (double __value, int __ndigit, int *__restrict __decpt,
- int *__restrict __sign) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (3, 4))) __attribute__ ((__warn_unused_result__));
- /* Convert VALUE to a string rounded to NDIGIT decimal digits. Set *DECPT
- with the position of the decimal character and *SIGN with the sign of
- the number. */
- extern char *fcvt (double __value, int __ndigit, int *__restrict __decpt,
- int *__restrict __sign) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (3, 4))) __attribute__ ((__warn_unused_result__));
- /* If possible convert VALUE to a string with NDIGIT significant digits.
- Otherwise use exponential representation. The resulting string will
- be written to BUF. */
- extern char *gcvt (double __value, int __ndigit, char *__buf)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (3))) __attribute__ ((__warn_unused_result__));
- /* Long double versions of above functions. */
- extern char *qecvt (long double __value, int __ndigit,
- int *__restrict __decpt, int *__restrict __sign)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (3, 4))) __attribute__ ((__warn_unused_result__));
- extern char *qfcvt (long double __value, int __ndigit,
- int *__restrict __decpt, int *__restrict __sign)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (3, 4))) __attribute__ ((__warn_unused_result__));
- extern char *qgcvt (long double __value, int __ndigit, char *__buf)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (3))) __attribute__ ((__warn_unused_result__));
- /* Reentrant version of the functions above which provide their own
- buffers. */
- extern int ecvt_r (double __value, int __ndigit, int *__restrict __decpt,
- int *__restrict __sign, char *__restrict __buf,
- size_t __len) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (3, 4, 5)));
- extern int fcvt_r (double __value, int __ndigit, int *__restrict __decpt,
- int *__restrict __sign, char *__restrict __buf,
- size_t __len) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (3, 4, 5)));
- extern int qecvt_r (long double __value, int __ndigit,
- int *__restrict __decpt, int *__restrict __sign,
- char *__restrict __buf, size_t __len)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (3, 4, 5)));
- extern int qfcvt_r (long double __value, int __ndigit,
- int *__restrict __decpt, int *__restrict __sign,
- char *__restrict __buf, size_t __len)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (3, 4, 5)));
- /* Return the length of the multibyte character
- in S, which is no longer than N. */
- extern int mblen (__const char *__s, size_t __n) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
- /* Return the length of the given multibyte character,
- putting its `wchar_t' representation in *PWC. */
- extern int mbtowc (wchar_t *__restrict __pwc,
- __const char *__restrict __s, size_t __n) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
- /* Put the multibyte character represented
- by WCHAR in S, returning its length. */
- extern int wctomb (char *__s, wchar_t __wchar) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
- /* Convert a multibyte string to a wide char string. */
- extern size_t mbstowcs (wchar_t *__restrict __pwcs,
- __const char *__restrict __s, size_t __n) __attribute__ ((__nothrow__ , __leaf__));
- /* Convert a wide char string to multibyte string. */
- extern size_t wcstombs (char *__restrict __s,
- __const wchar_t *__restrict __pwcs, size_t __n)
- __attribute__ ((__nothrow__ , __leaf__));
- /* Determine whether the string value of RESPONSE matches the affirmation
- or negative response expression as specified by the LC_MESSAGES category
- in the program's current locale. Returns 1 if affirmative, 0 if
- negative, and -1 if not matching. */
- extern int rpmatch (__const char *__response) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1))) __attribute__ ((__warn_unused_result__));
- /* Parse comma separated suboption from *OPTIONP and match against
- strings in TOKENS. If found return index and set *VALUEP to
- optional value introduced by an equal sign. If the suboption is
- not part of TOKENS return in *VALUEP beginning of unknown
- suboption. On exit *OPTIONP is set to the beginning of the next
- token or at the terminating NUL character. */
- extern int getsubopt (char **__restrict __optionp,
- char *__const *__restrict __tokens,
- char **__restrict __valuep)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1, 2, 3))) __attribute__ ((__warn_unused_result__));
- # 909 "/usr/include/stdlib.h" 3 4
- /* X/Open pseudo terminal handling. */
- # 945 "/usr/include/stdlib.h" 3 4
- /* Put the 1 minute, 5 minute and 15 minute load averages into the first
- NELEM elements of LOADAVG. Return the number written (never more than
- three, but may be less than NELEM), or -1 if an error occurred. */
- extern int getloadavg (double __loadavg[], int __nelem)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (1)));
- /* Define some macros helping to catch buffer overflows. */
- # 1 "/usr/include/x86_64-linux-gnu/bits/stdlib.h" 1 3 4
- /* Checking macros for stdlib functions.
- Copyright (C) 2005, 2007 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- extern char *__realpath_chk (__const char *__restrict __name,
- char *__restrict __resolved,
- size_t __resolvedlen) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
- extern char *__realpath_alias (__const char *__restrict __name, char *__restrict __resolved) __asm__ ("" "realpath") __attribute__ ((__nothrow__ , __leaf__))
- __attribute__ ((__warn_unused_result__));
- extern char *__realpath_chk_warn (__const char *__restrict __name, char *__restrict __resolved, size_t __resolvedlen) __asm__ ("" "__realpath_chk") __attribute__ ((__nothrow__ , __leaf__))
- __attribute__ ((__warn_unused_result__))
- __attribute__((__warning__ ("second argument of realpath must be either NULL or at " "least PATH_MAX bytes long buffer")))
- ;
- extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) __attribute__ ((__warn_unused_result__)) char *
- __attribute__ ((__nothrow__ , __leaf__)) realpath (__const char *__restrict __name, char *__restrict __resolved)
- {
- if (__builtin_object_size (__resolved, 2 > 1) != (size_t) -1)
- {
- return __realpath_chk (__name, __resolved, __builtin_object_size (__resolved, 2 > 1));
- }
- return __realpath_alias (__name, __resolved);
- }
- extern int __ptsname_r_chk (int __fd, char *__buf, size_t __buflen,
- size_t __nreal) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__nonnull__ (2)));
- extern int __ptsname_r_alias (int __fd, char *__buf, size_t __buflen) __asm__ ("" "ptsname_r") __attribute__ ((__nothrow__ , __leaf__))
- __attribute__ ((__nonnull__ (2)));
- extern int __ptsname_r_chk_warn (int __fd, char *__buf, size_t __buflen, size_t __nreal) __asm__ ("" "__ptsname_r_chk") __attribute__ ((__nothrow__ , __leaf__))
- __attribute__ ((__nonnull__ (2))) __attribute__((__warning__ ("ptsname_r called with buflen bigger than " "size of buf")))
- ;
- extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
- __attribute__ ((__nothrow__ , __leaf__)) ptsname_r (int __fd, char *__buf, size_t __buflen)
- {
- if (__builtin_object_size (__buf, 2 > 1) != (size_t) -1)
- {
- if (!__builtin_constant_p (__buflen))
- return __ptsname_r_chk (__fd, __buf, __buflen, __builtin_object_size (__buf, 2 > 1));
- if (__buflen > __builtin_object_size (__buf, 2 > 1))
- return __ptsname_r_chk_warn (__fd, __buf, __buflen, __builtin_object_size (__buf, 2 > 1));
- }
- return __ptsname_r_alias (__fd, __buf, __buflen);
- }
- extern int __wctomb_chk (char *__s, wchar_t __wchar, size_t __buflen)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
- extern int __wctomb_alias (char *__s, wchar_t __wchar) __asm__ ("" "wctomb") __attribute__ ((__nothrow__ , __leaf__))
- __attribute__ ((__warn_unused_result__));
- extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) __attribute__ ((__warn_unused_result__)) int
- __attribute__ ((__nothrow__ , __leaf__)) wctomb (char *__s, wchar_t __wchar)
- {
- /* We would have to include <limits.h> to get a definition of MB_LEN_MAX.
- But this would only disturb the namespace. So we define our own
- version here. */
- if (__builtin_object_size (__s, 2 > 1) != (size_t) -1 && 16 > __builtin_object_size (__s, 2 > 1))
- return __wctomb_chk (__s, __wchar, __builtin_object_size (__s, 2 > 1));
- return __wctomb_alias (__s, __wchar);
- }
- extern size_t __mbstowcs_chk (wchar_t *__restrict __dst,
- __const char *__restrict __src,
- size_t __len, size_t __dstlen) __attribute__ ((__nothrow__ , __leaf__));
- extern size_t __mbstowcs_alias (wchar_t *__restrict __dst, __const char *__restrict __src, size_t __len) __asm__ ("" "mbstowcs") __attribute__ ((__nothrow__ , __leaf__))
- ;
- extern size_t __mbstowcs_chk_warn (wchar_t *__restrict __dst, __const char *__restrict __src, size_t __len, size_t __dstlen) __asm__ ("" "__mbstowcs_chk") __attribute__ ((__nothrow__ , __leaf__))
- __attribute__((__warning__ ("mbstowcs called with dst buffer smaller than len " "* sizeof (wchar_t)")))
- ;
- extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) size_t
- __attribute__ ((__nothrow__ , __leaf__)) mbstowcs (wchar_t *__restrict __dst, __const char *__restrict __src, size_t __len)
- {
- if (__builtin_object_size (__dst, 2 > 1) != (size_t) -1)
- {
- if (!__builtin_constant_p (__len))
- return __mbstowcs_chk (__dst, __src, __len,
- __builtin_object_size (__dst, 2 > 1) / sizeof (wchar_t));
- if (__len > __builtin_object_size (__dst, 2 > 1) / sizeof (wchar_t))
- return __mbstowcs_chk_warn (__dst, __src, __len,
- __builtin_object_size (__dst, 2 > 1) / sizeof (wchar_t));
- }
- return __mbstowcs_alias (__dst, __src, __len);
- }
- extern size_t __wcstombs_chk (char *__restrict __dst,
- __const wchar_t *__restrict __src,
- size_t __len, size_t __dstlen) __attribute__ ((__nothrow__ , __leaf__));
- extern size_t __wcstombs_alias (char *__restrict __dst, __const wchar_t *__restrict __src, size_t __len) __asm__ ("" "wcstombs") __attribute__ ((__nothrow__ , __leaf__))
- ;
- extern size_t __wcstombs_chk_warn (char *__restrict __dst, __const wchar_t *__restrict __src, size_t __len, size_t __dstlen) __asm__ ("" "__wcstombs_chk") __attribute__ ((__nothrow__ , __leaf__))
- __attribute__((__warning__ ("wcstombs called with dst buffer smaller than len")));
- extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) size_t
- __attribute__ ((__nothrow__ , __leaf__)) wcstombs (char *__restrict __dst, __const wchar_t *__restrict __src, size_t __len)
- {
- if (__builtin_object_size (__dst, 2 > 1) != (size_t) -1)
- {
- if (!__builtin_constant_p (__len))
- return __wcstombs_chk (__dst, __src, __len, __builtin_object_size (__dst, 2 > 1));
- if (__len > __builtin_object_size (__dst, 2 > 1))
- return __wcstombs_chk_warn (__dst, __src, __len, __builtin_object_size (__dst, 2 > 1));
- }
- return __wcstombs_alias (__dst, __src, __len);
- }
- # 956 "/usr/include/stdlib.h" 2 3 4
- # 964 "/usr/include/stdlib.h" 3 4
- # 4 "../../../dist/system_wrappers/stdlib.h" 2 3
- #pragma GCC visibility pop
- # 5 "/home/ubuntu/tor-browser-build/gitian-builder/inputs/tor-browser/memory/replace/realloc/realloc.c" 2
- # 1 "../../../dist/system_wrappers/stdio.h" 1
- # 2 "../../../dist/system_wrappers/stdio.h" 3
- #pragma GCC visibility push(default)
- # 1 "/usr/include/stdio.h" 1 3 4
- /* Define ISO C stdio on top of C++ iostreams.
- Copyright (C) 1991, 1994-2010, 2011 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- /*
- * ISO C99 Standard: 7.19 Input/output <stdio.h>
- */
- # 1 "../../../dist/system_wrappers/features.h" 1 3 4
- # 2 "../../../dist/system_wrappers/features.h" 3
- #pragma GCC visibility push(default)
- # 1 "/usr/include/features.h" 1 3 4
- /* Copyright (C) 1991-1993,1995-2007,2009,2010,2011
- Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- # 4 "../../../dist/system_wrappers/features.h" 2 3
- #pragma GCC visibility pop
- # 29 "/usr/include/stdio.h" 2 3 4
- # 1 "../../../dist/system_wrappers/stddef.h" 1 3 4
- # 2 "../../../dist/system_wrappers/stddef.h" 3
- #pragma GCC visibility push(default)
- # 1 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 1 3 4
- /* Copyright (C) 1989, 1997, 1998, 1999, 2000, 2002, 2004, 2009
- Free Software Foundation, Inc.
- This file is part of GCC.
- GCC 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; either version 3, or (at your option)
- any later version.
- GCC 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 General Public License for more details.
- Under Section 7 of GPL version 3, you are granted additional
- permissions described in the GCC Runtime Library Exception, version
- 3.1, as published by the Free Software Foundation.
- You should have received a copy of the GNU General Public License and
- a copy of the GCC Runtime Library Exception along with this program;
- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
- <http://www.gnu.org/licenses/>. */
- /*
- * ISO C Standard: 7.17 Common definitions <stddef.h>
- */
- /* Any one of these symbols __need_* means that GNU libc
- wants us just to define one data type. So don't define
- the symbols that indicate this file's entire job has been done. */
- # 49 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* This avoids lossage on SunOS but only if stdtypes.h comes first.
- There's no way to win with the other order! Sun lossage. */
- /* On 4.3bsd-net2, make sure ansi.h is included, so we have
- one less case to deal with in the following. */
- /* On FreeBSD 5, machine/ansi.h does not exist anymore... */
- /* In 4.3bsd-net2, machine/ansi.h defines these symbols, which are
- defined if the corresponding type is *not* defined.
- FreeBSD-2.1 defines _MACHINE_ANSI_H_ instead of _ANSI_H_.
- NetBSD defines _I386_ANSI_H_ and _X86_64_ANSI_H_ instead of _ANSI_H_ */
- # 95 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* Sequent's header files use _PTRDIFF_T_ in some conflicting way.
- Just ignore it. */
- /* On VxWorks, <type/vxTypesBase.h> may have defined macros like
- _TYPE_size_t which will typedef size_t. fixincludes patched the
- vxTypesBase.h so that this macro is only defined if _GCC_SIZE_T is
- not defined, and so that defining this macro defines _GCC_SIZE_T.
- If we find that the macros are still defined at this point, we must
- invoke them so that the type is defined as expected. */
- # 120 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* In case nobody has defined these types, but we aren't running under
- GCC 2.00, make sure that __PTRDIFF_TYPE__, __SIZE_TYPE__, and
- __WCHAR_TYPE__ have reasonable values. This can happen if the
- parts of GCC is compiled by an older compiler, that actually
- include gstddef.h, such as collect2. */
- /* Signed type of difference of two pointers. */
- /* Define this type if we are doing the whole job,
- or if we want this type in particular. */
- # 160 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* If this symbol has done its job, get rid of it. */
- /* Unsigned type of `sizeof' something. */
- /* Define this type if we are doing the whole job,
- or if we want this type in particular. */
- # 238 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* Wide character type.
- Locale-writers should change this as necessary to
- be big enough to hold unique values not between 0 and 127,
- and not (wchar_t) -1, for each defined multibyte character. */
- /* Define this type if we are doing the whole job,
- or if we want this type in particular. */
- # 358 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* In 4.3bsd-net2, leave these undefined to indicate that size_t, etc.
- are already defined. */
- /* BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. */
- /* NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. */
- # 394 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* A null pointer constant. */
- # 412 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* Offset of member MEMBER in a struct of type TYPE. */
- # 4 "../../../dist/system_wrappers/stddef.h" 2 3
- #pragma GCC visibility pop
- # 35 "/usr/include/stdio.h" 2 3 4
- # 1 "/usr/include/x86_64-linux-gnu/bits/types.h" 1 3 4
- /* bits/types.h -- definitions of __*_t types underlying *_t types.
- Copyright (C) 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- /*
- * Never include this file directly; use <sys/types.h> instead.
- */
- # 37 "/usr/include/stdio.h" 2 3 4
- /* Define outside of namespace so the C++ is happy. */
- struct _IO_FILE;
- /* The opaque type of streams. This is the definition used elsewhere. */
- typedef struct _IO_FILE FILE;
- # 64 "/usr/include/stdio.h" 3 4
- /* The opaque type of streams. This is the definition used elsewhere. */
- typedef struct _IO_FILE __FILE;
- # 75 "/usr/include/stdio.h" 3 4
- # 1 "/usr/include/libio.h" 1 3 4
- /* Copyright (C) 1991-1995,1997-2006,2007,2009,2011 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Written by Per Bothner <bothner@cygnus.com>.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA.
- As a special exception, if you link the code in this file with
- files compiled with a GNU compiler to produce an executable,
- that does not cause the resulting executable to be covered by
- the GNU Lesser General Public License. This exception does not
- however invalidate any other reasons why the executable file
- might be covered by the GNU Lesser General Public License.
- This exception applies to code released by its copyright holders
- in files containing the exception. */
- # 1 "/usr/include/_G_config.h" 1 3 4
- /* This file is needed by libio to define various configuration parameters.
- These are always the same in the GNU C library. */
- /* Define types for libio in terms of the standard internal type names. */
- # 1 "/usr/include/x86_64-linux-gnu/bits/types.h" 1 3 4
- /* bits/types.h -- definitions of __*_t types underlying *_t types.
- Copyright (C) 2002, 2003, 2004, 2005, 2007 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- /*
- * Never include this file directly; use <sys/types.h> instead.
- */
- # 10 "/usr/include/_G_config.h" 2 3 4
- # 1 "../../../dist/system_wrappers/stddef.h" 1 3 4
- # 2 "../../../dist/system_wrappers/stddef.h" 3
- #pragma GCC visibility push(default)
- # 1 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 1 3 4
- /* Copyright (C) 1989, 1997, 1998, 1999, 2000, 2002, 2004, 2009
- Free Software Foundation, Inc.
- This file is part of GCC.
- GCC 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; either version 3, or (at your option)
- any later version.
- GCC 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 General Public License for more details.
- Under Section 7 of GPL version 3, you are granted additional
- permissions described in the GCC Runtime Library Exception, version
- 3.1, as published by the Free Software Foundation.
- You should have received a copy of the GNU General Public License and
- a copy of the GCC Runtime Library Exception along with this program;
- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
- <http://www.gnu.org/licenses/>. */
- /*
- * ISO C Standard: 7.17 Common definitions <stddef.h>
- */
- /* Any one of these symbols __need_* means that GNU libc
- wants us just to define one data type. So don't define
- the symbols that indicate this file's entire job has been done. */
- # 49 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* This avoids lossage on SunOS but only if stdtypes.h comes first.
- There's no way to win with the other order! Sun lossage. */
- /* On 4.3bsd-net2, make sure ansi.h is included, so we have
- one less case to deal with in the following. */
- /* On FreeBSD 5, machine/ansi.h does not exist anymore... */
- /* In 4.3bsd-net2, machine/ansi.h defines these symbols, which are
- defined if the corresponding type is *not* defined.
- FreeBSD-2.1 defines _MACHINE_ANSI_H_ instead of _ANSI_H_.
- NetBSD defines _I386_ANSI_H_ and _X86_64_ANSI_H_ instead of _ANSI_H_ */
- # 95 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* Sequent's header files use _PTRDIFF_T_ in some conflicting way.
- Just ignore it. */
- /* On VxWorks, <type/vxTypesBase.h> may have defined macros like
- _TYPE_size_t which will typedef size_t. fixincludes patched the
- vxTypesBase.h so that this macro is only defined if _GCC_SIZE_T is
- not defined, and so that defining this macro defines _GCC_SIZE_T.
- If we find that the macros are still defined at this point, we must
- invoke them so that the type is defined as expected. */
- # 120 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* In case nobody has defined these types, but we aren't running under
- GCC 2.00, make sure that __PTRDIFF_TYPE__, __SIZE_TYPE__, and
- __WCHAR_TYPE__ have reasonable values. This can happen if the
- parts of GCC is compiled by an older compiler, that actually
- include gstddef.h, such as collect2. */
- /* Signed type of difference of two pointers. */
- /* Define this type if we are doing the whole job,
- or if we want this type in particular. */
- # 160 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* If this symbol has done its job, get rid of it. */
- /* Unsigned type of `sizeof' something. */
- /* Define this type if we are doing the whole job,
- or if we want this type in particular. */
- # 238 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* Wide character type.
- Locale-writers should change this as necessary to
- be big enough to hold unique values not between 0 and 127,
- and not (wchar_t) -1, for each defined multibyte character. */
- /* Define this type if we are doing the whole job,
- or if we want this type in particular. */
- # 358 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* In 4.3bsd-net2, leave these undefined to indicate that size_t, etc.
- are already defined. */
- /* BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. */
- /* NetBSD 5 requires the I386_ANSI_H and X86_64_ANSI_H checks here. */
- # 394 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* A null pointer constant. */
- # 412 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stddef.h" 3 4
- /* Offset of member MEMBER in a struct of type TYPE. */
- # 4 "../../../dist/system_wrappers/stddef.h" 2 3
- #pragma GCC visibility pop
- # 16 "/usr/include/_G_config.h" 2 3 4
- # 1 "../../../dist/system_wrappers/wchar.h" 1 3 4
- # 2 "../../../dist/system_wrappers/wchar.h" 3
- #pragma GCC visibility push(default)
- # 1 "/usr/include/wchar.h" 1 3 4
- /* Copyright (C) 1995-2008, 2009, 2010, 2011 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- /*
- * ISO C99 Standard: 7.24
- * Extended multibyte and wide character utilities <wchar.h>
- */
- # 82 "/usr/include/wchar.h" 3 4
- /* Conversion state information. */
- typedef struct
- {
- int __count;
- union
- {
- unsigned int __wch;
- char __wchb[4];
- } __value; /* Value so far. */
- } __mbstate_t;
- /* The rest of the file is only used if used if __need_mbstate_t is not
- defined. */
- # 894 "/usr/include/wchar.h" 3 4
- /* Undefine all __need_* constants in case we are included to get those
- constants but the whole file was already read. */
- # 4 "../../../dist/system_wrappers/wchar.h" 2 3
- #pragma GCC visibility pop
- # 21 "/usr/include/_G_config.h" 2 3 4
- typedef struct
- {
- __off_t __pos;
- __mbstate_t __state;
- } _G_fpos_t;
- typedef struct
- {
- __off64_t __pos;
- __mbstate_t __state;
- } _G_fpos64_t;
- # 53 "/usr/include/_G_config.h" 3 4
- typedef int _G_int16_t __attribute__ ((__mode__ (__HI__)));
- typedef int _G_int32_t __attribute__ ((__mode__ (__SI__)));
- typedef unsigned int _G_uint16_t __attribute__ ((__mode__ (__HI__)));
- typedef unsigned int _G_uint32_t __attribute__ ((__mode__ (__SI__)));
- /* These library features are always available in the GNU C library. */
- # 82 "/usr/include/_G_config.h" 3 4
- /* This is defined by <bits/stat.h> if `st_blksize' exists. */
- /* These are the vtbl details for ELF. */
- # 33 "/usr/include/libio.h" 2 3 4
- /* ALL of these should be defined in _G_config.h */
- # 51 "/usr/include/libio.h" 3 4
- /* This define avoids name pollution if we're using GNU stdarg.h */
- # 1 "../../../dist/system_wrappers/stdarg.h" 1 3 4
- # 2 "../../../dist/system_wrappers/stdarg.h" 3
- #pragma GCC visibility push(default)
- # 1 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stdarg.h" 1 3 4
- /* Copyright (C) 1989, 1997, 1998, 1999, 2000, 2009 Free Software Foundation, Inc.
- This file is part of GCC.
- GCC 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; either version 3, or (at your option)
- any later version.
- GCC 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 General Public License for more details.
- Under Section 7 of GPL version 3, you are granted additional
- permissions described in the GCC Runtime Library Exception, version
- 3.1, as published by the Free Software Foundation.
- You should have received a copy of the GNU General Public License and
- a copy of the GCC Runtime Library Exception along with this program;
- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
- <http://www.gnu.org/licenses/>. */
- /*
- * ISO C Standard: 7.15 Variable arguments <stdarg.h>
- */
- # 36 "/usr/lib/gcc/x86_64-linux-gnu/4.6/include/stdarg.h" 3 4
- /* Define __gnuc_va_list. */
- typedef __builtin_va_list __gnuc_va_list;
- /* Define the standard macros for the user,
- if this invocation was from the user program. */
- # 4 "../../../dist/system_wrappers/stdarg.h" 2 3
- #pragma GCC visibility pop
- # 54 "/usr/include/libio.h" 2 3 4
- # 74 "/usr/include/libio.h" 3 4
- /* For backward compatibility */
- # 114 "/usr/include/libio.h" 3 4
- /* Magic numbers and bits for the _flags field.
- The magic numbers use the high-order bits of _flags;
- the remaining bits are available for variable flags.
- Note: The magic numbers must all be negative if stdio
- emulation is desired. */
- # 152 "/usr/include/libio.h" 3 4
- /* These are "formatting flags" matching the iostream fmtflags enum values. */
- # 172 "/usr/include/libio.h" 3 4
- struct _IO_jump_t; struct _IO_FILE;
- /* Handle lock. */
- typedef void _IO_lock_t;
- /* A streammarker remembers a position in a buffer. */
- struct _IO_marker {
- struct _IO_marker *_next;
- struct _IO_FILE *_sbuf;
- /* If _pos >= 0
- it points to _buf->Gbase()+_pos. FIXME comment */
- /* if _pos < 0, it points to _buf->eBptr()+_pos. FIXME comment */
- int _pos;
- # 205 "/usr/include/libio.h" 3 4
- };
- /* This is the structure from the libstdc++ codecvt class. */
- enum __codecvt_result
- {
- __codecvt_ok,
- __codecvt_partial,
- __codecvt_error,
- __codecvt_noconv
- };
- # 273 "/usr/include/libio.h" 3 4
- struct _IO_FILE {
- int _flags; /* High-order word is _IO_MAGIC; rest is flags. */
- /* The following pointers correspond to the C++ streambuf protocol. */
- /* Note: Tk uses the _IO_read_ptr and _IO_read_end fields directly. */
- char* _IO_read_ptr; /* Current read pointer */
- char* _IO_read_end; /* End of get area. */
- char* _IO_read_base; /* Start of putback+get area. */
- char* _IO_write_base; /* Start of put area. */
- char* _IO_write_ptr; /* Current put pointer. */
- char* _IO_write_end; /* End of put area. */
- char* _IO_buf_base; /* Start of reserve area. */
- char* _IO_buf_end; /* End of reserve area. */
- /* The following fields are used to support backing up and undo. */
- char *_IO_save_base; /* Pointer to start of non-current get area. */
- char *_IO_backup_base; /* Pointer to first valid character of backup area */
- char *_IO_save_end; /* Pointer to end of non-current get area. */
- struct _IO_marker *_markers;
- struct _IO_FILE *_chain;
- int _fileno;
- int _flags2;
- __off_t _old_offset; /* This used to be _offset but it's too small. */
- /* 1+column number of pbase(); 0 is unknown. */
- unsigned short _cur_column;
- signed char _vtable_offset;
- char _shortbuf[1];
- /* char* _save_gptr; char* _save_egptr; */
- _IO_lock_t *_lock;
- # 321 "/usr/include/libio.h" 3 4
- __off64_t _offset;
- # 330 "/usr/include/libio.h" 3 4
- void *__pad1;
- void *__pad2;
- void *__pad3;
- void *__pad4;
- size_t __pad5;
- int _mode;
- /* Make sure we don't get into trouble again. */
- char _unused2[15 * sizeof (int) - 4 * sizeof (void *) - sizeof (size_t)];
- };
- typedef struct _IO_FILE _IO_FILE;
- struct _IO_FILE_plus;
- extern struct _IO_FILE_plus _IO_2_1_stdin_;
- extern struct _IO_FILE_plus _IO_2_1_stdout_;
- extern struct _IO_FILE_plus _IO_2_1_stderr_;
- # 362 "/usr/include/libio.h" 3 4
- /* Functions to do I/O and file management for a stream. */
- /* Read NBYTES bytes from COOKIE into a buffer pointed to by BUF.
- Return number of bytes read. */
- typedef __ssize_t __io_read_fn (void *__cookie, char *__buf, size_t __nbytes);
- /* Write N bytes pointed to by BUF to COOKIE. Write all N bytes
- unless there is an error. Return number of bytes written, or -1 if
- there is an error without writing anything. If the file has been
- opened for append (__mode.__append set), then set the file pointer
- to the end of the file and then do the write; if not, just write at
- the current file pointer. */
- typedef __ssize_t __io_write_fn (void *__cookie, __const char *__buf,
- size_t __n);
- /* Move COOKIE's file position to *POS bytes from the
- beginning of the file (if W is SEEK_SET),
- the current position (if W is SEEK_CUR),
- or the end of the file (if W is SEEK_END).
- Set *POS to the new file position.
- Returns zero if successful, nonzero if not. */
- typedef int __io_seek_fn (void *__cookie, __off64_t *__pos, int __w);
- /* Close COOKIE. */
- typedef int __io_close_fn (void *__cookie);
- # 418 "/usr/include/libio.h" 3 4
- extern int __underflow (_IO_FILE *);
- extern int __uflow (_IO_FILE *);
- extern int __overflow (_IO_FILE *, int);
- # 462 "/usr/include/libio.h" 3 4
- extern int _IO_getc (_IO_FILE *__fp);
- extern int _IO_putc (int __c, _IO_FILE *__fp);
- extern int _IO_feof (_IO_FILE *__fp) __attribute__ ((__nothrow__ , __leaf__));
- extern int _IO_ferror (_IO_FILE *__fp) __attribute__ ((__nothrow__ , __leaf__));
- extern int _IO_peekc_locked (_IO_FILE *__fp);
- /* This one is for Emacs. */
- extern void _IO_flockfile (_IO_FILE *) __attribute__ ((__nothrow__ , __leaf__));
- extern void _IO_funlockfile (_IO_FILE *) __attribute__ ((__nothrow__ , __leaf__));
- extern int _IO_ftrylockfile (_IO_FILE *) __attribute__ ((__nothrow__ , __leaf__));
- # 492 "/usr/include/libio.h" 3 4
- extern int _IO_vfscanf (_IO_FILE * __restrict, const char * __restrict,
- __gnuc_va_list, int *__restrict);
- extern int _IO_vfprintf (_IO_FILE *__restrict, const char *__restrict,
- __gnuc_va_list);
- extern __ssize_t _IO_padn (_IO_FILE *, int, __ssize_t);
- extern size_t _IO_sgetn (_IO_FILE *, void *, size_t);
- extern __off64_t _IO_seekoff (_IO_FILE *, __off64_t, int, int);
- extern __off64_t _IO_seekpos (_IO_FILE *, __off64_t, int);
- extern void _IO_free_backup_area (_IO_FILE *) __attribute__ ((__nothrow__ , __leaf__));
- # 76 "/usr/include/stdio.h" 2 3 4
- typedef __gnuc_va_list va_list;
- # 108 "/usr/include/stdio.h" 3 4
- /* The type of the second argument to `fgetpos' and `fsetpos'. */
- typedef _G_fpos_t fpos_t;
- /* The possibilities for the third argument to `setvbuf'. */
- /* Default buffer size. */
- /* End of file character.
- Some things throughout the library rely on this being -1. */
- /* The possibilities for the third argument to `fseek'.
- These values should not be changed. */
- # 151 "/usr/include/stdio.h" 3 4
- /* Default path prefix for `tempnam' and `tmpnam'. */
- /* Get the values:
- L_tmpnam How long an array of chars must be to be passed to `tmpnam'.
- TMP_MAX The minimum number of unique filenames generated by tmpnam
- (and tempnam when it uses tmpnam's name space),
- or tempnam (the two are separate).
- L_ctermid How long an array to pass to `ctermid'.
- L_cuserid How long an array to pass to `cuserid'.
- FOPEN_MAX Minimum number of files that can be open at once.
- FILENAME_MAX Maximum length of a filename. */
- # 1 "/usr/include/x86_64-linux-gnu/bits/stdio_lim.h" 1 3 4
- /* Copyright (C) 1994, 1997, 1998, 1999, 2009 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- # 166 "/usr/include/stdio.h" 2 3 4
- /* Standard streams. */
- extern struct _IO_FILE *stdin; /* Standard input stream. */
- extern struct _IO_FILE *stdout; /* Standard output stream. */
- extern struct _IO_FILE *stderr; /* Standard error output stream. */
- /* C89/C99 say they're macros. Make them happy. */
- /* Remove file FILENAME. */
- extern int remove (__const char *__filename) __attribute__ ((__nothrow__ , __leaf__));
- /* Rename file OLD to NEW. */
- extern int rename (__const char *__old, __const char *__new) __attribute__ ((__nothrow__ , __leaf__));
- /* Rename file OLD relative to OLDFD to NEW relative to NEWFD. */
- extern int renameat (int __oldfd, __const char *__old, int __newfd,
- __const char *__new) __attribute__ ((__nothrow__ , __leaf__));
- /* Create a temporary file and open it read/write.
- This function is a possible cancellation point and therefore not
- marked with __THROW. */
- extern FILE *tmpfile (void) __attribute__ ((__warn_unused_result__));
- # 209 "/usr/include/stdio.h" 3 4
- /* Generate a temporary filename. */
- extern char *tmpnam (char *__s) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
- /* This is the reentrant variant of `tmpnam'. The only difference is
- that it does not allow S to be NULL. */
- extern char *tmpnam_r (char *__s) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
- /* Generate a unique temporary filename using up to five characters of PFX
- if it is not NULL. The directory to put this file in is searched for
- as follows: First the environment variable "TMPDIR" is checked.
- If it contains the name of a writable directory, that directory is used.
- If not and if DIR is not NULL, that value is checked. If that fails,
- P_tmpdir is tried and finally "/tmp". The storage for the filename
- is allocated by `malloc'. */
- extern char *tempnam (__const char *__dir, __const char *__pfx)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__malloc__)) __attribute__ ((__warn_unused_result__));
- /* Close STREAM.
- This function is a possible cancellation point and therefore not
- marked with __THROW. */
- extern int fclose (FILE *__stream);
- /* Flush STREAM, or all streams if STREAM is NULL.
- This function is a possible cancellation point and therefore not
- marked with __THROW. */
- extern int fflush (FILE *__stream);
- /* Faster versions when locking is not required.
- This function is not part of POSIX and therefore no official
- cancellation point. But due to similarity with an POSIX interface
- or due to the implementation it is a cancellation point and
- therefore not marked with __THROW. */
- extern int fflush_unlocked (FILE *__stream);
- # 267 "/usr/include/stdio.h" 3 4
- /* Open a file and create a new stream for it.
- This function is a possible cancellation point and therefore not
- marked with __THROW. */
- extern FILE *fopen (__const char *__restrict __filename,
- __const char *__restrict __modes) __attribute__ ((__warn_unused_result__));
- /* Open a file, replacing an existing stream with it.
- This function is a possible cancellation point and therefore not
- marked with __THROW. */
- extern FILE *freopen (__const char *__restrict __filename,
- __const char *__restrict __modes,
- FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
- # 296 "/usr/include/stdio.h" 3 4
- # 306 "/usr/include/stdio.h" 3 4
- /* Create a new stream that refers to an existing system file descriptor. */
- extern FILE *fdopen (int __fd, __const char *__modes) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
- # 319 "/usr/include/stdio.h" 3 4
- /* Create a new stream that refers to a memory buffer. */
- extern FILE *fmemopen (void *__s, size_t __len, __const char *__modes)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
- /* Open a stream that writes into a malloc'd buffer that is expanded as
- necessary. *BUFLOC and *SIZELOC are updated with the buffer's location
- and the number of characters written on fflush or fclose. */
- extern FILE *open_memstream (char **__bufloc, size_t *__sizeloc) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
- /* If BUF is NULL, make STREAM unbuffered.
- Else make it use buffer BUF, of size BUFSIZ. */
- extern void setbuf (FILE *__restrict __stream, char *__restrict __buf) __attribute__ ((__nothrow__ , __leaf__));
- /* Make STREAM use buffering mode MODE.
- If BUF is not NULL, use N bytes of it for buffering;
- else allocate an internal buffer N bytes long. */
- extern int setvbuf (FILE *__restrict __stream, char *__restrict __buf,
- int __modes, size_t __n) __attribute__ ((__nothrow__ , __leaf__));
- /* If BUF is NULL, make STREAM unbuffered.
- Else make it use SIZE bytes of BUF for buffering. */
- extern void setbuffer (FILE *__restrict __stream, char *__restrict __buf,
- size_t __size) __attribute__ ((__nothrow__ , __leaf__));
- /* Make STREAM line-buffered. */
- extern void setlinebuf (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__));
- /* Write formatted output to STREAM.
- This function is a possible cancellation point and therefore not
- marked with __THROW. */
- extern int fprintf (FILE *__restrict __stream,
- __const char *__restrict __format, ...);
- /* Write formatted output to stdout.
- This function is a possible cancellation point and therefore not
- marked with __THROW. */
- extern int printf (__const char *__restrict __format, ...);
- /* Write formatted output to S. */
- extern int sprintf (char *__restrict __s,
- __const char *__restrict __format, ...) __attribute__ ((__nothrow__));
- /* Write formatted output to S from argument list ARG.
- This function is a possible cancellation point and therefore not
- marked with __THROW. */
- extern int vfprintf (FILE *__restrict __s, __const char *__restrict __format,
- __gnuc_va_list __arg);
- /* Write formatted output to stdout from argument list ARG.
- This function is a possible cancellation point and therefore not
- marked with __THROW. */
- extern int vprintf (__const char *__restrict __format, __gnuc_va_list __arg);
- /* Write formatted output to S from argument list ARG. */
- extern int vsprintf (char *__restrict __s, __const char *__restrict __format,
- __gnuc_va_list __arg) __attribute__ ((__nothrow__));
- /* Maximum chars of output to write in MAXLEN. */
- extern int snprintf (char *__restrict __s, size_t __maxlen,
- __const char *__restrict __format, ...)
- __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 3, 4)));
- extern int vsnprintf (char *__restrict __s, size_t __maxlen,
- __const char *__restrict __format, __gnuc_va_list __arg)
- __attribute__ ((__nothrow__)) __attribute__ ((__format__ (__printf__, 3, 0)));
- # 412 "/usr/include/stdio.h" 3 4
- /* Write formatted output to a file descriptor.
- These functions are not part of POSIX and therefore no official
- cancellation point. But due to similarity with an POSIX interface
- or due to the implementation they are cancellation points and
- therefore not marked with __THROW. */
- extern int vdprintf (int __fd, __const char *__restrict __fmt,
- __gnuc_va_list __arg)
- __attribute__ ((__format__ (__printf__, 2, 0)));
- extern int dprintf (int __fd, __const char *__restrict __fmt, ...)
- __attribute__ ((__format__ (__printf__, 2, 3)));
- /* Read formatted input from STREAM.
- This function is a possible cancellation point and therefore not
- marked with __THROW. */
- extern int fscanf (FILE *__restrict __stream,
- __const char *__restrict __format, ...) __attribute__ ((__warn_unused_result__));
- /* Read formatted input from stdin.
- This function is a possible cancellation point and therefore not
- marked with __THROW. */
- extern int scanf (__const char *__restrict __format, ...) __attribute__ ((__warn_unused_result__));
- /* Read formatted input from S. */
- extern int sscanf (__const char *__restrict __s,
- __const char *__restrict __format, ...) __attribute__ ((__nothrow__ , __leaf__));
- /* For strict ISO C99 or POSIX compliance disallow %as, %aS and %a[
- GNU extension which conflicts with valid %a followed by letter
- s, S or [. */
- extern int fscanf (FILE *__restrict __stream, __const char *__restrict __format, ...) __asm__ ("" "__isoc99_fscanf")
- __attribute__ ((__warn_unused_result__));
- extern int scanf (__const char *__restrict __format, ...) __asm__ ("" "__isoc99_scanf")
- __attribute__ ((__warn_unused_result__));
- extern int sscanf (__const char *__restrict __s, __const char *__restrict __format, ...) __asm__ ("" "__isoc99_sscanf") __attribute__ ((__nothrow__ , __leaf__))
- ;
- # 469 "/usr/include/stdio.h" 3 4
- /* Read formatted input from S into argument list ARG.
- This function is a possible cancellation point and therefore not
- marked with __THROW. */
- extern int vfscanf (FILE *__restrict __s, __const char *__restrict __format,
- __gnuc_va_list __arg)
- __attribute__ ((__format__ (__scanf__, 2, 0))) __attribute__ ((__warn_unused_result__));
- /* Read formatted input from stdin into argument list ARG.
- This function is a possible cancellation point and therefore not
- marked with __THROW. */
- extern int vscanf (__const char *__restrict __format, __gnuc_va_list __arg)
- __attribute__ ((__format__ (__scanf__, 1, 0))) __attribute__ ((__warn_unused_result__));
- /* Read formatted input from S into argument list ARG. */
- extern int vsscanf (__const char *__restrict __s,
- __const char *__restrict __format, __gnuc_va_list __arg)
- __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__format__ (__scanf__, 2, 0)));
- /* For strict ISO C99 or POSIX compliance disallow %as, %aS and %a[
- GNU extension which conflicts with valid %a followed by letter
- s, S or [. */
- extern int vfscanf (FILE *__restrict __s, __const char *__restrict __format, __gnuc_va_list __arg) __asm__ ("" "__isoc99_vfscanf")
- __attribute__ ((__format__ (__scanf__, 2, 0))) __attribute__ ((__warn_unused_result__));
- extern int vscanf (__const char *__restrict __format, __gnuc_va_list __arg) __asm__ ("" "__isoc99_vscanf")
- __attribute__ ((__format__ (__scanf__, 1, 0))) __attribute__ ((__warn_unused_result__));
- extern int vsscanf (__const char *__restrict __s, __const char *__restrict __format, __gnuc_va_list __arg) __asm__ ("" "__isoc99_vsscanf") __attribute__ ((__nothrow__ , __leaf__))
- __attribute__ ((__format__ (__scanf__, 2, 0)));
- # 528 "/usr/include/stdio.h" 3 4
- /* Read a character from STREAM.
- These functions are possible cancellation points and therefore not
- marked with __THROW. */
- extern int fgetc (FILE *__stream);
- extern int getc (FILE *__stream);
- /* Read a character from stdin.
- This function is a possible cancellation point and therefore not
- marked with __THROW. */
- extern int getchar (void);
- /* The C standard explicitly says this is a macro, so we always do the
- optimization for it. */
- /* These are defined in POSIX.1:1996.
- These functions are possible cancellation points and therefore not
- marked with __THROW. */
- extern int getc_unlocked (FILE *__stream);
- extern int getchar_unlocked (void);
- /* Faster version when locking is not necessary.
- This function is not part of POSIX and therefore no official
- cancellation point. But due to similarity with an POSIX interface
- or due to the implementation it is a cancellation point and
- therefore not marked with __THROW. */
- extern int fgetc_unlocked (FILE *__stream);
- /* Write a character to STREAM.
- These functions are possible cancellation points and therefore not
- marked with __THROW.
- These functions is a possible cancellation point and therefore not
- marked with __THROW. */
- extern int fputc (int __c, FILE *__stream);
- extern int putc (int __c, FILE *__stream);
- /* Write a character to stdout.
- This function is a possible cancellation point and therefore not
- marked with __THROW. */
- extern int putchar (int __c);
- /* The C standard explicitly says this can be a macro,
- so we always do the optimization for it. */
- /* Faster version when locking is not necessary.
- This function is not part of POSIX and therefore no official
- cancellation point. But due to similarity with an POSIX interface
- or due to the implementation it is a cancellation point and
- therefore not marked with __THROW. */
- extern int fputc_unlocked (int __c, FILE *__stream);
- /* These are defined in POSIX.1:1996.
- These functions are possible cancellation points and therefore not
- marked with __THROW. */
- extern int putc_unlocked (int __c, FILE *__stream);
- extern int putchar_unlocked (int __c);
- /* Get a word (int) from STREAM. */
- extern int getw (FILE *__stream);
- /* Write a word (int) to STREAM. */
- extern int putw (int __w, FILE *__stream);
- /* Get a newline-terminated string of finite length from STREAM.
- This function is a possible cancellation point and therefore not
- marked with __THROW. */
- extern char *fgets (char *__restrict __s, int __n, FILE *__restrict __stream)
- __attribute__ ((__warn_unused_result__));
- /* Get a newline-terminated string from stdin, removing the newline.
- DO NOT USE THIS FUNCTION!! There is no limit on how much it will read.
- This function is a possible cancellation point and therefore not
- marked with __THROW. */
- extern char *gets (char *__s) __attribute__ ((__warn_unused_result__));
- # 652 "/usr/include/stdio.h" 3 4
- /* Read up to (and including) a DELIMITER from STREAM into *LINEPTR
- (and null-terminate it). *LINEPTR is a pointer returned from malloc (or
- NULL), pointing to *N characters of space. It is realloc'd as
- necessary. Returns the number of characters read (not including the
- null terminator), or -1 on error or EOF.
- These functions are not part of POSIX and therefore no official
- cancellation point. But due to similarity with an POSIX interface
- or due to the implementation they are cancellation points and
- therefore not marked with __THROW. */
- extern __ssize_t __getdelim (char **__restrict __lineptr,
- size_t *__restrict __n, int __delimiter,
- FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
- extern __ssize_t getdelim (char **__restrict __lineptr,
- size_t *__restrict __n, int __delimiter,
- FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
- /* Like `getdelim', but reads up to a newline.
- This function is not part of POSIX and therefore no official
- cancellation point. But due to similarity with an POSIX interface
- or due to the implementation it is a cancellation point and
- therefore not marked with __THROW. */
- extern __ssize_t getline (char **__restrict __lineptr,
- size_t *__restrict __n,
- FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
- /* Write a string to STREAM.
- This function is a possible cancellation point and therefore not
- marked with __THROW. */
- extern int fputs (__const char *__restrict __s, FILE *__restrict __stream);
- /* Write a string, followed by a newline, to stdout.
- This function is a possible cancellation point and therefore not
- marked with __THROW. */
- extern int puts (__const char *__s);
- /* Push a character back onto the input buffer of STREAM.
- This function is a possible cancellation point and therefore not
- marked with __THROW. */
- extern int ungetc (int __c, FILE *__stream);
- /* Read chunks of generic data from STREAM.
- This function is a possible cancellation point and therefore not
- marked with __THROW. */
- extern size_t fread (void *__restrict __ptr, size_t __size,
- size_t __n, FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
- /* Write chunks of generic data to STREAM.
- This function is a possible cancellation point and therefore not
- marked with __THROW. */
- extern size_t fwrite (__const void *__restrict __ptr, size_t __size,
- size_t __n, FILE *__restrict __s);
- # 728 "/usr/include/stdio.h" 3 4
- /* Faster versions when locking is not necessary.
- These functions are not part of POSIX and therefore no official
- cancellation point. But due to similarity with an POSIX interface
- or due to the implementation they are cancellation points and
- therefore not marked with __THROW. */
- extern size_t fread_unlocked (void *__restrict __ptr, size_t __size,
- size_t __n, FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
- extern size_t fwrite_unlocked (__const void *__restrict __ptr, size_t __size,
- size_t __n, FILE *__restrict __stream);
- /* Seek to a certain position on STREAM.
- This function is a possible cancellation point and therefore not
- marked with __THROW. */
- extern int fseek (FILE *__stream, long int __off, int __whence);
- /* Return the current position of STREAM.
- This function is a possible cancellation point and therefore not
- marked with __THROW. */
- extern long int ftell (FILE *__stream) __attribute__ ((__warn_unused_result__));
- /* Rewind to the beginning of STREAM.
- This function is a possible cancellation point and therefore not
- marked with __THROW. */
- extern void rewind (FILE *__stream);
- /* The Single Unix Specification, Version 2, specifies an alternative,
- more adequate interface for the two functions above which deal with
- file offset. `long int' is not the right type. These definitions
- are originally defined in the Large File Support API. */
- /* Seek to a certain position on STREAM.
- This function is a possible cancellation point and therefore not
- marked with __THROW. */
- extern int fseeko (FILE *__stream, __off_t __off, int __whence);
- /* Return the current position of STREAM.
- This function is a possible cancellation point and therefore not
- marked with __THROW. */
- extern __off_t ftello (FILE *__stream) __attribute__ ((__warn_unused_result__));
- # 789 "/usr/include/stdio.h" 3 4
- /* Get STREAM's position.
- This function is a possible cancellation point and therefore not
- marked with __THROW. */
- extern int fgetpos (FILE *__restrict __stream, fpos_t *__restrict __pos);
- /* Set STREAM's position.
- This function is a possible cancellation point and therefore not
- marked with __THROW. */
- extern int fsetpos (FILE *__stream, __const fpos_t *__pos);
- # 812 "/usr/include/stdio.h" 3 4
- # 821 "/usr/include/stdio.h" 3 4
- /* Clear the error and EOF indicators for STREAM. */
- extern void clearerr (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__));
- /* Return the EOF indicator for STREAM. */
- extern int feof (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
- /* Return the error indicator for STREAM. */
- extern int ferror (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
- /* Faster versions when locking is not required. */
- extern void clearerr_unlocked (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__));
- extern int feof_unlocked (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
- extern int ferror_unlocked (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
- /* Print a message describing the meaning of the value of errno.
- This function is a possible cancellation point and therefore not
- marked with __THROW. */
- extern void perror (__const char *__s);
- /* Provide the declarations for `sys_errlist' and `sys_nerr' if they
- are available on this system. Even if available, these variables
- should not be used directly. The `strerror' function provides
- all the necessary functionality. */
- # 1 "/usr/include/x86_64-linux-gnu/bits/sys_errlist.h" 1 3 4
- /* Declare sys_errlist and sys_nerr, or don't. Compatibility (do) version.
- Copyright (C) 2002 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- /* sys_errlist and sys_nerr are deprecated. Use strerror instead. */
- extern int sys_nerr;
- extern __const char *__const sys_errlist[];
- # 851 "/usr/include/stdio.h" 2 3 4
- /* Return the system file descriptor for STREAM. */
- extern int fileno (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
- /* Faster version when locking is not required. */
- extern int fileno_unlocked (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
- /* Create a new stream connected to a pipe running the given command.
- This function is a possible cancellation point and therefore not
- marked with __THROW. */
- extern FILE *popen (__const char *__command, __const char *__modes) __attribute__ ((__warn_unused_result__));
- /* Close a stream opened by popen and return the status of its child.
- This function is a possible cancellation point and therefore not
- marked with __THROW. */
- extern int pclose (FILE *__stream);
- /* Return the name of the controlling terminal. */
- extern char *ctermid (char *__s) __attribute__ ((__nothrow__ , __leaf__));
- # 907 "/usr/include/stdio.h" 3 4
- /* These are defined in POSIX.1:1996. */
- /* Acquire ownership of STREAM. */
- extern void flockfile (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__));
- /* Try to acquire ownership of STREAM but do not block if it is not
- possible. */
- extern int ftrylockfile (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__warn_unused_result__));
- /* Relinquish the ownership granted for STREAM. */
- extern void funlockfile (FILE *__stream) __attribute__ ((__nothrow__ , __leaf__));
- # 928 "/usr/include/stdio.h" 3 4
- /* If we are compiling with optimizing read this file. It contains
- several optimizing inline functions and macros. */
- # 1 "/usr/include/x86_64-linux-gnu/bits/stdio2.h" 1 3 4
- /* Checking macros for stdio functions.
- Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Lesser General Public
- License as published by the Free Software Foundation; either
- version 2.1 of the License, or (at your option) any later version.
- The GNU C Library 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
- Lesser General Public License for more details.
- You should have received a copy of the GNU Lesser General Public
- License along with the GNU C Library; if not, write to the Free
- Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
- 02111-1307 USA. */
- extern int __sprintf_chk (char *__restrict __s, int __flag, size_t __slen,
- __const char *__restrict __format, ...) __attribute__ ((__nothrow__ , __leaf__));
- extern int __vsprintf_chk (char *__restrict __s, int __flag, size_t __slen,
- __const char *__restrict __format,
- __gnuc_va_list __ap) __attribute__ ((__nothrow__ , __leaf__));
- extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
- __attribute__ ((__nothrow__ , __leaf__)) sprintf (char *__restrict __s, __const char *__restrict __fmt, ...)
- {
- return __builtin___sprintf_chk (__s, 2 - 1,
- __builtin_object_size (__s, 2 > 1), __fmt, __builtin_va_arg_pack ());
- }
- extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
- __attribute__ ((__nothrow__ , __leaf__)) vsprintf (char *__restrict __s, __const char *__restrict __fmt, __gnuc_va_list __ap)
- {
- return __builtin___vsprintf_chk (__s, 2 - 1,
- __builtin_object_size (__s, 2 > 1), __fmt, __ap);
- }
- extern int __snprintf_chk (char *__restrict __s, size_t __n, int __flag,
- size_t __slen, __const char *__restrict __format,
- ...) __attribute__ ((__nothrow__ , __leaf__));
- extern int __vsnprintf_chk (char *__restrict __s, size_t __n, int __flag,
- size_t __slen, __const char *__restrict __format,
- __gnuc_va_list __ap) __attribute__ ((__nothrow__ , __leaf__));
- extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
- __attribute__ ((__nothrow__ , __leaf__)) snprintf (char *__restrict __s, size_t __n, __const char *__restrict __fmt, ...)
- {
- return __builtin___snprintf_chk (__s, __n, 2 - 1,
- __builtin_object_size (__s, 2 > 1), __fmt, __builtin_va_arg_pack ());
- }
- extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
- __attribute__ ((__nothrow__ , __leaf__)) vsnprintf (char *__restrict __s, size_t __n, __const char *__restrict __fmt, __gnuc_va_list __ap)
- {
- return __builtin___vsnprintf_chk (__s, __n, 2 - 1,
- __builtin_object_size (__s, 2 > 1), __fmt, __ap);
- }
- extern int __fprintf_chk (FILE *__restrict __stream, int __flag,
- __const char *__restrict __format, ...);
- extern int __printf_chk (int __flag, __const char *__restrict __format, ...);
- extern int __vfprintf_chk (FILE *__restrict __stream, int __flag,
- __const char *__restrict __format, __gnuc_va_list __ap);
- extern int __vprintf_chk (int __flag, __const char *__restrict __format,
- __gnuc_va_list __ap);
- extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
- fprintf (FILE *__restrict __stream, __const char *__restrict __fmt, ...)
- {
- return __fprintf_chk (__stream, 2 - 1, __fmt,
- __builtin_va_arg_pack ());
- }
- extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
- printf (__const char *__restrict __fmt, ...)
- {
- return __printf_chk (2 - 1, __fmt, __builtin_va_arg_pack ());
- }
- extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
- vprintf (__const char *__restrict __fmt, __gnuc_va_list __ap)
- {
- return __vprintf_chk (2 - 1, __fmt, __ap);
- }
- extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) int
- vfprintf (FILE *__restrict __stream,
- __const char *__restrict __fmt, __gnuc_va_list __ap)
- {
- return __vfprintf_chk (__stream, 2 - 1, __fmt, __ap);
- }
- # 220 "/usr/include/x86_64-linux-gnu/bits/stdio2.h" 3 4
- extern char *__gets_chk (char *__str, size_t) __attribute__ ((__warn_unused_result__));
- extern char *__gets_warn (char *__str) __asm__ ("" "gets")
- __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("please use fgets or getline instead, gets can't " "specify buffer size")))
- ;
- extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) __attribute__ ((__warn_unused_result__)) char *
- gets (char *__str)
- {
- if (__builtin_object_size (__str, 2 > 1) != (size_t) -1)
- return __gets_chk (__str, __builtin_object_size (__str, 2 > 1));
- return __gets_warn (__str);
- }
- extern char *__fgets_chk (char *__restrict __s, size_t __size, int __n,
- FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
- extern char *__fgets_alias (char *__restrict __s, int __n, FILE *__restrict __stream) __asm__ ("" "fgets")
- __attribute__ ((__warn_unused_result__));
- extern char *__fgets_chk_warn (char *__restrict __s, size_t __size, int __n, FILE *__restrict __stream) __asm__ ("" "__fgets_chk")
- __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("fgets called with bigger size than length " "of destination buffer")))
- ;
- extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) __attribute__ ((__warn_unused_result__)) char *
- fgets (char *__restrict __s, int __n, FILE *__restrict __stream)
- {
- if (__builtin_object_size (__s, 2 > 1) != (size_t) -1)
- {
- if (!__builtin_constant_p (__n) || __n <= 0)
- return __fgets_chk (__s, __builtin_object_size (__s, 2 > 1), __n, __stream);
- if ((size_t) __n > __builtin_object_size (__s, 2 > 1))
- return __fgets_chk_warn (__s, __builtin_object_size (__s, 2 > 1), __n, __stream);
- }
- return __fgets_alias (__s, __n, __stream);
- }
- extern size_t __fread_chk (void *__restrict __ptr, size_t __ptrlen,
- size_t __size, size_t __n,
- FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
- extern size_t __fread_alias (void *__restrict __ptr, size_t __size, size_t __n, FILE *__restrict __stream) __asm__ ("" "fread")
- __attribute__ ((__warn_unused_result__));
- extern size_t __fread_chk_warn (void *__restrict __ptr, size_t __ptrlen, size_t __size, size_t __n, FILE *__restrict __stream) __asm__ ("" "__fread_chk")
- __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("fread called with bigger size * nmemb than length " "of destination buffer")))
- ;
- extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) __attribute__ ((__warn_unused_result__)) size_t
- fread (void *__restrict __ptr, size_t __size, size_t __n,
- FILE *__restrict __stream)
- {
- if (__builtin_object_size (__ptr, 0) != (size_t) -1)
- {
- if (!__builtin_constant_p (__size)
- || !__builtin_constant_p (__n)
- || (__size | __n) >= (((size_t) 1) << (8 * sizeof (size_t) / 2)))
- return __fread_chk (__ptr, __builtin_object_size (__ptr, 0), __size, __n, __stream);
- if (__size * __n > __builtin_object_size (__ptr, 0))
- return __fread_chk_warn (__ptr, __builtin_object_size (__ptr, 0), __size, __n, __stream);
- }
- return __fread_alias (__ptr, __size, __n, __stream);
- }
- # 319 "/usr/include/x86_64-linux-gnu/bits/stdio2.h" 3 4
- extern size_t __fread_unlocked_chk (void *__restrict __ptr, size_t __ptrlen,
- size_t __size, size_t __n,
- FILE *__restrict __stream) __attribute__ ((__warn_unused_result__));
- extern size_t __fread_unlocked_alias (void *__restrict __ptr, size_t __size, size_t __n, FILE *__restrict __stream) __asm__ ("" "fread_unlocked")
- __attribute__ ((__warn_unused_result__));
- extern size_t __fread_unlocked_chk_warn (void *__restrict __ptr, size_t __ptrlen, size_t __size, size_t __n, FILE *__restrict __stream) __asm__ ("" "__fread_unlocked_chk")
- __attribute__ ((__warn_unused_result__)) __attribute__((__warning__ ("fread_unlocked called with bigger size * nmemb than " "length of destination buffer")))
- ;
- extern __inline __attribute__ ((__always_inline__)) __attribute__ ((__artificial__)) __attribute__ ((__warn_unused_result__)) size_t
- fread_unlocked (void *__restrict __ptr, size_t __size, size_t __n,
- FILE *__restrict __stream)
- {
- if (__builtin_object_size (__ptr, 0) != (size_t) -1)
- {
- if (!__builtin_constant_p (__size)
- || !__builtin_constant_p (__n)
- || (__size | __n) >= (((size_t) 1) << (8 * sizeof (size_t) / 2)))
- return __fread_unlocked_chk (__ptr, __builtin_object_size (__ptr, 0), __size, __n,
- __stream);
- if (__size * __n > __builtin_object_size (__ptr, 0))
- return __fread_unlocked_chk_warn (__ptr, __builtin_object_size (__ptr, 0), __size, __n,
- __stream);
- }
- # 372 "/usr/include/x86_64-linux-gnu/bits/stdio2.h" 3 4
- return __fread_unlocked_alias (__ptr, __size, __n, __stream);
- }
- # 935 "/usr/include/stdio.h" 2 3 4
- # 4 "../../../dist/system_wrappers/stdio.h" 2 3
- #pragma GCC visibility pop
- # 6 "/home/ubuntu/tor-browser-build/gitian-builder/inputs/tor-browser/memory/replace/realloc/realloc.c" 2
- static const malloc_table_t *funcs = ((void *)0);
- static unsigned int total = 0, copies = 0;
- void replace_jemalloc_stats(jemalloc_stats_t *stats)
- {
- printf("%d reallocs, %d copies\n", total, copies);
- funcs->jemalloc_stats(stats);
- }
- void
- replace_init(const malloc_table_t *table)
- {
- funcs = table;
- printf("In init!\n");
- }
- void *replace_realloc(void *ptr, size_t size)
- {
- void *newptr = funcs->realloc(ptr, size);
- // Not thread-safe, but it's only an example.
- total++;
- // We don't want to count deallocations as copies.
- if (newptr && newptr != ptr)
- copies++;
- return newptr;
- }
Add Comment
Please, Sign In to add comment