| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185 | # OpenBSD RTL-to-C structure compatibility checker description file## Use#   h2paschk t_openbsd.h2paschk## ...to generate Pascal and C code, then make sure they both compile and that# the Pascal program produces the same output as the C program for each# supported architecture.@Pascal uses baseunix;@Pascal {$i ptypes.inc}@Pascal {$i ostypes.inc}@Pascal begin@C #define _LARGEFILE_SOURCE 1@C #define _FILE_OFFSET_BITS 64## @C #define _USE_FILE_OFFSET64## @C #ifdef __i386__## @C #define _LARGEFILE64_SOURCE## @C #endif@C #include <sys/types.h>@C #include <sys/stat.h>@C #include <sys/statfs.h>@C #include <sys/mount.h>@C #include <sys/time.h>@C #include <sys/times.h>@C #include <sys/resource.h>@C #include <sys/uio.h>@C #include <dirent.h>@C #include <poll.h>@C #include <utime.h>@C #include <fcntl.h>@C #include <unistd.h>@C #include <stdio.h>@C #include <stddef.h>@C int main()@C {@type dev_t@type gid_t@type ino_t@type mode_t@type nlink_t@type off_t@type pid_t@type size_t@type ssize_t@type uid_t@type clock_t@type time_t@type socklen_t@record timeval,struct timeval.tv_sec.tv_usec@record timespec,struct timespec.tv_sec.tv_nsec@type pthread_t@type pthread_attr_t@type pthread_mutex_t@type pthread_mutexattr_t@type pthread_cond_t@type pthread_condattr_t@type pthread_key_t@type pthread_rwlock_t@type pthread_rwlockattr_t@type rlim_t@record stat,struct stat.st_dev.st_ino.st_mode#.st_padding0.st_nlink.st_uid.st_gid#.st_padding1.st_rdev.st_size.st_blocks.st_blksize.st_atime,st_atim.tv_sec.st_atime_nsec,st_atim.tv_nsec.st_mtime,st_mtim.tv_sec.st_mtime_nsec,st_mtim.tv_nsec.st_ctime,st_ctim.tv_sec.st_ctime_nsec,st_ctim.tv_nsec@Pascal {$if defined (CPUPOWERPC) or defined(CPUPOWERPC64)}@C #ifdef __powerpc__.__unused4.__unused5@Pascal {$ifdef CPU64}@C #ifdef __LP64__.__unused6@C #endif@Pascal {$endif CPU64}@C #endif@Pascal {$endif powerpc}#.st_flags#.st_gen@record dirent,struct dirent.d_fileno.d_off.d_reclen.d_type#.d_pad0#.d_namlen#.d_pad1.d_name@record TStatFs,struct statfs.fstype,f_type.bsize,f_bsize.blocks,f_blocks.bfree,f_bfree.bavail,f_bavail.files,f_files.ffree,f_ffree.fsid,f_fsid.namelen,f_namelen.frsize,f_frsize.flags,f_flags.spare,f_spare@record pollfd,struct pollfd.fd.events.revents@record utimbuf,struct utimbuf.actime.modtime@record flock,struct flock.l_start.l_len.l_pid.l_type.l_whence@record tms,struct tms.tms_utime.tms_stime.tms_cutime.tms_cstime@record timezone,struct timezone.tz_minuteswest.tz_dsttime#@record rusage,struct rusage#.ru_utime#.ru_stime#.ru_maxrss#.ru_ixrss#.ru_idrss#.ru_isrss#.ru_minflt#.ru_majflt#.ru_nswap#.ru_inblock#.ru_oublock#.ru_msgsnd#.ru_msgrcv#.ru_nsignals#.ru_nvcsw#.ru_nivcsw@record TRLimit,struct rlimit.rlim_cur.rlim_max@record iovec,struct iovec.iov_base.iov_len@C   return 0;@C }@Pascal end.
 |