aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--tests/gpgscm/opdefines.h378
-rw-r--r--tests/gpgscm/scheme-private.h2
-rw-r--r--tests/gpgscm/scheme.c34
3 files changed, 207 insertions, 207 deletions
diff --git a/tests/gpgscm/opdefines.h b/tests/gpgscm/opdefines.h
index 61f797138..a31c35be9 100644
--- a/tests/gpgscm/opdefines.h
+++ b/tests/gpgscm/opdefines.h
@@ -1,205 +1,205 @@
-_OP_DEF("load", 1, 1, TST_STRING, OP_LOAD )
-_OP_DEF(0, 0, 0, 0, OP_T0LVL )
-_OP_DEF(0, 0, 0, 0, OP_T1LVL )
-_OP_DEF(0, 0, 0, 0, OP_READ_INTERNAL )
-_OP_DEF("gensym", 0, 0, 0, OP_GENSYM )
-_OP_DEF(0, 0, 0, 0, OP_VALUEPRINT )
-_OP_DEF(0, 0, 0, 0, OP_EVAL )
+_OP_DEF(OP_LOAD, "load", 1, 1, TST_STRING )
+_OP_DEF(OP_T0LVL, 0, 0, 0, 0 )
+_OP_DEF(OP_T1LVL, 0, 0, 0, 0 )
+_OP_DEF(OP_READ_INTERNAL, 0, 0, 0, 0 )
+_OP_DEF(OP_GENSYM, "gensym", 0, 0, 0 )
+_OP_DEF(OP_VALUEPRINT, 0, 0, 0, 0 )
+_OP_DEF(OP_EVAL, 0, 0, 0, 0 )
#if USE_TRACING
-_OP_DEF(0, 0, 0, 0, OP_REAL_EVAL )
+_OP_DEF(OP_REAL_EVAL, 0, 0, 0, 0 )
#endif
-_OP_DEF(0, 0, 0, 0, OP_E0ARGS )
-_OP_DEF(0, 0, 0, 0, OP_E1ARGS )
+_OP_DEF(OP_E0ARGS, 0, 0, 0, 0 )
+_OP_DEF(OP_E1ARGS, 0, 0, 0, 0 )
#if USE_HISTORY
-_OP_DEF(0, 0, 0, 0, OP_CALLSTACK_POP )
+_OP_DEF(OP_CALLSTACK_POP, 0, 0, 0, 0 )
#endif
-_OP_DEF(0, 0, 0, 0, OP_APPLY_CODE )
-_OP_DEF(0, 0, 0, 0, OP_APPLY )
+_OP_DEF(OP_APPLY_CODE, 0, 0, 0, 0 )
+_OP_DEF(OP_APPLY, 0, 0, 0, 0 )
#if USE_TRACING
-_OP_DEF(0, 0, 0, 0, OP_REAL_APPLY )
-_OP_DEF("tracing", 1, 1, TST_NATURAL, OP_TRACING )
+_OP_DEF(OP_REAL_APPLY, 0, 0, 0, 0 )
+_OP_DEF(OP_TRACING, "tracing", 1, 1, TST_NATURAL )
#endif
-_OP_DEF(0, 0, 0, 0, OP_DOMACRO )
-_OP_DEF(0, 0, 0, 0, OP_LAMBDA )
-_OP_DEF(0, 0, 0, 0, OP_LAMBDA1 )
-_OP_DEF("make-closure", 1, 2, TST_PAIR TST_ENVIRONMENT, OP_MKCLOSURE )
-_OP_DEF(0, 0, 0, 0, OP_QUOTE )
-_OP_DEF(0, 0, 0, 0, OP_DEF0 )
-_OP_DEF(0, 0, 0, 0, OP_DEF1 )
-_OP_DEF("defined?", 1, 2, TST_SYMBOL TST_ENVIRONMENT, OP_DEFP )
-_OP_DEF(0, 0, 0, 0, OP_BEGIN )
-_OP_DEF(0, 0, 0, 0, OP_IF0 )
-_OP_DEF(0, 0, 0, 0, OP_IF1 )
-_OP_DEF(0, 0, 0, 0, OP_SET0 )
-_OP_DEF(0, 0, 0, 0, OP_SET1 )
-_OP_DEF(0, 0, 0, 0, OP_LET0 )
-_OP_DEF(0, 0, 0, 0, OP_LET1 )
-_OP_DEF(0, 0, 0, 0, OP_LET2 )
-_OP_DEF(0, 0, 0, 0, OP_LET0AST )
-_OP_DEF(0, 0, 0, 0, OP_LET1AST )
-_OP_DEF(0, 0, 0, 0, OP_LET2AST )
-_OP_DEF(0, 0, 0, 0, OP_LET0REC )
-_OP_DEF(0, 0, 0, 0, OP_LET1REC )
-_OP_DEF(0, 0, 0, 0, OP_LET2REC )
-_OP_DEF(0, 0, 0, 0, OP_COND0 )
-_OP_DEF(0, 0, 0, 0, OP_COND1 )
-_OP_DEF(0, 0, 0, 0, OP_DELAY )
-_OP_DEF(0, 0, 0, 0, OP_AND0 )
-_OP_DEF(0, 0, 0, 0, OP_AND1 )
-_OP_DEF(0, 0, 0, 0, OP_OR0 )
-_OP_DEF(0, 0, 0, 0, OP_OR1 )
-_OP_DEF(0, 0, 0, 0, OP_C0STREAM )
-_OP_DEF(0, 0, 0, 0, OP_C1STREAM )
-_OP_DEF(0, 0, 0, 0, OP_MACRO0 )
-_OP_DEF(0, 0, 0, 0, OP_MACRO1 )
-_OP_DEF(0, 0, 0, 0, OP_CASE0 )
-_OP_DEF(0, 0, 0, 0, OP_CASE1 )
-_OP_DEF(0, 0, 0, 0, OP_CASE2 )
-_OP_DEF("eval", 1, 2, TST_ANY TST_ENVIRONMENT, OP_PEVAL )
-_OP_DEF("apply", 1, INF_ARG, TST_NONE, OP_PAPPLY )
-_OP_DEF("call-with-current-continuation", 1, 1, TST_NONE, OP_CONTINUATION )
+_OP_DEF(OP_DOMACRO, 0, 0, 0, 0 )
+_OP_DEF(OP_LAMBDA, 0, 0, 0, 0 )
+_OP_DEF(OP_LAMBDA1, 0, 0, 0, 0 )
+_OP_DEF(OP_MKCLOSURE, "make-closure", 1, 2, TST_PAIR, TST_ENVIRONMENT )
+_OP_DEF(OP_QUOTE, 0, 0, 0, 0 )
+_OP_DEF(OP_DEF0, 0, 0, 0, 0 )
+_OP_DEF(OP_DEF1, 0, 0, 0, 0 )
+_OP_DEF(OP_DEFP, "defined?", 1, 2, TST_SYMBOL, TST_ENVIRONMENT )
+_OP_DEF(OP_BEGIN, 0, 0, 0, 0 )
+_OP_DEF(OP_IF0, 0, 0, 0, 0 )
+_OP_DEF(OP_IF1, 0, 0, 0, 0 )
+_OP_DEF(OP_SET0, 0, 0, 0, 0 )
+_OP_DEF(OP_SET1, 0, 0, 0, 0 )
+_OP_DEF(OP_LET0, 0, 0, 0, 0 )
+_OP_DEF(OP_LET1, 0, 0, 0, 0 )
+_OP_DEF(OP_LET2, 0, 0, 0, 0 )
+_OP_DEF(OP_LET0AST, 0, 0, 0, 0 )
+_OP_DEF(OP_LET1AST, 0, 0, 0, 0 )
+_OP_DEF(OP_LET2AST, 0, 0, 0, 0 )
+_OP_DEF(OP_LET0REC, 0, 0, 0, 0 )
+_OP_DEF(OP_LET1REC, 0, 0, 0, 0 )
+_OP_DEF(OP_LET2REC, 0, 0, 0, 0 )
+_OP_DEF(OP_COND0, 0, 0, 0, 0 )
+_OP_DEF(OP_COND1, 0, 0, 0, 0 )
+_OP_DEF(OP_DELAY, 0, 0, 0, 0 )
+_OP_DEF(OP_AND0, 0, 0, 0, 0 )
+_OP_DEF(OP_AND1, 0, 0, 0, 0 )
+_OP_DEF(OP_OR0, 0, 0, 0, 0 )
+_OP_DEF(OP_OR1, 0, 0, 0, 0 )
+_OP_DEF(OP_C0STREAM, 0, 0, 0, 0 )
+_OP_DEF(OP_C1STREAM, 0, 0, 0, 0 )
+_OP_DEF(OP_MACRO0, 0, 0, 0, 0 )
+_OP_DEF(OP_MACRO1, 0, 0, 0, 0 )
+_OP_DEF(OP_CASE0, 0, 0, 0, 0 )
+_OP_DEF(OP_CASE1, 0, 0, 0, 0 )
+_OP_DEF(OP_CASE2, 0, 0, 0, 0 )
+_OP_DEF(OP_PEVAL, "eval", 1, 2, TST_ANY, TST_ENVIRONMENT )
+_OP_DEF(OP_PAPPLY, "apply", 1, INF_ARG, TST_NONE )
+_OP_DEF(OP_CONTINUATION, "call-with-current-continuation", 1, 1, TST_NONE )
#if USE_MATH
-_OP_DEF("inexact->exact", 1, 1, TST_NUMBER, OP_INEX2EX )
-_OP_DEF("exp", 1, 1, TST_NUMBER, OP_EXP )
-_OP_DEF("log", 1, 1, TST_NUMBER, OP_LOG )
-_OP_DEF("sin", 1, 1, TST_NUMBER, OP_SIN )
-_OP_DEF("cos", 1, 1, TST_NUMBER, OP_COS )
-_OP_DEF("tan", 1, 1, TST_NUMBER, OP_TAN )
-_OP_DEF("asin", 1, 1, TST_NUMBER, OP_ASIN )
-_OP_DEF("acos", 1, 1, TST_NUMBER, OP_ACOS )
-_OP_DEF("atan", 1, 2, TST_NUMBER, OP_ATAN )
-_OP_DEF("sqrt", 1, 1, TST_NUMBER, OP_SQRT )
-_OP_DEF("expt", 2, 2, TST_NUMBER, OP_EXPT )
-_OP_DEF("floor", 1, 1, TST_NUMBER, OP_FLOOR )
-_OP_DEF("ceiling", 1, 1, TST_NUMBER, OP_CEILING )
-_OP_DEF("truncate", 1, 1, TST_NUMBER, OP_TRUNCATE )
-_OP_DEF("round", 1, 1, TST_NUMBER, OP_ROUND )
+_OP_DEF(OP_INEX2EX, "inexact->exact", 1, 1, TST_NUMBER )
+_OP_DEF(OP_EXP, "exp", 1, 1, TST_NUMBER )
+_OP_DEF(OP_LOG, "log", 1, 1, TST_NUMBER )
+_OP_DEF(OP_SIN, "sin", 1, 1, TST_NUMBER )
+_OP_DEF(OP_COS, "cos", 1, 1, TST_NUMBER )
+_OP_DEF(OP_TAN, "tan", 1, 1, TST_NUMBER )
+_OP_DEF(OP_ASIN, "asin", 1, 1, TST_NUMBER )
+_OP_DEF(OP_ACOS, "acos", 1, 1, TST_NUMBER )
+_OP_DEF(OP_ATAN, "atan", 1, 2, TST_NUMBER )
+_OP_DEF(OP_SQRT, "sqrt", 1, 1, TST_NUMBER )
+_OP_DEF(OP_EXPT, "expt", 2, 2, TST_NUMBER )
+_OP_DEF(OP_FLOOR, "floor", 1, 1, TST_NUMBER )
+_OP_DEF(OP_CEILING, "ceiling", 1, 1, TST_NUMBER )
+_OP_DEF(OP_TRUNCATE, "truncate", 1, 1, TST_NUMBER )
+_OP_DEF(OP_ROUND, "round", 1, 1, TST_NUMBER )
#endif
-_OP_DEF("+", 0, INF_ARG, TST_NUMBER, OP_ADD )
-_OP_DEF("-", 1, INF_ARG, TST_NUMBER, OP_SUB )
-_OP_DEF("*", 0, INF_ARG, TST_NUMBER, OP_MUL )
-_OP_DEF("/", 1, INF_ARG, TST_NUMBER, OP_DIV )
-_OP_DEF("quotient", 1, INF_ARG, TST_INTEGER, OP_INTDIV )
-_OP_DEF("remainder", 2, 2, TST_INTEGER, OP_REM )
-_OP_DEF("modulo", 2, 2, TST_INTEGER, OP_MOD )
-_OP_DEF("car", 1, 1, TST_PAIR, OP_CAR )
-_OP_DEF("cdr", 1, 1, TST_PAIR, OP_CDR )
-_OP_DEF("cons", 2, 2, TST_NONE, OP_CONS )
-_OP_DEF("set-car!", 2, 2, TST_PAIR TST_ANY, OP_SETCAR )
-_OP_DEF("set-cdr!", 2, 2, TST_PAIR TST_ANY, OP_SETCDR )
-_OP_DEF("char->integer", 1, 1, TST_CHAR, OP_CHAR2INT )
-_OP_DEF("integer->char", 1, 1, TST_NATURAL, OP_INT2CHAR )
-_OP_DEF("char-upcase", 1, 1, TST_CHAR, OP_CHARUPCASE )
-_OP_DEF("char-downcase", 1, 1, TST_CHAR, OP_CHARDNCASE )
-_OP_DEF("symbol->string", 1, 1, TST_SYMBOL, OP_SYM2STR )
-_OP_DEF("atom->string", 1, 2, TST_ANY TST_NATURAL, OP_ATOM2STR )
-_OP_DEF("string->symbol", 1, 1, TST_STRING, OP_STR2SYM )
-_OP_DEF("string->atom", 1, 2, TST_STRING TST_NATURAL, OP_STR2ATOM )
-_OP_DEF("make-string", 1, 2, TST_NATURAL TST_CHAR, OP_MKSTRING )
-_OP_DEF("string-length", 1, 1, TST_STRING, OP_STRLEN )
-_OP_DEF("string-ref", 2, 2, TST_STRING TST_NATURAL, OP_STRREF )
-_OP_DEF("string-set!", 3, 3, TST_STRING TST_NATURAL TST_CHAR, OP_STRSET )
-_OP_DEF("string-append", 0, INF_ARG, TST_STRING, OP_STRAPPEND )
-_OP_DEF("substring", 2, 3, TST_STRING TST_NATURAL, OP_SUBSTR )
-_OP_DEF("vector", 0, INF_ARG, TST_NONE, OP_VECTOR )
-_OP_DEF("make-vector", 1, 2, TST_NATURAL TST_ANY, OP_MKVECTOR )
-_OP_DEF("vector-length", 1, 1, TST_VECTOR, OP_VECLEN )
-_OP_DEF("vector-ref", 2, 2, TST_VECTOR TST_NATURAL, OP_VECREF )
-_OP_DEF("vector-set!", 3, 3, TST_VECTOR TST_NATURAL TST_ANY, OP_VECSET )
-_OP_DEF("not", 1, 1, TST_NONE, OP_NOT )
-_OP_DEF("boolean?", 1, 1, TST_NONE, OP_BOOLP )
-_OP_DEF("eof-object?", 1, 1, TST_NONE, OP_EOFOBJP )
-_OP_DEF("null?", 1, 1, TST_NONE, OP_NULLP )
-_OP_DEF("=", 2, INF_ARG, TST_NUMBER, OP_NUMEQ )
-_OP_DEF("<", 2, INF_ARG, TST_NUMBER, OP_LESS )
-_OP_DEF(">", 2, INF_ARG, TST_NUMBER, OP_GRE )
-_OP_DEF("<=", 2, INF_ARG, TST_NUMBER, OP_LEQ )
-_OP_DEF(">=", 2, INF_ARG, TST_NUMBER, OP_GEQ )
-_OP_DEF("symbol?", 1, 1, TST_ANY, OP_SYMBOLP )
-_OP_DEF("number?", 1, 1, TST_ANY, OP_NUMBERP )
-_OP_DEF("string?", 1, 1, TST_ANY, OP_STRINGP )
-_OP_DEF("integer?", 1, 1, TST_ANY, OP_INTEGERP )
-_OP_DEF("real?", 1, 1, TST_ANY, OP_REALP )
-_OP_DEF("char?", 1, 1, TST_ANY, OP_CHARP )
+_OP_DEF(OP_ADD, "+", 0, INF_ARG, TST_NUMBER )
+_OP_DEF(OP_SUB, "-", 1, INF_ARG, TST_NUMBER )
+_OP_DEF(OP_MUL, "*", 0, INF_ARG, TST_NUMBER )
+_OP_DEF(OP_DIV, "/", 1, INF_ARG, TST_NUMBER )
+_OP_DEF(OP_INTDIV, "quotient", 1, INF_ARG, TST_INTEGER )
+_OP_DEF(OP_REM, "remainder", 2, 2, TST_INTEGER )
+_OP_DEF(OP_MOD, "modulo", 2, 2, TST_INTEGER )
+_OP_DEF(OP_CAR, "car", 1, 1, TST_PAIR )
+_OP_DEF(OP_CDR, "cdr", 1, 1, TST_PAIR )
+_OP_DEF(OP_CONS, "cons", 2, 2, TST_NONE )
+_OP_DEF(OP_SETCAR, "set-car!", 2, 2, TST_PAIR, TST_ANY )
+_OP_DEF(OP_SETCDR, "set-cdr!", 2, 2, TST_PAIR, TST_ANY )
+_OP_DEF(OP_CHAR2INT, "char->integer", 1, 1, TST_CHAR )
+_OP_DEF(OP_INT2CHAR, "integer->char", 1, 1, TST_NATURAL )
+_OP_DEF(OP_CHARUPCASE, "char-upcase", 1, 1, TST_CHAR )
+_OP_DEF(OP_CHARDNCASE, "char-downcase", 1, 1, TST_CHAR )
+_OP_DEF(OP_SYM2STR, "symbol->string", 1, 1, TST_SYMBOL )
+_OP_DEF(OP_ATOM2STR, "atom->string", 1, 2, TST_ANY, TST_NATURAL )
+_OP_DEF(OP_STR2SYM, "string->symbol", 1, 1, TST_STRING )
+_OP_DEF(OP_STR2ATOM, "string->atom", 1, 2, TST_STRING, TST_NATURAL )
+_OP_DEF(OP_MKSTRING, "make-string", 1, 2, TST_NATURAL, TST_CHAR )
+_OP_DEF(OP_STRLEN, "string-length", 1, 1, TST_STRING )
+_OP_DEF(OP_STRREF, "string-ref", 2, 2, TST_STRING, TST_NATURAL )
+_OP_DEF(OP_STRSET, "string-set!", 3, 3, TST_STRING, TST_NATURAL, TST_CHAR )
+_OP_DEF(OP_STRAPPEND, "string-append", 0, INF_ARG, TST_STRING )
+_OP_DEF(OP_SUBSTR, "substring", 2, 3, TST_STRING, TST_NATURAL )
+_OP_DEF(OP_VECTOR, "vector", 0, INF_ARG, TST_NONE )
+_OP_DEF(OP_MKVECTOR, "make-vector", 1, 2, TST_NATURAL, TST_ANY )
+_OP_DEF(OP_VECLEN, "vector-length", 1, 1, TST_VECTOR )
+_OP_DEF(OP_VECREF, "vector-ref", 2, 2, TST_VECTOR, TST_NATURAL )
+_OP_DEF(OP_VECSET, "vector-set!", 3, 3, TST_VECTOR, TST_NATURAL, TST_ANY )
+_OP_DEF(OP_NOT, "not", 1, 1, TST_NONE )
+_OP_DEF(OP_BOOLP, "boolean?", 1, 1, TST_NONE )
+_OP_DEF(OP_EOFOBJP, "eof-object?", 1, 1, TST_NONE )
+_OP_DEF(OP_NULLP, "null?", 1, 1, TST_NONE )
+_OP_DEF(OP_NUMEQ, "=", 2, INF_ARG, TST_NUMBER )
+_OP_DEF(OP_LESS, "<", 2, INF_ARG, TST_NUMBER )
+_OP_DEF(OP_GRE, ">", 2, INF_ARG, TST_NUMBER )
+_OP_DEF(OP_LEQ, "<=", 2, INF_ARG, TST_NUMBER )
+_OP_DEF(OP_GEQ, ">=", 2, INF_ARG, TST_NUMBER )
+_OP_DEF(OP_SYMBOLP, "symbol?", 1, 1, TST_ANY )
+_OP_DEF(OP_NUMBERP, "number?", 1, 1, TST_ANY )
+_OP_DEF(OP_STRINGP, "string?", 1, 1, TST_ANY )
+_OP_DEF(OP_INTEGERP, "integer?", 1, 1, TST_ANY )
+_OP_DEF(OP_REALP, "real?", 1, 1, TST_ANY )
+_OP_DEF(OP_CHARP, "char?", 1, 1, TST_ANY )
#if USE_CHAR_CLASSIFIERS
-_OP_DEF("char-alphabetic?", 1, 1, TST_CHAR, OP_CHARAP )
-_OP_DEF("char-numeric?", 1, 1, TST_CHAR, OP_CHARNP )
-_OP_DEF("char-whitespace?", 1, 1, TST_CHAR, OP_CHARWP )
-_OP_DEF("char-upper-case?", 1, 1, TST_CHAR, OP_CHARUP )
-_OP_DEF("char-lower-case?", 1, 1, TST_CHAR, OP_CHARLP )
+_OP_DEF(OP_CHARAP, "char-alphabetic?", 1, 1, TST_CHAR )
+_OP_DEF(OP_CHARNP, "char-numeric?", 1, 1, TST_CHAR )
+_OP_DEF(OP_CHARWP, "char-whitespace?", 1, 1, TST_CHAR )
+_OP_DEF(OP_CHARUP, "char-upper-case?", 1, 1, TST_CHAR )
+_OP_DEF(OP_CHARLP, "char-lower-case?", 1, 1, TST_CHAR )
#endif
-_OP_DEF("port?", 1, 1, TST_ANY, OP_PORTP )
-_OP_DEF("input-port?", 1, 1, TST_ANY, OP_INPORTP )
-_OP_DEF("output-port?", 1, 1, TST_ANY, OP_OUTPORTP )
-_OP_DEF("procedure?", 1, 1, TST_ANY, OP_PROCP )
-_OP_DEF("pair?", 1, 1, TST_ANY, OP_PAIRP )
-_OP_DEF("list?", 1, 1, TST_ANY, OP_LISTP )
-_OP_DEF("environment?", 1, 1, TST_ANY, OP_ENVP )
-_OP_DEF("vector?", 1, 1, TST_ANY, OP_VECTORP )
-_OP_DEF("eq?", 2, 2, TST_ANY, OP_EQ )
-_OP_DEF("eqv?", 2, 2, TST_ANY, OP_EQV )
-_OP_DEF("force", 1, 1, TST_ANY, OP_FORCE )
-_OP_DEF(0, 0, 0, 0, OP_SAVE_FORCED )
-_OP_DEF("write", 1, 2, TST_ANY TST_OUTPORT, OP_WRITE )
-_OP_DEF("write-char", 1, 2, TST_CHAR TST_OUTPORT, OP_WRITE_CHAR )
-_OP_DEF("display", 1, 2, TST_ANY TST_OUTPORT, OP_DISPLAY )
-_OP_DEF("newline", 0, 1, TST_OUTPORT, OP_NEWLINE )
-_OP_DEF("error", 1, INF_ARG, TST_NONE, OP_ERR0 )
-_OP_DEF(0, 0, 0, 0, OP_ERR1 )
-_OP_DEF("reverse", 1, 1, TST_LIST, OP_REVERSE )
-_OP_DEF("reverse!", 1, 1, TST_LIST, OP_REVERSE_IN_PLACE )
-_OP_DEF("list*", 1, INF_ARG, TST_NONE, OP_LIST_STAR )
-_OP_DEF("append", 0, INF_ARG, TST_NONE, OP_APPEND )
+_OP_DEF(OP_PORTP, "port?", 1, 1, TST_ANY )
+_OP_DEF(OP_INPORTP, "input-port?", 1, 1, TST_ANY )
+_OP_DEF(OP_OUTPORTP, "output-port?", 1, 1, TST_ANY )
+_OP_DEF(OP_PROCP, "procedure?", 1, 1, TST_ANY )
+_OP_DEF(OP_PAIRP, "pair?", 1, 1, TST_ANY )
+_OP_DEF(OP_LISTP, "list?", 1, 1, TST_ANY )
+_OP_DEF(OP_ENVP, "environment?", 1, 1, TST_ANY )
+_OP_DEF(OP_VECTORP, "vector?", 1, 1, TST_ANY )
+_OP_DEF(OP_EQ, "eq?", 2, 2, TST_ANY )
+_OP_DEF(OP_EQV, "eqv?", 2, 2, TST_ANY )
+_OP_DEF(OP_FORCE, "force", 1, 1, TST_ANY )
+_OP_DEF(OP_SAVE_FORCED, 0, 0, 0, 0 )
+_OP_DEF(OP_WRITE, "write", 1, 2, TST_ANY, TST_OUTPORT )
+_OP_DEF(OP_WRITE_CHAR, "write-char", 1, 2, TST_CHAR, TST_OUTPORT )
+_OP_DEF(OP_DISPLAY, "display", 1, 2, TST_ANY, TST_OUTPORT )
+_OP_DEF(OP_NEWLINE, "newline", 0, 1, TST_OUTPORT )
+_OP_DEF(OP_ERR0, "error", 1, INF_ARG, TST_NONE )
+_OP_DEF(OP_ERR1, 0, 0, 0, 0 )
+_OP_DEF(OP_REVERSE, "reverse", 1, 1, TST_LIST )
+_OP_DEF(OP_REVERSE_IN_PLACE, "reverse!", 1, 1, TST_LIST )
+_OP_DEF(OP_LIST_STAR, "list*", 1, INF_ARG, TST_NONE )
+_OP_DEF(OP_APPEND, "append", 0, INF_ARG, TST_NONE )
#if USE_PLIST
-_OP_DEF("set-symbol-property!", 3, 3, TST_SYMBOL TST_SYMBOL TST_ANY, OP_SET_SYMBOL_PROPERTY )
-_OP_DEF("symbol-property", 2, 2, TST_SYMBOL TST_SYMBOL, OP_SYMBOL_PROPERTY )
+_OP_DEF(OP_SET_SYMBOL_PROPERTY, "set-symbol-property!", 3, 3, TST_SYMBOL, TST_SYMBOL, TST_ANY )
+_OP_DEF(OP_SYMBOL_PROPERTY, "symbol-property", 2, 2, TST_SYMBOL, TST_SYMBOL )
#endif
-_OP_DEF(0, 0, 0, TST_NONE, OP_TAG_VALUE )
-_OP_DEF("make-tagged-value", 2, 2, TST_ANY TST_PAIR, OP_MK_TAGGED )
-_OP_DEF("get-tag", 1, 1, TST_ANY, OP_GET_TAG )
-_OP_DEF("quit", 0, 1, TST_NUMBER, OP_QUIT )
-_OP_DEF("gc", 0, 0, 0, OP_GC )
-_OP_DEF("gc-verbose", 0, 1, TST_NONE, OP_GCVERB )
-_OP_DEF("new-segment", 0, 1, TST_NUMBER, OP_NEWSEGMENT )
-_OP_DEF("oblist", 0, 0, 0, OP_OBLIST )
-_OP_DEF("current-input-port", 0, 0, 0, OP_CURR_INPORT )
-_OP_DEF("current-output-port", 0, 0, 0, OP_CURR_OUTPORT )
-_OP_DEF("open-input-file", 1, 1, TST_STRING, OP_OPEN_INFILE )
-_OP_DEF("open-output-file", 1, 1, TST_STRING, OP_OPEN_OUTFILE )
-_OP_DEF("open-input-output-file", 1, 1, TST_STRING, OP_OPEN_INOUTFILE )
+_OP_DEF(OP_TAG_VALUE, 0, 0, 0, TST_NONE )
+_OP_DEF(OP_MK_TAGGED, "make-tagged-value", 2, 2, TST_ANY, TST_PAIR )
+_OP_DEF(OP_GET_TAG, "get-tag", 1, 1, TST_ANY )
+_OP_DEF(OP_QUIT, "quit", 0, 1, TST_NUMBER )
+_OP_DEF(OP_GC, "gc", 0, 0, 0 )
+_OP_DEF(OP_GCVERB, "gc-verbose", 0, 1, TST_NONE )
+_OP_DEF(OP_NEWSEGMENT, "new-segment", 0, 1, TST_NUMBER )
+_OP_DEF(OP_OBLIST, "oblist", 0, 0, 0 )
+_OP_DEF(OP_CURR_INPORT, "current-input-port", 0, 0, 0 )
+_OP_DEF(OP_CURR_OUTPORT, "current-output-port", 0, 0, 0 )
+_OP_DEF(OP_OPEN_INFILE, "open-input-file", 1, 1, TST_STRING )
+_OP_DEF(OP_OPEN_OUTFILE, "open-output-file", 1, 1, TST_STRING )
+_OP_DEF(OP_OPEN_INOUTFILE, "open-input-output-file", 1, 1, TST_STRING )
#if USE_STRING_PORTS
-_OP_DEF("open-input-string", 1, 1, TST_STRING, OP_OPEN_INSTRING )
-_OP_DEF("open-input-output-string", 1, 1, TST_STRING, OP_OPEN_INOUTSTRING )
-_OP_DEF("open-output-string", 0, 1, TST_STRING, OP_OPEN_OUTSTRING )
-_OP_DEF("get-output-string", 1, 1, TST_OUTPORT, OP_GET_OUTSTRING )
+_OP_DEF(OP_OPEN_INSTRING, "open-input-string", 1, 1, TST_STRING )
+_OP_DEF(OP_OPEN_INOUTSTRING, "open-input-output-string", 1, 1, TST_STRING )
+_OP_DEF(OP_OPEN_OUTSTRING, "open-output-string", 0, 1, TST_STRING )
+_OP_DEF(OP_GET_OUTSTRING, "get-output-string", 1, 1, TST_OUTPORT )
#endif
-_OP_DEF("close-input-port", 1, 1, TST_INPORT, OP_CLOSE_INPORT )
-_OP_DEF("close-output-port", 1, 1, TST_OUTPORT, OP_CLOSE_OUTPORT )
-_OP_DEF("interaction-environment", 0, 0, 0, OP_INT_ENV )
-_OP_DEF("current-environment", 0, 0, 0, OP_CURR_ENV )
-_OP_DEF("read", 0, 1, TST_INPORT, OP_READ )
-_OP_DEF("read-char", 0, 1, TST_INPORT, OP_READ_CHAR )
-_OP_DEF("peek-char", 0, 1, TST_INPORT, OP_PEEK_CHAR )
-_OP_DEF("char-ready?", 0, 1, TST_INPORT, OP_CHAR_READY )
-_OP_DEF("set-input-port", 1, 1, TST_INPORT, OP_SET_INPORT )
-_OP_DEF("set-output-port", 1, 1, TST_OUTPORT, OP_SET_OUTPORT )
-_OP_DEF(0, 0, 0, 0, OP_RDSEXPR )
-_OP_DEF(0, 0, 0, 0, OP_RDLIST )
-_OP_DEF(0, 0, 0, 0, OP_RDDOT )
-_OP_DEF(0, 0, 0, 0, OP_RDQUOTE )
-_OP_DEF(0, 0, 0, 0, OP_RDQQUOTE )
-_OP_DEF(0, 0, 0, 0, OP_RDQQUOTEVEC )
-_OP_DEF(0, 0, 0, 0, OP_RDUNQUOTE )
-_OP_DEF(0, 0, 0, 0, OP_RDUQTSP )
-_OP_DEF(0, 0, 0, 0, OP_RDVEC )
-_OP_DEF(0, 0, 0, 0, OP_P0LIST )
-_OP_DEF(0, 0, 0, 0, OP_P1LIST )
-_OP_DEF(0, 0, 0, 0, OP_PVECFROM )
-_OP_DEF("length", 1, 1, TST_LIST, OP_LIST_LENGTH )
-_OP_DEF("assq", 2, 2, TST_NONE, OP_ASSQ )
-_OP_DEF("get-closure-code", 1, 1, TST_NONE, OP_GET_CLOSURE )
-_OP_DEF("closure?", 1, 1, TST_NONE, OP_CLOSUREP )
-_OP_DEF("macro?", 1, 1, TST_NONE, OP_MACROP )
-_OP_DEF("*vm-history*", 0, 0, TST_NONE, OP_VM_HISTORY )
+_OP_DEF(OP_CLOSE_INPORT, "close-input-port", 1, 1, TST_INPORT )
+_OP_DEF(OP_CLOSE_OUTPORT, "close-output-port", 1, 1, TST_OUTPORT )
+_OP_DEF(OP_INT_ENV, "interaction-environment", 0, 0, 0 )
+_OP_DEF(OP_CURR_ENV, "current-environment", 0, 0, 0 )
+_OP_DEF(OP_READ, "read", 0, 1, TST_INPORT )
+_OP_DEF(OP_READ_CHAR, "read-char", 0, 1, TST_INPORT )
+_OP_DEF(OP_PEEK_CHAR, "peek-char", 0, 1, TST_INPORT )
+_OP_DEF(OP_CHAR_READY, "char-ready?", 0, 1, TST_INPORT )
+_OP_DEF(OP_SET_INPORT, "set-input-port", 1, 1, TST_INPORT )
+_OP_DEF(OP_SET_OUTPORT, "set-output-port", 1, 1, TST_OUTPORT )
+_OP_DEF(OP_RDSEXPR, 0, 0, 0, 0 )
+_OP_DEF(OP_RDLIST, 0, 0, 0, 0 )
+_OP_DEF(OP_RDDOT, 0, 0, 0, 0 )
+_OP_DEF(OP_RDQUOTE, 0, 0, 0, 0 )
+_OP_DEF(OP_RDQQUOTE, 0, 0, 0, 0 )
+_OP_DEF(OP_RDQQUOTEVEC, 0, 0, 0, 0 )
+_OP_DEF(OP_RDUNQUOTE, 0, 0, 0, 0 )
+_OP_DEF(OP_RDUQTSP, 0, 0, 0, 0 )
+_OP_DEF(OP_RDVEC, 0, 0, 0, 0 )
+_OP_DEF(OP_P0LIST, 0, 0, 0, 0 )
+_OP_DEF(OP_P1LIST, 0, 0, 0, 0 )
+_OP_DEF(OP_PVECFROM, 0, 0, 0, 0 )
+_OP_DEF(OP_LIST_LENGTH, "length", 1, 1, TST_LIST )
+_OP_DEF(OP_ASSQ, "assq", 2, 2, TST_NONE )
+_OP_DEF(OP_GET_CLOSURE, "get-closure-code", 1, 1, TST_NONE )
+_OP_DEF(OP_CLOSUREP, "closure?", 1, 1, TST_NONE )
+_OP_DEF(OP_MACROP, "macro?", 1, 1, TST_NONE )
+_OP_DEF(OP_VM_HISTORY, "*vm-history*", 0, 0, TST_NONE )
#undef _OP_DEF
diff --git a/tests/gpgscm/scheme-private.h b/tests/gpgscm/scheme-private.h
index 7f92bda2c..c98901025 100644
--- a/tests/gpgscm/scheme-private.h
+++ b/tests/gpgscm/scheme-private.h
@@ -207,7 +207,7 @@ const struct scheme_interface *vptr;
/* operator code */
enum scheme_opcodes {
-#define _OP_DEF(A,B,C,D,OP) OP,
+#define _OP_DEF(OP,A,B,C,...) OP,
#include "opdefines.h"
OP_MAXDEFINED
};
diff --git a/tests/gpgscm/scheme.c b/tests/gpgscm/scheme.c
index 2e6e57c54..eda4f79c8 100644
--- a/tests/gpgscm/scheme.c
+++ b/tests/gpgscm/scheme.c
@@ -5369,26 +5369,26 @@ static const struct {
{is_nonneg, "non-negative integer"}
};
-#define TST_NONE 0
-#define TST_ANY "\001"
-#define TST_STRING "\002"
-#define TST_SYMBOL "\003"
-#define TST_PORT "\004"
-#define TST_INPORT "\005"
-#define TST_OUTPORT "\006"
-#define TST_ENVIRONMENT "\007"
-#define TST_PAIR "\010"
-#define TST_LIST "\011"
-#define TST_CHAR "\012"
-#define TST_VECTOR "\013"
-#define TST_NUMBER "\014"
-#define TST_INTEGER "\015"
-#define TST_NATURAL "\016"
+#define TST_NONE 0
+#define TST_ANY 1
+#define TST_STRING 2
+#define TST_SYMBOL 3
+#define TST_PORT 4
+#define TST_INPORT 5
+#define TST_OUTPORT 6
+#define TST_ENVIRONMENT 7
+#define TST_PAIR 8
+#define TST_LIST 9
+#define TST_CHAR 10
+#define TST_VECTOR 11
+#define TST_NUMBER 12
+#define TST_INTEGER 13
+#define TST_NATURAL 14
#define INF_ARG 0xff
static const struct op_code_info dispatch_table[]= {
-#define _OP_DEF(A,B,C,D,OP) {{A},B,C,{D}},
+#define _OP_DEF(OP,A,B,C,...) {{A},B,C,{__VA_ARGS__}},
#include "opdefines.h"
#undef _OP_DEF
{{0},0,0,{0}},
@@ -5434,7 +5434,7 @@ check_arguments (scheme *sc, const struct op_code_info *pcd, char *msg, size_t m
do {
pointer arg = car(arglist);
j = (int)t[0];
- if (j == TST_LIST[0]) {
+ if (j == TST_LIST) {
if (arg != sc->NIL && !is_pair(arg)) break;
} else {
if (!tests[j].fct(arg)) break;