diff --git a/mps/code/arena.c b/mps/code/arena.c
index 30a65479f9b..6c6b5220229 100644
--- a/mps/code/arena.c
+++ b/mps/code/arena.c
@@ -290,14 +290,14 @@ failGlobalsInit:
* platforms, knowing that it has no effect. To do that, the key must
* exist on all platforms. */
-ARG_DEFINE_KEY(vmw3_top_down, Bool);
+ARG_DEFINE_KEY(VMW3_TOP_DOWN, Bool);
/* ArenaCreate -- create the arena and call initializers */
-ARG_DEFINE_KEY(arena_size, Size);
-ARG_DEFINE_KEY(arena_grain_size, Size);
-ARG_DEFINE_KEY(arena_zoned, Bool);
+ARG_DEFINE_KEY(ARENA_SIZE, Size);
+ARG_DEFINE_KEY(ARENA_GRAIN_SIZE, Size);
+ARG_DEFINE_KEY(ARENA_ZONED, Bool);
Res ArenaCreate(Arena *arenaReturn, ArenaClass class, ArgList args)
{
diff --git a/mps/code/arenacl.c b/mps/code/arenacl.c
index f98398a468a..857c4608e11 100644
--- a/mps/code/arenacl.c
+++ b/mps/code/arenacl.c
@@ -227,7 +227,7 @@ static void ClientArenaVarargs(ArgStruct args[MPS_ARGS_MAX], va_list varargs)
* to do the generic part of init.
*/
-ARG_DEFINE_KEY(arena_cl_addr, Addr);
+ARG_DEFINE_KEY(ARENA_CL_BASE, Addr);
static Res ClientArenaInit(Arena *arenaReturn, ArenaClass class, ArgList args)
{
diff --git a/mps/code/arg.c b/mps/code/arg.c
index 784a7e57f30..4721c415ccb 100644
--- a/mps/code/arg.c
+++ b/mps/code/arg.c
@@ -105,7 +105,7 @@ Bool ArgCheckPool(Arg arg) {
}
-ARG_DEFINE_KEY(args_end, Shouldnt);
+ARG_DEFINE_KEY(ARGS_END, Shouldnt);
ArgStruct mps_args_none[] = {{MPS_KEY_ARGS_END, {0}}};
@@ -174,9 +174,8 @@ found:
/* ArgRequire -- take a required argument out of the argument list by keyword */
void ArgRequire(ArgStruct *argOut, ArgList args, Key key) {
- if (ArgPick(argOut, args, key))
- return;
- NOTREACHED;
+ Bool b = ArgPick(argOut, args, key);
+ ASSERT(b, key->name);
}
diff --git a/mps/code/arg.h b/mps/code/arg.h
index bb184dddad9..2b5b3fbb31a 100644
--- a/mps/code/arg.h
+++ b/mps/code/arg.h
@@ -29,7 +29,7 @@ typedef struct mps_key_s {
#define ARG_DEFINE_KEY(id, type) \
extern const KeyStruct _mps_key_##id; \
- const KeyStruct _mps_key_##id = {KeySig, #id, ArgCheck##type}
+ const KeyStruct _mps_key_##id = {KeySig, "MPS_KEY_" #id, ArgCheck##type}
#define argsNone mps_args_none
diff --git a/mps/code/dbgpool.c b/mps/code/dbgpool.c
index 922eea5845d..6a8417595f7 100644
--- a/mps/code/dbgpool.c
+++ b/mps/code/dbgpool.c
@@ -121,7 +121,7 @@ Bool PoolDebugOptionsCheck(PoolDebugOptions opt)
* Someday, this could be split into fence and tag init methods.
*/
-ARG_DEFINE_KEY(pool_debug_options, PoolDebugOptions);
+ARG_DEFINE_KEY(POOL_DEBUG_OPTIONS, PoolDebugOptions);
static PoolDebugOptionsStruct debugPoolOptionsDefault = {
"POST", 4, "DEAD", 4,
diff --git a/mps/code/format.c b/mps/code/format.c
index 763682a0a50..9ed59041155 100644
--- a/mps/code/format.c
+++ b/mps/code/format.c
@@ -88,14 +88,14 @@ static mps_addr_t FormatDefaultClass(mps_addr_t object)
/* FormatCreate -- create a format */
-ARG_DEFINE_KEY(fmt_align, Align);
-ARG_DEFINE_KEY(fmt_scan, Fun);
-ARG_DEFINE_KEY(fmt_skip, Fun);
-ARG_DEFINE_KEY(fmt_fwd, Fun);
-ARG_DEFINE_KEY(fmt_isfwd, Fun);
-ARG_DEFINE_KEY(fmt_pad, Fun);
-ARG_DEFINE_KEY(fmt_header_size, Size);
-ARG_DEFINE_KEY(fmt_class, Fun);
+ARG_DEFINE_KEY(FMT_ALIGN, Align);
+ARG_DEFINE_KEY(FMT_SCAN, Fun);
+ARG_DEFINE_KEY(FMT_SKIP, Fun);
+ARG_DEFINE_KEY(FMT_FWD, Fun);
+ARG_DEFINE_KEY(FMT_ISFWD, Fun);
+ARG_DEFINE_KEY(FMT_PAD, Fun);
+ARG_DEFINE_KEY(FMT_HEADER_SIZE, Size);
+ARG_DEFINE_KEY(FMT_CLASS, Fun);
Res FormatCreate(Format *formatReturn, Arena arena, ArgList args)
{
diff --git a/mps/code/mps.h b/mps/code/mps.h
index e41975e6a03..089164ed9e2 100644
--- a/mps/code/mps.h
+++ b/mps/code/mps.h
@@ -151,84 +151,84 @@ typedef struct mps_arg_s {
} val;
} mps_arg_s;
-extern const struct mps_key_s _mps_key_args_end;
-#define MPS_KEY_ARGS_END (&_mps_key_args_end)
+extern const struct mps_key_s _mps_key_ARGS_END;
+#define MPS_KEY_ARGS_END (&_mps_key_ARGS_END)
extern mps_arg_s mps_args_none[];
-extern const struct mps_key_s _mps_key_arena_size;
-#define MPS_KEY_ARENA_SIZE (&_mps_key_arena_size)
+extern const struct mps_key_s _mps_key_ARENA_SIZE;
+#define MPS_KEY_ARENA_SIZE (&_mps_key_ARENA_SIZE)
#define MPS_KEY_ARENA_SIZE_FIELD size
-extern const struct mps_key_s _mps_key_arena_grain_size;
-#define MPS_KEY_ARENA_GRAIN_SIZE (&_mps_key_arena_grain_size)
+extern const struct mps_key_s _mps_key_ARENA_GRAIN_SIZE;
+#define MPS_KEY_ARENA_GRAIN_SIZE (&_mps_key_ARENA_GRAIN_SIZE)
#define MPS_KEY_ARENA_GRAIN_SIZE_FIELD size
-extern const struct mps_key_s _mps_key_arena_zoned;
-#define MPS_KEY_ARENA_ZONED (&_mps_key_arena_zoned)
+extern const struct mps_key_s _mps_key_ARENA_ZONED;
+#define MPS_KEY_ARENA_ZONED (&_mps_key_ARENA_ZONED)
#define MPS_KEY_ARENA_ZONED_FIELD b
-extern const struct mps_key_s _mps_key_format;
-#define MPS_KEY_FORMAT (&_mps_key_format)
+extern const struct mps_key_s _mps_key_FORMAT;
+#define MPS_KEY_FORMAT (&_mps_key_FORMAT)
#define MPS_KEY_FORMAT_FIELD format
-extern const struct mps_key_s _mps_key_chain;
-#define MPS_KEY_CHAIN (&_mps_key_chain)
+extern const struct mps_key_s _mps_key_CHAIN;
+#define MPS_KEY_CHAIN (&_mps_key_CHAIN)
#define MPS_KEY_CHAIN_FIELD chain
-extern const struct mps_key_s _mps_key_gen;
-#define MPS_KEY_GEN (&_mps_key_gen)
+extern const struct mps_key_s _mps_key_GEN;
+#define MPS_KEY_GEN (&_mps_key_GEN)
#define MPS_KEY_GEN_FIELD u
-extern const struct mps_key_s _mps_key_rank;
-#define MPS_KEY_RANK (&_mps_key_rank)
+extern const struct mps_key_s _mps_key_RANK;
+#define MPS_KEY_RANK (&_mps_key_RANK)
#define MPS_KEY_RANK_FIELD rank
-extern const struct mps_key_s _mps_key_extend_by;
-#define MPS_KEY_EXTEND_BY (&_mps_key_extend_by)
+extern const struct mps_key_s _mps_key_EXTEND_BY;
+#define MPS_KEY_EXTEND_BY (&_mps_key_EXTEND_BY)
#define MPS_KEY_EXTEND_BY_FIELD size
-extern const struct mps_key_s _mps_key_large_size;
-#define MPS_KEY_LARGE_SIZE (&_mps_key_large_size)
+extern const struct mps_key_s _mps_key_LARGE_SIZE;
+#define MPS_KEY_LARGE_SIZE (&_mps_key_LARGE_SIZE)
#define MPS_KEY_LARGE_SIZE_FIELD size
-extern const struct mps_key_s _mps_key_min_size;
-#define MPS_KEY_MIN_SIZE (&_mps_key_min_size)
+extern const struct mps_key_s _mps_key_MIN_SIZE;
+#define MPS_KEY_MIN_SIZE (&_mps_key_MIN_SIZE)
#define MPS_KEY_MIN_SIZE_FIELD size
-extern const struct mps_key_s _mps_key_mean_size;
-#define MPS_KEY_MEAN_SIZE (&_mps_key_mean_size)
+extern const struct mps_key_s _mps_key_MEAN_SIZE;
+#define MPS_KEY_MEAN_SIZE (&_mps_key_MEAN_SIZE)
#define MPS_KEY_MEAN_SIZE_FIELD size
-extern const struct mps_key_s _mps_key_max_size;
-#define MPS_KEY_MAX_SIZE (&_mps_key_max_size)
+extern const struct mps_key_s _mps_key_MAX_SIZE;
+#define MPS_KEY_MAX_SIZE (&_mps_key_MAX_SIZE)
#define MPS_KEY_MAX_SIZE_FIELD size
-extern const struct mps_key_s _mps_key_align;
-#define MPS_KEY_ALIGN (&_mps_key_align)
+extern const struct mps_key_s _mps_key_ALIGN;
+#define MPS_KEY_ALIGN (&_mps_key_ALIGN)
#define MPS_KEY_ALIGN_FIELD align
-extern const struct mps_key_s _mps_key_spare;
-#define MPS_KEY_SPARE (&_mps_key_spare)
+extern const struct mps_key_s _mps_key_SPARE;
+#define MPS_KEY_SPARE (&_mps_key_SPARE)
#define MPS_KEY_SPARE_FIELD d
-extern const struct mps_key_s _mps_key_interior;
-#define MPS_KEY_INTERIOR (&_mps_key_interior)
+extern const struct mps_key_s _mps_key_INTERIOR;
+#define MPS_KEY_INTERIOR (&_mps_key_INTERIOR)
#define MPS_KEY_INTERIOR_FIELD b
-extern const struct mps_key_s _mps_key_vmw3_top_down;
-#define MPS_KEY_VMW3_TOP_DOWN (&_mps_key_vmw3_top_down)
+extern const struct mps_key_s _mps_key_VMW3_TOP_DOWN;
+#define MPS_KEY_VMW3_TOP_DOWN (&_mps_key_VMW3_TOP_DOWN)
#define MPS_KEY_VMW3_TOP_DOWN_FIELD b
-extern const struct mps_key_s _mps_key_fmt_align;
-#define MPS_KEY_FMT_ALIGN (&_mps_key_fmt_align)
+extern const struct mps_key_s _mps_key_FMT_ALIGN;
+#define MPS_KEY_FMT_ALIGN (&_mps_key_FMT_ALIGN)
#define MPS_KEY_FMT_ALIGN_FIELD align
-extern const struct mps_key_s _mps_key_fmt_header_size;
-#define MPS_KEY_FMT_HEADER_SIZE (&_mps_key_fmt_header_size)
+extern const struct mps_key_s _mps_key_FMT_HEADER_SIZE;
+#define MPS_KEY_FMT_HEADER_SIZE (&_mps_key_FMT_HEADER_SIZE)
#define MPS_KEY_FMT_HEADER_SIZE_FIELD size
-extern const struct mps_key_s _mps_key_fmt_scan;
-#define MPS_KEY_FMT_SCAN (&_mps_key_fmt_scan)
+extern const struct mps_key_s _mps_key_FMT_SCAN;
+#define MPS_KEY_FMT_SCAN (&_mps_key_FMT_SCAN)
#define MPS_KEY_FMT_SCAN_FIELD fmt_scan
-extern const struct mps_key_s _mps_key_fmt_skip;
-#define MPS_KEY_FMT_SKIP (&_mps_key_fmt_skip)
+extern const struct mps_key_s _mps_key_FMT_SKIP;
+#define MPS_KEY_FMT_SKIP (&_mps_key_FMT_SKIP)
#define MPS_KEY_FMT_SKIP_FIELD fmt_skip
-extern const struct mps_key_s _mps_key_fmt_fwd;
-#define MPS_KEY_FMT_FWD (&_mps_key_fmt_fwd)
+extern const struct mps_key_s _mps_key_FMT_FWD;
+#define MPS_KEY_FMT_FWD (&_mps_key_FMT_FWD)
#define MPS_KEY_FMT_FWD_FIELD fmt_fwd
-extern const struct mps_key_s _mps_key_fmt_isfwd;
-#define MPS_KEY_FMT_ISFWD (&_mps_key_fmt_isfwd)
+extern const struct mps_key_s _mps_key_FMT_ISFWD;
+#define MPS_KEY_FMT_ISFWD (&_mps_key_FMT_ISFWD)
#define MPS_KEY_FMT_ISFWD_FIELD fmt_isfwd
-extern const struct mps_key_s _mps_key_fmt_pad;
-#define MPS_KEY_FMT_PAD (&_mps_key_fmt_pad)
+extern const struct mps_key_s _mps_key_FMT_PAD;
+#define MPS_KEY_FMT_PAD (&_mps_key_FMT_PAD)
#define MPS_KEY_FMT_PAD_FIELD fmt_pad
-extern const struct mps_key_s _mps_key_fmt_class;
-#define MPS_KEY_FMT_CLASS (&_mps_key_fmt_class)
+extern const struct mps_key_s _mps_key_FMT_CLASS;
+#define MPS_KEY_FMT_CLASS (&_mps_key_FMT_CLASS)
#define MPS_KEY_FMT_CLASS_FIELD fmt_class
/* Maximum length of a keyword argument list. */
@@ -774,8 +774,8 @@ typedef struct mps_pool_debug_option_s {
size_t free_size;
} mps_pool_debug_option_s;
-extern const struct mps_key_s _mps_key_pool_debug_options;
-#define MPS_KEY_POOL_DEBUG_OPTIONS (&_mps_key_pool_debug_options)
+extern const struct mps_key_s _mps_key_POOL_DEBUG_OPTIONS;
+#define MPS_KEY_POOL_DEBUG_OPTIONS (&_mps_key_POOL_DEBUG_OPTIONS)
#define MPS_KEY_POOL_DEBUG_OPTIONS_FIELD pool_debug_options
extern void mps_pool_check_fenceposts(mps_pool_t);
diff --git a/mps/code/mpsacl.h b/mps/code/mpsacl.h
index b9fc2913f63..85536ef4ed7 100644
--- a/mps/code/mpsacl.h
+++ b/mps/code/mpsacl.h
@@ -1,7 +1,7 @@
/* mpsacl.h: MEMORY POOL SYSTEM ARENA CLASS "CL"
*
* $Id$
- * Copyright (c) 2001-2013 Ravenbrook Limited. See end of file for license.
+ * Copyright (c) 2001-2014 Ravenbrook Limited. See end of file for license.
*/
#ifndef mpsacl_h
@@ -10,8 +10,8 @@
#include "mps.h"
/* Client arena base address argument */
-extern const struct mps_key_s _mps_key_arena_cl_addr;
-#define MPS_KEY_ARENA_CL_BASE (&_mps_key_arena_cl_addr)
+extern const struct mps_key_s _mps_key_ARENA_CL_BASE;
+#define MPS_KEY_ARENA_CL_BASE (&_mps_key_ARENA_CL_BASE)
#define MPS_KEY_ARENA_CL_BASE_FIELD addr
extern mps_arena_class_t mps_arena_class_cl(void);
@@ -22,7 +22,7 @@ extern mps_arena_class_t mps_arena_class_cl(void);
/* C. COPYRIGHT AND LICENSE
*
- * Copyright (C) 2001-2013 Ravenbrook Limited .
+ * Copyright (C) 2001-2014 Ravenbrook Limited .
* All rights reserved. This is an open source license. Contact
* Ravenbrook for commercial licensing options.
*
diff --git a/mps/code/mpscams.h b/mps/code/mpscams.h
index dc5d9fdf688..49a3de484c9 100644
--- a/mps/code/mpscams.h
+++ b/mps/code/mpscams.h
@@ -10,8 +10,8 @@
#include "mps.h"
-extern const struct mps_key_s _mps_key_ams_support_ambiguous;
-#define MPS_KEY_AMS_SUPPORT_AMBIGUOUS (&_mps_key_ams_support_ambiguous)
+extern const struct mps_key_s _mps_key_AMS_SUPPORT_AMBIGUOUS;
+#define MPS_KEY_AMS_SUPPORT_AMBIGUOUS (&_mps_key_AMS_SUPPORT_AMBIGUOUS)
#define MPS_KEY_AMS_SUPPORT_AMBIGUOUS_FIELD b
extern mps_pool_class_t mps_class_ams(void);
diff --git a/mps/code/mpscawl.h b/mps/code/mpscawl.h
index a449d0ecd26..087e927bf7c 100644
--- a/mps/code/mpscawl.h
+++ b/mps/code/mpscawl.h
@@ -9,8 +9,8 @@
#include "mps.h"
-extern const struct mps_key_s _mps_key_awl_find_dependent;
-#define MPS_KEY_AWL_FIND_DEPENDENT (&_mps_key_awl_find_dependent)
+extern const struct mps_key_s _mps_key_AWL_FIND_DEPENDENT;
+#define MPS_KEY_AWL_FIND_DEPENDENT (&_mps_key_AWL_FIND_DEPENDENT)
#define MPS_KEY_AWL_FIND_DEPENDENT_FIELD addr_method
extern mps_pool_class_t mps_class_awl(void);
diff --git a/mps/code/mpscmfs.h b/mps/code/mpscmfs.h
index 1a2dd875522..bb3b1013cf2 100644
--- a/mps/code/mpscmfs.h
+++ b/mps/code/mpscmfs.h
@@ -9,8 +9,8 @@
#include "mps.h"
-extern const struct mps_key_s _mps_key_mfs_unit_size;
-#define MPS_KEY_MFS_UNIT_SIZE (&_mps_key_mfs_unit_size)
+extern const struct mps_key_s _mps_key_MFS_UNIT_SIZE;
+#define MPS_KEY_MFS_UNIT_SIZE (&_mps_key_MFS_UNIT_SIZE)
#define MPS_KEY_MFS_UNIT_SIZE_FIELD size
extern mps_pool_class_t mps_class_mfs(void);
diff --git a/mps/code/mpscmvff.h b/mps/code/mpscmvff.h
index 3dfb9b5687c..2f468c5e483 100644
--- a/mps/code/mpscmvff.h
+++ b/mps/code/mpscmvff.h
@@ -9,14 +9,14 @@
#include "mps.h"
-extern const struct mps_key_s _mps_key_mvff_slot_high;
-#define MPS_KEY_MVFF_SLOT_HIGH (&_mps_key_mvff_slot_high)
+extern const struct mps_key_s _mps_key_MVFF_SLOT_HIGH;
+#define MPS_KEY_MVFF_SLOT_HIGH (&_mps_key_MVFF_SLOT_HIGH)
#define MPS_KEY_MVFF_SLOT_HIGH_FIELD b
-extern const struct mps_key_s _mps_key_mvff_arena_high;
-#define MPS_KEY_MVFF_ARENA_HIGH (&_mps_key_mvff_arena_high)
+extern const struct mps_key_s _mps_key_MVFF_ARENA_HIGH;
+#define MPS_KEY_MVFF_ARENA_HIGH (&_mps_key_MVFF_ARENA_HIGH)
#define MPS_KEY_MVFF_ARENA_HIGH_FIELD b
-extern const struct mps_key_s _mps_key_mvff_first_fit;
-#define MPS_KEY_MVFF_FIRST_FIT (&_mps_key_mvff_first_fit)
+extern const struct mps_key_s _mps_key_MVFF_FIRST_FIT;
+#define MPS_KEY_MVFF_FIRST_FIT (&_mps_key_MVFF_FIRST_FIT)
#define MPS_KEY_MVFF_FIRST_FIT_FIELD b
#define mps_mvff_free_size mps_pool_free_size
diff --git a/mps/code/mpscmvt.h b/mps/code/mpscmvt.h
index 943a97e6f6f..b3a62734684 100644
--- a/mps/code/mpscmvt.h
+++ b/mps/code/mpscmvt.h
@@ -9,11 +9,11 @@
#include "mps.h"
-extern const struct mps_key_s _mps_key_mvt_reserve_depth;
-#define MPS_KEY_MVT_RESERVE_DEPTH (&_mps_key_mvt_reserve_depth)
+extern const struct mps_key_s _mps_key_MVT_RESERVE_DEPTH;
+#define MPS_KEY_MVT_RESERVE_DEPTH (&_mps_key_MVT_RESERVE_DEPTH)
#define MPS_KEY_MVT_RESERVE_DEPTH_FIELD count
-extern const struct mps_key_s _mps_key_mvt_frag_limit;
-#define MPS_KEY_MVT_FRAG_LIMIT (&_mps_key_mvt_frag_limit)
+extern const struct mps_key_s _mps_key_MVT_FRAG_LIMIT;
+#define MPS_KEY_MVT_FRAG_LIMIT (&_mps_key_MVT_FRAG_LIMIT)
#define MPS_KEY_MVT_FRAG_LIMIT_FIELD d
extern mps_pool_class_t mps_class_mvt(void);
diff --git a/mps/code/pool.c b/mps/code/pool.c
index ce7fe6d4b24..202aa256a43 100644
--- a/mps/code/pool.c
+++ b/mps/code/pool.c
@@ -107,18 +107,18 @@ Bool PoolCheck(Pool pool)
/* Common keywords to PoolInit */
-ARG_DEFINE_KEY(format, Format);
-ARG_DEFINE_KEY(chain, Chain);
-ARG_DEFINE_KEY(gen, Cant);
-ARG_DEFINE_KEY(rank, Rank);
-ARG_DEFINE_KEY(extend_by, Size);
-ARG_DEFINE_KEY(large_size, Size);
-ARG_DEFINE_KEY(min_size, Size);
-ARG_DEFINE_KEY(mean_size, Size);
-ARG_DEFINE_KEY(max_size, Size);
-ARG_DEFINE_KEY(align, Align);
-ARG_DEFINE_KEY(spare, double);
-ARG_DEFINE_KEY(interior, Bool);
+ARG_DEFINE_KEY(FORMAT, Format);
+ARG_DEFINE_KEY(CHAIN, Chain);
+ARG_DEFINE_KEY(GEN, Cant);
+ARG_DEFINE_KEY(RANK, Rank);
+ARG_DEFINE_KEY(EXTEND_BY, Size);
+ARG_DEFINE_KEY(LARGE_SIZE, Size);
+ARG_DEFINE_KEY(MIN_SIZE, Size);
+ARG_DEFINE_KEY(MEAN_SIZE, Size);
+ARG_DEFINE_KEY(MAX_SIZE, Size);
+ARG_DEFINE_KEY(ALIGN, Align);
+ARG_DEFINE_KEY(SPARE, double);
+ARG_DEFINE_KEY(INTERIOR, Bool);
/* PoolInit -- initialize a pool
diff --git a/mps/code/poolams.c b/mps/code/poolams.c
index bbb6d70e96a..0c9c9d2ff97 100644
--- a/mps/code/poolams.c
+++ b/mps/code/poolams.c
@@ -785,7 +785,7 @@ static void AMSDebugVarargs(ArgStruct args[MPS_ARGS_MAX], va_list varargs)
* allocated in the pool. See .
*/
-ARG_DEFINE_KEY(ams_support_ambiguous, Bool);
+ARG_DEFINE_KEY(AMS_SUPPORT_AMBIGUOUS, Bool);
static Res AMSInit(Pool pool, ArgList args)
{
diff --git a/mps/code/poolawl.c b/mps/code/poolawl.c
index 0ab42f36e27..9fd9afc3250 100644
--- a/mps/code/poolawl.c
+++ b/mps/code/poolawl.c
@@ -544,7 +544,7 @@ static Addr awlNoDependent(Addr addr)
/* AWLInit -- initialize an AWL pool */
-ARG_DEFINE_KEY(awl_find_dependent, Fun);
+ARG_DEFINE_KEY(AWL_FIND_DEPENDENT, Fun);
static Res AWLInit(Pool pool, ArgList args)
{
diff --git a/mps/code/poolmfs.c b/mps/code/poolmfs.c
index c9609792ce1..ed1c0343aba 100644
--- a/mps/code/poolmfs.c
+++ b/mps/code/poolmfs.c
@@ -72,7 +72,7 @@ static void MFSVarargs(ArgStruct args[MPS_ARGS_MAX], va_list varargs)
AVERT(ArgList, args);
}
-ARG_DEFINE_KEY(mfs_unit_size, Size);
+ARG_DEFINE_KEY(MFS_UNIT_SIZE, Size);
ARG_DEFINE_KEY(MFSExtendSelf, Bool);
static Res MFSInit(Pool pool, ArgList args)
diff --git a/mps/code/poolmv2.c b/mps/code/poolmv2.c
index a54e004aae0..95c3e9ecc9a 100644
--- a/mps/code/poolmv2.c
+++ b/mps/code/poolmv2.c
@@ -215,11 +215,11 @@ static void MVTVarargs(ArgStruct args[MPS_ARGS_MAX], va_list varargs)
* minSize, meanSize, maxSize, reserveDepth, fragLimit
*/
-ARG_DEFINE_KEY(mvt_min_size, Size);
-ARG_DEFINE_KEY(mvt_mean_size, Size);
-ARG_DEFINE_KEY(mvt_max_size, Size);
-ARG_DEFINE_KEY(mvt_reserve_depth, Count);
-ARG_DEFINE_KEY(mvt_frag_limit, double);
+ARG_DEFINE_KEY(MVT_MIN_SIZE, Size);
+ARG_DEFINE_KEY(MVT_MEAN_SIZE, Size);
+ARG_DEFINE_KEY(MVT_MAX_SIZE, Size);
+ARG_DEFINE_KEY(MVT_RESERVE_DEPTH, Count);
+ARG_DEFINE_KEY(MVT_FRAG_LIMIT, double);
static Res MVTInit(Pool pool, ArgList args)
{
diff --git a/mps/code/poolmvff.c b/mps/code/poolmvff.c
index 47e07af5f75..2040aea1d43 100644
--- a/mps/code/poolmvff.c
+++ b/mps/code/poolmvff.c
@@ -445,9 +445,9 @@ static void MVFFDebugVarargs(ArgStruct args[MPS_ARGS_MAX], va_list varargs)
/* MVFFInit -- initialize method for MVFF */
-ARG_DEFINE_KEY(mvff_slot_high, Bool);
-ARG_DEFINE_KEY(mvff_arena_high, Bool);
-ARG_DEFINE_KEY(mvff_first_fit, Bool);
+ARG_DEFINE_KEY(MVFF_SLOT_HIGH, Bool);
+ARG_DEFINE_KEY(MVFF_ARENA_HIGH, Bool);
+ARG_DEFINE_KEY(MVFF_FIRST_FIT, Bool);
static Res MVFFInit(Pool pool, ArgList args)
{
diff --git a/mps/manual/source/topic/error.rst b/mps/manual/source/topic/error.rst
index 92f568a0a62..82efa2e5e3c 100644
--- a/mps/manual/source/topic/error.rst
+++ b/mps/manual/source/topic/error.rst
@@ -238,6 +238,12 @@ assertion that is listed here but for which you discovered a different
cause), please :ref:`let us know ` so that we can improve
this documentation.
+``arg.c: MPS_KEY_...``
+
+ A required :term:`keyword argument` was omitted from a call to
+ :c:func:`mps_ap_create_k`, :c:func:`mps_arena_create_k`,
+ :c:func:`mps_fmt_create_k`, or :c:func:`mps_pool_create_k`.
+
``buffer.c: BufferIsReady(buffer)``
@@ -275,13 +281,11 @@ this documentation.
:term:`format methods` and :term:`stepper functions`.
-``locus.c: chain->activeTraces == TraceSetEMPTY)``
+``locus.c: chain->activeTraces == TraceSetEMPTY``
The client program called :c:func:`mps_chain_destroy`, but there
- was a garbage collection in progress on that chain.
-
- Park the arena before destroying the chain by calling
- :c:func:`mps_arena_park`.
+ was a garbage collection in progress on that chain. Park the arena
+ before destroying the chain, by calling :c:func:`mps_arena_park`.
``mpsi.c: SizeIsAligned(size, BufferPool(buf)->alignment)``
@@ -291,13 +295,6 @@ this documentation.
alignment required by the pool's :term:`object format`.
-``pool.c: PoolHasAttr(pool, AttrALLOC)``
-
- The client program called :c:func:`mps_alloc` on a pool that does
- not support this form of allocation. Use an :term:`allocation
- point` instead.
-
-
``poolams.c: AMS_ALLOCED(seg, i)``
The client program tried to :term:`fix` a :term:`reference` to a