home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Usenet 1994 October
/
usenetsourcesnewsgroupsinfomagicoctober1994disk2.iso
/
unix
/
volume21
/
p2c
/
part09
< prev
next >
Wrap
Text File
|
1990-04-05
|
30KB
|
610 lines
Subject: v21i054: Pascal to C translator, Part09/32
Newsgroups: comp.sources.unix
Approved: rsalz@uunet.UU.NET
X-Checksum-Snefru: e8db3032 00aa2697 6b0cc4ff 41738909
Submitted-by: Dave Gillespie <daveg@csvax.caltech.edu>
Posting-number: Volume 21, Issue 54
Archive-name: p2c/part09
#! /bin/sh
# This is a shell archive. Remove anything before this line, then unpack
# it by saving it into a file and typing "sh file". To overwrite existing
# files, type "sh file -c". You can also feed this as standard input via
# unshar, or by typing "sh <file", e.g.. If this archive is complete, you
# will see the following message at the end:
# "End of archive 9 (of 32)."
# Contents: src/trans.h.2
# Wrapped by rsalz@litchi.bbn.com on Mon Mar 26 14:29:33 1990
PATH=/bin:/usr/bin:/usr/ucb ; export PATH
if test -f 'src/trans.h.2' -a "${1}" != "-c" ; then
echo shar: Will not clobber existing file \"'src/trans.h.2'\"
else
echo shar: Extracting \"'src/trans.h.2'\" \(28075 characters\)
sed "s/^X//" >'src/trans.h.2' <<'END_OF_FILE'
X 'R', 'V', "QMARKBREAKPENALTY", (anyptr) &qmarkbreakpenalty, 5000,
X 'R', 'V', "QMARKBREAKEXTRAPENALTY",(anyptr) &qmarkbreakextrapenalty, 3000,
X 'R', 'V', "PARENBREAKPENALTY", (anyptr) &parenbreakpenalty, 2500,
X 'R', 'V', "PARENBREAKEXTRAPENALTY",(anyptr) &parenbreakextrapenalty, 1000,
X 'R', 'V', "WRONGSIDEPENALTY", (anyptr) &wrongsidepenalty, 1000,
X 'R', 'V', "EARLYBREAKPENALTY", (anyptr) &earlybreakpenalty, 100,
X 'R', 'V', "EXTRAINDENTPENALTY", (anyptr) &extraindentpenalty, 3000,
X 'R', 'V', "BUMPINDENTPENALTY", (anyptr) &bumpindentpenalty, 1000,
X 'R', 'V', "NOBUMPINDENTPENALTY", (anyptr) &nobumpindentpenalty, 2500,
X 'R', 'V', "INDENTAMOUNTPENALTY", (anyptr) &indentamountpenalty, 50,
X 'R', 'V', "SAMEINDENTPENALTY", (anyptr) &sameindentpenalty, 500,
X 'R', 'V', "SHOWBADLIMIT", (anyptr) &showbadlimit, -120,
X 'L', 'R', "MAXLINEBREAKTRIES", (anyptr) &maxalts, 5000,
X 'G', 'V', "ALLORNONEBREAK", (anyptr) NULL, FALLBREAK,
X 'G', 'V', "ONESPECIALARG", (anyptr) NULL, FSPCARG1,
X 'G', 'V', "TWOSPECIALARGS", (anyptr) NULL, FSPCARG2,
X 'G', 'V', "THREESPECIALARGS",(anyptr) NULL, FSPCARG3,
X 'B', 'V', "BREAKARITH", (anyptr) &breakbeforearith, BRK_RIGHT,
X 'B', 'V', "BREAKREL", (anyptr) &breakbeforerel, BRK_RIGHT,
X 'B', 'V', "BREAKLOG", (anyptr) &breakbeforelog, BRK_RIGHT,
X 'B', 'V', "BREAKDOT", (anyptr) &breakbeforedot, BRK_RIGHT,
X 'B', 'V', "BREAKASSIGN", (anyptr) &breakbeforeassign, BRK_RIGHT,
X 'S', 'V', "FOR_ALLORNONE", (anyptr) &for_allornone, 1,
X
X/* COMMENTS AND BLANK LINES */
X 'S', 'V', "EATCOMMENTS", (anyptr) &eatcomments, 0,
X 'S', 'V', "SPITCOMMENTS", (anyptr) &spitcomments, 0,
X 'S', 'V', "SPITORPHANCOMMENTS",(anyptr)&spitorphancomments, 0,
X 'S', 'V', "COMMENTAFTER", (anyptr) &commentafter, -1,
X 'S', 'V', "BLANKAFTER", (anyptr) &blankafter, 1,
X 'A', 'V', "EATNOTES", (anyptr) &eatnotes, 0,
X
X/* SPECIAL COMMENTS */
X 'C', 'V', "FIXEDCOMMENT", (anyptr) fixedcomment, 40,
X 'C', 'V', "PERMANENTCOMMENT",(anyptr) permanentcomment, 40,
X 'C', 'V', "INTERFACECOMMENT",(anyptr) interfacecomment, 40,
X 'C', 'V', "EMBEDCOMMENT", (anyptr) embedcomment, 40,
X 'C', 'V', "SKIPCOMMENT", (anyptr) skipcomment, 40,
X 'C', 'V', "NOSKIPCOMMENT", (anyptr) noskipcomment, 40,
X 'C', 'V', "SIGNEDCOMMENT", (anyptr) signedcomment, 40,
X 'C', 'V', "UNSIGNEDCOMMENT", (anyptr) unsignedcomment, 40,
X
X/* STYLISTIC OPTIONS */
X 'I', 'V', "MAJORSPACING", (anyptr) &majorspace, 2,
X 'I', 'V', "MINORSPACING", (anyptr) &minorspace, 1,
X 'I', 'V', "FUNCSPACING", (anyptr) &functionspace, 2,
X 'I', 'V', "MINFUNCSPACING", (anyptr) &minfuncspace, 1,
X 'S', 'V', "EXTRAPARENS", (anyptr) &extraparens, -1,
X 'S', 'V', "BREAKADDPARENS", (anyptr) &breakparens, -1,
X 'S', 'V', "RETURNPARENS", (anyptr) &returnparens, -1,
X 'S', 'V', "SPACEEXPRS", (anyptr) &spaceexprs, -1,
X 'S', 'V', "IMPLICITZERO", (anyptr) &implicitzero, -1,
X 'S', 'V', "STARINDEX", (anyptr) &starindex, -1,
X 'S', 'V', "ADDINDEX", (anyptr) &addindex, -1,
X 'S', 'V', "STARARRAYS", (anyptr) &stararrays, 1,
X 'S', 'V', "STARFUNCTIONS", (anyptr) &starfunctions, -1,
X 'S', 'V', "POSTINCREMENT", (anyptr) &postincrement, 1,
X 'S', 'V', "MIXVARS", (anyptr) &mixvars, -1,
X 'S', 'V', "MIXTYPES", (anyptr) &mixtypes, -1,
X 'S', 'V', "MIXFIELDS", (anyptr) &mixfields, -1,
X 'S', 'V', "MIXINITS", (anyptr) &mixinits, -1,
X 'S', 'V', "MAINLOCALS", (anyptr) &mainlocals, 1,
X 'S', 'V', "NULLCHAR", (anyptr) &nullcharconst, 1,
X 'S', 'V', "HIGHCHARINT", (anyptr) &highcharints, 1,
X 'I', 'V', "CASESPACING", (anyptr) &casespacing, 1,
X 'D', 'V', "CASETABS", (anyptr) &casetabs, 1000,
X 'I', 'V', "CASELIMIT", (anyptr) &caselimit, 9,
X 'S', 'V', "USECOMMAS", (anyptr) &usecommas, -1,
X 'S', 'V', "USERETURNS", (anyptr) &usereturns, 1,
X 'I', 'V', "RETURNLIMIT", (anyptr) &returnlimit, 3,
X 'S', 'V', "USEBREAKS", (anyptr) &usebreaks, 1,
X 'I', 'V', "BREAKLIMIT", (anyptr) &breaklimit, 2,
X 'I', 'V', "CONTINUELIMIT", (anyptr) &continuelimit, 5,
X 'S', 'V', "INFLOOPSTYLE", (anyptr) &infloopstyle, 0,
X
X/* NAMING CONVENTIONS */
X 'C', 'V', "CODEFILENAME", (anyptr) codefnfmt, 40,
X 'C', 'V', "MODULEFILENAME", (anyptr) modulefnfmt, 40,
X 'C', 'V', "HEADERFILENAME", (anyptr) headerfnfmt, 40,
X 'C', 'V', "HEADERFILENAME2", (anyptr) headerfnfmt2, 40,
X 'C', 'V', "LOGFILENAME", (anyptr) logfnfmt, 40,
X 'C', 'V', "INCLUDEFILENAME", (anyptr) includefnfmt, 40,
X 'S', 'V', "SYMCASE", (anyptr) &symcase, -1,
X 'C', 'V', "SYMBOLFORMAT", (anyptr) symbolformat, 40,
X 'C', 'V', "CONSTFORMAT", (anyptr) constformat, 40,
X 'C', 'V', "MODULEFORMAT", (anyptr) moduleformat, 40,
X 'C', 'V', "FUNCTIONFORMAT", (anyptr) functionformat, 40,
X 'C', 'V', "VARFORMAT", (anyptr) varformat, 40,
X 'C', 'V', "FIELDFORMAT", (anyptr) fieldformat, 40,
X 'C', 'V', "TYPEFORMAT", (anyptr) typeformat, 40,
X 'C', 'V', "ENUMFORMAT", (anyptr) enumformat, 40,
X 'C', 'V', "RETURNVALUENAME", (anyptr) name_RETV, 40,
X 'C', 'V', "UNITINITNAME", (anyptr) name_UNITINIT, 40,
X 'C', 'V', "HSYMBOLNAME", (anyptr) name_HSYMBOL, 40,
X 'C', 'V', "GSYMBOLNAME", (anyptr) name_GSYMBOL, 40,
X 'C', 'V', "STRINGMAXNAME", (anyptr) name_STRMAX, 40,
X 'C', 'V', "ARRAYMINNAME", (anyptr) name_ALOW, 40,
X 'C', 'V', "ARRAYMAXNAME", (anyptr) name_AHIGH, 40,
X 'C', 'V', "COPYPARNAME", (anyptr) name_COPYPAR, 40,
X 'C', 'V', "STATICLINKNAME", (anyptr) name_LINK, 40,
X 'C', 'V', "LOCALVARSSTRUCT", (anyptr) name_LOC, 40,
X 'C', 'V', "LOCALVARSNAME", (anyptr) name_VARS, 40,
X 'C', 'V', "FWDSTRUCTNAME", (anyptr) name_STRUCT, 40,
X 'C', 'V', "ENUMLISTNAME", (anyptr) name_ENUM, 40,
X 'C', 'V', "UNIONNAME", (anyptr) name_UNION, 40,
X 'C', 'V', "UNIONPARTNAME", (anyptr) name_VARIANT, 40,
X 'C', 'V', "FAKESTRUCTNAME", (anyptr) name_FAKESTRUCT, 40,
X 'C', 'V', "LABELNAME", (anyptr) name_LABEL, 40,
X 'C', 'V', "LABELVARNAME", (anyptr) name_LABVAR, 40,
X 'C', 'V', "TEMPNAME", (anyptr) name_TEMP, 40,
X 'C', 'V', "DUMMYNAME", (anyptr) name_DUMMY, 40,
X 'C', 'V', "FORNAME", (anyptr) name_FOR, 40,
X 'C', 'V', "WITHNAME", (anyptr) name_WITH, 40,
X 'C', 'V', "PTRNAME", (anyptr) name_PTR, 40,
X 'C', 'V', "STRINGNAME", (anyptr) name_STRING, 40,
X 'C', 'V', "SETNAME", (anyptr) name_SET, 40,
X 'C', 'V', "FNVARNAME", (anyptr) name_FNVAR, 40,
X 'C', 'V', "FNSIZENAME", (anyptr) name_FNSIZE, 40,
X 'C', 'V', "ALTERNATENAME1", (anyptr) alternatename1, 40,
X 'C', 'V', "ALTERNATENAME2", (anyptr) alternatename2, 40,
X 'C', 'V', "ALTERNATENAME", (anyptr) alternatename, 40,
X 'C', 'V', "EXPORTSYMBOL", (anyptr) exportsymbol, 40,
X 'C', 'V', "EXPORT_SYMBOL", (anyptr) export_symbol, 40,
X 'C', 'V', "ALIAS", (anyptr) externalias, 40,
X 'X', 'V', "SYNONYM", (anyptr) NULL, 3,
X 'X', 'V', "NAMEOF", (anyptr) &nameoflist, 1,
X 'G', 'V', "AVOIDNAME", (anyptr) NULL, AVOIDNAME,
X 'G', 'V', "AVOIDGLOBALNAME", (anyptr) NULL, AVOIDGLOB,
X 'G', 'V', "WARNNAME", (anyptr) NULL, WARNNAME,
X 'G', 'V', "NOSIDEEFFECTS", (anyptr) NULL, NOSIDEEFF,
X 'G', 'V', "STRUCTFUNCTION", (anyptr) NULL, STRUCTF,
X 'G', 'V', "STRLAPFUNCTION", (anyptr) NULL, STRLAPF,
X 'F', 'V', "LEAVEALONE", (anyptr) NULL, LEAVEALONE,
X 'G', 'V', "DETERMINISTIC", (anyptr) NULL, DETERMF,
X 'G', 'V', "NEEDSTATIC", (anyptr) NULL, NEEDSTATIC,
X 'S', 'V', "WARNNAMES", (anyptr) &warnnames, 0,
X 'M', 'V', "VARMACRO", (anyptr) NULL, MAC_VAR,
X 'M', 'V', "CONSTMACRO", (anyptr) NULL, MAC_CONST,
X 'M', 'V', "FIELDMACRO", (anyptr) NULL, MAC_FIELD,
X 'M', 'V', "FUNCMACRO", (anyptr) NULL, MAC_FUNC,
X 'S', 'V', "WARNMACROS", (anyptr) &warnmacros, 0,
X
X/* CODING OPTIONS */
X 'A', 'V', "INITIALCALLS", (anyptr) &initialcalls, 0,
X 'S', 'V', "EXPANDINCLUDES", (anyptr) &expandincludes, -1,
X 'S', 'V', "COLLECTNEST", (anyptr) &collectnest, 1,
X 'S', 'V', "SHORTCIRCUIT", (anyptr) &shortcircuit, -1,
X 'S', 'V', "SHORTOPT", (anyptr) &shortopt, 1,
X 'S', 'V', "ELIMDEADCODE", (anyptr) &elimdeadcode, 1,
X 'S', 'V', "FOLDCONSTANTS", (anyptr) &foldconsts, -1,
X 'S', 'V', "FOLDSTRCONSTANTS",(anyptr) &foldstrconsts, -1,
X 'S', 'V', "USECONSTS", (anyptr) &useconsts, -1,
X 'S', 'V', "USEUNDEF", (anyptr) &useundef, 1,
X 'L', 'V', "SKIPINDICES", (anyptr) &skipindices, 0,
X 'S', 'V', "OFFSETFORLOOPS", (anyptr) &offsetforloops, 1,
X 'S', 'V', "FOREVALORDER", (anyptr) &forevalorder, 0,
X 'S', 'V', "STRINGLEADERS", (anyptr) &stringleaders, 2,
X 'S', 'V', "STOREFILENAMES", (anyptr) &storefilenames, -1,
X 'S', 'V', "CHARFILETEXT", (anyptr) &charfiletext, -1,
X 'S', 'V', "SQUEEZESUBR", (anyptr) &squeezesubr, 1,
X 'S', 'T', "USEENUM", (anyptr) &useenum, -1,
X 'S', 'V', "SQUEEZEENUM", (anyptr) &enumbyte, -1,
X 'S', 'V', "COMPENUMS", (anyptr) &compenums, -1,
X 'S', 'V', "PACKING", (anyptr) &packing, 1,
X 'S', 'V', "PACKSIGNED", (anyptr) &packsigned, 1,
X 'I', 'V', "STRINGCEILING", (anyptr) &stringceiling, 255,
X 'I', 'V', "STRINGDEFAULT", (anyptr) &stringdefault, 255,
X 'I', 'V', "STRINGTRUNCLIMIT",(anyptr) &stringtrunclimit, -1,
X 'I', 'V', "LONGSTRINGSIZE", (anyptr) &longstringsize, -1,
X 'S', 'V', "KEEPNULLS", (anyptr) &keepnulls, 0,
X 'S', 'V', "HIGHCHARBITS", (anyptr) &highcharbits, -1,
X 'S', 'V', "ALWAYSCOPYVALUES",(anyptr) &alwayscopyvalues, 0,
X 'S', 'V', "STATICFUNCTIONS", (anyptr) &use_static, 1,
X 'S', 'V', "STATICVARIABLES", (anyptr) &var_static, 1,
X 'S', 'V', "VOIDARGS", (anyptr) &void_args, -1,
X 'S', 'V', "PROTOTYPES", (anyptr) &prototypes, -1,
X 'S', 'V', "FULLPROTOTYPING", (anyptr) &fullprototyping, -1,
X 'S', 'V', "PROCPTRPROTOTYPES",(anyptr)&procptrprototypes, 1,
X 'S', 'V', "CASTARGS", (anyptr) &castargs, -1,
X 'S', 'V', "CASTLONGARGS", (anyptr) &castlongargs, -1,
X 'S', 'V', "PROMOTEARGS", (anyptr) &promoteargs, -1,
X 'S', 'V', "PROMOTEENUMS", (anyptr) &promote_enums, -1,
X 'S', 'V', "STATICLINKS", (anyptr) &hasstaticlinks, -1,
X 'S', 'V', "VARSTRINGS", (anyptr) &varstrings, 0,
X 'S', 'V', "VARFILES", (anyptr) &varfiles, 1,
X 'S', 'V', "ADDRSTDFILES", (anyptr) &addrstdfiles, 0,
X 'S', 'V', "COPYSTRUCTFUNCS", (anyptr) ©structfuncs, -1,
X 'S', 'V', "ATAN2", (anyptr) &atan2flag, 0,
X 'S', 'V', "BITWISEMOD", (anyptr) &mod_po2, -1,
X 'S', 'V', "BITWISEDIV", (anyptr) &div_po2, -1,
X 'S', 'V', "ASSUMEBITS", (anyptr) &assumebits, 0,
X 'S', 'V', "ASSUMESIGNS", (anyptr) &assumesigns, 1,
X 'S', 'V', "ALLOCZERONIL", (anyptr) &alloczeronil, 0,
X 'S', 'V', "PRINTFONLY", (anyptr) &printfonly, -1,
X 'S', 'V', "MIXWRITELNS", (anyptr) &mixwritelns, 1,
X 'S', 'V', "MESSAGESTDERR", (anyptr) &messagestderr, 1,
X 'I', 'V', "INTEGERWIDTH", (anyptr) &integerwidth, -1,
X 'I', 'V', "REALWIDTH", (anyptr) &realwidth, 12,
X 'S', 'V', "FORMATSTRINGS", (anyptr) &formatstrings, 0,
X 'S', 'V', "WHILEFGETS", (anyptr) &whilefgets, 1,
X 'S', 'V', "USEGETS", (anyptr) &usegets, 1,
X 'S', 'V', "NEWLINESPACE", (anyptr) &newlinespace, -1,
X 'S', 'V', "BUILDREADS", (anyptr) &buildreads, 1,
X 'S', 'V', "BUILDWRITES", (anyptr) &buildwrites, 1,
X 'S', 'V', "BINARYMODE", (anyptr) &binarymode, 1,
X 'S', 'V', "READWRITEOPEN", (anyptr) &readwriteopen, -1,
X 'C', 'V', "OPENMODE", (anyptr) openmode, 40,
X 'S', 'V', "LITERALFILES", (anyptr) &literalfilesflag, -1,
X 'A', 'V', "LITERALFILE", (anyptr) &literalfiles, 0,
X 'C', 'V', "FILENAMEFILTER", (anyptr) filenamefilter, 40,
X 'S', 'V', "FULLSTRWRITE", (anyptr) &fullstrwrite, -1,
X 'S', 'V', "FULLSTRREAD", (anyptr) &fullstrread, 1,
X 'I', 'R', "SETBITS", (anyptr) &setbits, -1,
X 'I', 'V', "DEFAULTSETSIZE", (anyptr) &defaultsetsize, -1,
X 'S', 'V', "SMALLSETCONST", (anyptr) &smallsetconst, -2,
X 'S', 'V', "BIGSETCONST", (anyptr) &bigsetconst, 1,
X 'S', 'V', "LELERANGE", (anyptr) &lelerange, 0,
X 'S', 'V', "UNSIGNEDTRICK", (anyptr) &unsignedtrick, 1,
X 'S', 'V', "USEISALPHA", (anyptr) &useisalpha, 1,
X 'S', 'V', "USEISSPACE", (anyptr) &useisspace, 0,
X 'S', 'V', "USESTRNCMP", (anyptr) &usestrncmp, 1,
X
X/* TARGET LIBRARY */
X 'G', 'V', "WARNLIBRARY", (anyptr) NULL, WARNLIBR,
X 'S', 'V', "QUOTEINCLUDES", (anyptr) "eincludes, 1,
X 'X', 'V', "IMPORTFROM", (anyptr) &importfrom, 1,
X 'A', 'V', "IMPORTDIR", (anyptr) &importdirs, 0,
X 'A', 'V', "INCLUDEDIR", (anyptr) &includedirs, 0,
X 'X', 'V', "INCLUDEFROM", (anyptr) &includefrom, 1,
X 'A', 'V', "LIBRARYFILE", (anyptr) &librfiles, 0,
X 'C', 'V', "HEADERNAME", (anyptr) p2c_h_name, 40,
X 'C', 'V', "PROCTYPENAME", (anyptr) name_PROCEDURE, 40,
X 'C', 'V', "UCHARNAME", (anyptr) name_UCHAR, 40,
X 'C', 'V', "SCHARNAME", (anyptr) name_SCHAR, 40,
X 'C', 'V', "BOOLEANNAME", (anyptr) name_BOOLEAN, 40,
X 'C', 'V', "TRUENAME", (anyptr) name_TRUE, 40,
X 'C', 'V', "FALSENAME", (anyptr) name_FALSE, 40,
X 'C', 'V', "NULLNAME", (anyptr) name_NULL, 40,
X 'C', 'V', "ESCAPECODENAME", (anyptr) name_ESCAPECODE, 40,
X 'C', 'V', "IORESULTNAME", (anyptr) name_IORESULT, 40,
X 'C', 'V', "ARGCNAME", (anyptr) name_ARGC, 40,
X 'C', 'V', "ARGVNAME", (anyptr) name_ARGV, 40,
X 'C', 'V', "MAINNAME", (anyptr) name_MAIN, 40,
X 'C', 'V', "ESCAPENAME", (anyptr) name_ESCAPE, 40,
X 'C', 'V', "ESCIONAME", (anyptr) name_ESCIO, 40,
X 'C', 'V', "CHECKIONAME", (anyptr) name_CHKIO, 40,
X 'C', 'V', "SETIONAME", (anyptr) name_SETIO, 40,
X 'C', 'V', "FILENOTFOUNDNAME",(anyptr) filenotfoundname, 40,
X 'C', 'V', "FILENOTOPENNAME", (anyptr) filenotopenname, 40,
X 'C', 'V', "FILEWRITEERRORNAME",(anyptr)filewriteerrorname,40,
X 'C', 'V', "BADINPUTFORMATNAME",(anyptr)badinputformatname,40,
X 'C', 'V', "ENDOFFILENAME", (anyptr) endoffilename, 40,
X 'C', 'V', "OUTMEMNAME", (anyptr) name_OUTMEM, 40,
X 'C', 'V', "CASECHECKNAME", (anyptr) name_CASECHECK, 40,
X 'C', 'V', "NILCHECKNAME", (anyptr) name_NILCHECK, 40,
X 'C', 'V', "SETBITSNAME", (anyptr) name_SETBITS, 40,
X 'S', 'V', "SPRINTFVALUE", (anyptr) &sprintf_value, -1,
X 'C', 'V', "SPRINTFNAME", (anyptr) sprintfname, 40,
X 'C', 'V', "MEMCPYNAME", (anyptr) memcpyname, 40,
X 'C', 'V', "ROUNDNAME", (anyptr) roundname, 40,
X 'C', 'V', "DIVNAME", (anyptr) divname, 40,
X 'C', 'V', "MODNAME", (anyptr) modname, 40,
X 'C', 'V', "REMNAME", (anyptr) remname, 40,
X 'C', 'V', "STRCICMPNAME", (anyptr) strcicmpname, 40,
X 'C', 'V', "STRSUBNAME", (anyptr) strsubname, 40,
X 'C', 'V', "STRPOSNAME", (anyptr) strposname, 40,
X 'S', 'V', "STRCPYLEFT", (anyptr) &strcpyleft, 1,
X 'C', 'V', "STRDELETENAME", (anyptr) strdeletename, 40,
X 'C', 'V', "STRINSERTNAME", (anyptr) strinsertname, 40,
X 'C', 'V', "STRMOVENAME", (anyptr) strmovename, 40,
X 'C', 'V', "STRLTRIMNAME", (anyptr) strltrimname, 40,
X 'C', 'V', "STRRTRIMNAME", (anyptr) strrtrimname, 40,
X 'C', 'V', "STRRPTNAME", (anyptr) strrptname, 40,
X 'C', 'V', "STRPADNAME", (anyptr) strpadname, 40,
X 'C', 'V', "ABSNAME", (anyptr) absname, 40,
X 'C', 'V', "ODDNAME", (anyptr) oddname, 40,
X 'C', 'V', "EVENNAME", (anyptr) evenname, 40,
X 'C', 'V', "SWAPNAME", (anyptr) swapname, 40,
X 'C', 'V', "MALLOCNAME", (anyptr) mallocname, 40,
X 'C', 'V', "FREENAME", (anyptr) freename, 40,
X 'C', 'V', "FREERVALUENAME", (anyptr) freervaluename, 40,
X 'X', 'V', "SPECIALMALLOC", (anyptr) &specialmallocs, 1,
X 'X', 'V', "SPECIALFREE", (anyptr) &specialfrees, 1,
X 'X', 'V', "SPECIALSIZEOF", (anyptr) &specialsizeofs, 1,
X 'C', 'V', "RANDREALNAME", (anyptr) randrealname, 40,
X 'C', 'V', "RANDINTNAME", (anyptr) randintname, 40,
X 'C', 'V', "RANDOMIZENAME", (anyptr) randomizename, 40,
X 'C', 'V', "SKIPSPACENAME", (anyptr) skipspacename, 40,
X 'C', 'V', "READLNNAME", (anyptr) readlnname, 40,
X 'C', 'V', "FREOPENNAME", (anyptr) freopenname, 40,
X 'C', 'V', "EOFNAME", (anyptr) eofname, 40,
X 'C', 'V', "EOLNNAME", (anyptr) eolnname, 40,
X 'C', 'V', "FILEPOSNAME", (anyptr) fileposname, 40,
X 'C', 'V', "MAXPOSNAME", (anyptr) maxposname, 40,
X 'C', 'V', "SETUNIONNAME", (anyptr) setunionname, 40,
X 'C', 'V', "SETINTNAME", (anyptr) setintname, 40,
X 'C', 'V', "SETDIFFNAME", (anyptr) setdiffname, 40,
X 'C', 'V', "SETXORNAME", (anyptr) setxorname, 40,
X 'C', 'V', "SETINNAME", (anyptr) setinname, 40,
X 'C', 'V', "SETADDNAME", (anyptr) setaddname, 40,
X 'C', 'V', "SETADDRANGENAME", (anyptr) setaddrangename, 40,
X 'C', 'V', "SETREMNAME", (anyptr) setremname, 40,
X 'C', 'V', "SETEQUALNAME", (anyptr) setequalname, 40,
X 'C', 'V', "SUBSETNAME", (anyptr) subsetname, 40,
X 'C', 'V', "SETCOPYNAME", (anyptr) setcopyname, 40,
X 'C', 'V', "SETEXPANDNAME", (anyptr) setexpandname, 40,
X 'C', 'V', "SETPACKNAME", (anyptr) setpackname, 40,
X 'C', 'V', "SIGNEXTENDNAME", (anyptr) signextname, 40,
X 'C', 'V', "GETBITSNAME", (anyptr) getbitsname, 40,
X 'C', 'V', "CLRBITSNAME", (anyptr) clrbitsname, 40,
X 'C', 'V', "PUTBITSNAME", (anyptr) putbitsname, 40,
X 'C', 'V', "STOREBITSNAME", (anyptr) storebitsname, 40,
X 'C', 'V', "DECLBUFNAME", (anyptr) declbufname, 40,
X 'C', 'V', "DECLBUFNCNAME", (anyptr) declbufncname, 40,
X 'A', 'V', "BUFFEREDFILE", (anyptr) &bufferedfiles, 0,
X 'A', 'V', "UNBUFFEREDFILE", (anyptr) &unbufferedfiles, 0,
X 'C', 'V', "RESETBUFNAME", (anyptr) resetbufname, 40,
X 'C', 'V', "SETUPBUFNAME", (anyptr) setupbufname, 40,
X 'C', 'V', "GETFBUFNAME", (anyptr) getfbufname, 40,
X 'C', 'V', "CHARGETFBUFNAME", (anyptr) chargetfbufname, 40,
X 'C', 'V', "ARRAYGETFBUFNAME",(anyptr) arraygetfbufname, 40,
X 'C', 'V', "PUTFBUFNAME", (anyptr) putfbufname, 40,
X 'C', 'V', "CHARPUTFBUFNAME", (anyptr) charputfbufname, 40,
X 'C', 'V', "ARRAYPUTFBUFNAME",(anyptr) arrayputfbufname, 40,
X 'C', 'V', "GETNAME", (anyptr) getname, 40,
X 'C', 'V', "CHARGETNAME", (anyptr) chargetname, 40,
X 'C', 'V', "ARRAYGETNAME", (anyptr) arraygetname, 40,
X 'C', 'V', "PUTNAME", (anyptr) putname, 40,
X 'C', 'V', "CHARPUTNAME", (anyptr) charputname, 40,
X 'C', 'V', "ARRAYPUTNAME", (anyptr) arrayputname, 40,
X
X/* RANGE CHECKING */
X 'S', 'V', "CASECHECK", (anyptr) &casecheck, 0,
X 'S', 'V', "ARRAYCHECK", (anyptr) &arraycheck, 0,
X 'S', 'V', "RANGECHECK", (anyptr) &rangecheck, 0,
X 'S', 'V', "NILCHECK", (anyptr) &nilcheck, 0,
X 'S', 'V', "MALLOCCHECK", (anyptr) &malloccheck, 0,
X 'S', 'V', "CHECKFILEOPEN", (anyptr) &checkfileopen, 1,
X 'S', 'V', "CHECKFILEISOPEN", (anyptr) &checkfileisopen, 0,
X 'S', 'V', "CHECKFILEWRITE", (anyptr) &checkfilewrite, 2,
X 'S', 'V', "CHECKREADFORMAT", (anyptr) &checkreadformat, 2,
X 'S', 'V', "CHECKFILEEOF", (anyptr) &checkfileeof, 2,
X 'S', 'V', "CHECKSTDINEOF", (anyptr) &checkstdineof, 2,
X 'S', 'V', "CHECKFILESEEK", (anyptr) &checkfileseek, 2,
X}
X#endif /* define_parameters */
X ;
X
X
X#undef extern
X
X
X#ifdef define_parameters
X int numparams = sizeof(rctable) / sizeof(struct rcstruct);
X Strlist *rcprevvalues[sizeof(rctable) / sizeof(struct rcstruct)];
X#else
X extern int numparams;
X extern Strlist *rcprevvalues[];
X#endif /* define_parameters */
X
X
X
X/* Global variables: */
X
X#ifdef define_globals
X# define extern
X#endif /* define_globals */
X
X
Xextern char *charname, *ucharname, *scharname, *integername;
Xextern long min_schar, max_schar, max_uchar;
Xextern long min_sshort, max_sshort, max_ushort;
X
Xextern char *alloctemp;
Xextern short error_crash;
Xextern int total_bytes, total_exprs, total_meanings, total_strings;
Xextern int total_symbols, total_types, total_stmts, total_strlists;
Xextern int total_literals, total_ctxstacks, total_tempvars, total_inprecs;
Xextern int total_parens, total_ptrdescs, total_misc;
Xextern int final_bytes, final_exprs, final_meanings, final_strings;
Xextern int final_symbols, final_types, final_stmts, final_strlists;
Xextern int final_literals, final_ctxstacks, final_tempvars, final_inprecs;
Xextern int final_parens, final_ptrdescs, final_misc;
X
Xextern char *infname, *outfname, *codefname, *hdrfname;
Xextern char *requested_module;
Xextern FILE *inf, *outf, *codef, *hdrf, *logf;
Xextern short setup_complete, found_module;
Xextern short regression, verbose, conserve_mem;
Xextern int inf_lnum, inf_ltotal;
X
Xextern int outindent, outputmode;
Xextern int outf_lnum;
Xextern short dontbreaklines;
X
Xextern Token curtok;
Xextern char curtokbuf[256], curtokcase[256];
Xextern char *inbufptr;
Xextern int inbufindent;
Xextern long curtokint;
Xextern Symbol *curtoksym;
Xextern Meaning *curtokmeaning;
Xextern Strlist *curcomments;
Xextern Strlist **keepingstrlist;
Xextern short ignore_directives, skipping_module;
Xextern short C_lex;
Xextern char sysprog_flag, partial_eval_flag, iocheck_flag;
Xextern char range_flag, ovflcheck_flag, stackcheck_flag;
Xextern short switch_strpos;
Xextern int fixedflag;
Xextern int numimports;
Xextern Strlist *tempoptionlist;
Xextern long curserial, serialcount;
Xextern int notephase;
Xextern Strlist *permimports;
Xextern int permflag;
X
X#define SYMHASHSIZE 293
Xextern Symbol *(symtab[SYMHASHSIZE]);
Xextern short partialdump;
X
X#define MAXWITHS 100
Xextern int withlevel;
Xextern Type *withlist[MAXWITHS];
Xextern Expr *withexprs[MAXWITHS];
X
Xextern Token blockkind;
Xextern Meaning *curctx, *curctxlast, *nullctx;
X
Xextern int fixexpr_tryblock;
Xextern short fixexpr_tryflag;
X
Xextern Type *tp_integer, *tp_char, *tp_boolean, *tp_real, *tp_longreal;
Xextern Type *tp_anyptr, *tp_jmp_buf, *tp_schar, *tp_uchar;
Xextern Type *tp_int, *tp_sshort, *tp_ushort, *tp_abyte, *tp_sbyte, *tp_ubyte;
Xextern Type *tp_void, *tp_str255, *tp_strptr, *tp_text, *tp_charptr;
Xextern Type *tp_unsigned, *tp_uint, *tp_sint, *tp_smallset, *tp_proc;
Xextern Meaning *mp_string, *mp_true, *mp_false;
Xextern Meaning *mp_input, *mp_output, *mp_stderr;
Xextern Meaning *mp_maxint, *mp_minint, *mp_escapecode, *mp_ioresult;
Xextern Meaning *mp_uchar, *mp_schar, *mp_unsigned, *mp_uint;
Xextern Meaning *mp_str_hp, *mp_str_turbo;
Xextern Meaning *mp_val_modula, *mp_val_turbo;
Xextern Meaning *mp_blockread_ucsd, *mp_blockread_turbo;
Xextern Meaning *mp_blockwrite_ucsd, *mp_blockwrite_turbo;
Xextern Meaning *mp_dec_dec, *mp_dec_turbo;
Xextern Expr *ex_input, *ex_output;
Xextern Strlist *attrlist;
X
X
X#ifndef define_globals
X# undef extern
X#endif
X
X
X
X
X/* Function declarations are created automatically by "makeproto" */
X
X#include "p2c.hdrs"
X
X#include "p2c.proto"
X
X
X
X/* Our library omits declarations for these functions! */
X
Xint link PP( (char *, char *) );
Xint unlink PP( (char *) );
X
X
X
X#define minspcthresh ((minspacingthresh >= 0) ? minspacingthresh : minspacing)
X
X#define delfreearg(ex, n) freeexpr((*(ex))->args[n]), deletearg(ex, n)
X#define delsimpfreearg(ex, n) freeexpr((*(ex))->args[n]), delsimparg(ex, n)
X
X#define swapexprs(a,b) do {register Expr *t=(a);(a)=(b);(b)=(t);} while (0)
X#define swapstmts(a,b) do {register Stmt *t=(a);(a)=(b);(b)=(t);} while (0)
X
X#define CHECKORDEXPR(ex,v) ((ex)->kind==EK_CONST ? (ex)->val.i - (v) : -2)
X
X#define FCheck(flag) ((flag) == 1 || (!iocheck_flag && (flag)))
X#define checkeof(fex) (isvar(fex, mp_input) ? FCheck(checkstdineof) \
X : FCheck(checkfileeof))
X
X
X#ifdef TEST_MALLOC /* Memory testing */
X
X#define ALLOC(N,TYPE,NAME) \
X (TYPE *) test_malloc((unsigned)((N)*sizeof(TYPE)), \
X &__CAT__(total_,NAME), &__CAT__(final_,NAME))
X
X#define ALLOCV(N,TYPE,NAME) \
X (TYPE *) test_malloc((unsigned)(N), \
X &__CAT__(total_,NAME), &__CAT__(final_,NAME))
X
X#define REALLOC(P,N,TYPE) \
X (TYPE *) test_realloc((char *)(P), (unsigned)((N)*sizeof(TYPE)))
X
X#define FREE(P) test_free((char*)(P))
X
X#else /* not TEST_MALLOC */
X
X/* If p2c always halts immediately with an out-of-memory error, try
X recompiling all modules with BROKEN_OR defined. */
X#ifdef BROKEN_OR
X
X#define ALLOC(N,TYPE,NAME) \
X ((alloctemp = malloc((unsigned)((N)*sizeof(TYPE)))), \
X (alloctemp ? (TYPE *) alloctemp : (TYPE *) outmem()))
X
X#define ALLOCV(N,TYPE,NAME) \
X ((alloctemp = malloc((unsigned)(N))), \
X (alloctemp ? (TYPE *) alloctemp : (TYPE *) outmem()))
X
X#define REALLOC(P,N,TYPE) \
X ((alloctemp = realloc((char*)(P), (unsigned)((N)*sizeof(TYPE)))), \
X (alloctemp ? (TYPE *) alloctemp : (TYPE *) outmem()))
X
X#define FREE(P) free((char*)(P))
X
X#else /* not BROKEN_OR */
X
X#define ALLOC(N,TYPE,NAME) \
X ((alloctemp = malloc((unsigned)((N)*sizeof(TYPE)))) || outmem(), \
X (TYPE *) alloctemp)
X
X#define ALLOCV(N,TYPE,NAME) \
X ((alloctemp = malloc((unsigned)(N))) || outmem(), \
X (TYPE *) alloctemp)
X
X#define REALLOC(P,N,TYPE) \
X ((alloctemp = realloc((char*)(P), (unsigned)((N)*sizeof(TYPE)))) || outmem(), \
X (TYPE *) alloctemp)
X
X#define FREE(P) free((char*)(P))
X
X#endif /* BROKEN_OR */
X#endif /* TEST_MALLOC */
X
X
X#define MIN(a,b) ((a) < (b) ? (a) : (b))
X#define MAX(a,b) ((a) > (b) ? (a) : (b))
X
X
X
X#ifdef toupper
X# undef toupper
X# undef tolower
X# define toupper(c) my_toupper(c)
X# define tolower(c) my_tolower(c)
X# define _toupper(c) ((c)-'a'+'A')
X# define _tolower(c) ((c)-'A'+'a')
X#endif
X
X
X
X
X/* End. */
X
END_OF_FILE
if test 28075 -ne `wc -c <'src/trans.h.2'`; then
echo shar: \"'src/trans.h.2'\" unpacked with wrong size!
fi
# end of 'src/trans.h.2'
fi
echo shar: End of archive 9 \(of 32\).
cp /dev/null ark9isdone
MISSING=""
for I in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 ; do
if test ! -f ark${I}isdone ; then
MISSING="${MISSING} ${I}"
fi
done
if test "${MISSING}" = "" ; then
echo You have unpacked all 32 archives.
echo "Now see PACKNOTES and the README"
rm -f ark[1-9]isdone ark[1-9][0-9]isdone
else
echo You still need to unpack the following archives:
echo " " ${MISSING}
fi
## End of shell archive.
exit 0