Ah wait, I was using a broken commit which did not compile in ordinary C++ mode too (and I guess, neither in C mode) - switched to https://github.com/feeley/gambit/commit/56671e116590666d75d18fed6586dd05b96af775 and now it works in both modes! :D


2013/12/21 Mikael <mikael.rcv@gmail.com>
Dear Marc,

Not sure right now if there is actually any issue about C++11 integration however wanted to check:

On my machine, doing this:

CXXFLAGS="-std=c++11" ./configure --enable-single-host --enable-cplusplus --enable-debug
make

gives error - output pasted below, the error is:

_io.c:85254:1: error: '___BEGIN_MOD1' does not name a type

g++ version used here is eg++ (GCC) 4.8.1.

Is Gambit supposed to work in C++11 as of today?

Thanks,
Mikael





$ make
making all in include
major=`echo v4.7.0 | sed -e "s/v//g" -e "s/\.[^.]*\.[^.]*//g"`;  minor=`echo v4.7.0 | sed -e "s/v[^.]*\.//g" -e "s/\.[^.]*//g"`;  revision=`echo v4.7.0 | sed -e "s/v[^.]*\.[^.]*\.//g" -e "s///g"`;  version_num=`eval expr "\( 100000 \\* $major \) + \( 1000 \\* $minor \) + $revision"`;  echo "#error \"The version indicated in ___VERSION is not supported by gambit.h\"" > gambit-not$version_num.h;  echo "#error \"You are probably compiling C code generated by a Gambit compiler earlier or later than v4.7.0\"" >> gambit-not$version_num.h;  echo "#error \"___VERSION will be set to $version_num to reduce other errors\"" >> gambit-not$version_num.h;  echo "#undef ___VERSION" >> gambit-not$version_num.h;  echo "#define ___VERSION $version_num" >> gambit-not$version_num.h;  echo "#include \"gambit.h\"" >> gambit-not$version_num.h
making all in lib
/usr/local/bin/eg++ -std=c++11   -Wno-unused -Wno-write-strings -g -fno-trapping-math -fno-strict-aliasing -fwrapv -fPIC -fno-common -mieee-fp   -I"../include" -c -o "_io.o" -I. -DHAVE_CONFIG_H -D___GAMBCDIR="\"/usr/local/Gambit-C\"" -D___SYS_TYPE_CPU="\"amd64\"" -D___SYS_TYPE_VENDOR="\"unknown\"" -D___SYS_TYPE_OS="\"openbsd5.4\"" -D___CONFIGURE_COMMAND="\"./configure '--enable-single-host' '--enable-cplusplus' '--enable-debug' 'CXX=/usr/local/bin/eg++' 'CXXFLAGS=-std=c++11'"\" -D___OBJ_EXTENSION="\".o\"" -D___EXE_EXTENSION="\"\"" -D___BAT_EXTENSION="\"\"" -D___PRIMAL _io.c -D___LIBRARY
_io.c:2700:1: error: '___BEGIN_SYM1' does not name a type
 ___BEGIN_SYM1
 ^
In file included from _io.c:1364:0:
_io.c: In function 'long int ___H__20___io(___processor_state)':
../include/gambit.h:2003:37: error: '___cnstbl' was not declared in this scope
 #define ___CNS(i)___TAG((___ALIGNUP(___cnstbl,___WS)+i*(___PAIR_SIZE+1)),___tPAIR)
                                     ^
../include/gambit.h:3456:42: note: in definition of macro '___SET_GLO'
 #define ___SET_GLO(i,glo,x)___GLO(i,glo)=x;
                                          ^
../include/gambit.h:2090:25: note: in expansion of macro '___CAST'
 #define ___TAG(ptr,tag)(___CAST(___WORD,ptr)+(tag))
                         ^
../include/gambit.h:2003:18: note: in expansion of macro '___TAG'
 #define ___CNS(i)___TAG((___ALIGNUP(___cnstbl,___WS)+i*(___PAIR_SIZE+1)),___tPAIR)
                  ^
../include/gambit.h:2073:1: note: in expansion of macro '___CAST'
 ___CAST(___WORD*,(___CAST(___WORD,x)+((mult)-1))&~((mult)-1))
 ^
../include/gambit.h:2073:19: note: in expansion of macro '___CAST'
 ___CAST(___WORD*,(___CAST(___WORD,x)+((mult)-1))&~((mult)-1))
                   ^
../include/gambit.h:2003:26: note: in expansion of macro '___ALIGNUP'
 #define ___CNS(i)___TAG((___ALIGNUP(___cnstbl,___WS)+i*(___PAIR_SIZE+1)),___tPAIR)
                          ^
_io.c:14401:61: note: in expansion of macro '___CNS'
    ___SET_GLO(320,___G__23__23_scheme_2d_file_2d_extensions,___CNS(0))
                                                             ^
../include/gambit.h:2001:46: error: '___symtbl' was not declared in this scope
 #define ___SYM(i,id)___CAST_FAKEWORD_TO_WORD(___symtbl[i])
                                              ^
../include/gambit.h:3700:30: note: in definition of macro '___SET_R1'
 #define ___SET_R1(val)___R1=(val);
                              ^
_io.c:14512:14: note: in expansion of macro '___BOOLEAN'
    ___SET_R1(___BOOLEAN(___STRUCTUREDIOP(___R1,___SYM__23__23_type_2d_3_2d_84660e37_2d_9565_2d_4abf_2d_ac09_2d_f9767f926d40)))
              ^
_io.c:14512:25: note: in expansion of macro '___STRUCTUREDIOP'
    ___SET_R1(___BOOLEAN(___STRUCTUREDIOP(___R1,___SYM__23__23_type_2d_3_2d_84660e37_2d_9565_2d_4abf_2d_ac09_2d_f9767f926d40)))
                         ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2001:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___SYM(i,id)___CAST_FAKEWORD_TO_WORD(___symtbl[i])
                     ^
_io.c:3268:86: note: in expansion of macro '___SYM'
 #define ___SYM__23__23_type_2d_3_2d_84660e37_2d_9565_2d_4abf_2d_ac09_2d_f9767f926d40 ___SYM(19,___S__23__23_type_2d_3_2d_84660e37_2d_9565_2d_4abf_2d_ac09_2d_f9767f926d40)
                                                                                      ^
_io.c:14512:48: note: in expansion of macro '___SYM__23__23_type_2d_3_2d_84660e37_2d_9565_2d_4abf_2d_ac09_2d_f9767f926d40'
    ___SET_R1(___BOOLEAN(___STRUCTUREDIOP(___R1,___SYM__23__23_type_2d_3_2d_84660e37_2d_9565_2d_4abf_2d_ac09_2d_f9767f926d40)))
                                                ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2047:22: note: in definition of macro '___IF'
 #define ___IF(x) if (x) {
                      ^
_io.c:15902:10: note: in expansion of macro '___NOT'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_direction)))
          ^
_io.c:15902:17: note: in expansion of macro '___EQP'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_direction)))
                 ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3817:26: note: in expansion of macro '___KEY'
 #define ___KEY_direction ___KEY(9,___K_direction)
                          ^
_io.c:15902:35: note: in expansion of macro '___KEY_direction'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_direction)))
                                   ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2047:22: note: in definition of macro '___IF'
 #define ___IF(x) if (x) {
                      ^
_io.c:15949:10: note: in expansion of macro '___NOT'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_input_2d_readtable)))
          ^
_io.c:15949:17: note: in expansion of macro '___EQP'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_input_2d_readtable)))
                 ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3830:35: note: in expansion of macro '___KEY'
 #define ___KEY_input_2d_readtable ___KEY(22,___K_input_2d_readtable)
                                   ^
_io.c:15949:35: note: in expansion of macro '___KEY_input_2d_readtable'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_input_2d_readtable)))
                                   ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2047:22: note: in definition of macro '___IF'
 #define ___IF(x) if (x) {
                      ^
_io.c:15957:10: note: in expansion of macro '___NOT'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_output_2d_readtable)))
          ^
_io.c:15957:17: note: in expansion of macro '___EQP'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_output_2d_readtable)))
                 ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3836:36: note: in expansion of macro '___KEY'
 #define ___KEY_output_2d_readtable ___KEY(28,___K_output_2d_readtable)
                                    ^
_io.c:15957:35: note: in expansion of macro '___KEY_output_2d_readtable'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_output_2d_readtable)))
                                   ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2047:22: note: in definition of macro '___IF'
 #define ___IF(x) if (x) {
                      ^
_io.c:15965:10: note: in expansion of macro '___NOT'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_readtable)))
          ^
_io.c:15965:17: note: in expansion of macro '___EQP'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_readtable)))
                 ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3845:26: note: in expansion of macro '___KEY'
 #define ___KEY_readtable ___KEY(37,___K_readtable)
                          ^
_io.c:15965:35: note: in expansion of macro '___KEY_readtable'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_readtable)))
                                   ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2047:22: note: in definition of macro '___IF'
 #define ___IF(x) if (x) {
                      ^
_io.c:16060:10: note: in expansion of macro '___NOT'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_input_2d_char_2d_encoding)))
          ^
_io.c:16060:17: note: in expansion of macro '___EQP'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_input_2d_char_2d_encoding)))
                 ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3827:42: note: in expansion of macro '___KEY'
 #define ___KEY_input_2d_char_2d_encoding ___KEY(19,___K_input_2d_char_2d_encoding)
                                          ^
_io.c:16060:35: note: in expansion of macro '___KEY_input_2d_char_2d_encoding'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_input_2d_char_2d_encoding)))
                                   ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2047:22: note: in definition of macro '___IF'
 #define ___IF(x) if (x) {
                      ^
_io.c:16068:10: note: in expansion of macro '___NOT'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_output_2d_char_2d_encoding)))
          ^
_io.c:16068:17: note: in expansion of macro '___EQP'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_output_2d_char_2d_encoding)))
                 ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3833:43: note: in expansion of macro '___KEY'
 #define ___KEY_output_2d_char_2d_encoding ___KEY(25,___K_output_2d_char_2d_encoding)
                                           ^
_io.c:16068:35: note: in expansion of macro '___KEY_output_2d_char_2d_encoding'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_output_2d_char_2d_encoding)))
                                   ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2047:22: note: in definition of macro '___IF'
 #define ___IF(x) if (x) {
                      ^
_io.c:16076:10: note: in expansion of macro '___NOT'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_char_2d_encoding)))
          ^
_io.c:16076:17: note: in expansion of macro '___EQP'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_char_2d_encoding)))
                 ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3813:33: note: in expansion of macro '___KEY'
 #define ___KEY_char_2d_encoding ___KEY(5,___K_char_2d_encoding)
                                 ^
_io.c:16076:35: note: in expansion of macro '___KEY_char_2d_encoding'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_char_2d_encoding)))
                                   ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2047:22: note: in definition of macro '___IF'
 #define ___IF(x) if (x) {
                      ^
_io.c:16275:10: note: in expansion of macro '___NOT'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_input_2d_char_2d_encoding_2d_errors)))
          ^
_io.c:16275:17: note: in expansion of macro '___EQP'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_input_2d_char_2d_encoding_2d_errors)))
                 ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3828:52: note: in expansion of macro '___KEY'
 #define ___KEY_input_2d_char_2d_encoding_2d_errors ___KEY(20,___K_input_2d_char_2d_encoding_2d_errors)
                                                    ^
_io.c:16275:35: note: in expansion of macro '___KEY_input_2d_char_2d_encoding_2d_errors'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_input_2d_char_2d_encoding_2d_errors)))
                                   ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2047:22: note: in definition of macro '___IF'
 #define ___IF(x) if (x) {
                      ^
_io.c:16283:10: note: in expansion of macro '___NOT'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_output_2d_char_2d_encoding_2d_errors)))
          ^
_io.c:16283:17: note: in expansion of macro '___EQP'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_output_2d_char_2d_encoding_2d_errors)))
                 ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3834:53: note: in expansion of macro '___KEY'
 #define ___KEY_output_2d_char_2d_encoding_2d_errors ___KEY(26,___K_output_2d_char_2d_encoding_2d_errors)
                                                     ^
_io.c:16283:35: note: in expansion of macro '___KEY_output_2d_char_2d_encoding_2d_errors'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_output_2d_char_2d_encoding_2d_errors)))
                                   ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2047:22: note: in definition of macro '___IF'
 #define ___IF(x) if (x) {
                      ^
_io.c:16291:10: note: in expansion of macro '___NOT'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_char_2d_encoding_2d_errors)))
          ^
_io.c:16291:17: note: in expansion of macro '___EQP'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_char_2d_encoding_2d_errors)))
                 ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3814:43: note: in expansion of macro '___KEY'
 #define ___KEY_char_2d_encoding_2d_errors ___KEY(6,___K_char_2d_encoding_2d_errors)
                                           ^
_io.c:16291:35: note: in expansion of macro '___KEY_char_2d_encoding_2d_errors'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_char_2d_encoding_2d_errors)))
                                   ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2047:22: note: in definition of macro '___IF'
 #define ___IF(x) if (x) {
                      ^
_io.c:16393:10: note: in expansion of macro '___NOT'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_input_2d_eol_2d_encoding)))
          ^
_io.c:16393:17: note: in expansion of macro '___EQP'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_input_2d_eol_2d_encoding)))
                 ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3829:41: note: in expansion of macro '___KEY'
 #define ___KEY_input_2d_eol_2d_encoding ___KEY(21,___K_input_2d_eol_2d_encoding)
                                         ^
_io.c:16393:35: note: in expansion of macro '___KEY_input_2d_eol_2d_encoding'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_input_2d_eol_2d_encoding)))
                                   ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2047:22: note: in definition of macro '___IF'
 #define ___IF(x) if (x) {
                      ^
_io.c:16401:10: note: in expansion of macro '___NOT'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_output_2d_eol_2d_encoding)))
          ^
_io.c:16401:17: note: in expansion of macro '___EQP'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_output_2d_eol_2d_encoding)))
                 ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3835:42: note: in expansion of macro '___KEY'
 #define ___KEY_output_2d_eol_2d_encoding ___KEY(27,___K_output_2d_eol_2d_encoding)
                                          ^
_io.c:16401:35: note: in expansion of macro '___KEY_output_2d_eol_2d_encoding'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_output_2d_eol_2d_encoding)))
                                   ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2047:22: note: in definition of macro '___IF'
 #define ___IF(x) if (x) {
                      ^
_io.c:16409:10: note: in expansion of macro '___NOT'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_eol_2d_encoding)))
          ^
_io.c:16409:17: note: in expansion of macro '___EQP'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_eol_2d_encoding)))
                 ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3820:32: note: in expansion of macro '___KEY'
 #define ___KEY_eol_2d_encoding ___KEY(12,___K_eol_2d_encoding)
                                ^
_io.c:16409:35: note: in expansion of macro '___KEY_eol_2d_encoding'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_eol_2d_encoding)))
                                   ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2047:22: note: in definition of macro '___IF'
 #define ___IF(x) if (x) {
                      ^
_io.c:16517:10: note: in expansion of macro '___NOT'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_input_2d_buffering)))
          ^
_io.c:16517:17: note: in expansion of macro '___EQP'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_input_2d_buffering)))
                 ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3826:35: note: in expansion of macro '___KEY'
 #define ___KEY_input_2d_buffering ___KEY(18,___K_input_2d_buffering)
                                   ^
_io.c:16517:35: note: in expansion of macro '___KEY_input_2d_buffering'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_input_2d_buffering)))
                                   ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2047:22: note: in definition of macro '___IF'
 #define ___IF(x) if (x) {
                      ^
_io.c:16525:10: note: in expansion of macro '___NOT'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_output_2d_buffering)))
          ^
_io.c:16525:17: note: in expansion of macro '___EQP'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_output_2d_buffering)))
                 ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3832:36: note: in expansion of macro '___KEY'
 #define ___KEY_output_2d_buffering ___KEY(24,___K_output_2d_buffering)
                                    ^
_io.c:16525:35: note: in expansion of macro '___KEY_output_2d_buffering'
    ___IF(___NOT(___EQP(___STK(-5),___KEY_output_2d_buffering)))
                                   ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:4675:33: note: in definition of macro '___IF_GOTO'
 #define ___IF_GOTO(test,lbl)if (test) ___GOTO(lbl)
                                 ^
../include/gambit.h:4733:56: note: in expansion of macro '___EQP'
 #define ___SWITCH_SYMKEY_CASE_GOTO(obj,lbl) ___IF_GOTO(___EQP(___sw,obj),lbl)
                                                        ^
_io.c:16535:4: note: in expansion of macro '___SWITCH_SYMKEY_CASE_GOTO'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_stderr_2d_redirection,___L255__23__23_parse_2d_psettings_21_)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3851:38: note: in expansion of macro '___KEY'
 #define ___KEY_stderr_2d_redirection ___KEY(43,___K_stderr_2d_redirection)
                                      ^
_io.c:16535:31: note: in expansion of macro '___KEY_stderr_2d_redirection'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_stderr_2d_redirection,___L255__23__23_parse_2d_psettings_21_)
                               ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:4675:33: note: in definition of macro '___IF_GOTO'
 #define ___IF_GOTO(test,lbl)if (test) ___GOTO(lbl)
                                 ^
../include/gambit.h:4733:56: note: in expansion of macro '___EQP'
 #define ___SWITCH_SYMKEY_CASE_GOTO(obj,lbl) ___IF_GOTO(___EQP(___sw,obj),lbl)
                                                        ^
_io.c:16536:4: note: in expansion of macro '___SWITCH_SYMKEY_CASE_GOTO'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_coalesce,___L232__23__23_parse_2d_psettings_21_)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3815:25: note: in expansion of macro '___KEY'
 #define ___KEY_coalesce ___KEY(7,___K_coalesce)
                         ^
_io.c:16536:31: note: in expansion of macro '___KEY_coalesce'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_coalesce,___L232__23__23_parse_2d_psettings_21_)
                               ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:4675:33: note: in definition of macro '___IF_GOTO'
 #define ___IF_GOTO(test,lbl)if (test) ___GOTO(lbl)
                                 ^
../include/gambit.h:4733:56: note: in expansion of macro '___EQP'
 #define ___SWITCH_SYMKEY_CASE_GOTO(obj,lbl) ___IF_GOTO(___EQP(___sw,obj),lbl)
                                                        ^
_io.c:16541:4: note: in expansion of macro '___SWITCH_SYMKEY_CASE_GOTO'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_show_2d_console,___L247__23__23_parse_2d_psettings_21_)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3849:32: note: in expansion of macro '___KEY'
 #define ___KEY_show_2d_console ___KEY(41,___K_show_2d_console)
                                ^
_io.c:16541:31: note: in expansion of macro '___KEY_show_2d_console'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_show_2d_console,___L247__23__23_parse_2d_psettings_21_)
                               ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:4675:33: note: in definition of macro '___IF_GOTO'
 #define ___IF_GOTO(test,lbl)if (test) ___GOTO(lbl)
                                 ^
../include/gambit.h:4733:56: note: in expansion of macro '___EQP'
 #define ___SWITCH_SYMKEY_CASE_GOTO(obj,lbl) ___IF_GOTO(___EQP(___sw,obj),lbl)
                                                        ^
_io.c:16544:4: note: in expansion of macro '___SWITCH_SYMKEY_CASE_GOTO'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_init,___L296__23__23_parse_2d_psettings_21_)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3825:21: note: in expansion of macro '___KEY'
 #define ___KEY_init ___KEY(17,___K_init)
                     ^
_io.c:16544:31: note: in expansion of macro '___KEY_init'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_init,___L296__23__23_parse_2d_psettings_21_)
                               ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:4675:33: note: in definition of macro '___IF_GOTO'
 #define ___IF_GOTO(test,lbl)if (test) ___GOTO(lbl)
                                 ^
../include/gambit.h:4733:56: note: in expansion of macro '___EQP'
 #define ___SWITCH_SYMKEY_CASE_GOTO(obj,lbl) ___IF_GOTO(___EQP(___sw,obj),lbl)
                                                        ^
_io.c:16549:4: note: in expansion of macro '___SWITCH_SYMKEY_CASE_GOTO'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_keep_2d_alive,___L228__23__23_parse_2d_psettings_21_)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3831:30: note: in expansion of macro '___KEY'
 #define ___KEY_keep_2d_alive ___KEY(23,___K_keep_2d_alive)
                              ^
_io.c:16549:31: note: in expansion of macro '___KEY_keep_2d_alive'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_keep_2d_alive,___L228__23__23_parse_2d_psettings_21_)
                               ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:4675:33: note: in definition of macro '___IF_GOTO'
 #define ___IF_GOTO(test,lbl)if (test) ___GOTO(lbl)
                                 ^
../include/gambit.h:4733:56: note: in expansion of macro '___EQP'
 #define ___SWITCH_SYMKEY_CASE_GOTO(obj,lbl) ___IF_GOTO(___EQP(___sw,obj),lbl)
                                                        ^
_io.c:16554:4: note: in expansion of macro '___SWITCH_SYMKEY_CASE_GOTO'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_permissions,___L271__23__23_parse_2d_psettings_21_)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3840:28: note: in expansion of macro '___KEY'
 #define ___KEY_permissions ___KEY(32,___K_permissions)
                            ^
