view src/s/mach-bsd4-3.h @ 4847:05c519de7353

be more careful when printing to check for bad objects -------------------- ChangeLog entries follow: -------------------- src/ChangeLog addition: 2010-01-13 Ben Wing <ben@xemacs.org> * print.c: * print.c (internal_object_printer): * print.c (enum printing_badness): * print.c (printing_major_badness): * print.c (print_internal): Clean up the part of the code that looks for things that might lead to crashing in the print code: -- Make the "badness" messages more consistent. -- Move the checks for circularities after the checks for bad memory, since the checks for circularities involve accessing memory (which could be bad). -- Add an extra check to see if the object's implementation structure is bad memory. -- Add extra check for object itself being a null pointer or implementation pointer being null. -- Add some extra comments to help in maintaining the code.
author Ben Wing <ben@xemacs.org>
date Wed, 13 Jan 2010 06:02:42 -0600
parents 3ecd8885ac67
children c90385e49231
line wrap: on
line source

/* Synched up with: FSF 19.31. */

/* I don't care if this doesn't do more than including bsd4-3.h;
   Mach is not bsd4-3 and the moment you forget it chances are that
   you're in deep shit.  */

#include "bsd4-3.h"

/* The rest of this stuff is XEmacs additions. */
 
/* SYSTEM_TYPE should indicate the kind of system you are using.
 It sets the Lisp variable system-type.  */

#undef SYSTEM_TYPE
#define SYSTEM_TYPE "mach"

/* Don't send signals to subprocesses by "typing" special chars at them. */
#undef SIGNALS_VIA_CHARACTERS

/* XEmacs change */
/* unistd.h defines _POSIX_VERSION, which leads some things to believe 
   that _POSIX_PATH_MAX should be defined.  Unfortunately, it isn't. */
#ifndef NOT_C_CODE
#include <sys/param.h>
#define _POSIX_PATH_MAX MAXPATHLEN
#endif

#ifndef NOT_C_CODE
typedef int pid_t;
/* XEmacs change */
typedef unsigned short mode_t;
#endif /* NOT_C_CODE */

#if (defined(i386) || defined(ibmrt))
  /* use drem() instead of fmod() -- this is a BUG in the compiler runtime. */
# define USE_DREM
#endif