update.
[chise/xemacs-chise.git.1] / src / opaque.h
index 4788cf0..d308eb0 100644 (file)
@@ -23,14 +23,8 @@ Boston, MA 02111-1307, USA.  */
 
 /* Written by Ben Wing, October 1993. */
 
-#ifndef _XEMACS_OPAQUE_H_
-#define _XEMACS_OPAQUE_H_
-
-typedef union {
-  struct { Lisp_Object obj; } obj;
-  struct { void *p; } p;
-  struct { double d; } d;
-} max_align_t;
+#ifndef INCLUDED_opaque_h_
+#define INCLUDED_opaque_h_
 
 typedef struct Lisp_Opaque
 {
@@ -47,18 +41,16 @@ DECLARE_LRECORD (opaque, Lisp_Opaque);
    Opaque pointers should never escape to the Lisp level, so
    functions should not be doing this. */
 
-/* Alternative DATA arguments to make_opaque */
-#define OPAQUE_CLEAR  ((CONST void *)  0)
-#define OPAQUE_UNINIT ((CONST void *) -1)
+/* Alternative DATA arguments to make_opaque() */
+#define OPAQUE_CLEAR  ((const void *)  0)
+#define OPAQUE_UNINIT ((const void *) -1)
 
 #define OPAQUE_SIZE(op) ((op)->size)
 #define OPAQUE_DATA(op) ((void *) ((op)->data))
-#define OPAQUE_MARKFUN(op) ((op)->markfun)
 #define XOPAQUE_SIZE(op) OPAQUE_SIZE (XOPAQUE (op))
 #define XOPAQUE_DATA(op) OPAQUE_DATA (XOPAQUE (op))
-#define XOPAQUE_MARKFUN(op) OPAQUE_MARKFUN (XOPAQUE (op))
 
-Lisp_Object make_opaque (size_t size, CONST void *data);
+Lisp_Object make_opaque (const void *data, size_t size);
 
 typedef struct Lisp_Opaque_Ptr
 {
@@ -77,4 +69,4 @@ void free_opaque_ptr (Lisp_Object ptr);
 #define get_opaque_ptr(op) (XOPAQUE_PTR (op)->ptr)
 #define set_opaque_ptr(op, ptr_) (XOPAQUE_PTR (op)->ptr = (ptr_))
 
-#endif /* _XEMACS_OPAQUE_H_ */
+#endif /* INCLUDED_opaque_h_ */