Green shading in the line number column means the source is part of the translation unit, red means it is conditionally excluded. Highlighted line numbers link to the translation unit page. Highlighted macros link to the macro page.
1: /* 2: * Copyright (c) 2003-2007 Apple Inc. All rights reserved. 3: * 4: * @APPLE_OSREFERENCE_LICENSE_HEADER_START@ 5: * 6: * This file contains Original Code and/or Modifications of Original Code 7: * as defined in and that are subject to the Apple Public Source License 8: * Version 2.0 (the 'License'). You may not use this file except in 9: * compliance with the License. The rights granted to you under the License 10: * may not be used to create, or enable the creation or redistribution of, 11: * unlawful or unlicensed copies of an Apple operating system, or to 12: * circumvent, violate, or enable the circumvention or violation of, any 13: * terms of an Apple operating system software license agreement. 14: * 15: * Please obtain a copy of the License at 16: * http://www.opensource.apple.com/apsl/ and read it before using this file. 17: * 18: * The Original Code and all software distributed under the License are 19: * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER 20: * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, 21: * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, 22: * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT. 23: * Please see the License for the specific language governing rights and 24: * limitations under the License. 25: * 26: * @APPLE_OSREFERENCE_LICENSE_HEADER_END@ 27: */ 28: 29: #ifndef _SYS__TYPES_H_ 30: #define _SYS__TYPES_H_ 31: 32: #include <sys/cdefs.h> 33: #include <machine/_types.h> 34: 35: /* 36: * Type definitions; takes common type definitions that must be used 37: * in multiple header files due to [XSI], removes them from the system 38: * space, and puts them in the implementation space. 39: */ 40: 41: #ifdef __cplusplus 42: #ifdef __GNUG__ 43: #define __DARWIN_NULL __null 44: #else /* ! __GNUG__ */ 45: #ifdef __LP64__ 46: #define __DARWIN_NULL (0L) 47: #else /* !__LP64__ */ 48: #define __DARWIN_NULL 0 49: #endif /* __LP64__ */ 50: #endif /* __GNUG__ */ 51: #else /* ! __cplusplus */ 52: #define __DARWIN_NULL ((void *)0) 53: #endif /* __cplusplus */ 54: 55: typedef __int64_t __darwin_blkcnt_t; /* total blocks */ 56: typedef __int32_t __darwin_blksize_t; /* preferred block size */ 57: typedef __int32_t __darwin_dev_t; /* dev_t */ 58: typedef unsigned int __darwin_fsblkcnt_t; /* Used by statvfs and fstatvfs */ 59: typedef unsigned int __darwin_fsfilcnt_t; /* Used by statvfs and fstatvfs */ 60: typedef __uint32_t __darwin_gid_t; /* [???] process and group IDs */ 61: typedef __uint32_t __darwin_id_t; /* [XSI] pid_t, uid_t, or gid_t*/ 62: typedef __uint64_t __darwin_ino64_t; /* [???] Used for 64 bit inodes */ 63: #if __DARWIN_64_BIT_INO_T 64: typedef __darwin_ino64_t __darwin_ino_t; /* [???] Used for inodes */ 65: #else /* !__DARWIN_64_BIT_INO_T */ 66: typedef __uint32_t __darwin_ino_t; /* [???] Used for inodes */ 67: #endif /* __DARWIN_64_BIT_INO_T */ 68: typedef __darwin_natural_t __darwin_mach_port_name_t; /* Used by mach */ 69: typedef __darwin_mach_port_name_t __darwin_mach_port_t; /* Used by mach */ 70: typedef __uint16_t __darwin_mode_t; /* [???] Some file attributes */ 71: typedef __int64_t __darwin_off_t; /* [???] Used for file sizes */ 72: typedef __int32_t __darwin_pid_t; /* [???] process and group IDs */ 73: typedef __uint32_t __darwin_sigset_t; /* [???] signal set */ 74: typedef __int32_t __darwin_suseconds_t; /* [???] microseconds */ 75: typedef __uint32_t __darwin_uid_t; /* [???] user IDs */ 76: typedef __uint32_t __darwin_useconds_t; /* [???] microseconds */ 77: typedef unsigned char __darwin_uuid_t[16]; 78: typedef char __darwin_uuid_string_t[37]; 79: 80: #include <sys/_pthread/_pthread_types.h> 81: 82: #if defined(__GNUC__) && (__GNUC__ == 3 && __GNUC_MINOR__ >= 5 || __GNUC__ > 3) 83: #define __offsetof(type, field) __builtin_offsetof(type, field) 84: #else /* !(gcc >= 3.5) */ 85: #define __offsetof(type, field) ((size_t)(&((type *)0)->field)) 86: #endif /* (gcc >= 3.5) */ 87: 88: 89: #endif /* _SYS__TYPES_H_ */ 90: