Subversion Repositories SvarDOS

Rev

Rev 616 | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 616 Rev 634
1
/*!\file sys/packoff.h
1
/*!\file sys/packoff.h
2
 *
2
 *
3
 * Default packing of structures.
3
 * Default packing of structures.
4
 */
4
 */
5
 
5
 
6
/*++
6
/*++
7

7

8
Copyright (c) 1990,91  Microsoft Corporation
8
Copyright (c) 1990,91  Microsoft Corporation
9

9

10
Module Name:
10
Module Name:
11

11

12
    packoff.h
12
    packoff.h
13

13

14
Abstract:
14
Abstract:
15

15

16
    This file turns packing of structures off.  (That is, it enables
16
    This file turns packing of structures off.  (That is, it enables
17
    automatic alignment of structure fields.)  An include file is needed
17
    automatic alignment of structure fields.)  An include file is needed
18
    because various compilers do this in different ways.
18
    because various compilers do this in different ways.
19

19

20
    packoff.h is the complement to packon.h.  An inclusion of packoff.h
20
    packoff.h is the complement to packon.h.  An inclusion of packoff.h
21
    MUST ALWAYS be preceded by an inclusion of packon.h, in one-to-one
21
    MUST ALWAYS be preceded by an inclusion of packon.h, in one-to-one
22
    correspondence.
22
    correspondence.
23

23

24
Author:
24
Author:
25

25

26
    Chuck Lenzmeier (chuckl) 4-Mar-1990
26
    Chuck Lenzmeier (chuckl) 4-Mar-1990
27

27

28
Revision History:
28
Revision History:
29

29

30
    15-Apr-1991 JohnRo
30
    15-Apr-1991 JohnRo
31
        Created lint-able variant.
31
        Created lint-able variant.
32

32

33
    20-Oct-1997 G.Vanem
33
    20-Oct-1997 G.Vanem
34
        Added Metaware support
34
        Added Metaware support
35

35

36
    05-Jul-1999 G.Vanem
36
    05-Jul-1999 G.Vanem
37
        Added LADsoft support
37
        Added LADsoft support
38

38

39
    01-Nov-2000 G. Vanem
39
    01-Nov-2000 G. Vanem
40
        Added Visual C/C++ support
40
        Added Visual C/C++ support
41

41

42
--*/
42
--*/
43
 
43
 
44
#if defined(__BORLANDC__) && (__BORLANDC__ >= 0x550)
44
#if defined(__BORLANDC__) && (__BORLANDC__ >= 0x550)
45
  #pragma option push -b -a8 -pc -A- /*P_O_Push*/
45
  #pragma option push -b -a8 -pc -A- /*P_O_Push*/
46
#endif
46
#endif
47
 
47
 
48
#if !(defined(lint) || defined(_lint))
48
#if !(defined(lint) || defined(_lint))
49
  #if defined(_MSC_VER) && (_MSC_VER >= 800)
49
  #if defined(_MSC_VER) && (_MSC_VER >= 800)
50
    #pragma warning(disable:4103)
50
    #pragma warning(disable:4103)
51
  #endif
51
  #endif
52
 
52
 
53
  #if defined(__CCDL__)
53
  #if defined(__CCDL__)
54
    #pragma pack()
54
    #pragma pack()
55
  #elif defined(__HIGHC__)
55
  #elif defined(__HIGHC__)
56
    #pragma pop_align_members();
56
    #pragma pop_align_members();
57
  #elif defined(__WATCOMC__) && (__WATCOMC__ >= 1000)
57
  #elif defined(__WATCOMC__) && (__WATCOMC__ >= 1000)
58
    #pragma pack(__pop);
58
    #pragma pack(__pop);
59
  #elif (defined(_MSC_VER) && (_MSC_VER > 800)) || \
59
  #elif (defined(_MSC_VER) && (_MSC_VER > 800)) || \
60
        (defined(__BORLANDC__) && (__BORLANDC__ >= 0x500)) || \
60
        (defined(__BORLANDC__) && (__BORLANDC__ >= 0x500)) || \
61
         defined(__POCC__) || defined(__LCC__)
61
         defined(__POCC__) || defined(__LCC__)
62
    #pragma pack(pop)
62
    #pragma pack(pop)
63
  #else
63
  #else
64
    #pragma pack()
64
    #pragma pack()
65
  #endif
65
  #endif
66
#endif
66
#endif
67
 
67
 
68
#if defined(__BORLANDC__) && (__BORLANDC__ >= 0x550)
68
#if defined(__BORLANDC__) && (__BORLANDC__ >= 0x550)
69
  #pragma option pop  /*P_O_Pop*/
69
  #pragma option pop  /*P_O_Pop*/
70
#endif
70
#endif
71
 
71