blob: 313a9e341092b23b19052ba42a21770d016b64f5 [file] [log] [blame]
Daniel Dunbard7d5f022009-03-24 02:24:46 +00001// RUN: clang-cc -fsyntax-only -verify %s
Steve Naroffc7938082008-06-03 22:06:04 +00002typedef long unsigned int __darwin_size_t;
3typedef long __darwin_ssize_t;
4typedef __darwin_size_t size_t;
5typedef __darwin_ssize_t ssize_t;
6
7struct cmsghdr {};
8
9#if 0
10This code below comes from the following system headers:
11sys/socket.h:#define CMSG_SPACE(l) (__DARWIN_ALIGN(sizeof(struct
12cmsghdr)) + __DARWIN_ALIGN(l))
13
14i386/_param.h:#define __DARWIN_ALIGN(p) ((__darwin_size_t)((char *)(p)
15+ __DARWIN_ALIGNBYTES) &~ __DARWIN_ALIGNBYTES)
16#endif
17
18ssize_t sendFileDescriptor(int fd, void *data, size_t nbytes, int sendfd) {
19 union {
20 char control[(((__darwin_size_t)((char *)(sizeof(struct cmsghdr)) + (sizeof(__darwin_size_t) - 1)) &~ (sizeof(__darwin_size_t) - 1)) + ((__darwin_size_t)((char *)(sizeof(int)) + (sizeof(__darwin_size_t) - 1)) &~ (sizeof(__darwin_size_t) - 1)))];
21 } control_un;
Mike Stumpd1969d82009-07-22 00:43:08 +000022 return 0;
Steve Naroffc7938082008-06-03 22:06:04 +000023}
24