#include "M3Runtime.h" typedef struct { int tc; char* str; int len; } TXT; PRIVATE TXT txt1 = { 3, "a variable cannot be inline", 28}; PRIVATE TXT txt2 = { 3, "variable declaration must include a type or initial value", 58 }; PRIVATE TXT txt3 = { 3, "EXTERNAL alias applies to first variable", 41}; PRIVATE TXT txt4 = { 3, "(& ", 4}; PRIVATE TXT txt5 = { 3, ")", 2}; PRIVATE TXT txt6 = { 3, "EXPORT void (*@__IMap_relay) () = 0;\012", 38}; PRIVATE TXT txt7 = { 3, "IMPORT void (*@__IMap_relay) ();\012", 34}; PRIVATE TXT txt8 = { 3, "\012void @__IMap (p)\012", 19}; PRIVATE TXT txt9 = { 3, "EXPORT void (*@__MMap_relay) () = 0;\012", 38}; PRIVATE TXT txt10 = { 3, "\012void @__MMap (p)\012", 19}; PRIVATE TXT txt11 = { 3, "IMPORT void (*@__MMap_relay) ();\012", 34}; PRIVATE TXT txt12 = { 3, "\012PRIVATE void @__MMap (p)\012", 27}; PRIVATE TXT txt13 = { 3, "void (*p) ();\012", 15}; PRIVATE TXT txt14 = { 3, "{\001\012", 4}; PRIVATE TXT txt15 = { 3, "ADDRESS r = NIL;\012", 18}; PRIVATE TXT txt16 = { 3, "ADDRESS c = NIL;\012", 18}; PRIVATE TXT txt17 = { 3, "if (@__IMap_relay != 0) { @__IMap_relay (p); };\012", 49 }; PRIVATE TXT txt18 = { 3, "if (@__MMap_relay != 0) { @__MMap_relay (p); };\012", 49 }; PRIVATE TXT txt19 = { 3, "CHECKSTACKOVERFLOW;\012", 21}; PRIVATE TXT txt20 = { 3, "\002};\012\012", 6}; PRIVATE TXT txt21 = { 3, "*", 2}; PRIVATE TXT txt22 = { 3, "variable cannot be an open array", 33}; PRIVATE TXT txt23 = { 3, "variable has empty type", 24}; PRIVATE TXT txt24 = { 3, "initial value is not a constant", 32}; PRIVATE TXT txt25 = { 3, "(*", 3}; PRIVATE TXT txt26 = { 3, "t@ ", 4}; PRIVATE TXT txt27 = { 3, "* ", 3}; PRIVATE TXT txt28 = { 3, "PRIVATE t@ init@ = ", 20}; PRIVATE TXT txt29 = { 3, ";\012", 3}; PRIVATE TXT txt30 = { 3, "@", 2}; PRIVATE TXT txt31 = { 3, "COPY (& init@, ", 16}; PRIVATE TXT txt32 = { 3, ", @);\012", 7}; PRIVATE TXT txt33 = { 3, " = ", 4}; PRIVATE TXT txt34 = { 3, "& ", 3}; PRIVATE TXT txt35 = { 3, "@;\012", 4}; PRIVATE TXT txt36 = { 3, "VAR ", 5}; PRIVATE TXT txt37 = { 3, " ", 2}; #line 16 "../Interfaces/Type.i3" #define t4 ADDRESS #define t95 void typedef int t8; #line 116 ".ROOT/.boots/corelib/Interfaces/Wr.i3" typedef struct { char* elts; int size[1]; } t83; #line 17 "./Ident.i3" #define t56 t83 #define TC4 TC_Type__Map IMPORT TYPE TC_Type__Map; #line 16 "../Interfaces/Type.i3" IMPORT char VS_Type__Map__41dd9f4b33104fce; #define t7 ADDRESS #define TC7 TC_NULL IMPORT TYPE TC_NULL; IMPORT char VS_NULL__fb50c7d53bec30dc; #line 17 "../Interfaces/Scope.i3" #define t10 ADDRESS #define t78 ADDRESS typedef struct { TYPE self; int private; } t78_methods; #define t78_msize (sizeof (t78_methods)) typedef struct { ADDRESS methods; } t78_fields; #define t78_size (sizeof (t78_fields)) #define TC78 TC_UNTRACED_ROOT IMPORT TYPE TC_UNTRACED_ROOT; IMPORT char VS_UNTRACED_ROOT__3e0964513fd6da20; #line 15 "../Interfaces/M3.i3" #define t20 ADDRESS #define TC20 TC_M3__Value IMPORT TYPE TC_M3__Value; #line 15 IMPORT char VS_M3__Value__6f64cf9c2cae25fb; #line 34 "../Interfaces/ProcType.i3" #define t42 t83 #define TC10 TC_Scope__ValueList IMPORT TYPE TC_Scope__ValueList; #line 17 "../Interfaces/Scope.i3" IMPORT char VS_Scope__ValueList__64bf053e22e4e53c; #define t39 ADDRESS #define TC39 TC_REFANY IMPORT TYPE TC_REFANY; IMPORT char VS_REFANY__4b8748e831fc107a; #line 18 "../Interfaces/ProcType.i3" #define t46 ADDRESS #define t52 ADDRESS #define TC52 TC_ADDRESS IMPORT TYPE TC_ADDRESS; IMPORT char VS_ADDRESS__30f7308738738b44; #line 13 "../Interfaces/String.i3" #define t6 ADDRESS #define TC6 TC_String__T IMPORT TYPE TC_String__T; #line 13 IMPORT char VS_String__T__3a6c7dc12615e4ee; typedef struct { t6 _module; t6 _item; } t48; #line 14 "../Interfaces/ProcType.i3" typedef struct { t46 _next; t48 _name; t20 _except; } t49; #define TC46 TC_ProcType__Raisee IMPORT TYPE TC_ProcType__Raisee; #line 18 IMPORT char VS_ProcType__Raisee__5fe771ff27c179d9; #line 14 "../Interfaces/Expr.i3" #define t50 ADDRESS #define t17 ADDRESS #define TC17 TC_M3__Expr IMPORT TYPE TC_M3__Expr; #line 16 "../Interfaces/M3.i3" IMPORT char VS_M3__Expr__8ae39aaa2d432477; #line 14 "../Interfaces/Expr.i3" #define t73 t83 #define TC50 TC_Expr__List IMPORT TYPE TC_Expr__List; #line 14 IMPORT char VS_Expr__List__3f87eceb2b9a246a; #line 17 "../Interfaces/Type.i3" #define t75 ADDRESS #define t18 ADDRESS #define TC18 TC_M3__Type IMPORT TYPE TC_M3__Type; #line 18 "../Interfaces/M3.i3" IMPORT char VS_M3__Type__4d87bc25311f81d2; #line 17 "../Interfaces/Type.i3" typedef struct { t75 _next; t18 _type; } t76; #define TC75 TC_Type__List IMPORT TYPE TC_Type__List; #line 17 IMPORT char VS_Type__List__5791758e343becc1; #line 419 "Variable.m3" typedef t95 (*t1)(); #line 19 "../Interfaces/String.i3" typedef signed_char t79; #line 16 "./Ident.i3" #define t57 t83 typedef struct { t6 elts[100]; } t80; #line 17 "../Interfaces/String.i3" typedef struct { t8 _top; t80 _stk; } t2; #define t40 ADDRESS typedef struct { TYPE self; int private; } t40_methods; #define t40_msize (sizeof (t40_methods)) typedef struct { ADDRESS methods; } t40_fields; #define t40_size (sizeof (t40_fields)) #define TC40 TC_ROOT IMPORT TYPE TC_ROOT; IMPORT char VS_ROOT__349f58f628be0ac6; #define t40_MapProc TC_ROOT->mapProc #define t3 ADDRESS #define TC3 TC_Wr__T IMPORT TYPE TC_Wr__T; #line 90 ".ROOT/.boots/corelib/Interfaces/Wr.i3" IMPORT char VS_Wr__T__2555b70b3f7780b1; #define t3_MapProc TC_Wr__T->mapProc #define t5 ADDRESS #define TC5 TC_Variable__T IMPORT TYPE TC_Variable__T; #line 16 "./Variable.i3" IMPORT char VS_Variable__T__be7ead4a3afd8be5; typedef unsigned char t9; #line 14 "../Interfaces/M3.i3" #define t11 ADDRESS #define TC11 TC_M3__Scope IMPORT TYPE TC_M3__Scope; #line 14 IMPORT char VS_M3__Scope__6e6d8848308d8a2d; #define t12 ADDRESS #define TC12 TC_M3__Temp IMPORT TYPE TC_M3__Temp; #line 19 IMPORT char VS_M3__Temp__450b691937f03dae; #line 285 "Variable.m3" typedef t9 (*t13)(); #line 18 "./Value.i3" typedef unsigned char t14; #line 274 "Variable.m3" typedef t14 (*t15)(); #line 239 typedef t12 (*t16)(); #line 13 "./Formal.i3" typedef unsigned char t19; #line 130 "Variable.m3" typedef t5 (*t21)(); #line 14 "./Decl.i3" typedef struct { t6 _alias; t9 _isExternal; t9 _isInline; t9 _isUnused; t9 _isObsolete; } t22; #line 15 "../Interfaces/Token.i3" typedef unsigned char t29; #line 45 typedef struct { int elts[4]; } t23; #line 17 "../Interfaces/M3.i3" #define t24 ADDRESS #define TC24 TC_M3__Stmt IMPORT TYPE TC_M3__Stmt; #line 17 IMPORT char VS_M3__Stmt__376b307627fc1f2f; #line 18 "Variable.m3" #define t25 ADDRESS #line 47 "./ValueRep.i3" typedef t20 (*t61)(); typedef t17 (*t51)(); typedef t18 (*t43)(); #line 18 "Variable.m3" typedef struct { int filler; } t25_methods; #define t25_msize (sizeof (t25_methods)) typedef struct { #line 18 t18 _tipe; t9 _indirect; t17 _init; t5 _sibling; t20 _formal; t5 _alias; t9 _root; t24 _initStmt; t9 _initDone; t9 _initZero; #line 18 t8 _initID; t8 _minValue; t8 _maxValue; t9 _canBeOpenArray; } t25_fields; #define t25_size (sizeof (t25_fields)) PRIVATE void t25_InitProc (); #line 18 PRIVATE void t25_SetupProc (); PRIVATE void t25_PrintProc (); PRIVATE typecell t25_TC; PRIVATE typecell t25_TC_init = {0, 0, 0, 0, 0, (PROC)NIL, #line 18 t25_size, t25_msize, NIL, 0, 0, t25_InitProc, t25_SetupProc, t25_PrintProc, "Variable#$%^_0002", 686633318, 868666954}; PRIVATE TYPE TC25 = &t25_TC; #line 18 #line 83 ".ROOT/.boots/corelib/Interfaces/Rd.i3" #define t26 ADDRESS #define TC26 TC_Rd__T IMPORT TYPE TC_Rd__T; #line 83 IMPORT char VS_Rd__T__2555b70b3f7780b1; #define t26_MapProc TC_Rd__T->mapProc #define t27 ADDRESS #define TC27 TC_TEXT IMPORT TYPE TC_TEXT; IMPORT char VS_TEXT__b7a92447326386f5; #define t27_MapProc TC_TEXT->mapProc typedef t6 (*t28)(); #line 13 "../Interfaces/Scanner.i3" typedef struct { t29 _token; t6 _string; t8 _value; t8 _offset; } t30; #line 33 "../Interfaces/Host.i3" typedef t26 (*t31)(); typedef int t32; #line 249 ".ROOT/.boots/corelib/Interfaces/Rd.i3" typedef t32 (*t33)(); #line 220 typedef t27 (*t34)(); typedef unsigned char t35; #line 189 #define t36 t83 typedef t35 (*t37)(); #line 84 typedef unsigned char t38; #line 17 "../Interfaces/CallExpr.i3" #define t41 ADDRESS #define TC41 TC_CallExpr__MethodList IMPORT TYPE TC_CallExpr__MethodList; #line 17 IMPORT char VS_CallExpr__MethodList__7e87c2d720444b71; #line 28 "../Interfaces/ProcType.i3" typedef t8 (*t44)(); #line 27 typedef t41 (*t45)(); #line 24 typedef t11 (*t47)(); typedef double t53; #line 14 "./Module.i3" #define t54 ADDRESS #define TC54 TC_Module__T IMPORT TYPE TC_Module__T; #line 14 IMPORT char VS_Module__T__be7ead4a3afd8be5; typedef t54 (*t55)(); #line 17 "./Ident.i3" typedef unsigned char t58; typedef struct { t8 elts[201]; } t59; #line 16 typedef struct { t6 elts[201]; } t60; #line 18 "../Interfaces/AssignStmt.i3" typedef unsigned char t62; #line 16 typedef t24 (*t63)(); #line 16 "../Interfaces/Stmt.i3" typedef unsigned char t66; typedef struct { int elts[1]; } t64; typedef void (*t65)(); #line 27 "../Interfaces/Emit.i3" typedef signed_char t67; #line 63 typedef t67 (*t68)(); #line 15 ".ROOT/.boots/corelib/Interfaces/FPrint.i3" typedef struct { t8 elts[2]; } t69; #line 16 "./ValueRep.i3" typedef t9 t70; #define t71 ADDRESS #line 19 typedef struct { t1 _bind; t1 _typeCheck; t15 _class; t1 _fingerprint; t16 _load; t1 _write; t61 _select; t13 _declare0; t1 _declare1; #line 19 t1 _declare2; t13 _needsDecl; t51 _toExpr; t43 _toType; } t71_methods; #define t71_msize (sizeof (t71_methods)) typedef struct { #line 19 t8 _origin; t6 _name; t6 _extName; t11 _scope; t18 _type; unsigned _checked : 1; unsigned _incheck : 1; unsigned _readonly : 1; #line 19 unsigned _declared : 1; unsigned _bound : 1; unsigned _compiled : 1; unsigned _imported : 1; unsigned _exported : 1; unsigned _external : 1; #line 19 unsigned _used : 1; unsigned _usedAtTop : 1; unsigned _unused : 1; unsigned _obsolete : 1; unsigned _inFrame : 1; t69 _fprint; #line 19 } t71_fields; #define t71_size (sizeof (t71_fields)) #define TC71 TC_M3__Value typedef void (*t72)(); #line 121 "../Interfaces/Type.i3" typedef t4 (*t74)(); #line 65 "../Interfaces/Token.i3" typedef struct { t6 elts[97]; } t77; #line 67 ".ROOT/.boots/corelib/Interfaces/Text.i3" typedef signed_char t81; typedef t81 (*t82)(); #line 91 ".ROOT/.boots/corelib/Interfaces/Wr.i3" typedef unsigned char t84; #line 15 ".ROOT/.boots/corelib/Interfaces/Thread.i3" #define t85 ADDRESS #define TC85 TC_Thread__T IMPORT TYPE TC_Thread__T; #line 15 IMPORT char VS_Thread__T__2555b70b3f7780b1; #define t85_MapProc TC_Thread__T->mapProc typedef t39 (*t86)(); #define t87 ADDRESS #define TC87 TC_Thread__Condition IMPORT TYPE TC_Thread__Condition; #line 21 IMPORT char VS_Thread__Condition__26d5968239e08f4e; #define t87_MapProc TC_Thread__Condition->mapProc #define t88 ADDRESS #define TC88 TC_MUTEX IMPORT TYPE TC_MUTEX; IMPORT char VS_MUTEX__1f9d4e89391ab815; #define t88_MapProc TC_MUTEX->mapProc typedef t85 (*t89)(); #line 23 #define t90 ADDRESS #line 23 typedef struct { t86 _apply; } t90_methods; #define t90_msize (sizeof (t90_methods)) typedef struct { #line 23 int filler; } t90_fields; #define t90_size (sizeof (t90_fields)) #define TC90 TC_Thread__Closure IMPORT TYPE TC_Thread__Closure; #line 23 IMPORT char VS_Thread__Closure__7fb5c6232c5a658a; #define t90_MapProc TC_Thread__Closure->mapProc typedef t87 (*t91)(); typedef t88 (*t92)(); #line 28 #define t93 ADDRESS #line 28 typedef struct { int filler; } t93_methods; #define t93_msize (sizeof (t93_methods)) typedef struct { #line 28 t32 _stackSize; } t93_fields; #define t93_size (sizeof (t93_fields)) #define TC93 TC_Thread__SizedClosure IMPORT TYPE TC_Thread__SizedClosure; #line 28 IMPORT char VS_Thread__SizedClosure__8a46717d2eae7b07; #define t93_MapProc TC_Thread__SizedClosure->mapProc typedef CLOSURE t94; typedef float t96; #line 9 "Variable.m3" IMPORT INITLINK* Scanner__init; IMPORT INITLINK* Host__init; IMPORT INITLINK* ProcType__init; IMPORT INITLINK* Decl__init; #line 9 IMPORT INITLINK* QualifyExpr__init; IMPORT INITLINK* LongrealExpr__init; IMPORT INITLINK* Module__init; IMPORT INITLINK* Wr__init; #line 9 IMPORT INITLINK* Ident__init; IMPORT INITLINK* Void__init; IMPORT INITLINK* Token__init; IMPORT INITLINK* Target__init; IMPORT INITLINK* ArrayType__init; #line 9 IMPORT INITLINK* Temp__init; IMPORT INITLINK* Formal__init; IMPORT INITLINK* NamedExpr__init; IMPORT INITLINK* AssignStmt__init; #line 9 IMPORT INITLINK* Stmt__init; IMPORT INITLINK* Scope__init; IMPORT INITLINK* Emit__init; IMPORT INITLINK* Error__init; IMPORT INITLINK* Expr__init; #line 9 IMPORT INITLINK* Type__init; IMPORT INITLINK* String__init; IMPORT INITLINK* ValueRep__init; IMPORT INITLINK* Value__init; #line 9 IMPORT INITLINK* Variable__init; IMPORT t30 _Scanner__cur; IMPORT char VS_Scanner__cur__929fa6f8367ea415; IMPORT t95 _Scanner__Match (); #line 9 IMPORT char VS_Scanner__Match__aaf5b32f2f19a6d8; IMPORT t6 _Scanner__MatchID (); IMPORT char VS_Scanner__MatchID__4fb3c66f3429afd9; #line 9 IMPORT t95 _Scanner__GetToken (); IMPORT char VS_Scanner__GetToken__192100a32c7e576d; IMPORT t95 _Scanner__Fail (); IMPORT char VS_Scanner__Fail__a15a8cf32391aa62; #line 9 IMPORT t8 _Host__incrementalVersion; IMPORT char VS_Host__incrementalVersion__1798bcf82af0e178; IMPORT t9 _ProcType__LargeResult (); #line 9 IMPORT char VS_ProcType__LargeResult__547fe44c362c53bb; IMPORT t9 _Module__IsInterface (); IMPORT char VS_Module__IsInterface__90cfad77361c85ee; #line 9 IMPORT EXCEPTION_NAME _Thread__Alerted; IMPORT char VS_Thread__Alerted__fc88feb43485af46; IMPORT EXCEPTION_NAME _Wr__Failure; #line 9 IMPORT char VS_Wr__Failure__5f82cfb43dabf527; IMPORT EXCEPTION_NAME _Wr__Error; IMPORT char VS_Wr__Error__c367253d3ed4fd15; #line 9 IMPORT t95 _Wr__PutText (); IMPORT char VS_Wr__PutText__e034dab73a793846; IMPORT char VS_Ident__MaxIDs__008b1dc032f417a4; #line 9 IMPORT t60 _Ident__stack; IMPORT char VS_Ident__stack__26abbee13e46561c; IMPORT t59 _Ident__offset; IMPORT char VS_Ident__offset__ef43975b2dae4deb; #line 9 IMPORT t8 _Ident__top; IMPORT char VS_Ident__top__5f69d9f328d50d34; IMPORT t8 _Ident__ParseList (); IMPORT char VS_Ident__ParseList__bf92180a2a700808; #line 9 IMPORT t18 _Void__T; IMPORT char VS_Void__T__d44caf853dc63223; IMPORT t23 _Token__DeclStart; IMPORT char VS_Token__DeclStart__730c82bc2c2001b8; #line 9 IMPORT t23 _Token__TypeStart; IMPORT char VS_Token__TypeStart__f71616cb38a20d02; IMPORT t23 _Token__ExprStart; IMPORT char VS_Token__ExprStart__21dc8a0a27344836; #line 9 IMPORT char VS_Target__CHARSIZE__bfc83af22ccab4e4; IMPORT t9 _ArrayType__Split (); IMPORT char VS_ArrayType__Split__b3402f88270f8053; #line 9 IMPORT TYPE TC_Temp__T; IMPORT char VS_Temp__T__3a6c7dc12615e4ee; IMPORT t95 _Temp__Free (); IMPORT char VS_Temp__Free__3b952a2225c26846; #line 9 IMPORT t12 _Temp__FromValue (); IMPORT char VS_Temp__FromValue__c79a4f6f291f20ac; IMPORT t95 _Temp__PushSet (); IMPORT char VS_Temp__PushSet__421e3799382982bc; #line 9 IMPORT t95 _Temp__PopSet (); IMPORT char VS_Temp__PopSet__e0f9f19236e0186c; IMPORT t9 _Formal__Split (); IMPORT char VS_Formal__Split__dd8860c23cba8174; #line 9 IMPORT t9 _Formal__HasClosure (); IMPORT char VS_Formal__HasClosure__f787b78320096703; IMPORT t17 _NamedExpr__FromValue (); #line 9 IMPORT char VS_NamedExpr__FromValue__a451eb2c333f9f7b; IMPORT t24 _AssignStmt__New (); IMPORT char VS_AssignStmt__New__b079448931a7d41d; #line 9 IMPORT t17 _AssignStmt__CheckRHS (); IMPORT char VS_AssignStmt__CheckRHS__9aaea40f392f387e; IMPORT TYPE TC_Stmt__T; IMPORT char VS_Stmt__T__2446b70b3f7780a5; #line 9 IMPORT t95 _Stmt__Bind (); IMPORT char VS_Stmt__Bind__55f2c79a304c25df; IMPORT t95 _Stmt__TypeCheck (); IMPORT char VS_Stmt__TypeCheck__e228c94928564a9d; #line 9 IMPORT void _Stmt__Compile (); IMPORT char VS_Stmt__Compile__53f9f2c43edb087a; IMPORT TYPE TC_Scope__T; IMPORT char VS_Scope__T__3a6c7dc12615e4ee; #line 9 IMPORT t9 _Scope__OuterMost (); IMPORT char VS_Scope__OuterMost__dc5751683db412a5; IMPORT t95 _Scope__Insert (); IMPORT char VS_Scope__Insert__ef77c00626575764; #line 9 IMPORT t95 _Scope__ToList (); IMPORT char VS_Scope__ToList__4f3684492cf42c93; IMPORT t95 _Scope__NameToPrefix (); IMPORT char VS_Scope__NameToPrefix__480892d13153ee71; #line 9 IMPORT t95 _Scope__GenName (); IMPORT char VS_Scope__GenName__3946bbbf2f1d2ba2; IMPORT char VS_Emit__MaxStream__cf0a0e8934c9c9f3; #line 9 IMPORT TYPE TC_Emit__Format; IMPORT char VS_Emit__Format__bc4a2b083b93bbd7; IMPORT t95 _Emit__Op (); IMPORT char VS_Emit__Op__072646cc27c8ae10; #line 9 IMPORT t95 _Emit__OpS (); IMPORT char VS_Emit__OpS__f7dc93802c012951; IMPORT t95 _Emit__OpSS (); IMPORT char VS_Emit__OpSS__6d3e5a1c3d099356; #line 9 IMPORT t95 _Emit__OpI (); IMPORT char VS_Emit__OpI__02cb878634bb9f49; IMPORT t95 _Emit__OpII (); IMPORT char VS_Emit__OpII__2247fe46332f901b; #line 9 IMPORT t95 _Emit__OpN (); IMPORT char VS_Emit__OpN__a3f6e37c396e144c; IMPORT t95 _Emit__OpT (); IMPORT char VS_Emit__OpT__764bdffe21d249e8; #line 9 IMPORT t95 _Emit__ZeroL (); IMPORT char VS_Emit__ZeroL__cdc3e04438bbfecc; IMPORT t95 _Error__Msg (); IMPORT char VS_Error__Msg__4d119a332467757f; #line 9 IMPORT t95 _Error__Str (); IMPORT char VS_Error__Str__2bd0723e3872e90c; IMPORT t95 _Error__WarnStr (); IMPORT char VS_Error__WarnStr__aa8e70c53534552c; #line 9 IMPORT TYPE TC_Expr__T; IMPORT char VS_Expr__T__2446b70b3f7780a5; IMPORT t17 _Expr__Parse (); IMPORT char VS_Expr__Parse__193c41662e6da77f; #line 9 IMPORT t95 _Expr__Bind (); IMPORT char VS_Expr__Bind__7e2752da3eaf56eb; IMPORT t18 _Expr__TypeOf (); IMPORT char VS_Expr__TypeOf__fef0a11b388c64fa; #line 9 IMPORT t17 _Expr__ConstValue (); IMPORT char VS_Expr__ConstValue__ce4fd448218fe483; IMPORT t9 _Expr__IsZeroes (); IMPORT char VS_Expr__IsZeroes__76ef605028be697c; #line 9 IMPORT t12 _Expr__Compile (); IMPORT char VS_Expr__Compile__a7e0cc4029a2ec76; IMPORT t95 _Expr__GenLiteral (); IMPORT char VS_Expr__GenLiteral__5d3c8414307dac94; #line 9 IMPORT TYPE TC_Type__T; IMPORT char VS_Type__T__2446b70b3f7780a5; IMPORT t18 _Type__Parse (); IMPORT char VS_Type__Parse__603df5e3247e0b72; #line 9 IMPORT t18 _Type__Bind (); IMPORT char VS_Type__Bind__3443ccd12eedb9e8; IMPORT t8 _Type__Size (); IMPORT char VS_Type__Size__2f4d980e28adf05b; #line 9 IMPORT t9 _Type__IsEmpty (); IMPORT char VS_Type__IsEmpty__dfa43388210ba9ab; IMPORT t95 _Type__GetBounds (); IMPORT char VS_Type__GetBounds__9a241b2b3c98ad98; #line 9 IMPORT t9 _Type__IsTraced (); IMPORT char VS_Type__IsTraced__1998431b3bdeb797; IMPORT t95 _Type__Check (); IMPORT char VS_Type__Check__3c8ceb09206ee440; #line 9 IMPORT t8 _Type__Name (); IMPORT char VS_Type__Name__f99416972257a869; IMPORT t95 _Type__InitVariable (); IMPORT char VS_Type__InitVariable__6a50e15739c65009; #line 9 IMPORT t95 _Type__GenMap (); IMPORT char VS_Type__GenMap__b852cfac248637ca; IMPORT t95 _Type__Fingerprint (); IMPORT char VS_Type__Fingerprint__0d24a3463c25e166; #line 9 IMPORT t6 _String__Add (); IMPORT char VS_String__Add__0f5e21cc3d204b63; IMPORT t95 _String__PutStack (); IMPORT char VS_String__PutStack__2155a7863fdb4aca; #line 9 IMPORT TYPE TC_ValueRep__V; IMPORT char VS_ValueRep__V__f28699153c608442; IMPORT t95 _ValueRep__Init (); IMPORT char VS_ValueRep__Init__ba99dff739390f9a; #line 9 IMPORT t20 _ValueRep__NoDuplicates (); IMPORT char VS_ValueRep__NoDuplicates__ed93f73a247eb7b4; IMPORT t17 _ValueRep__NoExpr (); #line 9 IMPORT char VS_ValueRep__NoExpr__1297c63d2e046c2c; IMPORT t18 _ValueRep__NoType (); IMPORT char VS_ValueRep__NoType__4061f01226f55ca3; #line 9 IMPORT t12 _ValueRep__NoLoader (); IMPORT char VS_ValueRep__NoLoader__9a7f0c5b24f526c1; IMPORT t95 _ValueRep__NoWriter (); #line 9 IMPORT char VS_ValueRep__NoWriter__3b24d43c367f7122; IMPORT t95 _ValueRep__NoDeclarer (); IMPORT char VS_ValueRep__NoDeclarer__22db283420635bde; #line 9 IMPORT t9 _ValueRep__Never (); IMPORT char VS_ValueRep__Never__39b6ab0628d97589; IMPORT t9 _ValueRep__Always (); IMPORT char VS_ValueRep__Always__1b0a9bbf2173b8b3; #line 9 IMPORT TYPE TC_Value__T; IMPORT char VS_Value__T__2446b70b3f7780a5; IMPORT t95 _Value__Bind (); IMPORT char VS_Value__Bind__6439d03d3a1be824; #line 9 IMPORT t18 _Value__TypeOf (); IMPORT char VS_Value__TypeOf__5fe9c10426934d60; IMPORT t95 _Value__TypeCheck (); IMPORT char VS_Value__TypeCheck__917dc8a02c0b0de4; #line 9 IMPORT t95 _Value__GenStorageClass (); IMPORT char VS_Value__GenStorageClass__fc0c1a1823c9d008; EXPORT t95 _Variable__ParseDecl (); #line 9 EXPORT char VS_Variable__ParseDecl__18a3960b3d9d7c28 = '\0'; EXPORT t5 _Variable__New (); EXPORT char VS_Variable__New__7401d5b22f8881d4 = '\0'; #line 9 EXPORT t5 _Variable__NewFormal (); EXPORT char VS_Variable__NewFormal__11d06a7f2428ac4c = '\0'; EXPORT t95 _Variable__BindType (); #line 9 EXPORT char VS_Variable__BindType__6a32007d2a79f302 = '\0'; EXPORT t95 _Variable__Split (); EXPORT char VS_Variable__Split__a3645c3f2dacdc61 = '\0'; #line 9 EXPORT t9 _Variable__IsFormal (); EXPORT char VS_Variable__IsFormal__a0c5752127c0206b = '\0'; EXPORT t9 _Variable__IsIndirect (); #line 9 EXPORT char VS_Variable__IsIndirect__064edb3f298cb355 = '\0'; EXPORT t9 _Variable__HasClosure (); EXPORT char VS_Variable__HasClosure__cb73a74535f6c26c = '\0'; #line 9 EXPORT t95 _Variable__SetBounds (); EXPORT char VS_Variable__SetBounds__efaf20b320566597 = '\0'; EXPORT t95 _Variable__GetBounds (); #line 9 EXPORT char VS_Variable__GetBounds__c251766d3a14c865 = '\0'; EXPORT t12 _Variable__Load (); EXPORT char VS_Variable__Load__05e07c0e3fca1344 = '\0'; #line 9 EXPORT t95 _Variable__LoadLValue (); EXPORT char VS_Variable__LoadLValue__972aa6573932208a = '\0'; EXPORT t95 _Variable__InitGlobal (); #line 9 EXPORT char VS_Variable__InitGlobal__a8a0983620eb1d77 = '\0'; EXPORT t95 _Variable__GenGlobalMap (); EXPORT char VS_Variable__GenGlobalMap__4bde677a2bc87c63 = '\0'; #line 9 EXPORT t95 _Variable__Initialize (); EXPORT char VS_Variable__Initialize__c598741624c6585b = '\0'; PRIVATE t8 _Variable__nextInitID; #line 9 PRIVATE t6 _Variable__Star; PRIVATE t95 _Variable__Bind (); PRIVATE t95 _Variable__Check (); PRIVATE t95 _Variable__LoadName (); #line 9 PRIVATE t95 _Variable__Write (); PRIVATE t14 _Variable__MyClass (); PRIVATE t95 _Variable__DeclareType (); PRIVATE t9 _Variable__Declare (); #line 9 PRIVATE t95 _Variable__Init (); PRIVATE t95 _Variable__UserInit (); PRIVATE t95 _Variable__FPrinter (); EXPORT char VS_Variable__T__2f67e15a35ea2b67 = '\0'; #line 9 IMPORT char VS_M3__Value__c975bdb53a08f518; #line 53 "Variable.m3" EXPORT t95 _Variable__ParseDecl (_fail, _att) t23 * _fail; t22 _att; { t23 z3; t8 z4; t23 z5; t9 z6; t23 z2; t23 z1; t18 z7; t17 z8; t9 z0; t9 z9; t8 z10; t5 z11; #line 53 "Variable.m3" { auto t5 _t; auto t18 _type; auto t17 _expr; auto t8 _j; auto t8 _n; { CHECKSTACKOVERFLOW; if ((_att._isInline)) { _Error__Msg (((ADDRESS)(& txt1.str))); goto if_1_end; }; if_1_end: /**/; z3.elts [0] = 0x00000002; z3.elts [1] = 0; z3.elts [2] = 0; z3.elts [3] = 0; z5 = z3; _Scanner__Match ( 94 , &(*_fail), &z5); z6 = ((_Scanner__cur._token) == 1 ); if (z6) do { z2.elts [0] = 0x08008800; z2.elts [1] = 0; z2.elts [2] = 0; z2.elts [3] = 0; z3.elts[0] = (*_fail).elts[0] | z2.elts[0]; z3.elts[1] = (*_fail).elts[1] | z2.elts[1]; #line 64 z3.elts[2] = (*_fail).elts[2] | z2.elts[2]; z3.elts[3] = (*_fail).elts[3] | z2.elts[3]; z2.elts[0] = z3.elts[0] | _Token__ExprStart.elts[0]; #line 64 z2.elts[1] = z3.elts[1] | _Token__ExprStart.elts[1]; z2.elts[2] = z3.elts[2] | _Token__ExprStart.elts[2]; z2.elts[3] = z3.elts[3] | _Token__ExprStart.elts[3]; #line 64 z1 = z2; z4 = _Ident__ParseList (&z1); _n = z4; _type = (t18) 0; _expr = (t17) 0; z6 = ((_Scanner__cur._token) == 27 ); if (z6) { _Scanner__GetToken (); z2.elts [0] = 0x00008800; z2.elts [1] = 0; z2.elts [2] = 0; z2.elts [3] = 0; z3.elts[0] = (*_fail).elts[0] | z2.elts[0]; #line 70 z3.elts[1] = (*_fail).elts[1] | z2.elts[1]; z3.elts[2] = (*_fail).elts[2] | z2.elts[2]; z3.elts[3] = (*_fail).elts[3] | z2.elts[3]; #line 70 z2.elts[0] = z3.elts[0] | _Token__ExprStart.elts[0]; z2.elts[1] = z3.elts[1] | _Token__ExprStart.elts[1]; z2.elts[2] = z3.elts[2] | _Token__ExprStart.elts[2]; #line 70 z2.elts[3] = z3.elts[3] | _Token__ExprStart.elts[3]; z1 = z2; z7 = _Type__Parse (&z1); _type = z7; goto if_2_end; #line 70 }; if_2_end: /**/; z6 = ((_Scanner__cur._token) == 11 ); if (z6) { _Scanner__GetToken (); z2.elts [0] = 0x00008000; z2.elts [1] = 0; z2.elts [2] = 0; z2.elts [3] = 0; z3.elts[0] = (*_fail).elts[0] | z2.elts[0]; #line 75 z3.elts[1] = (*_fail).elts[1] | z2.elts[1]; z3.elts[2] = (*_fail).elts[2] | z2.elts[2]; z3.elts[3] = (*_fail).elts[3] | z2.elts[3]; #line 75 z1 = z3; z8 = _Expr__Parse (&z1); _expr = z8; goto if_3_end; }; if_3_end: /**/; z6 = (_expr == 0); z0 = 0; if (z6) { z6 = (_type == 0); z0 = z6; }; if (z0) { _Error__Msg (((ADDRESS)(& txt2.str))); goto if_4_end; }; if_4_end: /**/; z6 = 0; if ((_att._isExternal)) { z9 = ((_att._alias) != 0); z6 = z9; }; z0 = 0; if (z6) { z6 = (_n > 1 ); z0 = z6; #line 80 }; if (z0) { _Error__WarnStr ( 2 , (_att._alias), ((ADDRESS)(& txt3.str))); goto if_5_end; }; if_5_end: /**/; z4 = _Ident__top - _n; _j = z4; { int from, to, index; from = 0 ; z4 = _n - 1 ; to = z4; { auto t8 _i; { for (index = from; index <= to; index += 1) { #line 85 _i = (t8) index; z4 = _j + _i; z10 = z4; if ((z10 < 0) || (200 < z10)) RANGEFAULT; z11 = _Variable__New ((_Ident__stack.elts[z10]), 0 ); #line 86 _t = z11; z4 = _j + _i; z10 = z4; if ((z10 < 0) || (200 < z10)) RANGEFAULT; NILCHECKA (z11 = _t); (((t71_fields*)(z11+(0+t78_size)))->_origin) = (_Ident__offset.elts[z10]); NILCHECKA (z11 = _t); (((t71_fields*)(z11+(0+t78_size)))->_external) = (_att._isExternal); NILCHECKA (z11 = _t); (((t71_fields*)(z11+(0+t78_size)))->_unused) = (_att._isUnused); NILCHECKA (z11 = _t); (((t71_fields*)(z11+(0+t78_size)))->_obsolete) = (_att._isObsolete); NILCHECKA (z11 = _t); (((t25_fields*)(z11+(0+t71_size+t78_size)))->_tipe) = _type; NILCHECKA (z11 = _t); (((t25_fields*)(z11+(0+t71_size+t78_size)))->_init) = _expr; if ((_att._isExternal)) { z6 = ((_att._alias) != 0); if (z6) { NILCHECKA (z11 = _t); (((t71_fields*)(z11+(0+t78_size)))->_extName) = (_att._alias); (_att._alias) = (t6) 0; #line 95 goto if_7_end; }; NILCHECKA (z11 = _t); (((t71_fields*)(z11+(0+t78_size)))->_extName) = (((t71_fields*)(z11+(0+t78_size)))->_name); if_7_end: /**/; #line 96 goto if_6_end; }; if_6_end: /**/; _Scope__Insert (_t); } } }; }; _Ident__top -= _n; z3.elts [0] = 0; z3.elts [1] = 0; z3.elts [2] = 0; z3.elts [3] = 0; z5 = z3; _Scanner__Match ( 15 , &(*_fail), &z5); #line 102 z6 = ((_Scanner__cur._token) == 1 ); } while (z6); } } }; #line 106 "Variable.m3" EXPORT t5 _Variable__New (_name, _used) t6 _name; t9 _used; { t5 z0; t5 z2; t8 z1; #line 106 "Variable.m3" { auto t5 _t; auto t5 __result; { CHECKSTACKOVERFLOW; { register char** ptr = (char**) UNEWOBJ (TC5); z0 = (t5) ptr; }; _t = z0; _ValueRep__Init (_t, _name); NILCHECKA (z2 = _t); (((t71_fields*)(z2+(0+t78_size)))->_used) = _used; NILCHECKA (z2 = _t); (((t25_fields*)(z2+(0+t71_size+t78_size)))->_tipe) = (t18) 0; NILCHECKA (z2 = _t); (((t25_fields*)(z2+(0+t71_size+t78_size)))->_init) = (t17) 0; NILCHECKA (z2 = _t); (((t71_fields*)(z2+(0+t78_size)))->_readonly) = 0 ; NILCHECKA (z2 = _t); (((t25_fields*)(z2+(0+t71_size+t78_size)))->_indirect) = 0 ; NILCHECKA (z2 = _t); (((t25_fields*)(z2+(0+t71_size+t78_size)))->_formal) = (t20) 0; NILCHECKA (z2 = _t); (((t25_fields*)(z2+(0+t71_size+t78_size)))->_alias) = (t5) 0; NILCHECKA (z2 = _t); (((t25_fields*)(z2+(0+t71_size+t78_size)))->_root) = 1 ; NILCHECKA (z2 = _t); (((t71_fields*)(z2+(0+t78_size)))->_inFrame) = 0 ; NILCHECKA (z2 = _t); (((t71_fields*)(z2+(0+t78_size)))->_extName) = (t6) 0; NILCHECKA (z2 = _t); (((t25_fields*)(z2+(0+t71_size+t78_size)))->_initStmt) = (t24) 0; NILCHECKA (z2 = _t); (((t25_fields*)(z2+(0+t71_size+t78_size)))->_initDone) = 0 ; NILCHECKA (z2 = _t); (((t25_fields*)(z2+(0+t71_size+t78_size)))->_initZero) = 0 ; z1 = - 1 ; NILCHECKA (z2 = _t); (((t25_fields*)(z2+(0+t71_size+t78_size)))->_initID) = z1; NILCHECKA (z2 = _t); (((t25_fields*)(z2+(0+t71_size+t78_size)))->_minValue) = -2147483648 ; NILCHECKA (z2 = _t); (((t25_fields*)(z2+(0+t71_size+t78_size)))->_maxValue) = 2147483647 ; __result = _t; return __result; } } }; #line 130 "Variable.m3" EXPORT t5 _Variable__NewFormal (_formal) t20 _formal; { t20 z2; t5 z4; t5 z5; t9 z8; t20 z1; t5 z3; t9 z6; #line 130 "Variable.m3" { auto t5 _t; auto t19 _mode; auto t8 _offset; auto t17 _default; auto t9 _unused; auto t5 __result; { ZERO1B (& _mode); ZERO1B (& _unused); #line 130 CHECKSTACKOVERFLOW; NILCHECKA (z2 = _formal); z4 = _Variable__New ((((t71_fields*)(z2+(0+t78_size)))->_name), 0 ); _t = z4; { { auto t9 _b; { ZERO1B (& _b); NILCHECKA (z5 = _t); z8 = _Formal__Split (_formal, &_offset, &_mode, &(((t25_fields*)(z5+(0+t71_size+t78_size)))->_tipe), &_default, &_unused); #line 135 _b = z8; if (!_b) ASSERTFAULT; } } }; NILCHECKA (z1 = _formal); NILCHECKA (z3 = _t); (((t71_fields*)(z3+(0+t78_size)))->_origin) = (((t71_fields*)(z1+(0+t78_size)))->_origin); z6 = (_mode != 0 ); NILCHECKA (z3 = _t); (((t25_fields*)(z3+(0+t71_size+t78_size)))->_indirect) = z6; z6 = (_mode == 2 ); NILCHECKA (z3 = _t); (((t71_fields*)(z3+(0+t78_size)))->_readonly) = z6; NILCHECKA (z3 = _t); (((t25_fields*)(z3+(0+t71_size+t78_size)))->_formal) = _formal; NILCHECKA (z3 = _t); (((t71_fields*)(z3+(0+t78_size)))->_unused) = _unused; NILCHECKA (z3 = _t); (((t25_fields*)(z3+(0+t71_size+t78_size)))->_initDone) = 1 ; __result = _t; return __result; } } }; #line 147 "Variable.m3" EXPORT t95 _Variable__Split (_t, _type, _indirect, _readonly) t5 _t; t18 * _type; t9 * _indirect; t9 * _readonly; { t5 z1; #line 147 "Variable.m3" { { CHECKSTACKOVERFLOW; NILCHECKA (z1 = _t); if (!(((t71_fields*)(z1+(0+t78_size)))->_checked)) ASSERTFAULT; NILCHECKA (z1 = _t); (*_type) = (((t25_fields*)(z1+(0+t71_size+t78_size)))->_tipe); NILCHECKA (z1 = _t); (*_indirect) = (((t25_fields*)(z1+(0+t71_size+t78_size)))->_indirect); NILCHECKA (z1 = _t); (*_readonly) = (((t71_fields*)(z1+(0+t78_size)))->_readonly); } } }; #line 155 "Variable.m3" EXPORT t95 _Variable__BindType (_t, _type, _indirect, _readonly, _allowOpenArray) t5 _t; t18 _type; t9 _indirect; t9 _readonly; #line 155 t9 _allowOpenArray; { t5 z1; t9 z3; t9 z0; t5 z2; t9 z4; #line 155 "Variable.m3" { { CHECKSTACKOVERFLOW; NILCHECKA (z1 = _t); z3 = ((((t25_fields*)(z1+(0+t71_size+t78_size)))->_tipe) == 0); z0 = 1; if (! z3) { NILCHECKA (z2 = _t); #line 158 z4 = ((((t25_fields*)(z2+(0+t71_size+t78_size)))->_tipe) == _Void__T); z0 = z4; }; if (!z0) ASSERTFAULT; NILCHECKA (z2 = _t); (((t25_fields*)(z2+(0+t71_size+t78_size)))->_tipe) = _type; NILCHECKA (z2 = _t); (((t71_fields*)(z2+(0+t78_size)))->_readonly) = _readonly; NILCHECKA (z2 = _t); (((t25_fields*)(z2+(0+t71_size+t78_size)))->_indirect) = _indirect; NILCHECKA (z2 = _t); (((t71_fields*)(z2+(0+t78_size)))->_type) = _type; NILCHECKA (z2 = _t); (((t25_fields*)(z2+(0+t71_size+t78_size)))->_canBeOpenArray) = _allowOpenArray; } } }; #line 166 "Variable.m3" EXPORT t9 _Variable__IsFormal (_t) t5 _t; { t9 z2; t9 z0; t5 z3; t9 z4; #line 166 "Variable.m3" { auto t9 __result; { ZERO1B (& __result); CHECKSTACKOVERFLOW; z2 = (_t != 0); z0 = 0; if (z2) { NILCHECKA (z3 = _t); z4 = ((((t25_fields*)(z3+(0+t71_size+t78_size)))->_formal) != 0); #line 168 z0 = z4; }; __result = z0; return __result; } } }; #line 171 "Variable.m3" EXPORT t9 _Variable__IsIndirect (_t) t5 _t; { t9 z2; t9 z0; t5 z3; #line 171 "Variable.m3" { auto t9 __result; { ZERO1B (& __result); CHECKSTACKOVERFLOW; z2 = (_t != 0); z0 = 0; if (z2) { NILCHECKA (z3 = _t); z0 = (((t25_fields*)(z3+(0+t71_size+t78_size)))->_indirect); #line 173 }; __result = z0; return __result; } } }; #line 176 "Variable.m3" EXPORT t9 _Variable__HasClosure (_t) t5 _t; { t9 z2; t9 z0; t5 z3; t9 z4; t9 z1; #line 176 "Variable.m3" { auto t9 __result; { ZERO1B (& __result); CHECKSTACKOVERFLOW; z2 = (_t != 0); z0 = 0; if (z2) { NILCHECKA (z3 = _t); z4 = ((((t25_fields*)(z3+(0+t71_size+t78_size)))->_formal) != 0); #line 178 z0 = z4; }; z1 = 0; if (z0) { NILCHECKA (z3 = _t); z4 = _Formal__HasClosure ((((t25_fields*)(z3+(0+t71_size+t78_size)))->_formal)); #line 178 z1 = z4; }; __result = z1; return __result; } } }; #line 181 "Variable.m3" PRIVATE t95 _Variable__Bind (_t) t5 _t; { t5 z2; t5 z1; t9 z3; t18 z4; t5 z5; t18 z6; #line 181 "Variable.m3" { { CHECKSTACKOVERFLOW; NILCHECKA (z2 = _t); _Expr__Bind ((((t25_fields*)(z2+(0+t71_size+t78_size)))->_init)); NILCHECKA (z2 = _t); _Value__Bind ((((t25_fields*)(z2+(0+t71_size+t78_size)))->_formal)); NILCHECKA (z1 = _t); z3 = ((((t25_fields*)(z1+(0+t71_size+t78_size)))->_tipe) != 0); if (z3) { NILCHECKA (z2 = _t); z4 = _Type__Bind ((((t25_fields*)(z2+(0+t71_size+t78_size)))->_tipe)); NILCHECKA (z1 = _t); #line 186 (((t25_fields*)(z1+(0+t71_size+t78_size)))->_tipe) = z4; goto if_8_end; }; NILCHECKA (z1 = _t); z3 = ((((t25_fields*)(z1+(0+t71_size+t78_size)))->_init) != 0); #line 186 if (z3) { NILCHECKA (z5 = _t); z4 = _Expr__TypeOf ((((t25_fields*)(z5+(0+t71_size+t78_size)))->_init)); z6 = _Type__Bind (z4); #line 188 NILCHECKA (z1 = _t); (((t25_fields*)(z1+(0+t71_size+t78_size)))->_tipe) = z6; goto if_8_end; }; NILCHECKA (z1 = _t); #line 188 z3 = ((((t25_fields*)(z1+(0+t71_size+t78_size)))->_formal) != 0); if (z3) { NILCHECKA (z2 = _t); z4 = _Value__TypeOf ((((t25_fields*)(z2+(0+t71_size+t78_size)))->_formal)); NILCHECKA (z1 = _t); #line 190 (((t25_fields*)(z1+(0+t71_size+t78_size)))->_tipe) = z4; goto if_8_end; }; if (! 0 ) ASSERTFAULT; if_8_end: /**/; NILCHECKA (z1 = _t); (((t71_fields*)(z1+(0+t78_size)))->_type) = (((t25_fields*)(z1+(0+t71_size+t78_size)))->_tipe); #line 194 } } }; #line 197 "Variable.m3" PRIVATE t95 _Variable__Check (_t) t5 _t; { t5 z2; t9 z5; t9 z0; t9 z3; t9 z1; t9 z4; t17 z6; t5 z7; t24 z8; #line 197 "Variable.m3" { auto t18 _index; auto t18 _elt; auto t17 _v; auto t17 _default; { CHECKSTACKOVERFLOW; NILCHECKA (z2 = _t); _Value__TypeCheck ((((t25_fields*)(z2+(0+t71_size+t78_size)))->_formal)); NILCHECKA (z2 = _t); _Type__Check ((((t25_fields*)(z2+(0+t71_size+t78_size)))->_tipe)); NILCHECKA (z2 = _t); z5 = _ArrayType__Split ((((t25_fields*)(z2+(0+t71_size+t78_size)))->_tipe), &_index, &_elt); z0 = 0; #line 202 if (z5) { z3 = (_index == 0); z0 = z3; }; z1 = 0; if (z0) { NILCHECKA (z2 = _t); z4 = ((((t25_fields*)(z2+(0+t71_size+t78_size)))->_formal) == 0); #line 202 z1 = z4; }; z0 = 0; if (z1) { NILCHECKA (z2 = _t); z3 = ! (((t25_fields*)(z2+(0+t71_size+t78_size)))->_canBeOpenArray); #line 202 z0 = z3; }; if (z0) { NILCHECKA (z2 = _t); _Error__Str ((((t71_fields*)(z2+(0+t78_size)))->_name), ((ADDRESS)(& txt22.str))); goto if_9_end; #line 204 }; if_9_end: /**/; NILCHECKA (z2 = _t); z3 = _Type__IsEmpty ((((t25_fields*)(z2+(0+t71_size+t78_size)))->_tipe)); if (z3) { NILCHECKA (z2 = _t); _Error__Str ((((t71_fields*)(z2+(0+t78_size)))->_name), ((ADDRESS)(& txt23.str))); goto if_10_end; #line 207 }; if_10_end: /**/; NILCHECKA (z2 = _t); z3 = ((((t25_fields*)(z2+(0+t71_size+t78_size)))->_init) != 0); if (z3) { NILCHECKA (z2 = _t); z6 = _AssignStmt__CheckRHS ((((t25_fields*)(z2+(0+t71_size+t78_size)))->_tipe), (((t25_fields*)(z2+(0+t71_size+t78_size)))->_init), 0 ); #line 210 NILCHECKA (z2 = _t); (((t25_fields*)(z2+(0+t71_size+t78_size)))->_init) = z6; NILCHECKA (z2 = _t); z6 = _Expr__ConstValue ((((t25_fields*)(z2+(0+t71_size+t78_size)))->_init)); _default = z6; z3 = (_default == 0); if (z3) { z1 = _Module__IsInterface (); if (z1) { NILCHECKA (z2 = _t); _Error__Str ((((t71_fields*)(z2+(0+t78_size)))->_name), ((ADDRESS)(& txt24.str))); goto if_13_end; #line 214 }; if_13_end: /**/; z6 = _NamedExpr__FromValue (_t); _v = z6; NILCHECKA (z7 = _t); z8 = _AssignStmt__New (_v, (((t25_fields*)(z7+(0+t71_size+t78_size)))->_init)); NILCHECKA (z2 = _t); #line 217 (((t25_fields*)(z2+(0+t71_size+t78_size)))->_initStmt) = z8; NILCHECKA (z2 = _t); _Stmt__Bind ((((t25_fields*)(z2+(0+t71_size+t78_size)))->_initStmt)); NILCHECKA (z2 = _t); (((t71_fields*)(z2+(0+t78_size)))->_checked) = 1 ; NILCHECKA (z2 = _t); _Stmt__TypeCheck ((((t25_fields*)(z2+(0+t71_size+t78_size)))->_initStmt)); goto if_12_end; #line 220 }; NILCHECKA (z2 = _t); z1 = ! (((t25_fields*)(z2+(0+t71_size+t78_size)))->_indirect); if (z1) { z3 = _Expr__IsZeroes (_default); NILCHECKA (z2 = _t); (((t25_fields*)(z2+(0+t71_size+t78_size)))->_initZero) = z3; NILCHECKA (z2 = _t); z1 = ! (((t25_fields*)(z2+(0+t71_size+t78_size)))->_initZero); z0 = 0; if (z1) { NILCHECKA (z7 = _t); #line 224 z3 = _Scope__OuterMost ((((t71_fields*)(z7+(0+t78_size)))->_scope)); z1 = ! z3; z0 = z1; }; z1 = 0; if (z0) { #line 224 NILCHECKA (z7 = _t); z3 = _ProcType__LargeResult ((((t25_fields*)(z7+(0+t71_size+t78_size)))->_tipe)); z1 = z3; #line 224 }; if (z1) { NILCHECKA (z2 = _t); (((t25_fields*)(z2+(0+t71_size+t78_size)))->_initID) = _Variable__nextInitID; _Variable__nextInitID += 1 ; #line 226 goto if_15_end; }; if_15_end: /**/; NILCHECKA (z2 = _t); (((t25_fields*)(z2+(0+t71_size+t78_size)))->_init) = _default; goto if_14_end; }; if_14_end: /**/; #line 228 if_12_end: /**/; goto if_11_end; }; if_11_end: /**/; } } }; #line 234 "Variable.m3" PRIVATE t95 _Variable__LoadName (_t) t5 _t; { #line 234 "Variable.m3" { { CHECKSTACKOVERFLOW; _Scope__GenName (_t); } } }; #line 239 "Variable.m3" EXPORT t12 _Variable__Load (_t) t5 _t; { t12 z3; #line 239 "Variable.m3" { auto t12 __result; { CHECKSTACKOVERFLOW; z3 = _Temp__FromValue (_t, 1 ); __result = z3; return __result; } } }; #line 244 "Variable.m3" PRIVATE t95 _Variable__Write (_t) t5 _t; { t5 z1; #line 244 "Variable.m3" { { CHECKSTACKOVERFLOW; NILCHECKA (z1 = _t); if ((((t25_fields*)(z1+(0+t71_size+t78_size)))->_indirect)) { _Emit__Op (((ADDRESS)(& txt25.str))); _Variable__LoadName (_t); _Emit__Op (((ADDRESS)(& txt5.str))); goto if_16_end; #line 247 }; _Variable__LoadName (_t); if_16_end: /**/; } } }; #line 252 "Variable.m3" EXPORT t95 _Variable__LoadLValue (_t) t5 _t; { t5 z1; #line 252 "Variable.m3" { { CHECKSTACKOVERFLOW; NILCHECKA (z1 = _t); if ((((t25_fields*)(z1+(0+t71_size+t78_size)))->_indirect)) { _Variable__LoadName (_t); goto if_17_end; }; _Emit__Op (((ADDRESS)(& txt4.str))); _Variable__LoadName (_t); _Emit__Op (((ADDRESS)(& txt5.str))); if_17_end: /**/; } } }; #line 260 "Variable.m3" EXPORT t95 _Variable__SetBounds (_t, _min, _max) t5 _t; t8 _min; t8 _max; { t5 z2; #line 260 "Variable.m3" { { CHECKSTACKOVERFLOW; NILCHECKA (z2 = _t); (((t25_fields*)(z2+(0+t71_size+t78_size)))->_minValue) = _min; NILCHECKA (z2 = _t); (((t25_fields*)(z2+(0+t71_size+t78_size)))->_maxValue) = _max; } } }; #line 266 "Variable.m3" EXPORT t95 _Variable__GetBounds (_t, _min, _max) t5 _t; t8 * _min; t8 * _max; { t5 z2; t8 z3; t8 z4; #line 266 "Variable.m3" { auto t8 _a; auto t8 _b; { CHECKSTACKOVERFLOW; NILCHECKA (z2 = _t); _Type__GetBounds ((((t25_fields*)(z2+(0+t71_size+t78_size)))->_tipe), &_a, &_b); NILCHECKA (z2 = _t); z3 = _a; z4 = (((t25_fields*)(z2+(0+t71_size+t78_size)))->_minValue); if (z3 < z4) z3 = z4; (*_min) = z3; NILCHECKA (z2 = _t); z3 = _b; z4 = (((t25_fields*)(z2+(0+t71_size+t78_size)))->_maxValue); if (z3 > z4) z3 = z4; (*_max) = z3; #line 271 } } }; #line 274 "Variable.m3" PRIVATE t14 _Variable__MyClass (_t) t5 _t; { #line 274 "Variable.m3" { auto t14 __result; { ZERO1B (& __result); CHECKSTACKOVERFLOW; __result = 1 ; return __result; } } }; #line 279 "Variable.m3" PRIVATE t95 _Variable__DeclareType (_t) t5 _t; { t5 z4; t8 z5; t5 z1; #line 279 "Variable.m3" { { CHECKSTACKOVERFLOW; NILCHECKA (z4 = _t); z5 = _Type__Name ((((t25_fields*)(z4+(0+t71_size+t78_size)))->_tipe)); _Emit__OpI (((ADDRESS)(& txt26.str)), z5); NILCHECKA (z1 = _t); if ((((t25_fields*)(z1+(0+t71_size+t78_size)))->_indirect)) { _Emit__Op (((ADDRESS)(& txt27.str))); #line 282 goto if_18_end; }; if_18_end: /**/; } } }; #line 285 "Variable.m3" PRIVATE t9 _Variable__Declare (_t) t5 _t; { t5 z1; t8 z3; t9 z2; t5 z4; t8 z5; t17 z6; #line 285 "Variable.m3" { auto t9 __result; { ZERO1B (& __result); CHECKSTACKOVERFLOW; NILCHECKA (z1 = _t); z3 = - 1 ; z2 = ((((t25_fields*)(z1+(0+t71_size+t78_size)))->_initID) != z3); if (z2) { NILCHECKA (z4 = _t); z5 = _Type__Name ((((t25_fields*)(z4+(0+t71_size+t78_size)))->_tipe)); NILCHECKA (z4 = _t); #line 288 _Emit__OpII (((ADDRESS)(& txt28.str)), z5, (((t25_fields*)(z4+(0+t71_size+t78_size)))->_initID)); NILCHECKA (z4 = _t); z6 = _Expr__ConstValue ((((t25_fields*)(z4+(0+t71_size+t78_size)))->_init)); _Expr__GenLiteral (z6); _Emit__Op (((ADDRESS)(& txt29.str))); goto if_19_end; }; if_19_end: /**/; _Value__GenStorageClass (_t, 1 ); _Variable__DeclareType (_t); _Emit__OpN (((ADDRESS)(& txt30.str)), _t); _Emit__Op (((ADDRESS)(& txt29.str))); __result = 1 ; return __result; } } }; #line 300 "Variable.m3" PRIVATE t95 _Variable__Init (_t) t5 _t; { t5 z1; t9 z2; t9 z0; t5 z3; t9 z4; #line 300 "Variable.m3" { auto t2 _p; { CHECKSTACKOVERFLOW; NILCHECKA (z1 = _t); z2 = ! (((t25_fields*)(z1+(0+t71_size+t78_size)))->_initDone); z0 = 0; if (z2) { NILCHECKA (z3 = _t); #line 303 z2 = ! (((t25_fields*)(z3+(0+t71_size+t78_size)))->_indirect); z0 = z2; }; z2 = 0; if (z0) { NILCHECKA (z1 = _t); #line 303 z4 = ! (((t71_fields*)(z1+(0+t78_size)))->_imported); z2 = z4; }; if (z2) { (_p._top) = 0 ; _Scope__NameToPrefix (_t, &_p, 1 ); NILCHECKA (z3 = _t); _Type__InitVariable ((((t25_fields*)(z3+(0+t71_size+t78_size)))->_tipe), 0 , &_p); goto if_20_end; #line 306 }; if_20_end: /**/; } } }; #line 310 "Variable.m3" PRIVATE t95 _Variable__UserInit (_t) t5 _t; { t5 z1; t9 z3; t9 z0; t5 z2; t9 z4; t64 z5; t5 z6; t8 z7; t8 z8; t12 z9; #line 310 "Variable.m3" { auto t12 _x; { CHECKSTACKOVERFLOW; NILCHECKA (z1 = _t); z3 = ((((t25_fields*)(z1+(0+t71_size+t78_size)))->_init) != 0); z0 = 0; if (z3) { NILCHECKA (z2 = _t); #line 313 z3 = ! (((t25_fields*)(z2+(0+t71_size+t78_size)))->_initDone); z0 = z3; }; z3 = 0; if (z0) { NILCHECKA (z1 = _t); #line 313 z4 = ! (((t71_fields*)(z1+(0+t78_size)))->_imported); z3 = z4; }; if (z3) { NILCHECKA (z1 = _t); z3 = ((((t25_fields*)(z1+(0+t71_size+t78_size)))->_initStmt) != 0); if (z3) { NILCHECKA (z2 = _t); _Stmt__Compile ((((t25_fields*)(z2+(0+t71_size+t78_size)))->_initStmt), &z5); goto if_22_end; #line 315 }; NILCHECKA (z1 = _t); if ((((t25_fields*)(z1+(0+t71_size+t78_size)))->_initZero)) { NILCHECKA (z6 = _t); z7 = _Type__Size ((((t25_fields*)(z6+(0+t71_size+t78_size)))->_tipe)); z8 = IDIV (z7, 8 ); #line 317 _Emit__ZeroL (z8, ((ADDRESS)(& txt30.str)), _t); goto if_22_end; }; NILCHECKA (z1 = _t); z3 = ((((t25_fields*)(z1+(0+t71_size+t78_size)))->_initID) >= 0 ); #line 317 if (z3) { NILCHECKA (z6 = _t); _Emit__OpI (((ADDRESS)(& txt31.str)), (((t25_fields*)(z6+(0+t71_size+t78_size)))->_initID)); _Variable__LoadLValue (_t); NILCHECKA (z6 = _t); z7 = _Type__Size ((((t25_fields*)(z6+(0+t71_size+t78_size)))->_tipe)); z8 = IDIV (z7, 8 ); #line 321 _Emit__OpI (((ADDRESS)(& txt32.str)), z8); goto if_22_end; }; NILCHECKA (z2 = _t); z9 = _Expr__Compile ((((t25_fields*)(z2+(0+t71_size+t78_size)))->_init)); _x = z9; _Variable__LoadName (_t); _Emit__Op (((ADDRESS)(& txt33.str))); NILCHECKA (z1 = _t); if ((((t25_fields*)(z1+(0+t71_size+t78_size)))->_indirect)) { _Emit__Op (((ADDRESS)(& txt34.str))); #line 326 goto if_23_end; }; if_23_end: /**/; _Emit__OpT (((ADDRESS)(& txt35.str)), _x); _Temp__Free (_x); if_22_end: /**/; NILCHECKA (z2 = _t); (((t25_fields*)(z2+(0+t71_size+t78_size)))->_initDone) = 1 ; goto if_21_end; }; if_21_end: /**/; #line 330 } } }; #line 334 "Variable.m3" EXPORT t95 _Variable__GenGlobalMap (_module, _interface, _s) t6 _module; t9 _interface; t11 _s; { t8 z2; t10 z1; t8 z3; t8 z4; t5 z5; t9 z6; t9 z0; #line 334 "Variable.m3" { auto t10 _vars; auto t2 _prefix; auto t9 _header; auto t8 _cnt; { ZERO1B (& _header); ZERO1B ((& _header)); #line 334 CHECKSTACKOVERFLOW; _Scope__ToList (_s, &_vars, &_cnt); { int from, to, index; from = 0 ; z2 = _cnt - 1 ; to = z2; { auto t8 _i; { for (index = from; index <= to; index += 1) { #line 340 _i = (t8) index; NILCHECKB (z1 = _vars); { register t83* array = & (*((t42*) z1)); z4 = _i; if (z4 >= (array->size[0])) RANGEFAULT; #line 341 z3 = (int)(array->elts + (z4 * 4)); }; { register ADDRESS ref = (ADDRESS) (*(t20*)z3); register int tc = TYPECODE (ref); #line 341 if (tc == 0) goto tc0_0; if (ISSUBTYPE (tc, TC5)) goto tc0_1; goto tc0_else; tc0_0:; goto tc0_exit; tc0_1:; #line 341 { auto t5 _t; { _t = (t5) ref; NILCHECKA (z5 = _t); z6 = ! (((t71_fields*)(z5+(0+t78_size)))->_imported); z0 = 0; if (z6) { #line 344 NILCHECKA (z5 = _t); z6 = _Type__IsTraced ((((t25_fields*)(z5+(0+t71_size+t78_size)))->_tipe)); #line 344 z0 = z6; }; if (z0) { NILCHECKA (z5 = _t); z6 = ((((t25_fields*)(z5+(0+t71_size+t78_size)))->_formal) == 0); z0 = 0; #line 345 if (z6) { NILCHECKA (z5 = _t); z6 = ((((t25_fields*)(z5+(0+t71_size+t78_size)))->_indirect) == 0 ); #line 345 z0 = z6; }; if (!z0) ASSERTFAULT; z6 = ! _header; if (z6) { _Temp__PushSet (); if (_interface) { z6 = (_Host__incrementalVersion == 0 ); if (z6) { _Emit__OpS (((ADDRESS)(& txt6.str)), _module); goto if_27_end; }; z6 = (_Host__incrementalVersion > 0 ); #line 351 if (z6) { _Emit__OpS (((ADDRESS)(& txt7.str)), _module); goto if_27_end; }; if_27_end: /**/; _Emit__OpS (((ADDRESS)(& txt8.str)), _module); goto if_26_end; }; z6 = (_Host__incrementalVersion == 0 ); if (z6) { _Emit__OpS (((ADDRESS)(& txt9.str)), _module); _Emit__OpS (((ADDRESS)(& txt10.str)), _module); goto if_28_end; }; z6 = (_Host__incrementalVersion > 0 ); #line 359 if (z6) { _Emit__OpS (((ADDRESS)(& txt11.str)), _module); _Emit__OpS (((ADDRESS)(& txt12.str)), _module); goto if_28_end; }; _Emit__OpS (((ADDRESS)(& txt10.str)), _module); if_28_end: /**/; if_26_end: /**/; _Emit__Op (((ADDRESS)(& txt13.str))); _Emit__Op (((ADDRESS)(& txt14.str))); _Emit__Op (((ADDRESS)(& txt15.str))); _Emit__Op (((ADDRESS)(& txt16.str))); z6 = (_Host__incrementalVersion == 0 ); if (z6) { if (_interface) { _Emit__OpSS (((ADDRESS)(& txt17.str)), _module, _module); goto if_30_end; }; _Emit__OpSS (((ADDRESS)(& txt18.str)), _module, _module); if_30_end: /**/; goto if_29_end; }; if_29_end: /**/; _Emit__Op (((ADDRESS)(& txt19.str))); _header = 1 ; goto if_25_end; }; if_25_end: /**/; (_prefix._top) = 0 ; _Scope__NameToPrefix (_t, &_prefix, 1 ); NILCHECKA (z5 = _t); _Type__GenMap ((((t25_fields*)(z5+(0+t71_size+t78_size)))->_tipe), &_prefix); #line 386 goto if_24_end; }; if_24_end: /**/; } } goto tc0_exit; tc0_else:; tc0_exit:; }; } } }; }; if (_header) { _Emit__Op (((ADDRESS)(& txt20.str))); _Temp__PopSet (); goto if_31_end; }; if_31_end: /**/; } } }; #line 398 "Variable.m3" EXPORT t95 _Variable__InitGlobal (_module, _t) t6 _module; t5 _t; { t5 z1; t9 z2; t9 z0; t5 z3; #line 398 "Variable.m3" { auto t2 _prefix; { CHECKSTACKOVERFLOW; NILCHECKA (z1 = _t); z2 = ! (((t25_fields*)(z1+(0+t71_size+t78_size)))->_initDone); z0 = 0; if (z2) { NILCHECKA (z3 = _t); #line 401 z2 = ! (((t71_fields*)(z3+(0+t78_size)))->_external); z0 = z2; }; if (z0) { (_prefix._top) = 0 ; _Scope__NameToPrefix (_t, &_prefix, 1 ); NILCHECKA (z3 = _t); _Type__InitVariable ((((t25_fields*)(z3+(0+t71_size+t78_size)))->_tipe), 0 , &_prefix); goto if_32_end; #line 404 }; if_32_end: /**/; } } }; #line 408 "Variable.m3" PRIVATE t95 _Variable__FPrinter (_t, _map, _wr) t5 _t; t4 _map; t3 _wr; { t5 z2; #line 408 "Variable.m3" { auto t2 _s; { CHECKSTACKOVERFLOW; _Wr__PutText (_wr, ((ADDRESS)(& txt36.str))); (_s._top) = 0 ; _Scope__NameToPrefix (_t, &_s, 0 ); _String__PutStack (_wr, _s); _Wr__PutText (_wr, ((ADDRESS)(& txt37.str))); NILCHECKA (z2 = _t); _Type__Fingerprint ((((t25_fields*)(z2+(0+t71_size+t78_size)))->_tipe), _map, _wr); } } }; #line 419 "Variable.m3" EXPORT t95 _Variable__Initialize () { t6 z3; #line 419 "Variable.m3" { { CHECKSTACKOVERFLOW; z3 = _String__Add (((ADDRESS)(& txt21.str)), 999999 ); _Variable__Star = z3; } } }; PRIVATE int init_done = -1; #line 421 "Variable.m3" PRIVATE void Variable__initProc (g) int g; { #line 421 "Variable.m3" if (init_done >= g) return; init_done = g; INITIALIZE (& Variable__init); INITIALIZE (& Scanner__init); INITIALIZE (& Host__init); #line 421 INITIALIZE (& ProcType__init); INITIALIZE (& Decl__init); INITIALIZE (& QualifyExpr__init); INITIALIZE (& LongrealExpr__init); #line 421 INITIALIZE (& Module__init); INITIALIZE (& Wr__init); INITIALIZE (& Ident__init); INITIALIZE (& Void__init); INITIALIZE (& Token__init); #line 421 INITIALIZE (& Target__init); INITIALIZE (& ArrayType__init); INITIALIZE (& Temp__init); INITIALIZE (& Formal__init); INITIALIZE (& NamedExpr__init); #line 421 INITIALIZE (& AssignStmt__init); INITIALIZE (& Stmt__init); INITIALIZE (& Scope__init); INITIALIZE (& Emit__init); INITIALIZE (& Error__init); #line 421 INITIALIZE (& Expr__init); INITIALIZE (& Type__init); INITIALIZE (& String__init); INITIALIZE (& ValueRep__init); INITIALIZE (& Value__init); #line 50 ZERO1 ((& _Variable__nextInitID)); #line 421 return; }; #line 421 "Variable.m3" PRIVATE void t25_InitProc (obj) char* obj; { register t25_fields* p; #line 421 "Variable.m3" CHECKSTACKOVERFLOW; p = (t25_fields*) (obj + TC20->datasize); }; #line 421 "Variable.m3" PRIVATE void t25_SetupProc () { register int* p; #line 421 "Variable.m3" t25_TC.datasize += TC20->datasize; t25_TC.methodsize += TC20->methodsize; p = (int*) UALLOC (t25_TC.methodsize); COPY (TC20->defaultMethods, p, (TC20->methodsize)); #line 421 p[0] = (int)(& t25_TC); p[1] = 0; ((t71_methods*) (((char*)p) + TC78->methodsize))->_bind = _Variable__Bind; ((t71_methods*) (((char*)p) + TC78->methodsize))->_typeCheck = _Variable__Check; #line 421 ((t71_methods*) (((char*)p) + TC78->methodsize))->_declare0 = _Variable__Declare; ((t71_methods*) (((char*)p) + TC78->methodsize))->_declare1 = _Variable__Init; #line 421 ((t71_methods*) (((char*)p) + TC78->methodsize))->_declare2 = _Variable__UserInit; ((t71_methods*) (((char*)p) + TC78->methodsize))->_class = _Variable__MyClass; #line 421 ((t71_methods*) (((char*)p) + TC78->methodsize))->_fingerprint = _Variable__FPrinter; ((t71_methods*) (((char*)p) + TC78->methodsize))->_load = _Variable__Load; #line 421 ((t71_methods*) (((char*)p) + TC78->methodsize))->_write = _Variable__Write; ((t71_methods*) (((char*)p) + TC78->methodsize))->_select = _ValueRep__NoDuplicates; #line 421 ((t71_methods*) (((char*)p) + TC78->methodsize))->_needsDecl = _ValueRep__Always; ((t71_methods*) (((char*)p) + TC78->methodsize))->_toExpr = _ValueRep__NoExpr; #line 421 ((t71_methods*) (((char*)p) + TC78->methodsize))->_toType = _ValueRep__NoType; t25_TC.defaultMethods = (char*) p; }; #line 421 "Variable.m3" PRIVATE void t25_PrintProc (obj) char *obj; { t25_fields* o; #line 421 "Variable.m3" CHECKSTACKOVERFLOW; if (TC20->printProc != 0) {TC20->printProc (obj); } fprintf (stderr, "{%s} ", TC25->brand); o = (t25_fields*) (obj + TC20->datasize); #line 421 fprintf (stderr, "tipe = %#x", o->_tipe); fprintf (stderr, ", "); fprintf (stderr, "indirect = %d", o->_indirect); fprintf (stderr, ", "); #line 421 fprintf (stderr, "init = %#x", o->_init); fprintf (stderr, ", "); fprintf (stderr, "sibling = %#x", o->_sibling); fprintf (stderr, ", "); #line 421 fprintf (stderr, "formal = %#x", o->_formal); fprintf (stderr, ", "); fprintf (stderr, "alias = %#x", o->_alias); fprintf (stderr, ", "); #line 421 fprintf (stderr, "root = %d", o->_root); fprintf (stderr, ", "); fprintf (stderr, "initStmt = %#x", o->_initStmt); fprintf (stderr, ", "); #line 421 fprintf (stderr, "initDone = %d", o->_initDone); fprintf (stderr, ", "); fprintf (stderr, "initZero = %d", o->_initZero); #line 421 fprintf (stderr, ", "); fprintf (stderr, "initID = %d", o->_initID); fprintf (stderr, ", "); fprintf (stderr, "minValue = %d", o->_minValue); #line 421 fprintf (stderr, ", "); fprintf (stderr, "maxValue = %d", o->_maxValue); fprintf (stderr, ", "); fprintf (stderr, "canBeOpenArray = %d", o->_canBeOpenArray); #line 421 fprintf (stderr, ", "); }; PRIVATE INITLINK me_0 ={(INITLINK*)NIL, 0, Variable__initProc}; static char* VSimports[] = { &VS_Scanner__cur__929fa6f8367ea415, &VS_Scanner__Match__aaf5b32f2f19a6d8, &VS_Scanner__MatchID__4fb3c66f3429afd9, &VS_Scanner__GetToken__192100a32c7e576d, &VS_Scanner__Fail__a15a8cf32391aa62, &VS_Host__incrementalVersion__1798bcf82af0e178, &VS_ProcType__Raisee__5fe771ff27c179d9, &VS_ProcType__LargeResult__547fe44c362c53bb, &VS_Module__T__be7ead4a3afd8be5, &VS_Module__IsInterface__90cfad77361c85ee, &VS_Thread__Alerted__fc88feb43485af46, &VS_Wr__T__2555b70b3f7780b1, &VS_Wr__Failure__5f82cfb43dabf527, &VS_Wr__Error__c367253d3ed4fd15, &VS_Wr__PutText__e034dab73a793846, &VS_Ident__MaxIDs__008b1dc032f417a4, &VS_Ident__stack__26abbee13e46561c, &VS_Ident__offset__ef43975b2dae4deb, &VS_Ident__top__5f69d9f328d50d34, &VS_Ident__ParseList__bf92180a2a700808, &VS_Void__T__d44caf853dc63223, &VS_Token__DeclStart__730c82bc2c2001b8, &VS_Token__TypeStart__f71616cb38a20d02, &VS_Token__ExprStart__21dc8a0a27344836, &VS_Target__CHARSIZE__bfc83af22ccab4e4, &VS_ArrayType__Split__b3402f88270f8053, &VS_Temp__T__3a6c7dc12615e4ee, &VS_Temp__Free__3b952a2225c26846, &VS_Temp__FromValue__c79a4f6f291f20ac, &VS_Temp__PushSet__421e3799382982bc, &VS_Temp__PopSet__e0f9f19236e0186c, &VS_Formal__Split__dd8860c23cba8174, &VS_Formal__HasClosure__f787b78320096703, &VS_NamedExpr__FromValue__a451eb2c333f9f7b, &VS_AssignStmt__New__b079448931a7d41d, &VS_AssignStmt__CheckRHS__9aaea40f392f387e, &VS_Stmt__T__2446b70b3f7780a5, &VS_Stmt__Bind__55f2c79a304c25df, &VS_Stmt__TypeCheck__e228c94928564a9d, &VS_Stmt__Compile__53f9f2c43edb087a, &VS_Scope__T__3a6c7dc12615e4ee, &VS_Scope__ValueList__64bf053e22e4e53c, &VS_Scope__OuterMost__dc5751683db412a5, &VS_Scope__Insert__ef77c00626575764, &VS_Scope__ToList__4f3684492cf42c93, &VS_Scope__NameToPrefix__480892d13153ee71, &VS_Scope__GenName__3946bbbf2f1d2ba2, &VS_Emit__MaxStream__cf0a0e8934c9c9f3, &VS_Emit__Format__bc4a2b083b93bbd7, &VS_Emit__Op__072646cc27c8ae10, &VS_Emit__OpS__f7dc93802c012951, &VS_Emit__OpSS__6d3e5a1c3d099356, &VS_Emit__OpI__02cb878634bb9f49, &VS_Emit__OpII__2247fe46332f901b, &VS_Emit__OpN__a3f6e37c396e144c, &VS_Emit__OpT__764bdffe21d249e8, &VS_Emit__ZeroL__cdc3e04438bbfecc, &VS_Error__Msg__4d119a332467757f, &VS_Error__Str__2bd0723e3872e90c, &VS_Error__WarnStr__aa8e70c53534552c, &VS_Expr__T__2446b70b3f7780a5, &VS_Expr__List__3f87eceb2b9a246a, &VS_Expr__Parse__193c41662e6da77f, &VS_Expr__Bind__7e2752da3eaf56eb, &VS_Expr__TypeOf__fef0a11b388c64fa, &VS_Expr__ConstValue__ce4fd448218fe483, &VS_Expr__IsZeroes__76ef605028be697c, &VS_Expr__Compile__a7e0cc4029a2ec76, &VS_Expr__GenLiteral__5d3c8414307dac94, &VS_Type__T__2446b70b3f7780a5, &VS_Type__Map__41dd9f4b33104fce, &VS_Type__List__5791758e343becc1, &VS_Type__Parse__603df5e3247e0b72, &VS_Type__Bind__3443ccd12eedb9e8, &VS_Type__Size__2f4d980e28adf05b, &VS_Type__IsEmpty__dfa43388210ba9ab, &VS_Type__GetBounds__9a241b2b3c98ad98, &VS_Type__IsTraced__1998431b3bdeb797, &VS_Type__Check__3c8ceb09206ee440, &VS_Type__Name__f99416972257a869, &VS_Type__InitVariable__6a50e15739c65009, &VS_Type__GenMap__b852cfac248637ca, &VS_Type__Fingerprint__0d24a3463c25e166, &VS_String__T__3a6c7dc12615e4ee, &VS_String__Add__0f5e21cc3d204b63, &VS_String__PutStack__2155a7863fdb4aca, &VS_ValueRep__V__f28699153c608442, &VS_ValueRep__Init__ba99dff739390f9a, &VS_ValueRep__NoDuplicates__ed93f73a247eb7b4, &VS_ValueRep__NoExpr__1297c63d2e046c2c, &VS_ValueRep__NoType__4061f01226f55ca3, &VS_ValueRep__NoLoader__9a7f0c5b24f526c1, &VS_ValueRep__NoWriter__3b24d43c367f7122, &VS_ValueRep__NoDeclarer__22db283420635bde, &VS_ValueRep__Never__39b6ab0628d97589, &VS_ValueRep__Always__1b0a9bbf2173b8b3, &VS_Value__T__2446b70b3f7780a5, &VS_Value__Bind__6439d03d3a1be824, &VS_Value__TypeOf__5fe9c10426934d60, &VS_Value__TypeCheck__917dc8a02c0b0de4, &VS_Value__GenStorageClass__fc0c1a1823c9d008, &VS_Variable__T__be7ead4a3afd8be5, &VS_Scanner__cur__929fa6f8367ea415, &VS_Scanner__MatchID__4fb3c66f3429afd9, &VS_Scanner__Match__aaf5b32f2f19a6d8, &VS_Scanner__Fail__a15a8cf32391aa62, &VS_Scanner__GetToken__192100a32c7e576d, NIL }; void Variable__MLink (phase) int phase; { switch (phase) { case 0: { me_0.link = Variable__init; Variable__init = & me_0; t25_TC = t25_TC_init; REGISTERTYPE (TC25); break; }; case 1: { t25_TC.parent = TC_M3__Value; #line 18 "Variable.m3" IDENTIFYTYPES (TC5, TC25); break; }; case 2: { break; }; }; };