Home | History | Annotate | Download | only in Sema
      1 // RUN: %clang_cc1 -fsyntax-only -verify %s
      2 typedef long unsigned int __darwin_size_t;
      3 typedef long __darwin_ssize_t;
      4 typedef __darwin_size_t size_t;
      5 typedef __darwin_ssize_t ssize_t;
      6 
      7 struct cmsghdr {};
      8 
      9 #if 0
     10 This code below comes from the following system headers:
     11 sys/socket.h:#define CMSG_SPACE(l) (__DARWIN_ALIGN(sizeof(struct
     12 cmsghdr)) + __DARWIN_ALIGN(l))
     13 
     14 i386/_param.h:#define __DARWIN_ALIGN(p) ((__darwin_size_t)((char *)(p)
     15 + __DARWIN_ALIGNBYTES) &~ __DARWIN_ALIGNBYTES)
     16 #endif
     17 
     18 ssize_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;
     22   return 0;
     23 }
     24 
     25