1{ 2 This file is part of the Free Pascal run time library. 3 Copyright (c) 2001 by Free Pascal development team 4 5 Basic types for C interfacing. Check the 64-bit defines. 6 7 See the file COPYING.FPC, included in this distribution, 8 for details about the copyright. 9 10 This program is distributed in the hope that it will be useful, 11 but WITHOUT ANY WARRANTY; without even the implied warranty of 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 13 14 **********************************************************************} 15 16{***********************************************************************} 17{ POSIX TYPE DEFINITIONS } 18{***********************************************************************} 19 20type 21 { the following type definitions are compiler dependant } 22 { and system dependant } 23 24 cint8 = shortint; pcint8 = ^cint8; 25 cuint8 = byte; pcuint8 = ^cuint8; 26 cchar = cint8; pcchar = ^cchar; 27 cschar = cint8; pcschar = ^cschar; 28 cuchar = cuint8; pcuchar = ^cuchar; 29 30 cint16 = smallint; pcint16 = ^cint16; 31 cuint16 = word; pcuint16 = ^cuint16; 32 cshort = cint16; pcshort = ^cshort; 33 csshort = cint16; pcsshort = ^csshort; 34 cushort = cuint16; pcushort = ^cushort; 35 36 cint32 = longint; pcint32 = ^cint32; 37 cuint32 = longword; pcuint32 = ^cuint32; 38 cint = cint32; pcint = ^cint; { minimum range is : 32-bit } 39 csint = cint32; pcsint = ^csint; { minimum range is : 32-bit } 40 cuint = cuint32; pcuint = ^cuint; { minimum range is : 32-bit } 41 csigned = cint; pcsigned = ^csigned; 42 cunsigned = cuint; pcunsigned = ^cunsigned; 43 44 cint64 = int64; pcint64 = ^cint64; 45 cuint64 = qword; pcuint64 = ^cuint64; 46 clonglong = cint64; pclonglong = ^clonglong; 47 cslonglong = cint64; pcslonglong = ^cslonglong; 48 culonglong = cuint64; pculonglong = ^culonglong; 49 50 cbool = longbool; pcbool = ^cbool; 51 52{$ifdef cpu64} 53 clong = int64; pclong = ^clong; 54 cslong = int64; pcslong = ^cslong; 55 culong = qword; pculong = ^culong; 56{$else} 57 clong = longint; pclong = ^clong; 58 cslong = longint; pcslong = ^cslong; 59 culong = cardinal; pculong = ^culong; 60{$endif} 61 62{$ifndef FPUNONE} 63 cfloat = single; pcfloat = ^cfloat; 64 cdouble = double; pcdouble = ^cdouble; 65 clongdouble = extended; pclongdouble = ^clongdouble; 66{$endif} 67 68// csize_t is defined in the operatingsystem dependant ptypes.inc 69// csize_t = ptruint; pcsize_t = pptruint; 70