1enum Lisp_Type
2{
3  Lisp_Int
4  ,Lisp_Record
5  ,Lisp_Cons
6  ,Lisp_String
7  ,Lisp_Vector
8  ,Lisp_Symbol
9  ,Lisp_Char
10};
11typedef
12union Lisp_Object
13  {
14    struct
15      {
16        enum Lisp_Type type: 3L ;
17        unsigned long  markbit: 1;
18        unsigned long  val: 32;
19      } gu;
20    long  i;
21  }
22Lisp_Object;
23extern int initialized;
24void
25init_device_faces (int *d)
26{
27  if (initialized)
28    {
29      Lisp_Object tdevice;
30      do {
31          tdevice = (union Lisp_Object)
32                        { gu:
33                          { markbit: 0,
34                            type: Lisp_Record,
35                            val: ((unsigned long )d)
36                          }
37                        };
38      } while (0);
39      call_critical_lisp_code (tdevice);
40    }
41}
42