changeset 97226:2c95c4530463

Add prototype for directory_files_internal.
author Eli Zaretskii <eliz@gnu.org>
date Sat, 02 Aug 2008 16:20:29 +0000
parents 3866542dcfee
children 1d85638347af
files src/lisp.h
diffstat 1 files changed, 42 insertions(+), 30 deletions(-) [+]
line wrap: on
line diff
--- a/src/lisp.h	Sat Aug 02 16:19:03 2008 +0000
+++ b/src/lisp.h	Sat Aug 02 16:20:29 2008 +0000
@@ -108,6 +108,13 @@
 
 #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
@@ -120,15 +127,10 @@
 #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:
-   - USE_LISP_UNION_TYPE says that Lisp_Object should be a union instead
-     of an integer.
+   - NO_UNION_TYPE says that Lisp_Object should be an integer instead
+     of a union.
    - 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.
@@ -157,11 +159,11 @@
 #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(NS_IMPL_COCOA)
+#if defined GNU_MALLOC || defined DOUG_LEA_MALLOC || defined __GLIBC__ || defined MAC_OSX
 /* 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.  */
-#  ifndef USE_LISP_UNION_TYPE
+#  if defined NO_UNION_TYPE
 #   define USE_LSB_TAG
 #  endif
 # endif
@@ -244,7 +246,7 @@
 #define VALBITS (BITS_PER_EMACS_INT - GCTYPEBITS)
 #endif
 
-#ifdef USE_LISP_UNION_TYPE
+#ifndef NO_UNION_TYPE
 
 #ifndef WORDS_BIG_ENDIAN
 
@@ -308,13 +310,13 @@
 #define LISP_MAKE_RVALUE(o) (o)
 #endif
 
-#else /* USE_LISP_UNION_TYPE */
+#else /* NO_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 /* USE_LISP_UNION_TYPE */
+#endif /* NO_UNION_TYPE */
 
 /* In the size word of a vector, this bit means the vector has been marked.  */
 
@@ -372,7 +374,7 @@
  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.  */
 
-#ifndef USE_LISP_UNION_TYPE
+#ifdef NO_UNION_TYPE
 
 /* Return a perfect hash of the Lisp_Object representation.  */
 #define XHASH(a) (a)
@@ -438,7 +440,7 @@
 
 #endif /* not USE_LSB_TAG */
 
-#else /* USE_LISP_UNION_TYPE */
+#else /* not NO_UNION_TYPE */
 
 #define XHASH(a) ((a).i)
 
@@ -470,7 +472,7 @@
 extern Lisp_Object make_number P_ ((EMACS_INT));
 #endif
 
-#endif /* USE_LISP_UNION_TYPE */
+#endif /* NO_UNION_TYPE */
 
 #define EQ(x, y) (XHASH (x) == XHASH (y))
 
@@ -1655,7 +1657,9 @@
   } 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,
@@ -2349,8 +2353,9 @@
 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 init_weak_hash_tables P_ ((void));
+void remove_hash_entry P_ ((struct Lisp_Hash_Table *, int));
 extern void init_fns P_ ((void));
 EXFUN (Fsxhash, 1);
 EXFUN (Fmake_hash_table, MANY);
@@ -2383,7 +2388,6 @@
 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);
@@ -2845,7 +2849,6 @@
 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));
@@ -2931,8 +2934,6 @@
 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 */
 
@@ -3288,9 +3289,6 @@
 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));
@@ -3331,16 +3329,30 @@
 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|w32)fns.c...  */
+/* Defined in (x|mac|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.  */