ref: 6a5baa7bb25ac3363d687931898f6a5cfc1d7a6b
parent: 8e431ba2bb96d34038f7e88afa16b4a760a07176
author: asau <asau@ficl.sf.net>
date: Mon Oct 25 07:18:06 CDT 2010
Factor "not found" report.
--- a/primitives.c
+++ b/primitives.c
@@ -4,7 +4,7 @@
** ANS Forth CORE word-set written in C
** Author: John Sadler (john_sadler@alum.mit.edu)
** Created: 19 July 1997
-** $Id: primitives.c,v 1.4 2010/09/13 18:43:04 asau Exp $
+** $Id: primitives.c,v 1.5 2010/10/25 12:18:06 asau Exp $
*******************************************************************/
/*
** Copyright (c) 1997-2001 John Sadler (john_sadler@alum.mit.edu)
@@ -853,6 +853,13 @@
return;
}
+/**************************************************************************
+** Report error
+**************************************************************************/
+static void ficlVmThrowNotFound(ficlVm *vm, ficlString s)
+{
+ ficlVmThrowError(vm, "%.*s not found", FICL_STRING_GET_LENGTH(s), FICL_STRING_GET_POINTER(s));
+}
/**************************************************************************
i n t e r p r e t
@@ -920,7 +927,7 @@
}
}
- ficlVmThrowError(vm, "%.*s not found", FICL_STRING_GET_LENGTH(s), FICL_STRING_GET_POINTER(s));
+ ficlVmThrowNotFound(vm, s);
return; /* back to inner interpreter */
}
@@ -1253,7 +1260,7 @@
word = ficlDictionaryLookup(ficlVmGetDictionary(vm), name);
if (!word)
- ficlVmThrowError(vm, "%.*s not found", FICL_STRING_GET_LENGTH(name), FICL_STRING_GET_POINTER(name));
+ ficlVmThrowNotFound(vm, name);
ficlStackPushPointer(vm->dataStack, word);
return;
}
@@ -2783,7 +2790,7 @@
#endif /* FICL_WANT_LOCALS */
word = ficlDictionaryLookup(dictionary, name);
if (!word)
- ficlVmThrowError(vm, "%.*s not found", FICL_STRING_GET_LENGTH(name), FICL_STRING_GET_POINTER(name));
+ ficlVmThrowNotFound(vm, name);
switch ((ficlInstruction)word->code)
{