_io.c:16554:31: note: in expansion of macro '___KEY_permissions'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_permissions,___L271__23__23_parse_2d_psettings_21_)
                               ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:4675:33: note: in definition of macro '___IF_GOTO'
 #define ___IF_GOTO(test,lbl)if (test) ___GOTO(lbl)
                                 ^
../include/gambit.h:4733:56: note: in expansion of macro '___EQP'
 #define ___SWITCH_SYMKEY_CASE_GOTO(obj,lbl) ___IF_GOTO(___EQP(___sw,obj),lbl)
                                                        ^
_io.c:16555:4: note: in expansion of macro '___SWITCH_SYMKEY_CASE_GOTO'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_ignore_2d_hidden,___L210__23__23_parse_2d_psettings_21_)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3824:33: note: in expansion of macro '___KEY'
 #define ___KEY_ignore_2d_hidden ___KEY(16,___K_ignore_2d_hidden)
                                 ^
_io.c:16555:31: note: in expansion of macro '___KEY_ignore_2d_hidden'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_ignore_2d_hidden,___L210__23__23_parse_2d_psettings_21_)
                               ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:4675:33: note: in definition of macro '___IF_GOTO'
 #define ___IF_GOTO(test,lbl)if (test) ___GOTO(lbl)
                                 ^
../include/gambit.h:4733:56: note: in expansion of macro '___EQP'
 #define ___SWITCH_SYMKEY_CASE_GOTO(obj,lbl) ___IF_GOTO(___EQP(___sw,obj),lbl)
                                                        ^
_io.c:16558:4: note: in expansion of macro '___SWITCH_SYMKEY_CASE_GOTO'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_environment,___L291__23__23_parse_2d_psettings_21_)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3819:28: note: in expansion of macro '___KEY'
 #define ___KEY_environment ___KEY(11,___K_environment)
                            ^
_io.c:16558:31: note: in expansion of macro '___KEY_environment'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_environment,___L291__23__23_parse_2d_psettings_21_)
                               ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:4675:33: note: in definition of macro '___IF_GOTO'
 #define ___IF_GOTO(test,lbl)if (test) ___GOTO(lbl)
                                 ^
../include/gambit.h:4733:56: note: in expansion of macro '___EQP'
 #define ___SWITCH_SYMKEY_CASE_GOTO(obj,lbl) ___IF_GOTO(___EQP(___sw,obj),lbl)
                                                        ^
_io.c:16559:4: note: in expansion of macro '___SWITCH_SYMKEY_CASE_GOTO'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_append,___L285__23__23_parse_2d_psettings_21_)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3808:23: note: in expansion of macro '___KEY'
 #define ___KEY_append ___KEY(0,___K_append)
                       ^
_io.c:16559:31: note: in expansion of macro '___KEY_append'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_append,___L285__23__23_parse_2d_psettings_21_)
                               ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:4675:33: note: in definition of macro '___IF_GOTO'
 #define ___IF_GOTO(test,lbl)if (test) ___GOTO(lbl)
                                 ^
../include/gambit.h:4733:56: note: in expansion of macro '___EQP'
 #define ___SWITCH_SYMKEY_CASE_GOTO(obj,lbl) ___IF_GOTO(___EQP(___sw,obj),lbl)
                                                        ^
_io.c:16562:4: note: in expansion of macro '___SWITCH_SYMKEY_CASE_GOTO'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_stdin_2d_redirection,___L263__23__23_parse_2d_psettings_21_)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3852:37: note: in expansion of macro '___KEY'
 #define ___KEY_stdin_2d_redirection ___KEY(44,___K_stdin_2d_redirection)
                                     ^
_io.c:16562:31: note: in expansion of macro '___KEY_stdin_2d_redirection'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_stdin_2d_redirection,___L263__23__23_parse_2d_psettings_21_)
                               ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:4675:33: note: in definition of macro '___IF_GOTO'
 #define ___IF_GOTO(test,lbl)if (test) ___GOTO(lbl)
                                 ^
../include/gambit.h:4733:56: note: in expansion of macro '___EQP'
 #define ___SWITCH_SYMKEY_CASE_GOTO(obj,lbl) ___IF_GOTO(___EQP(___sw,obj),lbl)
                                                        ^
_io.c:16563:4: note: in expansion of macro '___SWITCH_SYMKEY_CASE_GOTO'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_broadcast,___L216__23__23_parse_2d_psettings_21_)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3811:26: note: in expansion of macro '___KEY'
 #define ___KEY_broadcast ___KEY(3,___K_broadcast)
                          ^
_io.c:16563:31: note: in expansion of macro '___KEY_broadcast'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_broadcast,___L216__23__23_parse_2d_psettings_21_)
                               ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:4675:33: note: in definition of macro '___IF_GOTO'
 #define ___IF_GOTO(test,lbl)if (test) ___GOTO(lbl)
                                 ^
../include/gambit.h:4733:56: note: in expansion of macro '___EQP'
 #define ___SWITCH_SYMKEY_CASE_GOTO(obj,lbl) ___IF_GOTO(___EQP(___sw,obj),lbl)
                                                        ^
_io.c:16568:4: note: in expansion of macro '___SWITCH_SYMKEY_CASE_GOTO'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_reuse_2d_address,___L220__23__23_parse_2d_psettings_21_)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3846:33: note: in expansion of macro '___KEY'
 #define ___KEY_reuse_2d_address ___KEY(38,___K_reuse_2d_address)
                                 ^
_io.c:16568:31: note: in expansion of macro '___KEY_reuse_2d_address'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_reuse_2d_address,___L220__23__23_parse_2d_psettings_21_)
                               ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:4675:33: note: in definition of macro '___IF_GOTO'
 #define ___IF_GOTO(test,lbl)if (test) ___GOTO(lbl)
                                 ^
../include/gambit.h:4733:56: note: in expansion of macro '___EQP'
 #define ___SWITCH_SYMKEY_CASE_GOTO(obj,lbl) ___IF_GOTO(___EQP(___sw,obj),lbl)
                                                        ^
_io.c:16571:4: note: in expansion of macro '___SWITCH_SYMKEY_CASE_GOTO'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_permanent_2d_close,___L300__23__23_parse_2d_psettings_21_)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3839:35: note: in expansion of macro '___KEY'
 #define ___KEY_permanent_2d_close ___KEY(31,___K_permanent_2d_close)
                                   ^
_io.c:16571:31: note: in expansion of macro '___KEY_permanent_2d_close'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_permanent_2d_close,___L300__23__23_parse_2d_psettings_21_)
                               ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:4675:33: note: in definition of macro '___IF_GOTO'
 #define ___IF_GOTO(test,lbl)if (test) ___GOTO(lbl)
                                 ^
../include/gambit.h:4733:56: note: in expansion of macro '___EQP'
 #define ___SWITCH_SYMKEY_CASE_GOTO(obj,lbl) ___IF_GOTO(___EQP(___sw,obj),lbl)
                                                        ^
_io.c:16580:4: note: in expansion of macro '___SWITCH_SYMKEY_CASE_GOTO'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_path,___L298__23__23_parse_2d_psettings_21_)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3838:21: note: in expansion of macro '___KEY'
 #define ___KEY_path ___KEY(30,___K_path)
                     ^
