/* Generated with C2C (Cedar To C)*/ /* Copyright (C) 1992 by Xerox Corporation. All rights reserved. */ /* time: March 5, 1992 10:50:57 am PST */ /* C2C version: October 16, 1990 (native) */ /* ref-counting: off */ /* file: RefPrintImpl, module: RefPrintImpl */ /* switches: bcfhklnouw */ #include <cedar/InstallationSupport.h> #include <cedar/CedarExtra.h> static char versionStamp[] = "@(#)mob←version [3323689590,2542684210] RefPrintImpl"; typedef unsigned word, *ptr; typedef unsigned char byte, *bPt; typedef unsigned short half, *hPt; typedef word (*fPt)(); typedef struct {word f0, f1;} W2; typedef struct {word f0, f1, f2, f3, f4, f5, f6, f7;} W8; typedef struct {W8 f; W2 r;} W10; typedef struct {word f0, f1, f2, f3, f4, f5, f6;} W7; #define SOURCE(p, l) /* source p, l */ #define BCK(idx, lim) ( ((unsigned) idx) >= ((unsigned) lim) ? (XR←RaiseBoundsFault()) : (idx) ) #define SGNCK(i) ((int) (word) (i) < 0 ? XR←RaiseArithmeticFault(): i ) static void NoName←Q1620(); static void RefPrintImpl←P0(); static word DesparatePrintReferent←P60(); static void PrintWord←P120(); static word PrintReferent←P180(); static word PrintREF←P240(); static void Inner←P1044(); static void Register←P300(); static void RegisterFallback←P360(); static void UnRegister←P420(); static word EachPair←P1200(); static word UnRegisterFallbacks←P480(); static word ATOMPrinter←P540(); static word REFLongNumberPrinter←P600(); static void PrintRopeLiteral←P660(); static word Action←P1308(); static word ROPEPrinter←P720(); static word LORAPrinter←P780(); static void RefPrintCommand←P840(); static word NoName←Q1680(); static void Inner←P1512(); static void NoName←Q1740(); static struct {unsigned f; char r[4];} string1 = {131076, "\216\251\000"}; static struct {unsigned f; char r[4];} string2 = {65537, "\001\000\000"}; static struct {unsigned f; char r[20];} string3 = {1179668, "\260\006\005\146\151\162\163\164\217\005\004\162\145\163\164\214\217\261\000"}; static struct {unsigned f; char r[4];} string4 = {131074, "\004\003\000"}; static struct {unsigned f; char r[4];} string5 = {65540, "\251\000\000"}; static struct {unsigned f; char r[16];} string6 = {851984, "\257\300\363\223\326\161\300\017\164\046\072\104\304\000\000"}; static struct {unsigned f; char r[24];} string7 = {1376277, "\007\000\001\002\007\020\001\002\000\007\036\002\004\003\002\004\014\016\015\003\001\000\000"}; static struct {unsigned f; char r[16];} string8 = {917520, "\216\257\300\363\223\326\161\300\017\164\046\072\104\350\000"}; static struct {unsigned f; char r[16];} string9 = {851984, "\257\300\227\306\253\223\300\107\163\142\023\103\260\000\000"}; static struct {unsigned f; char r[96];} string10 = {6029408, "\260\006\005\146\151\162\163\164\262\260\007\006\163\164\162\145\141\155\216\257\300\015\277\004\146\300\034\367\146\045\112\064\004\003\162\145\146\217\261\260\003\002\157\153\232\261\005\004\162\145\163\164\214\262\260\007\006\163\164\162\145\141\155\216\257\300\015\277\004\146\300\034\367\146\045\112\064\004\003\162\145\146\217\261\260\003\002\157\153\232\261\261\000\000\000"}; static struct {unsigned f; char r[4];} string11 = {131074, "\003\001\000"}; static struct {unsigned f; char r[16];} string12 = {851984, "\257\300\306\033\172\166\300\227\216\110\062\100\340\000\000"}; static struct {unsigned f; char r[40];} string13 = {2490408, "\262\260\007\006\163\164\162\145\141\155\216\257\300\015\277\004\146\300\034\367\146\045\112\064\004\003\162\145\146\217\261\260\003\002\157\153\232\261\000"}; static struct {unsigned f; char r[4];} string14 = {65540, " \000\000"}; static struct {unsigned f; char r[4];} string15 = {65540, "]\000\000"}; static struct {unsigned f; char r[8];} string16 = {262152, "%08x\000\000\000"}; static struct {unsigned f; char r[4];} string17 = {131076, "pf\000"}; static struct {unsigned f; char r[4];} string18 = {196612, "NIL"}; static struct {unsigned f; char r[16];} string19 = {983056, "RefPrintControl"}; static struct {unsigned f; char r[8];} string20 = {458760, "TC%g%g["}; static struct {unsigned f; char r[12];} string21 = {655372, "(%l%08x%l)\000"}; static struct {unsigned f; char r[4];} string22 = {65540, "b\000\000"}; static struct {unsigned f; char r[4];} string23 = {65540, "B\000\000"}; static struct {unsigned f; char r[4];} string24 = {131076, "↑=\000"}; static struct {unsigned f; char r[8];} string25 = {262152, "TRUE\000\000\000"}; static struct {unsigned f; char r[60];} string26 = {3866684, "args: [ -d depthLimit ] address\012Print the referent of a REF"}; static struct {unsigned f; char r[4];} string27 = {196612, "$%g"}; static struct {unsigned f; char r[12];} string28 = {524300, "RefPrint\000\000\000"}; static struct {unsigned f; char r[12];} string29 = {720908, "[lc[%08xH]]"}; static struct {unsigned f; char r[4];} string30 = {196612, "..."}; static struct {unsigned f; char r[4];} string31 = {4, "\000\000\000"}; static struct {unsigned f; char r[8];} string32 = {327688, "LIST[\000\000"}; static struct {unsigned f; char r[4];} string33 = {131076, ", \000"}; static struct {unsigned f; char r[4];} string34 = {65540, "a\000\000"}; static struct {unsigned f; char r[4];} string35 = {131076, "-d\000"}; static struct {unsigned f; char r[4];} string36 = {131076, "%l\000"}; static struct {unsigned f; char r[4];} string37 = {65540, "f\000\000"}; static struct {unsigned f; char r[4];} string38 = {196612, "%l\012"}; static struct {unsigned f; char r[4];} string39 = {65540, "F\000\000"}; static struct {unsigned f; char r[16];} string40 = {851984, "\257\300\306\033\172\166\300\227\216\110\062\100\164\000\000"}; static struct {unsigned f; char r[16];} string41 = {851981, "\006\003\040\001\044\001\100\130\010\000\004\032\001\000\000"}; static struct {unsigned f; char r[16];} string42 = {851984, "\257\300\373\225\000\071\300\362\156\307\320\100\150\000\000"}; static struct {unsigned f; char r[16];} string43 = {851984, "\257\300\311\235\133\064\300\165\175\234\175\100\150\000\000"}; static struct {unsigned f; char r[16];} string44 = {851984, "\257\300\055\153\222\376\300\327\164\352\142\100\150\000\000"}; static struct {unsigned f; char r[16];} string45 = {851984, "\257\300\363\223\326\161\300\017\164\046\072\100\150\000\000"}; static struct {unsigned f; char r[16];} string46 = {851984, "\257\300\255\053\300\023\300\142\135\315\105\100\150\000\000"}; static struct {unsigned f; char r[16];} string47 = {851984, "\257\300\144\364\322\150\300\206\136\277\046\100\150\000\000"}; static struct {unsigned f; char r[16];} string48 = {851984, "\257\300\277\374\326\303\300\302\136\022\175\100\150\000\000"}; static struct {unsigned f; char r[16];} string49 = {851984, "\257\300\015\277\004\146\300\034\367\146\045\100\164\000\000"}; static struct {unsigned f; char r[16];} string50 = {851984, "\257\300\223\215\300\016\300\070\141\304\023\100\150\000\000"}; static struct {unsigned f; char r[16];} string51 = {851984, "\257\300\314\116\377\204\300\167\024\373\125\100\150\000\000"}; static struct {unsigned f; char r[16];} string52 = {851984, "\257\300\027\377\335\126\300\373\132\315\077\100\150\000\000"}; static struct { word f0[48]; word f48; word f49; word f50; word f51; word f52; word f53; word f54; word f55; word f56; word f57; word f58; word f59; word f60; word f61; word f62; word f63; word f64; word f65; word f66; word f67; word f68; word f69; word f70; word f71; word f72; word f73; word f74; word f75; word f76; word f77[12]; } globalframe = { {0}, (word) RefPrintCommand←P840, 0, (word) LORAPrinter←P780, 0, (word) ROPEPrinter←P720, 0, (word) PrintRopeLiteral←P660, 0, (word) REFLongNumberPrinter←P600, 0, (word) ATOMPrinter←P540, 0, (word) UnRegisterFallbacks←P480, 0, (word) UnRegister←P420, 0, (word) RegisterFallback←P360, 0, (word) Register←P300, 0, (word) PrintREF←P240, 0, (word) PrintReferent←P180, 0, (word) PrintWord←P120, 0, (word) DesparatePrintReferent←P60, 0, (word) RefPrintImpl←P0, {0} }; static void NoName←Q1620() { register ptr gf←c0159 = (ptr) &globalframe; word var←c20056; (* (( (ptr) gf←c0159)+12) ) = (word) XR←GetTypeIndex((word) &string1, 0, (word) &string2); (* (( (ptr) gf←c0159)+13) ) = (word) XR←GetTypeIndex((word) &string3, 0, (word) &string4); (* (( (ptr) gf←c0159)+14) ) = (word) XR←GetTypeIndexS((word) (&string5)); (* (( (ptr) gf←c0159)+15) ) = (word) XR←GetTypeIndex((word) &string6, 0, (word) &string7); (* (( (ptr) gf←c0159)+16) ) = (word) XR←GetTypeIndex((word) &string8, 0, (word) &string2); (* (( (ptr) gf←c0159)+18) ) = (word) XR←GetTypeIndexS((word) (&string9)); (* (( (ptr) gf←c0159)+19) ) = (word) XR←GetTypeIndex((word) &string10, 0, (word) &string11); (* (( (ptr) gf←c0159)+20) ) = (word) XR←GetTypeIndex((word) &string12, 0, (word) &string2); (* (( (ptr) gf←c0159)+21) ) = (word) XR←GetTypeIndexS((word) (&string13)); (* (ptr) (( (bPt) gf←c0159)+88) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0159)+16) ), (word) &string14); (* (ptr) (( (bPt) gf←c0159)+92) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0159)+16) ), (word) &string15); (* (ptr) (( (bPt) gf←c0159)+96) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0159)+16) ), (word) &string16); (* (ptr) (( (bPt) gf←c0159)+100) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0159)+16) ), (word) &string17); (* (ptr) (( (bPt) gf←c0159)+104) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0159)+16) ), (word) &string18); (* (ptr) (( (bPt) gf←c0159)+108) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0159)+12) ), (word) &string19); (* (ptr) (( (bPt) gf←c0159)+112) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0159)+16) ), (word) &string20); (* (ptr) (( (bPt) gf←c0159)+116) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0159)+16) ), (word) &string21); (* (ptr) (( (bPt) gf←c0159)+120) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0159)+16) ), (word) &string22); (* (ptr) (( (bPt) gf←c0159)+124) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0159)+16) ), (word) &string23); (* (ptr) (( (bPt) gf←c0159)+128) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0159)+16) ), (word) &string24); (* (ptr) (( (bPt) gf←c0159)+132) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0159)+12) ), (word) &string25); (* (ptr) (( (bPt) gf←c0159)+136) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0159)+16) ), (word) &string26); (* (ptr) (( (bPt) gf←c0159)+140) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0159)+16) ), (word) &string27); (* (ptr) (( (bPt) gf←c0159)+144) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0159)+16) ), (word) &string28); (* (ptr) (( (bPt) gf←c0159)+148) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0159)+16) ), (word) &string29); (* (ptr) (( (bPt) gf←c0159)+152) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0159)+16) ), (word) &string30); (* (ptr) (( (bPt) gf←c0159)+156) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0159)+16) ), (word) &string31); (* (ptr) (( (bPt) gf←c0159)+160) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0159)+16) ), (word) &string32); (* (ptr) (( (bPt) gf←c0159)+164) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0159)+16) ), (word) &string33); (* (ptr) (( (bPt) gf←c0159)+168) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0159)+12) ), (word) &string34); (* (ptr) (( (bPt) gf←c0159)+172) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0159)+16) ), (word) &string35); (* (ptr) (( (bPt) gf←c0159)+176) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0159)+16) ), (word) &string36); (* (ptr) (( (bPt) gf←c0159)+180) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0159)+16) ), (word) &string37); (* (ptr) (( (bPt) gf←c0159)+184) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0159)+16) ), (word) &string38); (* (ptr) (( (bPt) gf←c0159)+188) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0159)+16) ), (word) &string39); (void) XR←DeclareGlobalFrame((word) "RefPrintImpl", &globalframe, (word) XR←GetTypeIndex((word) &string40, 0, (word) &string41) , (word) (( (bPt) gf←c0159)+304)/* var←c18296 */ ); var←c20056 = (word) XR←ImportInterface((word) "Commander", (word) XR←GetTypeIndexS((word) (&string42)), 3); (* (( (ptr) gf←c0159)+81)/* var←c18520 */ ) = var←c20056; (void) XR←ImportProcS(var←c20056, 1310725); var←c20056 = (word) XR←ImportInterface((word) "CommanderOps", (word) XR←GetTypeIndexS((word) (&string43)), 14); (* (( (ptr) gf←c0159)+87)/* var←c19832 */ ) = var←c20056; (void) XR←ImportProcS(var←c20056, 67634178); var←c20056 = (word) XR←ImportInterface((word) "Atom", (word) XR←GetTypeIndexS((word) (&string44)), 16); (* (( (ptr) gf←c0159)+86)/* var←c19512 */ ) = var←c20056; (void) XR←ImportProcS(var←c20056, 67372289); var←c20056 = (word) XR←ImportInterface((word) "Rope", (word) XR←GetTypeIndexS((word) (&string45)), 43); (* (( (ptr) gf←c0159)+80)/* var←c18488 */ ) = var←c20056; (void) XR←ImportProcS(var←c20056, 67896323); (void) XR←ImportProcS(var←c20056, 68163076); (void) XR←ImportProcS(var←c20056, 67901955); var←c20056 = (word) XR←ImportInterface((word) "Convert", (word) XR←GetTypeIndexS((word) (&string46)), 73); (* (( (ptr) gf←c0159)+84)/* var←c18872 */ ) = var←c20056; (void) XR←ImportProcS(var←c20056, 67634946); var←c20056 = (word) XR←ImportInterface((word) "List", (word) XR←GetTypeIndexS((word) (&string47)), 28); (* (( (ptr) gf←c0159)+85)/* var←c19000 */ ) = var←c20056; (void) XR←ImportProcS(var←c20056, 67899907); var←c20056 = (word) XR←ImportInterface((word) "SafeStorage", (word) XR←GetTypeIndexS((word) (&string48)), 27); (* (( (ptr) gf←c0159)+79)/* var←c18392 */ ) = var←c20056; (void) XR←ImportProcS(var←c20056, 67375361); var←c20056 = (word) XR←ImportInterface((word) "IO", (word) XR←GetTypeIndexS((word) (&string49)), 103); (* (( (ptr) gf←c0159)+82)/* var←c18648 */ ) = var←c20056; (void) XR←ImportProcS(var←c20056, 528642); (void) XR←ImportProcS(var←c20056, 1063171); (void) XR←ImportProcS(var←c20056, 1071364); (void) XR←ImportProcS(var←c20056, 2111493); var←c20056 = (word) XR←ImportInterface((word) "CardTab", (word) XR←GetTypeIndexS((word) (&string50)), 12); (* (( (ptr) gf←c0159)+78)/* var←c18328 */ ) = var←c20056; (void) XR←ImportProcS(var←c20056, 67634946); (void) XR←ImportProcS(var←c20056, 67635458); (void) XR←ImportProcS(var←c20056, 67896579); (void) XR←ImportProcS(var←c20056, 67896835); (void) XR←ImportProcS(var←c20056, 134742786); (void) XR←ImportProcS(var←c20056, 67371265); var←c20056 = (word) XR←ImportInterface((word) "ProcessProps", (word) XR←GetTypeIndexS((word) (&string51)), 6); (* (( (ptr) gf←c0159)+83)/* var←c18776 */ ) = var←c20056; (void) XR←ImportProcS(var←c20056, 524290); (void) XR←ImportProcS(var←c20056, 67371777); var←c20056 = (word) XR←ExportInterface((word) "RefPrint", (word) XR←GetTypeIndexS((word) (&string52)), 5); (* (( (ptr) gf←c0159)+88)/* var←c20088 */ ) = var←c20056; (void) XR←ExportProcS(var←c20056, (word) (( (bPt) gf←c0159)+264)/* var←c18136 */ , 524290); (void) XR←ExportProcS(var←c20056, (word) (( (bPt) gf←c0159)+256)/* var←c18104 */ , 262401); (void) XR←ExportProcS(var←c20056, (word) (( (bPt) gf←c0159)+248)/* var←c18072 */ , 262657); (void) XR←ExportProcS(var←c20056, (word) (( (bPt) gf←c0159)+280)/* var←c18200 */ , 67633922); (void) XR←ExportProcS(var←c20056, (word) (( (bPt) gf←c0159)+272)/* var←c18168 */ , 67634178); } static void RefPrintImpl←P0(formal←c038, formal←c034) word formal←c038; word formal←c034; { register ptr gf←c20120 = (ptr) &globalframe; /* RefPrintImpl: */ SOURCE(123, 6511) SOURCE(301, 40) { word pd53; pd53 = (* (( (ptr) (* (( (ptr) gf←c20120)+78)/* var←c18328 */ ))+5) ); (* (( (ptr) gf←c20120)+8)/* printers←v3056 */ ) = (word) ( *( (fPt) ((* (ptr) pd53 ))))(17, pd53); }; SOURCE(2273, 26) (* (( (ptr) gf←c20120)+10)/* defaultDepthLimit←v3252 */ ) = 2; SOURCE(6347, 63) { word var←c18360; { word pd54; pd54 = (* (( (ptr) (* (( (ptr) gf←c20120)+79)/* var←c18392 */ ))+21) ); var←c18360 = (word) ( *( (fPt) ((* (ptr) pd54 ))))((* ((( (ptr) gf←c20120)+42)) ), pd54); }; (void) Register←P300((word) (( (bPt) gf←c20120)+232)/* var←c18008 */ , var←c18360); }; SOURCE(6412, 77) { word var←c18424; { word var←c18456; { word pd55; pd55 = (* (( (ptr) (* (( (ptr) gf←c20120)+80)/* var←c18488 */ ))+30) ); var←c18456 = (word) ( *( (fPt) ((* (ptr) pd55 ))))((* (( (ptr) gf←c20120)+39) ), 0, 2147483647, pd55); }; { word pd56; pd56 = (* (( (ptr) (* (( (ptr) gf←c20120)+79)/* var←c18392 */ ))+21) ); var←c18424 = (word) ( *( (fPt) ((* (ptr) pd56 ))))(var←c18456, pd56); }; }; (void) Register←P300((word) (( (bPt) gf←c20120)+208)/* var←c17912 */ , var←c18424); }; SOURCE(6491, 29) (void) RegisterFallback←P360((word) ((( (bPt) gf←c20120)+200)/* var←c17880 */ )); SOURCE(6523, 111) { word pd57; pd57 = (* (( (ptr) (* (( (ptr) gf←c20120)+81)/* var←c18520 */ ))+4) ); (void) ( *( (fPt) ((* (ptr) pd57 ))))((* (( (ptr) gf←c20120)+36) ), (word) (( (bPt) gf←c20120)+192)/* var←c17848 */ , (* ( ( (ptr) gf←c20120)+34) ), 0, 1, pd57); }; } static word DesparatePrintReferent←P60(stream←v3964, maybeRef←v3992) word stream←v3964; word maybeRef←v3992; { register ptr gf←c20152 = (ptr) &globalframe; word var←c4036; word nBytes←v5152 = 0; word pointerFree←v5180 = 0; word hdrPointer←v5208; /* DesparatePrintReferent: */ SOURCE(578, 785) SOURCE(714, 59) hdrPointer←v5208 = (word) XR←PtrTest(maybeRef←v3992, (word) &nBytes←v5152, (word) &pointerFree←v5180); SOURCE(775, 570) if ( ( (hdrPointer←v5208 != 0) ? ((hdrPointer←v5208 + 8) == maybeRef←v3992) : 0 ) ) { SOURCE(838, 507) { word ref←v5252; word p←v5280; word type←v5308; word ordType←v5336; SOURCE(840, 29) ref←v5252 = maybeRef←v3992; SOURCE(871, 39) p←v5280 = maybeRef←v3992; SOURCE(912, 66) { word pd58; pd58 = (* (( (ptr) (* (( (ptr) gf←c20152)+79)/* var←c18392 */ ))+21) ); type←v5308 = (word) ( *( (fPt) ((* (ptr) pd58 ))))(ref←v5252, pd58); }; SOURCE(980, 27) ordType←v5336 = BCK(type←v5308, 65536); SOURCE(1009, 29) nBytes←v5152 = (nBytes←v5152 - 8); SOURCE(1040, 91) { W2 var←c18552; W2 var←c18584; W2 var←c0185; var←c18552.f0 = 4; var←c18552.f1 = type←v5308; var←c18584.f0 = 11; if ((0 != pointerFree←v5180)) { var←c18584.f1 = (* (( (ptr) gf←c20152)+25) ); } else { var←c18584.f1 = (* (( (ptr) gf←c20152)+39) ); }; (* (ptr) (word) &var←c0185 ) = 0; (* (( (ptr) (word) &var←c0185) + 1) ) = 0; { word pd59; pd59 = (* (( (ptr) (* (( (ptr) gf←c20152)+82)/* var←c18648 */ ))+60) ); (void) ( *( (fPt) ((* (ptr) pd59 ))))(stream←v3964, (* (( (ptr) gf←c20152)+28) ), var←c18552, var←c18584, var←c0185, pd59) ; }; }; SOURCE(1133, 162) lab←L100002: ; if (( (int)nBytes←v5152 > (int)0)) { } else { goto lab←L100000; }; SOURCE(1153, 54) if ((maybeRef←v3992 != p←v5280)) { SOURCE(1184, 23) { word pd60; pd60 = (* (( (ptr) (* (( (ptr) gf←c20152)+82)/* var←c18648 */ ))+93) ); (void) ( *( (fPt) ((* (ptr) pd60 ))))(stream←v3964, (* (( (ptr) gf←c20152)+22) ), 0, 2147483647, pd60); }; }; SOURCE(1209, 34) (void) PrintWord←P120(stream←v3964, (* (ptr) p←v5280 ), pointerFree←v5180); SOURCE(1245, 19) p←v5280 = (p←v5280 + 4); SOURCE(1266, 29) nBytes←v5152 = (nBytes←v5152 - 4); goto lab←L100002; lab←L100000: ; SOURCE(1306, 23) { word pd61; pd61 = (* (( (ptr) (* (( (ptr) gf←c20152)+82)/* var←c18648 */ ))+93) ); (void) ( *( (fPt) ((* (ptr) pd61 ))))(stream←v3964, (* (( (ptr) gf←c20152)+23) ), 0, 2147483647, pd61); }; SOURCE(1331, 14) return(1); }; }; SOURCE(1348, 15) return(0); } static void PrintWord←P120(stream←v4096, value←v4124, refFree←v4152) word stream←v4096; word value←v4124; word refFree←v4152; { register ptr gf←c20184 = (ptr) &globalframe; word nBytes←v5404 = 0; word pointerFree←v5432 = 0; word hdrPointer←v5460; /* PrintWord: */ SOURCE(1367, 355) SOURCE(1487, 79) hdrPointer←v5460 = ( (0 != refFree←v4152) ? 0 : (word) XR←PtrTest(value←v4124, (word) &nBytes←v5404, (word) &pointerFree←v5432) ) ; SOURCE(1568, 154) if ( ( (hdrPointer←v5460 != 0) ? ((hdrPointer←v5460 + 8) == value←v4124) : 0 ) ) { SOURCE(1630, 39) { word var←c18680; var←c18680 = (word) PrintREF←P240(stream←v4096, value←v4124); }; } else { SOURCE(1678, 44) { W2 var←c18712; var←c18712.f0 = 4; var←c18712.f1 = value←v4124; { word pd62; pd62 = (* (( (ptr) (* (( (ptr) gf←c20184)+82)/* var←c18648 */ ))+61) ); (void) ( *( (fPt) ((* (ptr) pd62 ))))(stream←v4096, (* (( (ptr) gf←c20184)+24) ), var←c18712, pd62); }; }; }; } static word PrintReferent←P180(stream←v4212, ref←v4240) word stream←v4212; word ref←v4240; { register ptr gf←c20216 = (ptr) &globalframe; word ok←v4300; word type←v5504; word ordType←v5532; word printer←v5560; /* PrintReferent: */ SOURCE(1728, 539) SOURCE(1728, 539) ok←v4300 = 1; SOURCE(1815, 66) { word pd63; pd63 = (* (( (ptr) (* (( (ptr) gf←c20216)+79)/* var←c18392 */ ))+21) ); type←v5504 = (word) ( *( (fPt) ((* (ptr) pd63 ))))(ref←v4240, pd63); }; SOURCE(1883, 27) ordType←v5532 = BCK(type←v5504, 65536); SOURCE(1912, 89) { W2 var←c065; word var←c0186; { word pd64; pd64 = (* (( (ptr) (* (( (ptr) gf←c20216)+78)/* var←c18328 */ ))+7) ); (void) ( *( (fPt) ((* (ptr) pd64 ))))((word) &var←c065, (* (( (ptr) gf←c20216)+8)/* printers←v3056 */ ), ordType←v5532, pd64) ; }; var←c0186 = var←c065.f1; printer←v5560 = XR←Narrow(var←c0186, (* (( (ptr) gf←c20216)+21) )); }; SOURCE(2003, 264) if ((printer←v5560 == 0)) { SOURCE(2027, 128) { register word tail←v5616; tail←v5616 = (* (( (ptr) gf←c20216)+9)/* fallbacks←v3084 */ ); lab←L100006: ; if ((tail←v5616 != 0)) { } else { goto lab←L100003; }; SOURCE(2110, 45) { word pd65; pd65 = (* (ptr) tail←v5616 ); if ((0 != (word) ( *( (fPt) ((* (ptr) pd65 ))))(stream←v4212, ref←v4240, pd65))) { SOURCE(2142, 13) return(1); }; }; tail←v5616 = (* (( (ptr) tail←v5616)+1) ); goto lab←L100006; lab←L100003: ; }; SOURCE(2174, 55) SOURCE(2176, 53) return((word) DesparatePrintReferent←P60(stream←v4212, ref←v4240)); } else { SOURCE(2239, 28) { word pd66; pd66 = (* (ptr) printer←v5560 ); return((word) ( *( (fPt) ((* (ptr) pd66 ))))(stream←v4212, ref←v4240, pd66)); }; }; } static word PrintREF←P240(formal←c0197, formal←c0198) word formal←c0197; word formal←c0198; { W10 var←c20248; /* declaration of stream←v4444 skipped */ /* declaration of ref←v4472 skipped */ register ptr gf←c20280 = (ptr) &globalframe; /* declaration of ok←v4528 skipped */ /* declaration of var←c18744 skipped */ (* (( (ptr) &var←c20248)+4)/* stream←v4444 */ ) = formal←c0197; (* (( (ptr) &var←c20248)+5)/* ref←v4472 */ ) = formal←c0198; /* PrintREF: */ SOURCE(2423, 1021) { word tmpAddr67; tmpAddr67 = (word) (( (ptr) &var←c20248)+7)/* var←c18744 */ ; (* (ptr) tmpAddr67 ) = ( ((word) (fPt) Inner←P1044) ); (* (( (ptr) tmpAddr67) + 1) ) = 1; }; SOURCE(2423, 1021) (* (( (ptr) &var←c20248)+6)/* ok←v4528 */ ) = 1; SOURCE(2505, 939) if (((* (( (ptr) &var←c20248)+5)/* ref←v4472 */ ) == 0)) { SOURCE(2525, 26) { word pd68; pd68 = (* (( (ptr) (* (( (ptr) gf←c20280)+82)/* var←c18648 */ ))+93) ); (void) ( *( (fPt) ((* (ptr) pd68 ))))((* (( (ptr) &var←c20248)+4)/* stream←v4444 */ ), (* (( (ptr) gf←c20280)+26) ), 0, 2147483647, pd68) ; }; } else { SOURCE(2558, 889) { word newDepthLimit←v5744 = (word) -1; /* declaration of control←v5772 skipped */ SOURCE(2585, 30) (* (( (ptr) &var←c20248)+9)/* control←v5772 */ ) = 0; SOURCE(3023, 208) { word var←c18808; word var←c18840; { word pd69; pd69 = (* (( (ptr) (* (( (ptr) gf←c20280)+83)/* var←c18776 */ ))+7) ); var←c18808 = (word) ( *( (fPt) ((* (ptr) pd69 ))))((* ((( (ptr) gf←c20280)+27)) ), pd69); }; if ((var←c18808 == 0)) { goto lab←L100007; }; var←c18840 = XR←GetReferentType(var←c18808); { word tc70; if (((* (( (ptr) gf←c20280)+20) ) == var←c18840)) { { word ctl←v5860; ctl←v5860 = var←c18808; SOURCE(3105, 14) (* (( (ptr) &var←c20248)+9)/* control←v5772 */ ) = ctl←v5860; }; } else { if (((* (( (ptr) gf←c20280)+15) ) == var←c18840)) { tc70 = (word) ((*(int*)var←c18808<0) == 0); } else { tc70 = (word) 0; }; if (tc70) { { word rope←v5904; rope←v5904 = var←c18808; SOURCE(3138, 43) { word pd71; word idx72; pd71 = (* (( (ptr) (* (( (ptr) gf←c20280)+84)/* var←c18872 */ ))+11) ); newDepthLimit←v5744 = ( /*1*/ idx72 = (word) ( *( (fPt) ((* (ptr) pd71 ))))(rope←v5904, 8, pd71), /*1*/ SGNCK(idx72) /*1*/ ); }; }; } else { lab←L100007: ; SOURCE(3197, 34) newDepthLimit←v5744 = (* (( (ptr) gf←c20280)+10)/* defaultDepthLimit←v3252 */ ); }; }; }; }; SOURCE(3234, 210) if (((* (( (ptr) &var←c20248)+9)/* control←v5772 */ ) == 0)) { SOURCE(3258, 87) { word var←c18904; word var←c18936; { word pd73; pd73 = (* (( (ptr) (* (( (ptr) gf←c20280)+78)/* var←c18328 */ ))+5) ); var←c18904 = (word) ( *( (fPt) ((* (ptr) pd73 ))))(17, pd73); }; var←c18936 = XR←NewObject(8, (* (( (ptr) gf←c20280)+20) )); (* (ptr) var←c18936 ) = var←c18904; (* (( (ptr) var←c18936)+1) ) = newDepthLimit←v5744; (* (( (ptr) &var←c20248)+9)/* control←v5772 */ ) = var←c18936; }; SOURCE(3347, 78) { word var←c18968; { word pd74; pd74 = (* (( (ptr) (* (( (ptr) gf←c20280)+85)/* var←c19000 */ ))+22) ); var←c18968 = (word) ( *( (fPt) ((* (ptr) pd74 ))))((* (( (ptr) gf←c20280)+27) ), (* (( (ptr) &var←c20248)+9)/* control←v5772 */ ), 0, pd74) ; }; { word pd75; pd75 = (* (( (ptr) (* (( (ptr) gf←c20280)+83)/* var←c18776 */ ))+4) ); (void) ( *( (fPt) ((* (ptr) pd75 ))))(var←c18968, (word) (( (bPt) &var←c20248)+28)/* var←c18744 */ , pd75); }; }; } else { SOURCE(3436, 8) (void) Inner←P1044((word) ((( (bPt) &var←c20248)+28)/* var←c18744 */ )); }; }; }; SOURCE(2423, 1021) return((* (( (ptr) &var←c20248)+6)/* ok←v4528 */ )); } static void Inner←P1044(formal←c20344) word formal←c20344; { register ptr gf←c20312 = (ptr) &globalframe; W2 var←c083; word var←c0187; formal←c20344 = (formal←c20344 - 28); /* Inner: */ SOURCE(2617, 14) SOURCE(2633, 82) { W2 var←c19032; W2 var←c19064; W2 var←c19096; var←c19032.f0 = 11; var←c19032.f1 = (* (( (ptr) gf←c20312)+30) ); var←c19064.f0 = 4; var←c19064.f1 = (* (( (ptr) formal←c20344)+5) ); var←c19096.f0 = 11; var←c19096.f1 = (* (( (ptr) gf←c20312)+31) ); { word pd76; pd76 = (* (( (ptr) (* (( (ptr) gf←c20312)+82)/* var←c18648 */ ))+60) ); (void) ( *( (fPt) ((* (ptr) pd76 ))))((* (( (ptr) formal←c20344)+4) ), (* (( (ptr) gf←c20312)+29) ), var←c19032, var←c19064, var←c19096, pd76) ; }; }; SOURCE(2717, 298) if (( (int)(* (( (ptr) (* (( (ptr) formal←c20344)+9) ))+1) ) == (int)0)) { goto then077;}; { word pd78; pd78 = (* (( (ptr) (* (( (ptr) gf←c20312)+78)/* var←c18328 */ ))+7) ); (void) ( *( (fPt) ((* (ptr) pd78 ))))((word) &var←c083, (* (ptr) (* (( (ptr) formal←c20344)+9) ) ), (* (( (ptr) formal←c20344)+5) ), pd78); }; var←c0187 = var←c083.f0; if ((0 != var←c0187)) { then077: ; } else { SOURCE(2811, 43) (* (( (ptr) (* (( (ptr) formal←c20344)+9) ))+1) ) = ((* (( (ptr) (* (( (ptr) formal←c20344)+9) ))+1) ) - 1); SOURCE(2856, 24) { word pd79; pd79 = (* (( (ptr) (* (( (ptr) gf←c20312)+82)/* var←c18648 */ ))+93) ); (void) ( *( (fPt) ((* (ptr) pd79 ))))((* (( (ptr) formal←c20344)+4) ), (* (( (ptr) gf←c20312)+32) ), 0, 2147483647, pd79) ; }; SOURCE(2882, 55) { word var←c19128; word pd80; pd80 = (* (( (ptr) (* (( (ptr) gf←c20312)+78)/* var←c18328 */ ))+10) ); var←c19128 = (word) ( *( (fPt) ((* (ptr) pd80 ))))((* (ptr) (* (( (ptr) formal←c20344)+9) ) ), (* (( (ptr) formal←c20344)+5) ), (* (( (ptr) gf←c20312)+33) ), pd80); }; SOURCE(2939, 31) (* (( (ptr) formal←c20344)+6) ) = (word) PrintReferent←P180((* (( (ptr) formal←c20344)+4) ), (* (( (ptr) formal←c20344)+5) )); SOURCE(2972, 43) (* (( (ptr) (* (( (ptr) formal←c20344)+9) ))+1) ) = ((* (( (ptr) (* (( (ptr) formal←c20344)+9) ))+1) ) + 1); }; } static void Register←P300(printer←v4588, type←v4616) word printer←v4588; word type←v4616; { register ptr gf←c20376 = (ptr) &globalframe; word ordType←v5948; /* Register: */ SOURCE(3454, 207) (void) (XR←MonitorEntry((word) (( (bPt) gf←c20376)+16)/* LOCK←v3000 */ )); SOURCE(3543, 27) ordType←v5948 = BCK(type←v4616, 65536); SOURCE(3572, 89) { word var←c19224; { word var←c19160; { word var←c19192; var←c19192 = XR←NewObject(4, (* (( (ptr) gf←c20376)+21) )); (* (ptr) var←c19192 ) = XR←CheckProc(printer←v4588); var←c19160 = var←c19192; }; { word pd81; pd81 = (* (( (ptr) (* (( (ptr) gf←c20376)+78)/* var←c18328 */ ))+9) ); var←c19224 = (word) ( *( (fPt) ((* (ptr) pd81 ))))((* (( (ptr) gf←c20376)+8)/* printers←v3056 */ ), ordType←v5948, var←c19160, pd81) ; }; }; }; SOURCE(3454, 207) (void) (XR←MonitorExit((word) (( (bPt) gf←c20376)+16)/* LOCK←v3000 */ )); return; } static void RegisterFallback←P360(printer←v4676) word printer←v4676; { register ptr gf←c20408 = (ptr) &globalframe; /* RegisterFallback: */ SOURCE(3665, 109) (void) (XR←MonitorEntry((word) (( (bPt) gf←c20408)+16)/* LOCK←v3000 */ )); SOURCE(3738, 36) { word var←c19256; var←c19256 = XR←NewObject(8, (* (( (ptr) gf←c20408)+19) )); (* (ptr) var←c19256 ) = XR←CheckProc(printer←v4676); (* (( (ptr) var←c19256)+1) ) = (* (( (ptr) gf←c20408)+9)/* fallbacks←v3084 */ ); (* (( (ptr) gf←c20408)+9)/* fallbacks←v3084 */ ) = var←c19256; }; SOURCE(3665, 109) (void) (XR←MonitorExit((word) (( (bPt) gf←c20408)+16)/* LOCK←v3000 */ )); return; } static void UnRegister←P420(formal←c0199) word formal←c0199; { W7 var←c20440; /* declaration of printer←v4736 skipped */ register ptr gf←c20472 = (ptr) &globalframe; /* declaration of var←c19288 skipped */ var←c20440.f4/* printer←v4736 */ = formal←c0199; /* UnRegister: */ SOURCE(3780, 336) { word tmpAddr82; tmpAddr82 = (word) (( (ptr) &var←c20440)+5)/* var←c19288 */ ; (* (ptr) tmpAddr82 ) = ( ((word) (fPt) EachPair←P1200) ); (* (( (ptr) tmpAddr82) + 1) ) = 1; }; (void) (XR←MonitorEntry((word) (( (bPt) gf←c20472)+16)/* LOCK←v3000 */ )); SOURCE(4014, 51) (* (( (ptr) gf←c20472)+9)/* fallbacks←v3084 */ ) = (word) UnRegisterFallbacks←P480(var←c20440.f4/* printer←v4736 */ , (* ( ( (ptr) gf←c20472)+9)/* fallbacks←v3084 */ )); SOURCE(4067, 49) { word var←c19320; word pd83; pd83 = (* (( (ptr) (* (( (ptr) gf←c20472)+78)/* var←c18328 */ ))+13) ); var←c19320 = (word) ( *( (fPt) ((* (ptr) pd83 ))))((* (( (ptr) gf←c20472)+8)/* printers←v3056 */ ), (word) (( (bPt) &var←c20440)+20) /* var←c19288 */ , pd83); }; SOURCE(3780, 336) (void) (XR←MonitorExit((word) (( (bPt) gf←c20472)+16)/* LOCK←v3000 */ )); return; } static word EachPair←P1200(key←v14908, val←v14936, formal←c20536) word key←v14908; word val←v14936; word formal←c20536; { register ptr gf←c20504 = (ptr) &globalframe; word quit←v14980; word valPrinter←v6036; formal←c20536 = (formal←c20536 - 20); /* EachPair: */ SOURCE(3847, 162) SOURCE(3847, 162) quit←v14980 = 0; SOURCE(3884, 51) valPrinter←v6036 = XR←Narrow(val←v14936, (* (( (ptr) gf←c20504)+21) )); SOURCE(3937, 72) if (((* (ptr) valPrinter←v6036 ) == (* (( (ptr) formal←c20536)+4) ))) { SOURCE(3967, 42) { word var←c19352; word pd84; pd84 = (* (( (ptr) (* (( (ptr) gf←c20504)+78)/* var←c18328 */ ))+11) ); var←c19352 = (word) ( *( (fPt) ((* (ptr) pd84 ))))((* (( (ptr) gf←c20504)+8)/* printers←v3056 */ ), key←v14908, pd84); }; }; SOURCE(3847, 162) return(quit←v14980); } static word UnRegisterFallbacks←P480(printer←v4796, list←v4824) word printer←v4796; word list←v4824; { register ptr gf←c20568 = (ptr) &globalframe; word var←c4952; /* UnRegisterFallbacks: */ SOURCE(4122, 425) if ((list←v4824 == 0)) { SOURCE(4302, 12) return(0); } else { if (((* (ptr) list←v4824 ) == printer←v4796)) { SOURCE(4340, 46) return((word) UnRegisterFallbacks←P480(printer←v4796, (* (( (ptr) list←v4824)+1) ))); } else { SOURCE(4399, 148) { word tail←v6092; SOURCE(4401, 6) tail←v6092 = (word) UnRegisterFallbacks←P480(printer←v4796, (* (( (ptr) list←v4824)+1) )); SOURCE(4480, 67) if ((tail←v6092 == (* (( (ptr) list←v4824)+1) ))) { return(list←v4824); } else { { word var←c19416; var←c19416 = XR←NewObject(8, (* (( (ptr) gf←c20568)+19) )); (* (ptr) var←c19416 ) = XR←CheckProc(* (ptr) list←v4824 ); (* (( (ptr) var←c19416)+1) ) = tail←v6092; return(var←c19416); }; }; }; }; }; } static word ATOMPrinter←P540(stream←v8220, ref←v8248) word stream←v8220; word ref←v8248; { register ptr gf←c20600 = (ptr) &globalframe; word ok←v8292; /* ATOMPrinter: */ SOURCE(4554, 98) SOURCE(4554, 98) ok←v8292 = 1; SOURCE(4593, 59) { word var←c19448; { word var←c19480; var←c19480 = XR←Narrow(ref←v8248, (* (( (ptr) gf←c20600)+14) )); { word pd85; pd85 = (* (( (ptr) (* (( (ptr) gf←c20600)+86)/* var←c19512 */ ))+9) ); var←c19448 = (word) ( *( (fPt) ((* (ptr) pd85 ))))(var←c19480, pd85); }; }; { W2 var←c19544; var←c19544.f0 = 11; var←c19544.f1 = var←c19448; { word pd86; pd86 = (* (( (ptr) (* (( (ptr) gf←c20600)+82)/* var←c18648 */ ))+61) ); (void) ( *( (fPt) ((* (ptr) pd86 ))))(stream←v8220, (* (( (ptr) gf←c20600)+35) ), var←c19544, pd86); }; }; }; SOURCE(4554, 98) return(ok←v8292); } static word REFLongNumberPrinter←P600(stream←v8352, ref←v8380) word stream←v8352; word ref←v8380; { register ptr gf←c20632 = (ptr) &globalframe; word ok←v8424; word refLongNumber←v6220; /* REFLongNumberPrinter: */ SOURCE(4658, 162) SOURCE(4658, 162) ok←v8424 = 1; SOURCE(4706, 50) refLongNumber←v6220 = XR←Narrow(ref←v8380, (* (( (ptr) gf←c20632)+18) )); SOURCE(4758, 62) { W2 var←c19576; var←c19576.f0 = 4; var←c19576.f1 = (* (ptr) refLongNumber←v6220 ); { word pd87; pd87 = (* (( (ptr) (* (( (ptr) gf←c20632)+82)/* var←c18648 */ ))+61) ); (void) ( *( (fPt) ((* (ptr) pd87 ))))(stream←v8352, (* (( (ptr) gf←c20632)+37) ), var←c19576, pd87); }; }; SOURCE(4658, 162) return(ok←v8424); } static void PrintRopeLiteral←P660(formal←c0200, rope←v5124) word formal←c0200; word rope←v5124; { W8 var←c20664; /* declaration of stream←v5096 skipped */ register ptr gf←c20696 = (ptr) &globalframe; /* declaration of var←c19608 skipped */ /* declaration of i←v6276 skipped */ var←c20664.f4/* stream←v5096 */ = formal←c0200; /* PrintRopeLiteral: */ SOURCE(4826, 362) { word tmpAddr88; tmpAddr88 = (word) (( (ptr) &var←c20664)+5)/* var←c19608 */ ; (* (ptr) tmpAddr88 ) = ( ((word) (fPt) Action←P1308) ); (* (( (ptr) tmpAddr88) + 1) ) = 1; }; SOURCE(4885, 10) var←c20664.f7/* i←v6276 */ = 0; SOURCE(5099, 22) { word pd89; pd89 = (* (( (ptr) (* (( (ptr) gf←c20696)+82)/* var←c18648 */ ))+21) ); (void) ( *( (fPt) ((* (ptr) pd89 ))))(var←c20664.f4/* stream←v5096 */ , 34, pd89); }; SOURCE(5123, 41) { word var←c19640; word pd90; pd90 = (* (( (ptr) (* (( (ptr) gf←c20696)+80)/* var←c18488 */ ))+26) ); var←c19640 = (word) ( *( (fPt) ((* (ptr) pd90 ))))(rope←v5124, 0, 2147483647, (word) (( (bPt) &var←c20664)+20)/* var←c19608 */ , pd90) ; }; SOURCE(5166, 22) { word pd91; pd91 = (* (( (ptr) (* (( (ptr) gf←c20696)+82)/* var←c18648 */ ))+21) ); (void) ( *( (fPt) ((* (ptr) pd91 ))))(var←c20664.f4/* stream←v5096 */ , 34, pd91); }; } static word Action←P1308(c←v6380, formal←c20760) word c←v6380; word formal←c20760; { register ptr gf←c20728 = (ptr) &globalframe; word quit←v6424; formal←c20760 = (formal←c20760 - 20); /* Action: */ SOURCE(4897, 197) SOURCE(4897, 197) quit←v6424 = 0; SOURCE(4953, 57) if (( (int)(* (( (ptr) formal←c20760)+7) ) > (int)120)) { SOURCE(4970, 25) { word pd92; pd92 = (* (( (ptr) (* (( (ptr) gf←c20728)+82)/* var←c18648 */ ))+93) ); (void) ( *( (fPt) ((* (ptr) pd92 ))))((* (( (ptr) formal←c20760)+4) ), (* (( (ptr) gf←c20728)+38) ), 0, 2147483647, pd92) ; }; SOURCE(4997, 13) return(1); }; SOURCE(5013, 47) if ((c←v6380 == 34) || (c←v6380 == 92)) { SOURCE(5037, 23) { word pd93; pd93 = (* (( (ptr) (* (( (ptr) gf←c20728)+82)/* var←c18648 */ ))+21) ); (void) ( *( (fPt) ((* (ptr) pd93 ))))((* (( (ptr) formal←c20760)+4) ), 92, pd93); }; }; SOURCE(5062, 21) { word pd94; pd94 = (* (( (ptr) (* (( (ptr) gf←c20728)+82)/* var←c18648 */ ))+21) ); (void) ( *( (fPt) ((* (ptr) pd94 ))))((* (( (ptr) formal←c20760)+4) ), c←v6380, pd94); }; SOURCE(5085, 9) (* (( (ptr) formal←c20760)+7) ) = ((* (( (ptr) formal←c20760)+7) ) + 1); SOURCE(4897, 197) return(quit←v6424); } static word ROPEPrinter←P720(stream←v8484, ref←v8512) word stream←v8484; word ref←v8512; { register ptr gf←c20792 = (ptr) &globalframe; word ok←v8556; /* ROPEPrinter: */ SOURCE(5194, 76) SOURCE(5194, 76) ok←v8556 = 1; SOURCE(5233, 37) { word var←c19672; { word var←c19704; var←c19704 = XR←Narrow(ref←v8512, (* (( (ptr) gf←c20792)+15) )); if ((var←c19704 == 0)) { goto lab←L100008; }; if (((*(int*)var←c19704<0) == 0)) { goto lab←L100008; }; (void) XR←RaiseError(XR←NarrowFault, 0); lab←L100008: ; var←c19672 = var←c19704; }; (void) PrintRopeLiteral←P660(stream←v8484, var←c19672); }; SOURCE(5194, 76) return(ok←v8556); } static word LORAPrinter←P780(stream←v8616, ref←v8644) word stream←v8616; word ref←v8644; { register ptr gf←c20824 = (ptr) &globalframe; word ok←v8688; /* LORAPrinter: */ SOURCE(5276, 342) SOURCE(5276, 342) ok←v8688 = 1; SOURCE(5315, 303) { word var←c19736; var←c19736 = ref←v8644; if ((var←c19736 == 0)) { goto lab←L100009; }; if (((* (( (ptr) gf←c20824)+13) ) == XR←GetReferentType(var←c19736))) { { word lora←v6452; lora←v6452 = var←c19736; SOURCE(5359, 36) { word pd95; pd95 = (* (( (ptr) (* (( (ptr) gf←c20824)+82)/* var←c18648 */ ))+93) ); (void) ( *( (fPt) ((* (ptr) pd95 ))))(stream←v8616, (* (( (ptr) gf←c20824)+40) ), 0, 2147483647, pd95); }; SOURCE(5397, 148) { register word tail←v6592; tail←v6592 = lora←v6452; lab←L100013: ; if ((tail←v6592 != 0)) { } else { goto lab←L100010; }; SOURCE(5457, 53) if ((tail←v6592 != lora←v6452)) { SOURCE(5477, 33) { word pd96; pd96 = (* (( (ptr) (* (( (ptr) gf←c20824)+82)/* var←c18648 */ ))+93) ); (void) ( *( (fPt) ((* (ptr) pd96 ))))(stream←v8616, (* (( (ptr) gf←c20824)+41) ), 0, 2147483647, pd96); }; }; SOURCE(5512, 33) { word var←c19768; var←c19768 = (word) PrintREF←P240(stream←v8616, (* (ptr) tail←v6592 )); }; tail←v6592 = (* (( (ptr) tail←v6592)+1) ); goto lab←L100013; lab←L100010: ; }; SOURCE(5556, 32) { word pd97; pd97 = (* (( (ptr) (* (( (ptr) gf←c20824)+82)/* var←c18648 */ ))+93) ); (void) ( *( (fPt) ((* (ptr) pd97 ))))(stream←v8616, (* (( (ptr) gf←c20824)+23) ), 0, 2147483647, pd97); }; }; } else { lab←L100009: ; SOURCE(5604, 14) return(0); }; }; SOURCE(5276, 342) return(ok←v8688); } static void RefPrintCommand←P840(formal←c0141, formal←c0201) word formal←c0141; word formal←c0201; { W8 var←c20856; /* declaration of cmd←v8748 skipped */ word result←v8792; word msg←v8820; /* declaration of var←c19800 skipped */ var←c20856.f4/* cmd←v8748 */ = formal←c0201; /* RefPrintCommand: */ SOURCE(5624, 717) { word tmpAddr98; tmpAddr98 = (word) (( (ptr) &var←c20856)+5)/* var←c19800 */ ; (* (ptr) tmpAddr98 ) = ( ((word) (fPt) Inner←P1512) ); (* (( (ptr) tmpAddr98) + 1) ) = 1; }; SOURCE(5624, 717) result←v8792 = 0; SOURCE(5624, 717) msg←v8820 = 0; SOURCE(5667, 674) { /* declaration of arg←v6732 skipped */ { word var←c0188; var←c0188 = (word) &var←c20856; (void) (word) XR←Enable(( ((word) (fPt) NoName←Q1680) ), ( ((word) (fPt) NoName←Q1740) ), var←c0188); }; }; /* removed tail goto */ (* (ptr) formal←c0141 ) = result←v8792; (* (( (ptr) formal←c0141)+1) ) = msg←v8820; return; } static word NoName←Q1680(formal←c0181) word formal←c0181; { register ptr gf←c0180 = (ptr) &globalframe; SOURCE(5730, 42) { word depthLimit←v6760 = (word) -1; SOURCE(5730, 42) { word pd99; pd99 = (* (( (ptr) (* (( (ptr) gf←c0180)+87)/* var←c19832 */ ))+8) ); (* (( (ptr) formal←c0181)+7) ) = (word) ( *( (fPt) ((* (ptr) pd99 ))))((* (( (ptr) formal←c0181)+4) ), 0, pd99); }; SOURCE(5888, 142) { word pd100; pd100 = (* (( (ptr) (* (( (ptr) gf←c0180)+80)/* var←c18488 */ ))+8) ); if ((0 != (word) ( *( (fPt) ((* (ptr) pd100 ))))((* (( (ptr) formal←c0181)+7) ), (* (( (ptr) gf←c0180)+43) ), 0, pd100))) { SOURCE(5927, 65) { word var←c19864; { word pd101; pd101 = (* (( (ptr) (* (( (ptr) gf←c0180)+87)/* var←c19832 */ ))+8) ); var←c19864 = (word) ( *( (fPt) ((* (ptr) pd101 ))))((* (( (ptr) formal←c0181)+4) ), 0, pd101); }; { word pd102; word idx103; pd102 = (* (( (ptr) (* (( (ptr) gf←c0180)+84)/* var←c18872 */ ))+11) ); depthLimit←v6760 = ( idx103 = (word) ( *( (fPt) ((* (ptr) pd102 ))))(var←c19864, 8, pd102), SGNCK(idx103) ); }; }; SOURCE(5994, 36) { word pd104; pd104 = (* (( (ptr) (* (( (ptr) gf←c0180)+87)/* var←c19832 */ ))+8) ); (* (( (ptr) formal←c0181)+7) ) = (word) ( *( (fPt) ((* (ptr) pd104 ))))((* (( (ptr) formal←c0181)+4) ), 0, pd104); }; }; }; SOURCE(6035, 36) { W2 var←c19896; var←c19896.f0 = 11; var←c19896.f1 = (* (( (ptr) gf←c0180)+45) ); { word pd105; pd105 = (* (( (ptr) (* (( (ptr) gf←c0180)+82)/* var←c18648 */ ))+61) ); (void) ( *( (fPt) ((* (ptr) pd105 ))))((* (( (ptr) (* (( (ptr) formal←c0181)+4) ))+1) ), (* (( (ptr) gf←c0180)+44) ), var←c19896, pd105) ; }; }; SOURCE(6073, 227) if (( (int)depthLimit←v6760 >= (int)0)) { SOURCE(6098, 185) { word control←v6848; SOURCE(6100, 101) { word var←c19928; word var←c19960; { word pd106; pd106 = (* (( (ptr) (* (( (ptr) gf←c0180)+78)/* var←c18328 */ ))+5) ); var←c19928 = (word) ( *( (fPt) ((* (ptr) pd106 ))))(17, pd106); }; var←c19960 = XR←NewObject(8, (* (( (ptr) gf←c0180)+20) )); (* (ptr) var←c19960 ) = var←c19928; (* (( (ptr) var←c19960)+1) ) = depthLimit←v6760; control←v6848 = var←c19960; }; SOURCE(6203, 78) { word var←c19992; { word pd107; pd107 = (* (( (ptr) (* (( (ptr) gf←c0180)+85)/* var←c19000 */ ))+22) ); var←c19992 = (word) ( *( (fPt) ((* (ptr) pd107 ))))((* (( (ptr) gf←c0180)+27) ), control←v6848, 0, pd107); }; { word pd108; pd108 = (* (( (ptr) (* (( (ptr) gf←c0180)+83)/* var←c18776 */ ))+4) ); (void) ( *( (fPt) ((* (ptr) pd108 ))))(var←c19992, (word) (( (bPt) formal←c0181)+20), pd108); }; }; }; } else { SOURCE(6292, 8) (void) Inner←P1512((word) ((( (bPt) formal←c0181)+20))); }; SOURCE(6303, 38) { W2 var←c20024; var←c20024.f0 = 11; var←c20024.f1 = (* (( (ptr) gf←c0180)+47) ); { word pd109; pd109 = (* (( (ptr) (* (( (ptr) gf←c0180)+82)/* var←c18648 */ ))+61) ); (void) ( *( (fPt) ((* (ptr) pd109 ))))((* (( (ptr) (* (( (ptr) formal←c0181)+4) ))+1) ), (* (( (ptr) gf←c0180)+46) ), var←c20024, pd109) ; }; }; }; return(0); } static void Inner←P1512(formal←c20920) word formal←c20920; { register ptr gf←c20888 = (ptr) &globalframe; word addr←v6892; formal←c20920 = (formal←c20920 - 20); /* Inner: */ SOURCE(5796, 14) SOURCE(5812, 38) { word pd110; pd110 = (* (( (ptr) (* (( (ptr) gf←c20888)+84)/* var←c18872 */ ))+11) ); addr←v6892 = (word) ( *( (fPt) ((* (ptr) pd110 ))))((* (( (ptr) formal←c20920)+7) ), 8, pd110); }; SOURCE(5852, 31) (void) PrintWord←P120((* (( (ptr) (* (( (ptr) formal←c20920)+4) ))+1) ), addr←v6892, 0); } static void NoName←Q1740(formal←c0158, formal←c200000, formal←c200001, formal←c200002, formal←c200003) word formal←c0158; word formal←c200000; word formal←c200001; word formal←c200002; word formal←c200003; { register ptr gf←c0184 = (ptr) &globalframe; if ((formal←c200001 == (* (( (ptr) (* (( (ptr) gf←c0184)+84)/* var←c18872 */ ))+7) ))) { { word reason←v16892; word index←v16920; reason←v16892 = (* (ptr) formal←c200003 ); index←v16920 = (* (( (ptr) formal←c200003)+1) ); SOURCE(5691, 37) { word var←c0157; var←c0157 = (* (( (ptr) (* (( (ptr) (* (( (ptr) formal←c200000)+4) ))+5) ))+1) ); (void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c0184)+87)/* var←c19832 */ ))+4) ), (word) &var←c0157); }; }; }; (* (ptr) formal←c0158 ) = 0; (* (( (ptr) formal←c0158)+1) ) = 0; return; } /* file: RefPrintImpl, module: RefPrintImpl, compiled at: March 5, 1992 10:50:56 am PST */ extern void XR←install←RefPrintImpl() { NoName←Q1620(); } extern void XR←run←RefPrintImpl() { XR←Start(&globalframe); }