aboutsummaryrefslogtreecommitdiffstats
path: root/mps/code
diff options
context:
space:
mode:
authorGareth Rees2013-05-27 10:14:38 +0100
committerGareth Rees2013-05-27 10:14:38 +0100
commitb6c356d1d82122e82dfcd900c9d45adf4d32987c (patch)
treed40316104fea759a7ec9d3a295b9392051c050e8 /mps/code
parent81a10327c0ee90431352e609ca3c83e614460a3d (diff)
downloademacs-b6c356d1d82122e82dfcd900c9d45adf4d32987c.tar.gz
emacs-b6c356d1d82122e82dfcd900c9d45adf4d32987c.zip
Snc requires a format, so it needs a varargs decoder.
Copied from Perforce Change: 182256 ServerID: perforce.ravenbrook.com
Diffstat (limited to 'mps/code')
-rw-r--r--mps/code/poolsnc.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/mps/code/poolsnc.c b/mps/code/poolsnc.c
index 85e822bb396..49cdceeb25d 100644
--- a/mps/code/poolsnc.c
+++ b/mps/code/poolsnc.c
@@ -359,6 +359,17 @@ static Bool sncFindFreeSeg(Seg *segReturn, SNC snc, Size size)
359} 359}
360 360
361 361
362/* SNCVarargs -- decode obsolete varargs */
363
364static void SNCVarargs(ArgStruct args[MPS_ARGS_MAX], va_list varargs)
365{
366 args[0].key = MPS_KEY_FORMAT;
367 args[0].val.format = va_arg(varargs, Format);
368 args[1].key = MPS_KEY_ARGS_END;
369 AVER(ArgListCheck(args));
370}
371
372
362/* SNCInit -- initialize an SNC pool */ 373/* SNCInit -- initialize an SNC pool */
363 374
364static Res SNCInit(Pool pool, ArgList args) 375static Res SNCInit(Pool pool, ArgList args)
@@ -664,6 +675,7 @@ DEFINE_POOL_CLASS(SNCPoolClass, this)
664 this->name = "SNC"; 675 this->name = "SNC";
665 this->size = sizeof(SNCStruct); 676 this->size = sizeof(SNCStruct);
666 this->offset = offsetof(SNCStruct, poolStruct); 677 this->offset = offsetof(SNCStruct, poolStruct);
678 this->varargs = SNCVarargs;
667 this->init = SNCInit; 679 this->init = SNCInit;
668 this->finish = SNCFinish; 680 this->finish = SNCFinish;
669 this->bufferFill = SNCBufferFill; 681 this->bufferFill = SNCBufferFill;