_io.c:16580:31: note: in expansion of macro '___KEY_path'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_path,___L298__23__23_parse_2d_psettings_21_)
                               ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:4675:33: note: in definition of macro '___IF_GOTO'
 #define ___IF_GOTO(test,lbl)if (test) ___GOTO(lbl)
                                 ^
../include/gambit.h:4733:56: note: in expansion of macro '___EQP'
 #define ___SWITCH_SYMKEY_CASE_GOTO(obj,lbl) ___IF_GOTO(___EQP(___sw,obj),lbl)
                                                        ^
_io.c:16581:4: note: in expansion of macro '___SWITCH_SYMKEY_CASE_GOTO'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_stdout_2d_redirection,___L259__23__23_parse_2d_psettings_21_)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3853:38: note: in expansion of macro '___KEY'
 #define ___KEY_stdout_2d_redirection ___KEY(45,___K_stdout_2d_redirection)
                                      ^
_io.c:16581:31: note: in expansion of macro '___KEY_stdout_2d_redirection'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_stdout_2d_redirection,___L259__23__23_parse_2d_psettings_21_)
                               ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:4675:33: note: in definition of macro '___IF_GOTO'
 #define ___IF_GOTO(test,lbl)if (test) ___GOTO(lbl)
                                 ^
../include/gambit.h:4733:56: note: in expansion of macro '___EQP'
 #define ___SWITCH_SYMKEY_CASE_GOTO(obj,lbl) ___IF_GOTO(___EQP(___sw,obj),lbl)
                                                        ^
_io.c:16586:4: note: in expansion of macro '___SWITCH_SYMKEY_CASE_GOTO'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_directory,___L289__23__23_parse_2d_psettings_21_)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3818:26: note: in expansion of macro '___KEY'
 #define ___KEY_directory ___KEY(10,___K_directory)
                          ^
_io.c:16586:31: note: in expansion of macro '___KEY_directory'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_directory,___L289__23__23_parse_2d_psettings_21_)
                               ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:4675:33: note: in definition of macro '___IF_GOTO'
 #define ___IF_GOTO(test,lbl)if (test) ___GOTO(lbl)
                                 ^
../include/gambit.h:4733:56: note: in expansion of macro '___EQP'
 #define ___SWITCH_SYMKEY_CASE_GOTO(obj,lbl) ___IF_GOTO(___EQP(___sw,obj),lbl)
                                                        ^
_io.c:16589:4: note: in expansion of macro '___SWITCH_SYMKEY_CASE_GOTO'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_arguments,___L294__23__23_parse_2d_psettings_21_)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3809:26: note: in expansion of macro '___KEY'
 #define ___KEY_arguments ___KEY(1,___K_arguments)
                          ^
_io.c:16589:31: note: in expansion of macro '___KEY_arguments'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_arguments,___L294__23__23_parse_2d_psettings_21_)
                               ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:4675:33: note: in definition of macro '___IF_GOTO'
 #define ___IF_GOTO(test,lbl)if (test) ___GOTO(lbl)
                                 ^
../include/gambit.h:4733:56: note: in expansion of macro '___EQP'
 #define ___SWITCH_SYMKEY_CASE_GOTO(obj,lbl) ___IF_GOTO(___EQP(___sw,obj),lbl)
                                                        ^
_io.c:16594:4: note: in expansion of macro '___SWITCH_SYMKEY_CASE_GOTO'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_socket_2d_type,___L236__23__23_parse_2d_psettings_21_)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3850:31: note: in expansion of macro '___KEY'
 #define ___KEY_socket_2d_type ___KEY(42,___K_socket_2d_type)
                               ^
_io.c:16594:31: note: in expansion of macro '___KEY_socket_2d_type'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_socket_2d_type,___L236__23__23_parse_2d_psettings_21_)
                               ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:4675:33: note: in definition of macro '___IF_GOTO'
 #define ___IF_GOTO(test,lbl)if (test) ___GOTO(lbl)
                                 ^
../include/gambit.h:4733:56: note: in expansion of macro '___EQP'
 #define ___SWITCH_SYMKEY_CASE_GOTO(obj,lbl) ___IF_GOTO(___EQP(___sw,obj),lbl)
                                                        ^
_io.c:16597:4: note: in expansion of macro '___SWITCH_SYMKEY_CASE_GOTO'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_backlog,___L224__23__23_parse_2d_psettings_21_)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3810:24: note: in expansion of macro '___KEY'
 #define ___KEY_backlog ___KEY(2,___K_backlog)
                        ^
_io.c:16597:31: note: in expansion of macro '___KEY_backlog'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_backlog,___L224__23__23_parse_2d_psettings_21_)
                               ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:4675:33: note: in definition of macro '___IF_GOTO'
 #define ___IF_GOTO(test,lbl)if (test) ___GOTO(lbl)
                                 ^
../include/gambit.h:4733:56: note: in expansion of macro '___EQP'
 #define ___SWITCH_SYMKEY_CASE_GOTO(obj,lbl) ___IF_GOTO(___EQP(___sw,obj),lbl)
                                                        ^
_io.c:16600:4: note: in expansion of macro '___SWITCH_SYMKEY_CASE_GOTO'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_server_2d_address,___L244__23__23_parse_2d_psettings_21_)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3847:34: note: in expansion of macro '___KEY'
 #define ___KEY_server_2d_address ___KEY(39,___K_server_2d_address)
                                  ^
_io.c:16600:31: note: in expansion of macro '___KEY_server_2d_address'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_server_2d_address,___L244__23__23_parse_2d_psettings_21_)
                               ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:4675:33: note: in definition of macro '___IF_GOTO'
 #define ___IF_GOTO(test,lbl)if (test) ___GOTO(lbl)
                                 ^
../include/gambit.h:4733:56: note: in expansion of macro '___EQP'
 #define ___SWITCH_SYMKEY_CASE_GOTO(obj,lbl) ___IF_GOTO(___EQP(___sw,obj),lbl)
                                                        ^
_io.c:16611:4: note: in expansion of macro '___SWITCH_SYMKEY_CASE_GOTO'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_port_2d_number,___L241__23__23_parse_2d_psettings_21_)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3842:31: note: in expansion of macro '___KEY'
 #define ___KEY_port_2d_number ___KEY(34,___K_port_2d_number)
                               ^
_io.c:16611:31: note: in expansion of macro '___KEY_port_2d_number'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_port_2d_number,___L241__23__23_parse_2d_psettings_21_)
                               ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:4675:33: note: in definition of macro '___IF_GOTO'
 #define ___IF_GOTO(test,lbl)if (test) ___GOTO(lbl)
                                 ^
../include/gambit.h:4733:56: note: in expansion of macro '___EQP'
 #define ___SWITCH_SYMKEY_CASE_GOTO(obj,lbl) ___IF_GOTO(___EQP(___sw,obj),lbl)
                                                        ^
_io.c:16614:4: note: in expansion of macro '___SWITCH_SYMKEY_CASE_GOTO'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_create,___L279__23__23_parse_2d_psettings_21_)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3816:23: note: in expansion of macro '___KEY'
 #define ___KEY_create ___KEY(8,___K_create)
                       ^
