1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-23 13:02:00 -08:00

Change.dylan.box-turtle.170569.assignment.1

Copied from Perforce
 Change: 19362
 ServerID: perforce.ravenbrook.com
This commit is contained in:
Gavin Matthews 1998-03-12 18:01:05 +00:00
parent 703834a7d0
commit 9e3c3716fc

View file

@ -1,6 +1,6 @@
/* impl.c.arena: ARENA IMPLEMENTATION
*
* $HopeName: MMsrc!arena.c(trunk.29) $
* $HopeName: MMsrc!arena.c(trunk.30) $
* Copyright (C) 1997 The Harlequin Group Limited. All rights reserved.
*
* .readership: Any MPS developer
@ -36,7 +36,7 @@
#include "poolmrg.h"
#include "mps.h"
SRCID(arena, "$HopeName: MMsrc!arena.c(trunk.29) $");
SRCID(arena, "$HopeName: MMsrc!arena.c(trunk.30) $");
/* All static data objects are declared here. See .static */
@ -1066,6 +1066,9 @@ Bool SegPrefCheck(SegPref pref)
CHECKS(SegPref, pref);
CHECKL(BoolCheck(pref->high));
/* refSet can't be checked because it's an arbitrary bit pattern. */
CHECKL(BoolCheck(pref->isGen));
CHECKL(BoolCheck(pref->isCollected));
/* gen is an arbitrary serial */
return TRUE;
}
@ -1078,6 +1081,9 @@ static SegPrefStruct segPrefDefault = {
SegPrefSig, /* sig */
FALSE, /* high */
RefSetUNIV, /* refSet */
FALSE, /* isCollected */
FALSE, /* isGen */
(Serial)0, /* gen */
};
SegPref SegPrefDefault(void)
@ -1109,6 +1115,17 @@ Res SegPrefExpress(SegPref pref, SegPrefKind kind, void *p)
pref->refSet = *(RefSet *)p;
break;
case SegPrefCollected:
AVER(p == NULL);
pref->isCollected = TRUE;
break;
case SegPrefGen:
AVER(p != NULL);
pref->isGen = TRUE;
pref->gen = *(Serial *)p;
break;
default:
/* Unknown kinds are ignored for binary compatibility. */
/* See design.mps.pref. */