1
/*********************************************************
2
* Copyright (C) 2002 VMware, Inc. All rights reserved.
4
* The contents of this file are subject to the terms of the Common
5
* Development and Distribution License (the "License") version 1.0
6
* and no later version. You may not use this file except in
7
* compliance with the License.
9
* You can obtain a copy of the License at
10
* http://www.opensource.org/licenses/cddl1.php
12
* See the License for the specific language governing permissions
13
* and limitations under the License.
15
*********************************************************/
17
#ifndef __VMWARE_PACK_INIT_H__
18
# define __VMWARE_PACK_INIT_H__
22
* vmware_pack_init.h --
24
* Platform-independent code to make the compiler pack (i.e. have them
25
* occupy the smallest possible space) structure definitions. The following
26
* constructs are known to work --hpreg
28
* #include "vmware_pack_begin.h"
32
* #include "vmware_pack_end.h"
36
* #include "vmware_pack_begin.h"
40
* #include "vmware_pack_end.h"
47
* MSVC 6.0 emits warning 4103 when the pack push and pop pragma pairing is
48
* not balanced within 1 included file. That is annoying because our scheme
49
* is based on the pairing being balanced between 2 included files.
51
* So we disable this warning, but this is safe because the compiler will also
52
* emit warning 4161 when there is more pops than pushes within 1 main
56
# pragma warning(disable:4103)
59
# error Compiler packing...
63
#endif /* __VMWARE_PACK_INIT_H__ */