Mercurial > emacs
annotate mkinstalldirs @ 28406:451721e784a8
Stop assuming interval pointers and lisp objects can be distinguished by
inspection. Beginnings of support for expensive internal consistency checks.
* config.in (ENABLE_CHECKING): Undef.
* lisp.h (struct interval): Replace "parent" field with a union of interval
pointer and Lisp_Object; add new bitfield to use as discriminant. Change other
flag fields to bitfields.
(CHECK): New macro for consistency checking. If ENABLE_CHECKING is defined and
the supplied test fails, print a message and abort.
(eassert): New macro. Use CHECK to provide an assert-like facility.
* intervals.h (NULL_INTERVAL_P): Now applies only to real interval pointers;
abort if the value looks like a lisp object.
(NULL_INTERVAL_P, NULL_PARENT, HAS_PARENT, HAS_OBJECT, SET_PARENT, SET_OBJECT,
INTERVAL_PARENT, GET_INTERVAL_OBJECT, COPY_PARENT): Modify for new interval
parent definition.
* alloc.c (mark_interval_tree, MARK_INTERVAL_TREE, UNMARK_BALANCE_INTERVALS):
Update references that need an addressable lisp object in the interval
structure.
(die): New function.
(suppress_checking): New variable.
* intervals.c (interval_start_pos): Just return 0 if there's no parent object.
author | Ken Raeburn <raeburn@raeburn.org> |
---|---|
date | Wed, 29 Mar 2000 22:14:34 +0000 |
parents | 4fe4a165a116 |
children | 774df19dd335 |
rev | line source |
---|---|
25880 | 1 #! /bin/sh |
2 # mkinstalldirs --- make directory hierarchy | |
3 # Author: Noah Friedman <friedman@prep.ai.mit.edu> | |
4 # Created: 1993-05-16 | |
5 # Public domain | |
6 | |
7 # $Id: mkinstalldirs,v 1.11 1998/05/19 07:05:25 drepper dead $ | |
8 | |
9 errstatus=0 | |
10 | |
11 for file | |
12 do | |
13 set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'` | |
14 shift | |
15 | |
16 pathcomp= | |
17 for d | |
18 do | |
19 pathcomp="$pathcomp$d" | |
20 case "$pathcomp" in | |
21 -* ) pathcomp=./$pathcomp ;; | |
22 esac | |
23 | |
24 if test ! -d "$pathcomp"; then | |
25 echo "mkdir $pathcomp" 1>&2 | |
26 | |
27 mkdir "$pathcomp" || lasterr=$? | |
28 | |
29 if test ! -d "$pathcomp"; then | |
30 errstatus=$lasterr | |
31 fi | |
32 fi | |
33 | |
34 pathcomp="$pathcomp/" | |
35 done | |
36 done | |
37 | |
38 exit $errstatus | |
39 | |
40 # mkinstalldirs ends here |