summaryrefslogtreecommitdiff
path: root/src/lisp.h
diff options
context:
space:
mode:
authorEli Zaretskii <eliz@gnu.org>2008-08-02 17:03:34 +0000
committerEli Zaretskii <eliz@gnu.org>2008-08-02 17:03:34 +0000
commitb86cfd284576e5e23253f9e12b4445c97bdc687c (patch)
treeea8cb4cb539af05192f142f28ed73c90e8f56305 /src/lisp.h
parent0078170f722188a741d16949b4d24c67dd0c310d (diff)
downloademacs-b86cfd284576e5e23253f9e12b4445c97bdc687c.tar.gz
Fix erroneous last commit.
Diffstat (limited to 'src/lisp.h')
-rw-r--r--src/lisp.h72
1 files changed, 30 insertions, 42 deletions
diff --git a/src/lisp.h b/src/lisp.h
index 155a5c5cc44..cd9d0f5585a 100644
--- a/src/lisp.h
+++ b/src/lisp.h
@@ -108,13 +108,6 @@ extern void die P_((const char *, const char *, int)) NO_RETURN;
#endif
-/* Used for making sure that Emacs is compilable in all
- configurations. */
-
-#ifdef USE_LISP_UNION_TYPE
-#undef NO_UNION_TYPE
-#endif
-
/* Define an Emacs version of "assert", since some system ones are
flaky. */
#ifndef ENABLE_CHECKING
@@ -127,10 +120,15 @@ extern void die P_((const char *, const char *, int)) NO_RETURN;
#endif
#endif /* ENABLE_CHECKING */
+/* Define this to make Lisp_Object use a union type instead of the
+ default int. FIXME: It might be better to add a flag to configure
+ to do this. */
+/* #define USE_LISP_UNION_TYPE */
+
/***** Select the tagging scheme. *****/
/* There are basically two options that control the tagging scheme:
- - NO_UNION_TYPE says that Lisp_Object should be an integer instead
- of a union.
+ - USE_LISP_UNION_TYPE says that Lisp_Object should be a union instead
+ of an integer.
- USE_LSB_TAG means that we can assume the least 3 bits of pointers are
always 0, and we can thus use them to hold tag bits, without
restricting our addressing space.
@@ -159,11 +157,11 @@ extern void die P_((const char *, const char *, int)) NO_RETURN;
#endif
/* Let's USE_LSB_TAG on systems where we know malloc returns mult-of-8. */
-#if defined GNU_MALLOC || defined DOUG_LEA_MALLOC || defined __GLIBC__ || defined MAC_OSX
+#if defined GNU_MALLOC || defined DOUG_LEA_MALLOC || defined __GLIBC__ || defined(NS_IMPL_COCOA)
/* We also need to be able to specify mult-of-8 alignment on static vars. */
# if defined DECL_ALIGN
/* We currently do not support USE_LSB_TAG with a union Lisp_Object. */
-# if defined NO_UNION_TYPE
+# ifndef USE_LISP_UNION_TYPE
# define USE_LSB_TAG
# endif
# endif
@@ -246,7 +244,7 @@ enum Lisp_Misc_Type
#define VALBITS (BITS_PER_EMACS_INT - GCTYPEBITS)
#endif
-#ifndef NO_UNION_TYPE
+#ifdef USE_LISP_UNION_TYPE
#ifndef WORDS_BIG_ENDIAN
@@ -310,13 +308,13 @@ LISP_MAKE_RVALUE (Lisp_Object o)
#define LISP_MAKE_RVALUE(o) (o)
#endif
-#else /* NO_UNION_TYPE */
+#else /* USE_LISP_UNION_TYPE */
/* If union type is not wanted, define Lisp_Object as just a number. */
typedef EMACS_INT Lisp_Object;
#define LISP_MAKE_RVALUE(o) (0+(o))
-#endif /* NO_UNION_TYPE */
+#endif /* USE_LISP_UNION_TYPE */
/* In the size word of a vector, this bit means the vector has been marked. */
@@ -374,7 +372,7 @@ enum pvec_type
For example, if tem is a Lisp_Object whose type is Lisp_Cons,
XCONS (tem) is the struct Lisp_Cons * pointing to the memory for that cons. */
-#ifdef NO_UNION_TYPE
+#ifndef USE_LISP_UNION_TYPE
/* Return a perfect hash of the Lisp_Object representation. */
#define XHASH(a) (a)
@@ -440,7 +438,7 @@ enum pvec_type
#endif /* not USE_LSB_TAG */
-#else /* not NO_UNION_TYPE */
+#else /* USE_LISP_UNION_TYPE */
#define XHASH(a) ((a).i)
@@ -472,7 +470,7 @@ enum pvec_type
extern Lisp_Object make_number P_ ((EMACS_INT));
#endif
-#endif /* NO_UNION_TYPE */
+#endif /* USE_LISP_UNION_TYPE */
#define EQ(x, y) (XHASH (x) == XHASH (y))
@@ -1657,9 +1655,7 @@ typedef struct {
} while (0)
/* Cast pointers to this type to compare them. Some machines want int. */
-#ifndef PNTR_COMPARISON_TYPE
#define PNTR_COMPARISON_TYPE EMACS_UINT
-#endif
/* Define a built-in function for calling from Lisp.
`lname' should be the name to give the function in Lisp,
@@ -2353,9 +2349,8 @@ Lisp_Object copy_hash_table P_ ((struct Lisp_Hash_Table *));
int hash_lookup P_ ((struct Lisp_Hash_Table *, Lisp_Object, unsigned *));
int hash_put P_ ((struct Lisp_Hash_Table *, Lisp_Object, Lisp_Object,
unsigned));
-void hash_remove P_ ((struct Lisp_Hash_Table *, Lisp_Object));
void hash_clear P_ ((struct Lisp_Hash_Table *));
-void remove_hash_entry P_ ((struct Lisp_Hash_Table *, int));
+void init_weak_hash_tables P_ ((void));
extern void init_fns P_ ((void));
EXFUN (Fsxhash, 1);
EXFUN (Fmake_hash_table, MANY);
@@ -2388,6 +2383,7 @@ EXFUN (Fstring_make_unibyte, 1);
EXFUN (Fstring_as_multibyte, 1);
EXFUN (Fstring_as_unibyte, 1);
EXFUN (Fstring_to_multibyte, 1);
+EXFUN (Fstring_to_unibyte, 1);
EXFUN (Fsubstring, 3);
extern Lisp_Object substring_both P_ ((Lisp_Object, int, int, int, int));
EXFUN (Fnth, 2);
@@ -2849,6 +2845,7 @@ extern char *no_switch_window P_ ((Lisp_Object window));
EXFUN (Fset_buffer_multibyte, 1);
EXFUN (Foverlay_start, 1);
EXFUN (Foverlay_end, 1);
+EXFUN (Foverlay_buffer, 1);
extern void adjust_overlays_for_insert P_ ((EMACS_INT, EMACS_INT));
extern void adjust_overlays_for_delete P_ ((EMACS_INT, EMACS_INT));
extern void fix_start_end_in_overlays P_ ((int, int));
@@ -2934,6 +2931,8 @@ extern void syms_of_fileio P_ ((void));
extern void init_fileio_once P_ ((void));
extern Lisp_Object make_temp_name P_ ((Lisp_Object, int));
EXFUN (Fmake_symbolic_link, 3);
+extern Lisp_Object Qdelete_directory;
+extern Lisp_Object Qdelete_file;
/* Defined in abbrev.c */
@@ -3289,6 +3288,9 @@ extern void fatal P_ ((const char *msgid, ...)) NO_RETURN;
EXFUN (Fdelete_terminal, 2);
extern void syms_of_terminal P_ ((void));
+/* Defined in font.c */
+extern void syms_of_font P_ ((void));
+
#ifdef HAVE_WINDOW_SYSTEM
/* Defined in fontset.c */
extern void syms_of_fontset P_ ((void));
@@ -3329,30 +3331,16 @@ extern void syms_of_xterm P_ ((void));
EXFUN (Fmsdos_downcase_filename, 1);
#endif
-#ifdef MAC_OS
-/* Defined in macfns.c */
-extern void syms_of_macfns P_ ((void));
-
-/* Defined in macselect.c */
-extern void syms_of_macselect P_ ((void));
-
-/* Defined in macterm.c */
-extern void syms_of_macterm P_ ((void));
-
-/* Defined in macmenu.c */
-extern void syms_of_macmenu P_ ((void));
-
-/* Defined in mac.c */
-extern void syms_of_mac P_ ((void));
-#ifdef MAC_OSX
-extern void init_mac_osx_environment P_ ((void));
-#endif /* MAC_OSX */
-#endif /* MAC_OS */
-
#ifdef HAVE_MENUS
-/* Defined in (x|mac|w32)fns.c... */
+/* Defined in (x|w32)fns.c... */
extern int have_menus_p P_ ((void));
#endif
+
+#ifdef HAVE_DBUS
+/* Defined in dbusbind.c */
+void xd_read_queued_messages P_ ((void));
+void syms_of_dbusbind P_ ((void));
+#endif
/* Nonzero means Emacs has already been initialized.
Used during startup to detect startup of dumped Emacs. */