_io.c:16614:31: note: in expansion of macro '___KEY_create'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_create,___L279__23__23_parse_2d_psettings_21_)
                               ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:4675:33: note: in definition of macro '___IF_GOTO'
 #define ___IF_GOTO(test,lbl)if (test) ___GOTO(lbl)
                                 ^
../include/gambit.h:4733:56: note: in expansion of macro '___EQP'
 #define ___SWITCH_SYMKEY_CASE_GOTO(obj,lbl) ___IF_GOTO(___EQP(___sw,obj),lbl)
                                                        ^
_io.c:16617:4: note: in expansion of macro '___SWITCH_SYMKEY_CASE_GOTO'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_truncate,___L275__23__23_parse_2d_psettings_21_)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3854:25: note: in expansion of macro '___KEY'
 #define ___KEY_truncate ___KEY(46,___K_truncate)
                         ^
_io.c:16617:31: note: in expansion of macro '___KEY_truncate'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_truncate,___L275__23__23_parse_2d_psettings_21_)
                               ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:4675:33: note: in definition of macro '___IF_GOTO'
 #define ___IF_GOTO(test,lbl)if (test) ___GOTO(lbl)
                                 ^
../include/gambit.h:4733:56: note: in expansion of macro '___EQP'
 #define ___SWITCH_SYMKEY_CASE_GOTO(obj,lbl) ___IF_GOTO(___EQP(___sw,obj),lbl)
                                                        ^
_io.c:16620:4: note: in expansion of macro '___SWITCH_SYMKEY_CASE_GOTO'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_buffering,___L304__23__23_parse_2d_psettings_21_)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3812:26: note: in expansion of macro '___KEY'
 #define ___KEY_buffering ___KEY(4,___K_buffering)
                          ^
_io.c:16620:31: note: in expansion of macro '___KEY_buffering'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_buffering,___L304__23__23_parse_2d_psettings_21_)
                               ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:4675:33: note: in definition of macro '___IF_GOTO'
 #define ___IF_GOTO(test,lbl)if (test) ___GOTO(lbl)
                                 ^
../include/gambit.h:4733:56: note: in expansion of macro '___EQP'
 #define ___SWITCH_SYMKEY_CASE_GOTO(obj,lbl) ___IF_GOTO(___EQP(___sw,obj),lbl)
                                                        ^
_io.c:16621:4: note: in expansion of macro '___SWITCH_SYMKEY_CASE_GOTO'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_output_2d_width,___L267__23__23_parse_2d_psettings_21_)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3837:32: note: in expansion of macro '___KEY'
 #define ___KEY_output_2d_width ___KEY(29,___K_output_2d_width)
                                ^
_io.c:16621:31: note: in expansion of macro '___KEY_output_2d_width'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_output_2d_width,___L267__23__23_parse_2d_psettings_21_)
                               ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:4675:33: note: in definition of macro '___IF_GOTO'
 #define ___IF_GOTO(test,lbl)if (test) ___GOTO(lbl)
                                 ^
../include/gambit.h:4733:56: note: in expansion of macro '___EQP'
 #define ___SWITCH_SYMKEY_CASE_GOTO(obj,lbl) ___IF_GOTO(___EQP(___sw,obj),lbl)
                                                        ^
_io.c:16622:4: note: in expansion of macro '___SWITCH_SYMKEY_CASE_GOTO'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_pseudo_2d_terminal,___L251__23__23_parse_2d_psettings_21_)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3844:35: note: in expansion of macro '___KEY'
 #define ___KEY_pseudo_2d_terminal ___KEY(36,___K_pseudo_2d_terminal)
                                   ^
_io.c:16622:31: note: in expansion of macro '___KEY_pseudo_2d_terminal'
    ___SWITCH_SYMKEY_CASE_GOTO(___KEY_pseudo_2d_terminal,___L251__23__23_parse_2d_psettings_21_)
                               ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:22009:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(1,___KEY_init)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3825:21: note: in expansion of macro '___KEY'
 #define ___KEY_init ___KEY(17,___K_init)
                     ^
_io.c:22009:23: note: in expansion of macro '___KEY_init'
    ___ADD_LIST_ELEM(1,___KEY_init)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:22357:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(1,___KEY_init)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3825:21: note: in expansion of macro '___KEY'
 #define ___KEY_init ___KEY(17,___K_init)
                     ^
_io.c:22357:23: note: in expansion of macro '___KEY_init'
    ___ADD_LIST_ELEM(1,___KEY_init)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:22424:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(1,___KEY_init)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3825:21: note: in expansion of macro '___KEY'
 #define ___KEY_init ___KEY(17,___K_init)
                     ^
_io.c:22424:23: note: in expansion of macro '___KEY_init'
    ___ADD_LIST_ELEM(1,___KEY_init)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:24691:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(1,___KEY_init)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3825:21: note: in expansion of macro '___KEY'
 #define ___KEY_init ___KEY(17,___K_init)
                     ^
_io.c:24691:23: note: in expansion of macro '___KEY_init'
    ___ADD_LIST_ELEM(1,___KEY_init)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:25039:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(1,___KEY_init)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3825:21: note: in expansion of macro '___KEY'
 #define ___KEY_init ___KEY(17,___K_init)
                     ^
_io.c:25039:23: note: in expansion of macro '___KEY_init'
    ___ADD_LIST_ELEM(1,___KEY_init)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:25106:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(1,___KEY_init)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3825:21: note: in expansion of macro '___KEY'
 #define ___KEY_init ___KEY(17,___K_init)
                     ^
_io.c:25106:23: note: in expansion of macro '___KEY_init'
    ___ADD_LIST_ELEM(1,___KEY_init)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:27054:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(1,___KEY_init)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3825:21: note: in expansion of macro '___KEY'
 #define ___KEY_init ___KEY(17,___K_init)
                     ^
_io.c:27054:23: note: in expansion of macro '___KEY_init'
    ___ADD_LIST_ELEM(1,___KEY_init)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:27402:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(1,___KEY_init)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3825:21: note: in expansion of macro '___KEY'
 #define ___KEY_init ___KEY(17,___K_init)
                     ^
_io.c:27402:23: note: in expansion of macro '___KEY_init'
    ___ADD_LIST_ELEM(1,___KEY_init)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:27469:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(1,___KEY_init)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3825:21: note: in expansion of macro '___KEY'
 #define ___KEY_init ___KEY(17,___K_init)
                     ^
_io.c:27469:23: note: in expansion of macro '___KEY_init'
    ___ADD_LIST_ELEM(1,___KEY_init)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:30490:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(2,___KEY_port)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3841:21: note: in expansion of macro '___KEY'
 #define ___KEY_port ___KEY(33,___K_port)
                     ^
_io.c:30490:23: note: in expansion of macro '___KEY_port'
    ___ADD_LIST_ELEM(2,___KEY_port)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:30609:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(2,___KEY_port)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3841:21: note: in expansion of macro '___KEY'
 #define ___KEY_port ___KEY(33,___K_port)
                     ^
_io.c:30609:23: note: in expansion of macro '___KEY_port'
    ___ADD_LIST_ELEM(2,___KEY_port)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:35867:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(1,___KEY_path)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3838:21: note: in expansion of macro '___KEY'
 #define ___KEY_path ___KEY(30,___K_path)
                     ^
