ctypes.inc 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. {
  2. $Id$
  3. This file is part of the Free Pascal run time library.
  4. Copyright (c) 2001 by Free Pascal development team
  5. Basic types for C interfacing. Check the 64-bit defines.
  6. See the file COPYING.FPC, included in this distribution,
  7. for details about the copyright.
  8. This program is distributed in the hope that it will be useful,
  9. but WITHOUT ANY WARRANTY; without even the implied warranty of
  10. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  11. **********************************************************************}
  12. {***********************************************************************}
  13. { POSIX TYPE DEFINITIONS }
  14. {***********************************************************************}
  15. Type
  16. { the following type definitions are compiler dependant }
  17. { and system dependant }
  18. cInt8 = shortint;
  19. cUInt8 = byte;
  20. cUInt16= word;
  21. cInt16 = smallint;
  22. cInt32 = longint;
  23. cUInt32= cardinal;
  24. cInt64 = int64;
  25. {$ifndef VER1_0}
  26. cUInt64= qword;
  27. {$else}
  28. cUInt64= int64;
  29. {$endif}
  30. cuchar = byte;
  31. cInt = longint; { minimum range is : 32-bit }
  32. cUInt = Cardinal; { minimum range is : 32-bit }
  33. {$ifdef cpu64}
  34. cLong = int64;
  35. cuLong = qword;
  36. {$else}
  37. cLong = longint;
  38. cuLong = Cardinal;
  39. {$endif}
  40. clonglong = int64;
  41. {$ifndef VER1_0}
  42. culonglong = qword;
  43. {$else VER1_0}
  44. culonglong = int64;
  45. {$endif VER1_0}
  46. cshort = smallint;
  47. cushort= word;
  48. pcInt = ^cInt;
  49. pcUInt = ^cUInt;
  50. pcLong = ^cLong;
  51. pculong = ^cuLong;
  52. pcshort = ^cshort;
  53. pcushort= ^cushort;
  54. {
  55. $Log$
  56. Revision 1.5 2004-09-09 20:29:06 jonas
  57. * fixed definition of pthread_mutex_t for non-linux targets (and for
  58. linux as well, actually).
  59. * base libpthread definitions are now in ptypes.inc, included in unixtype
  60. They sometimes have an extra underscore in front of their name, in
  61. case they were also exported by the packages/base/pthreads unit, so
  62. they can keep their original name there
  63. * cthreadds unit now imports systuils, because it uses exceptions (it
  64. already did so before as well)
  65. * fixed many linux definitions of libpthread functions in pthrlinux.inc
  66. (integer -> cint etc)
  67. + added culonglong type to ctype.inc
  68. Revision 1.4 2004/04/26 16:53:19 peter
  69. * use cpu64
  70. Revision 1.3 2003/09/16 21:20:40 marco
  71. * pointer's of some basetypes
  72. Revision 1.2 2002/12/18 16:43:26 marco
  73. * new unix rtl, linux part.....
  74. Revision 1.1 2002/11/09 22:39:28 marco
  75. * first version
  76. }