_io.c:35867:23: note: in expansion of macro '___KEY_path'
    ___ADD_LIST_ELEM(1,___KEY_path)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:40804:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(1,___KEY_path)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3838:21: note: in expansion of macro '___KEY'
 #define ___KEY_path ___KEY(30,___K_path)
                     ^
_io.c:40804:23: note: in expansion of macro '___KEY_path'
    ___ADD_LIST_ELEM(1,___KEY_path)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:43393:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(1,___KEY_port_2d_number)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3842:31: note: in expansion of macro '___KEY'
 #define ___KEY_port_2d_number ___KEY(34,___K_port_2d_number)
                               ^
_io.c:43393:23: note: in expansion of macro '___KEY_port_2d_number'
    ___ADD_LIST_ELEM(1,___KEY_port_2d_number)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:43571:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(1,___KEY_server_2d_address)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3847:34: note: in expansion of macro '___KEY'
 #define ___KEY_server_2d_address ___KEY(39,___K_server_2d_address)
                                  ^
_io.c:43571:23: note: in expansion of macro '___KEY_server_2d_address'
    ___ADD_LIST_ELEM(1,___KEY_server_2d_address)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:44744:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(1,___KEY_protocol)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3843:25: note: in expansion of macro '___KEY'
 #define ___KEY_protocol ___KEY(35,___K_protocol)
                         ^
_io.c:44744:23: note: in expansion of macro '___KEY_protocol'
    ___ADD_LIST_ELEM(1,___KEY_protocol)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:44746:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(3,___KEY_socket_2d_type)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3850:31: note: in expansion of macro '___KEY'
 #define ___KEY_socket_2d_type ___KEY(42,___K_socket_2d_type)
                               ^
_io.c:44746:23: note: in expansion of macro '___KEY_socket_2d_type'
    ___ADD_LIST_ELEM(3,___KEY_socket_2d_type)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:44748:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(5,___KEY_family)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3821:23: note: in expansion of macro '___KEY'
 #define ___KEY_family ___KEY(13,___K_family)
                       ^
_io.c:44748:23: note: in expansion of macro '___KEY_family'
    ___ADD_LIST_ELEM(5,___KEY_family)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:44750:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(7,___KEY_flags)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3822:22: note: in expansion of macro '___KEY'
 #define ___KEY_flags ___KEY(14,___K_flags)
                      ^
_io.c:44750:23: note: in expansion of macro '___KEY_flags'
    ___ADD_LIST_ELEM(7,___KEY_flags)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:44752:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(9,___KEY_service)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3848:24: note: in expansion of macro '___KEY'
 #define ___KEY_service ___KEY(40,___K_service)
                        ^
_io.c:44752:23: note: in expansion of macro '___KEY_service'
    ___ADD_LIST_ELEM(9,___KEY_service)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:44754:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(11,___KEY_host)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3823:21: note: in expansion of macro '___KEY'
 #define ___KEY_host ___KEY(15,___K_host)
                     ^
_io.c:44754:24: note: in expansion of macro '___KEY_host'
    ___ADD_LIST_ELEM(11,___KEY_host)
                        ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:44799:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(1,___KEY_protocol)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3843:25: note: in expansion of macro '___KEY'
 #define ___KEY_protocol ___KEY(35,___K_protocol)
                         ^
_io.c:44799:23: note: in expansion of macro '___KEY_protocol'
    ___ADD_LIST_ELEM(1,___KEY_protocol)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:44801:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(3,___KEY_socket_2d_type)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3850:31: note: in expansion of macro '___KEY'
 #define ___KEY_socket_2d_type ___KEY(42,___K_socket_2d_type)
                               ^
_io.c:44801:23: note: in expansion of macro '___KEY_socket_2d_type'
    ___ADD_LIST_ELEM(3,___KEY_socket_2d_type)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:44803:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(5,___KEY_family)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3821:23: note: in expansion of macro '___KEY'
 #define ___KEY_family ___KEY(13,___K_family)
                       ^
_io.c:44803:23: note: in expansion of macro '___KEY_family'
    ___ADD_LIST_ELEM(5,___KEY_family)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:44805:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(7,___KEY_flags)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3822:22: note: in expansion of macro '___KEY'
 #define ___KEY_flags ___KEY(14,___K_flags)
                      ^
_io.c:44805:23: note: in expansion of macro '___KEY_flags'
    ___ADD_LIST_ELEM(7,___KEY_flags)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:44807:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(9,___KEY_service)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3848:24: note: in expansion of macro '___KEY'
 #define ___KEY_service ___KEY(40,___K_service)
                        ^
_io.c:44807:23: note: in expansion of macro '___KEY_service'
    ___ADD_LIST_ELEM(9,___KEY_service)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:44809:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(11,___KEY_host)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3823:21: note: in expansion of macro '___KEY'
 #define ___KEY_host ___KEY(15,___K_host)
                     ^
_io.c:44809:24: note: in expansion of macro '___KEY_host'
    ___ADD_LIST_ELEM(11,___KEY_host)
                        ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:44828:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(1,___KEY_protocol)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3843:25: note: in expansion of macro '___KEY'
 #define ___KEY_protocol ___KEY(35,___K_protocol)
                         ^
_io.c:44828:23: note: in expansion of macro '___KEY_protocol'
    ___ADD_LIST_ELEM(1,___KEY_protocol)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:44830:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(3,___KEY_socket_2d_type)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3850:31: note: in expansion of macro '___KEY'
 #define ___KEY_socket_2d_type ___KEY(42,___K_socket_2d_type)
                               ^
_io.c:44830:23: note: in expansion of macro '___KEY_socket_2d_type'
    ___ADD_LIST_ELEM(3,___KEY_socket_2d_type)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:44832:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(5,___KEY_family)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3821:23: note: in expansion of macro '___KEY'
 #define ___KEY_family ___KEY(13,___K_family)
                       ^
_io.c:44832:23: note: in expansion of macro '___KEY_family'
    ___ADD_LIST_ELEM(5,___KEY_family)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:44834:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(7,___KEY_flags)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3822:22: note: in expansion of macro '___KEY'
 #define ___KEY_flags ___KEY(14,___K_flags)
                      ^
_io.c:44834:23: note: in expansion of macro '___KEY_flags'
    ___ADD_LIST_ELEM(7,___KEY_flags)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:44836:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(9,___KEY_service)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3848:24: note: in expansion of macro '___KEY'
 #define ___KEY_service ___KEY(40,___K_service)
                        ^
_io.c:44836:23: note: in expansion of macro '___KEY_service'
    ___ADD_LIST_ELEM(9,___KEY_service)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:44838:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(11,___KEY_host)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3823:21: note: in expansion of macro '___KEY'
 #define ___KEY_host ___KEY(15,___K_host)
                     ^
_io.c:44838:24: note: in expansion of macro '___KEY_host'
    ___ADD_LIST_ELEM(11,___KEY_host)
                        ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:44909:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(1,___KEY_protocol)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3843:25: note: in expansion of macro '___KEY'
 #define ___KEY_protocol ___KEY(35,___K_protocol)
                         ^
_io.c:44909:23: note: in expansion of macro '___KEY_protocol'
    ___ADD_LIST_ELEM(1,___KEY_protocol)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:44911:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(3,___KEY_socket_2d_type)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3850:31: note: in expansion of macro '___KEY'
 #define ___KEY_socket_2d_type ___KEY(42,___K_socket_2d_type)
                               ^
_io.c:44911:23: note: in expansion of macro '___KEY_socket_2d_type'
    ___ADD_LIST_ELEM(3,___KEY_socket_2d_type)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:44913:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(5,___KEY_family)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3821:23: note: in expansion of macro '___KEY'
 #define ___KEY_family ___KEY(13,___K_family)
                       ^
_io.c:44913:23: note: in expansion of macro '___KEY_family'
    ___ADD_LIST_ELEM(5,___KEY_family)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:44915:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(7,___KEY_flags)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3822:22: note: in expansion of macro '___KEY'
 #define ___KEY_flags ___KEY(14,___K_flags)
                      ^
_io.c:44915:23: note: in expansion of macro '___KEY_flags'
    ___ADD_LIST_ELEM(7,___KEY_flags)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:44917:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(9,___KEY_service)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3848:24: note: in expansion of macro '___KEY'
 #define ___KEY_service ___KEY(40,___K_service)
                        ^
_io.c:44917:23: note: in expansion of macro '___KEY_service'
    ___ADD_LIST_ELEM(9,___KEY_service)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:44919:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(11,___KEY_host)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3823:21: note: in expansion of macro '___KEY'
 #define ___KEY_host ___KEY(15,___K_host)
                     ^
_io.c:44919:24: note: in expansion of macro '___KEY_host'
    ___ADD_LIST_ELEM(11,___KEY_host)
                        ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:44959:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(1,___KEY_protocol)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3843:25: note: in expansion of macro '___KEY'
 #define ___KEY_protocol ___KEY(35,___K_protocol)
                         ^
_io.c:44959:23: note: in expansion of macro '___KEY_protocol'
    ___ADD_LIST_ELEM(1,___KEY_protocol)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:44961:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(3,___KEY_socket_2d_type)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3850:31: note: in expansion of macro '___KEY'
 #define ___KEY_socket_2d_type ___KEY(42,___K_socket_2d_type)
                               ^
_io.c:44961:23: note: in expansion of macro '___KEY_socket_2d_type'
    ___ADD_LIST_ELEM(3,___KEY_socket_2d_type)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:44963:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(5,___KEY_family)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3821:23: note: in expansion of macro '___KEY'
 #define ___KEY_family ___KEY(13,___K_family)
                       ^
_io.c:44963:23: note: in expansion of macro '___KEY_family'
    ___ADD_LIST_ELEM(5,___KEY_family)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:44965:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(7,___KEY_flags)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3822:22: note: in expansion of macro '___KEY'
 #define ___KEY_flags ___KEY(14,___K_flags)
                      ^
_io.c:44965:23: note: in expansion of macro '___KEY_flags'
    ___ADD_LIST_ELEM(7,___KEY_flags)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:44967:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(9,___KEY_service)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3848:24: note: in expansion of macro '___KEY'
 #define ___KEY_service ___KEY(40,___K_service)
                        ^
_io.c:44967:23: note: in expansion of macro '___KEY_service'
    ___ADD_LIST_ELEM(9,___KEY_service)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:44969:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(11,___KEY_host)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3823:21: note: in expansion of macro '___KEY'
 #define ___KEY_host ___KEY(15,___K_host)
                     ^
_io.c:44969:24: note: in expansion of macro '___KEY_host'
    ___ADD_LIST_ELEM(11,___KEY_host)
                        ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:44984:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(1,___KEY_protocol)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3843:25: note: in expansion of macro '___KEY'
 #define ___KEY_protocol ___KEY(35,___K_protocol)
                         ^
_io.c:44984:23: note: in expansion of macro '___KEY_protocol'
    ___ADD_LIST_ELEM(1,___KEY_protocol)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:44986:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(3,___KEY_socket_2d_type)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3850:31: note: in expansion of macro '___KEY'
 #define ___KEY_socket_2d_type ___KEY(42,___K_socket_2d_type)
                               ^
_io.c:44986:23: note: in expansion of macro '___KEY_socket_2d_type'
    ___ADD_LIST_ELEM(3,___KEY_socket_2d_type)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:44988:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(5,___KEY_family)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3821:23: note: in expansion of macro '___KEY'
 #define ___KEY_family ___KEY(13,___K_family)
                       ^
_io.c:44988:23: note: in expansion of macro '___KEY_family'
    ___ADD_LIST_ELEM(5,___KEY_family)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:44990:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(7,___KEY_flags)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3822:22: note: in expansion of macro '___KEY'
 #define ___KEY_flags ___KEY(14,___K_flags)
                      ^
_io.c:44990:23: note: in expansion of macro '___KEY_flags'
    ___ADD_LIST_ELEM(7,___KEY_flags)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:44992:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(9,___KEY_service)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3848:24: note: in expansion of macro '___KEY'
 #define ___KEY_service ___KEY(40,___K_service)
                        ^
_io.c:44992:23: note: in expansion of macro '___KEY_service'
    ___ADD_LIST_ELEM(9,___KEY_service)
                       ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:2932:26: note: in definition of macro '___ALLOC_PAIR'
 ___hp[___PAIR_CAR_OFS+1]=x;___hp[___PAIR_CDR_OFS+1]=y;___ALLOC(___PAIR_SIZE+1);}
                          ^
_io.c:44994:4: note: in expansion of macro '___ADD_LIST_ELEM'
    ___ADD_LIST_ELEM(11,___KEY_host)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3823:21: note: in expansion of macro '___KEY'
 #define ___KEY_host ___KEY(15,___K_host)
                     ^
_io.c:44994:24: note: in expansion of macro '___KEY_host'
    ___ADD_LIST_ELEM(11,___KEY_host)
                        ^
../include/gambit.h:2002:46: error: '___keytbl' was not declared in this scope
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                                              ^
../include/gambit.h:3433:46: note: in definition of macro '___FP_SET_STK'
 #define ___FP_SET_STK(fp,fpo,val)fp[-(fpo)]=(val);
                                              ^
_io.c:45031:4: note: in expansion of macro '___SET_STK'
    ___SET_STK(-1,___KEY_host)
    ^
../include/gambit.h:1779:36: note: in expansion of macro '___CAST'
 #define ___CAST_FAKEWORD_TO_WORD(x)___CAST(___WORD,x)
                                    ^
../include/gambit.h:2002:21: note: in expansion of macro '___CAST_FAKEWORD_TO_WORD'
 #define ___KEY(i,id)___CAST_FAKEWORD_TO_WORD(___keytbl[i])
                     ^
_io.c:3823:21: note: in expansion of macro '___KEY'
 #define ___KEY_host ___KEY(15,___K_host)
                     ^
_io.c:45031:18: note: in expansion of macro '___KEY_host'
    ___SET_STK(-1,___KEY_host)
                  ^
_io.c: At global scope:
_io.c:85254:1: error: '___BEGIN_MOD1' does not name a type
 ___BEGIN_MOD1
 ^
*** Error 1 in lib (makefile:141 '_io.o')
*** Error 1 in /home/pb/gambit (makefile:406 'all-recursive')