home *** CD-ROM | disk | FTP | other *** search
/ The Datafile PD-CD 5 / DATAFILE_PDCD5.iso / utilities / p / potland / Sources / src / c / COCY < prev    next >
Encoding:
Text File  |  1995-05-06  |  45.6 KB  |  1,150 lines

  1. /* This code is generated by pOt. */
  2.  
  3. #include <pOtRTL.h>
  4. #include "Strings.h"
  5. #include "COCT.h"
  6. #include "COCQ.h"
  7. #include "COCN.h"
  8. #include "COCJ.h"
  9. #include "COCO.h"
  10.  
  11. #include "hi.COCY"
  12.  
  13.  
  14.  
  15. static pOt_Struct_COCT pOt_prevtyp_COCY;
  16. static pOt_BOOLEAN pOt_prevmarked_COCY;
  17.  
  18. static struct {void *next, *vars[0x2];} pOt__gc_ptrs = {pOt_NIL,{
  19.   &pOt_prevtyp_COCY,
  20.   pOt_NIL
  21. }};
  22. static struct {void *next, *vars[0x1];} pOt__gc_strs = {&pOt__gc_ptrs,{
  23.   pOt_NIL
  24. }};
  25.  
  26.  
  27.  
  28.  
  29. static void pOt_ContDecl_COCY()
  30. {
  31.   struct {void*next;} pOt__gc_ptrs;
  32.   pOt__gc_ptrs.next = pOt__gc_root;
  33.  
  34.   pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x0L],&pOt__str_td[0x1]))));
  35.   pOt_Separate_COCO();
  36.  
  37. pOt__Epilogue:;
  38.   pOt__gc_root=(struct pOt__tag_gc_node*)pOt__gc_ptrs.next;
  39. }
  40.  
  41.  
  42.  
  43.  
  44. static void pOt_TermDecl_COCY()
  45. {
  46.   struct {void*next;} pOt__gc_ptrs;
  47.   pOt__gc_ptrs.next = pOt__gc_root;
  48.  
  49.   pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x8L],&pOt__str_td[0x1]))));
  50.   pOt_Wrap_COCO();
  51.  
  52. pOt__Epilogue:;
  53.   pOt__gc_root=(struct pOt__tag_gc_node*)pOt__gc_ptrs.next;
  54. }
  55.  
  56.  
  57.  
  58.  
  59. static void pOt_Modifier_COCY
  60. #if pOt__ANSI_C
  61.   (pOt_INTEGER pOt_m)
  62. #else
  63.   (pOt_m)
  64.   pOt_INTEGER pOt_m;
  65.  
  66. #endif
  67. {
  68.   struct {void*next;} pOt__gc_ptrs;
  69.   pOt__gc_ptrs.next = pOt__gc_root;
  70.  
  71.   switch(pOt_m) {
  72.   case 0:
  73.     pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x10L],&pOt__str_td[0x6]))));
  74.   break;
  75.   case 1:
  76.     pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x1CL],&pOt__str_td[0x6]))));
  77.   break;
  78.   case 2:
  79.     pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x28L],&pOt__str_td[0xE]))));
  80.   break;
  81.   case 3:
  82.     pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x3CL],&pOt__str_td[0x7]))));
  83.   break;
  84.   default:;
  85.     pOt__halt(__FILE__,__LINE__,0x10);
  86.   }
  87.   pOt_Separate_COCO();
  88.  
  89. pOt__Epilogue:;
  90.   pOt__gc_root=(struct pOt__tag_gc_node*)pOt__gc_ptrs.next;
  91. }
  92.  
  93. extern void pOt_Type_COCY pOt__ARGS((pOt_Struct_COCT , pOt_BOOLEAN ));
  94.  
  95. extern void pOt_ParList_COCY pOt__ARGS((pOt_Object_COCT , pOt_BOOLEAN ));
  96.  
  97.  
  98.  
  99.  
  100. static void pOt_Obj_COCY
  101. #if pOt__ANSI_C
  102.   (struct pOt__tag_3_COCT *pOt_x)
  103. #else
  104.   (pOt_x)
  105.   struct pOt__tag_3_COCT *pOt_x;
  106.  
  107. #endif
  108. {
  109.   pOt_INTEGER pOt_np;
  110.   pOt_Struct_COCT pOt_typ;
  111.   struct {void *next, *vars[0x2];} pOt__gc_ptrs;
  112.   struct {void *next, *vars[0x1];} pOt__gc_strs;
  113.   pOt__gc_ptrs.next = pOt__gc_root;
  114.   pOt__gc_strs.next = &pOt__gc_ptrs;
  115.   pOt__gc_ptrs.vars[0x1]=pOt_NIL;
  116.   pOt__gc_strs.vars[0x0]=pOt_NIL;
  117.   pOt__gc_ptrs.vars[0x0]=&pOt_typ;
  118.   pOt__gc_root=(struct pOt__tag_gc_node*)&pOt__gc_strs;
  119.   pOt_typ=pOt_NIL;
  120.  
  121.   pOt_typ=(struct pOt__tag_2_COCT*)((*pOt_x).pOt_typ);
  122.   if(((((*((struct pOt__tag_2_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_typ))).pOt_form==14))&&(((((*((struct pOt__tag_2_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_typ))).pOt_strobj==(*pOt_x).pOt_obj))||(((*((struct pOt__tag_2_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_typ))).pOt_strobj==pOt_NIL)))))) {
  123.     pOt_Prepend_COCQ(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x48L],&pOt__str_td[0x2]))),(pOt_INTEGER)((*pOt_x).pOt_qoffs),&pOt_np);
  124.     pOt_Append_COCQ(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x50L],&pOt__str_td[0x1]))));
  125.     pOt_typ=(struct pOt__tag_2_COCT*)((*((struct pOt__tag_2_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_typ))).pOt_BaseTyp);
  126.   }
  127.   if(((((*((struct pOt__tag_2_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_typ))).pOt_form==13))&&(((((*((struct pOt__tag_2_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_typ))).pOt_strobj==(*pOt_x).pOt_obj))||(((*((struct pOt__tag_2_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_typ))).pOt_strobj==pOt_NIL)))))) {
  128.     pOt_Prepend_COCQ(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x58L],&pOt__str_td[0x1]))),(pOt_INTEGER)((*pOt_x).pOt_qoffs),&pOt_np);
  129.     pOt_typ=(struct pOt__tag_2_COCT*)((*((struct pOt__tag_2_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_typ))).pOt_BaseTyp);
  130.   }
  131.   if(( (*pOt_x).pOt_mode<=3)) {
  132.     if(( pOt_typ==pOt_prevtyp_COCY)) {
  133.       if(((((*pOt_x).pOt_mnolev==((pOt_INTEGER)(0))))&&(((*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,(*pOt_x).pOt_obj))).pOt_marked!=pOt_prevmarked_COCY)))) {
  134.         pOt_TermDecl_COCY();
  135.         if(!(*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,(*pOt_x).pOt_obj))).pOt_marked) {
  136.           pOt_Modifier_COCY((pOt_INTEGER)(1));
  137.         }
  138.         pOt_Type_COCY((struct pOt__tag_2_COCT*)(pOt_typ),(pOt_BOOLEAN)0);
  139.         pOt_prevmarked_COCY=(*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,(*pOt_x).pOt_obj))).pOt_marked;
  140.       } else {
  141.         pOt_ContDecl_COCY();
  142.       }
  143.       pOt_Release_COCQ((struct pOt__tag_3_COCT*)&(*pOt_x));
  144.     } else {
  145.       if(( pOt_prevtyp_COCY!=pOt_NIL)) {
  146.         pOt_TermDecl_COCY();
  147.       }
  148.       switch((*pOt_x).pOt_intval) {
  149.       case 0:
  150.         if((((!pOt_IsParam_COCT((struct pOt__tag_1_COCT*)((*pOt_x).pOt_obj)))&&(((*pOt_x).pOt_mnolev==((pOt_INTEGER)(0)))))&&(!(*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,(*pOt_x).pOt_obj))).pOt_marked))) {
  151.           pOt_Modifier_COCY((pOt_INTEGER)(1));
  152.         }
  153.       break;
  154.       case 1:
  155.         pOt_Modifier_COCY((pOt_INTEGER)(1));
  156.       break;
  157.       case 2:
  158.       break;
  159.       case 3:
  160.         pOt_Modifier_COCY((pOt_INTEGER)(0));
  161.       break;
  162.       default:;
  163.         pOt__halt(__FILE__,__LINE__,0x10);
  164.       }
  165.       pOt_Type_COCY((struct pOt__tag_2_COCT*)(pOt_typ),(pOt_BOOLEAN)0);
  166.       pOt_Release_COCQ((struct pOt__tag_3_COCT*)&(*pOt_x));
  167.       pOt_prevtyp_COCY=(struct pOt__tag_2_COCT*)(pOt_typ);
  168.       pOt_prevmarked_COCY=(*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,(*pOt_x).pOt_obj))).pOt_marked;
  169.     }
  170.   } else if(( (*pOt_x).pOt_mode==12)) {
  171.     if(( pOt_typ==pOt_prevtyp_COCY)) {
  172.       pOt_ContDecl_COCY();
  173.       pOt_Release_COCQ((struct pOt__tag_3_COCT*)&(*pOt_x));
  174.     } else {
  175.       if(( pOt_prevtyp_COCY!=pOt_NIL)) {
  176.         pOt_TermDecl_COCY();
  177.       }
  178.       pOt_Type_COCY((struct pOt__tag_2_COCT*)(pOt_typ),(pOt_BOOLEAN)0);
  179.       pOt_Release_COCQ((struct pOt__tag_3_COCT*)&(*pOt_x));
  180.       pOt_prevtyp_COCY=(struct pOt__tag_2_COCT*)(pOt_typ);
  181.     }
  182.   } else {
  183.     pOt_Type_COCY((struct pOt__tag_2_COCT*)(pOt_typ),(pOt_BOOLEAN)0);
  184.     pOt_Release_COCQ((struct pOt__tag_3_COCT*)&(*pOt_x));
  185.   }
  186.   if(((((*((struct pOt__tag_2_COCT*)pOt__nilchk(__FILE__,__LINE__,(*pOt_x).pOt_typ))).pOt_form==14))&&(((((*((struct pOt__tag_2_COCT*)pOt__nilchk(__FILE__,__LINE__,(*pOt_x).pOt_typ))).pOt_strobj==(*pOt_x).pOt_obj))||(((*((struct pOt__tag_2_COCT*)pOt__nilchk(__FILE__,__LINE__,(*pOt_x).pOt_typ))).pOt_strobj==pOt_NIL)))))) {
  187.     pOt_ParList_COCY((struct pOt__tag_1_COCT*)((*((struct pOt__tag_2_COCT*)pOt__nilchk(__FILE__,__LINE__,(*pOt_x).pOt_typ))).pOt_link),(pOt_BOOLEAN)1);
  188.   }
  189.  
  190. pOt__Epilogue:;
  191.   pOt__gc_root=(struct pOt__tag_gc_node*)pOt__gc_ptrs.next;
  192. }
  193.  
  194.  
  195.  
  196.  
  197. extern void pOt_ObjToItem_COCY
  198. #if pOt__ANSI_C
  199.   (pOt_Object_COCT pOt_obj, struct pOt__tag_3_COCT *pOt_x)
  200. #else
  201.   (pOt_obj, pOt_x)
  202.   pOt_Object_COCT pOt_obj;
  203.   struct pOt__tag_3_COCT *pOt_x;
  204.  
  205. #endif
  206. {
  207.   struct {void *next, *vars[0x2];} pOt__gc_ptrs;
  208.   struct {void *next, *vars[0x1];} pOt__gc_strs;
  209.   pOt__gc_ptrs.next = pOt__gc_root;
  210.   pOt__gc_strs.next = &pOt__gc_ptrs;
  211.   pOt__gc_ptrs.vars[0x1]=pOt_NIL;
  212.   pOt__gc_strs.vars[0x0]=pOt_NIL;
  213.   pOt__gc_ptrs.vars[0x0]=&pOt_obj;
  214.   pOt__gc_root=(struct pOt__tag_gc_node*)&pOt__gc_strs;
  215.  
  216.   (*pOt_x).pOt_mnolev=(pOt_INTEGER)((*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_topScope_COCT))).pOt_mnolev);
  217.   (*pOt_x).pOt_mode=(*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_obj))).pOt_mode;
  218.   (*pOt_x).pOt_obj=(struct pOt__tag_1_COCT*)(pOt_obj);
  219.   (*pOt_x).pOt_typ=(struct pOt__tag_2_COCT*)((*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_obj))).pOt_typ);
  220.   (*pOt_x).pOt_intval=(pOt_LONGINT)((*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_obj))).pOt_intval);
  221.   (*pOt_x).pOt_fltval=(pOt_LONGREAL)((*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_obj))).pOt_fltval);
  222.   if(( (*pOt_x).pOt_mode<=3)) {
  223.     pOt_VarMode_COCT((struct pOt__tag_3_COCT*)&(*pOt_x));
  224.   }
  225.  
  226. pOt__Epilogue:;
  227.   pOt__gc_root=(struct pOt__tag_gc_node*)pOt__gc_ptrs.next;
  228. }
  229.  
  230.  
  231.  
  232.  
  233. extern void pOt_ConstObj_COCY
  234. #if pOt__ANSI_C
  235.   (pOt_Object_COCT pOt_c, pOt_INTEGER pOt_cmode)
  236. #else
  237.   (pOt_c, pOt_cmode)
  238.   pOt_Object_COCT pOt_c;
  239.   pOt_INTEGER pOt_cmode;
  240.  
  241. #endif
  242. {
  243.   pOt_INTEGER pOt_np;
  244.   struct pOt__tag_3_COCT pOt_x;
  245.   struct {void *next, *vars[0x2];} pOt__gc_ptrs;
  246.   struct {void *next, *vars[0x2];} pOt__gc_strs;
  247.   pOt__gc_ptrs.next = pOt__gc_root;
  248.   pOt__gc_strs.next = &pOt__gc_ptrs;
  249.   pOt__gc_ptrs.vars[0x1]=pOt_NIL;
  250.   pOt__gc_strs.vars[0x1]=pOt_NIL;
  251.   pOt__gc_ptrs.vars[0x0]=&pOt_c;
  252.   pOt__gc_strs.vars[0x0]=&pOt_x;
  253.   pOt__gc_root=(struct pOt__tag_gc_node*)&pOt__gc_strs;
  254.   pOt__init_var((pOt__TypDsc**)&pOt_x,(pOt__TypDsc*)&pOt__td_3_COCT);
  255.  
  256.   pOt_ObjToItem_COCY((struct pOt__tag_1_COCT*)(pOt_c),(struct pOt__tag_3_COCT*)&pOt_x);
  257.   pOt_Mark_COCQ((struct pOt__tag_3_COCT*)&pOt_x);
  258.   pOt_CObjName_COCN((struct pOt__tag_3_COCT*)&pOt_x,(pOt_INTEGER)(pOt_x.pOt_qoffs),&pOt_np);
  259.   if(((((pOt_x.pOt_typ==pOt_stringtyp_COCT))&&((pOt_x.pOt_mnolev==((pOt_INTEGER)(0)))))&&(*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_x.pOt_obj))).pOt_marked)) {
  260.     if(( pOt_cmode==((pOt_INTEGER)(3)))) {
  261.       pOt_Modifier_COCY((pOt_INTEGER)(0));
  262.     }
  263.     pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x60L],&pOt__str_td[0xB]))));
  264.     pOt_Separate_COCO();
  265.     pOt_Release_COCQ((struct pOt__tag_3_COCT*)&pOt_x);
  266.     if(( pOt_cmode==((pOt_INTEGER)(0)))) {
  267.       pOt_Mark_COCQ((struct pOt__tag_3_COCT*)&pOt_x);
  268.       pOt_CConstValue_COCJ((struct pOt__tag_3_COCT*)&pOt_x,(pOt_INTEGER)(pOt_x.pOt_qoffs),&pOt_np);
  269.       pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x70L],&pOt__str_td[0x1]))));
  270.       pOt_Release_COCQ((struct pOt__tag_3_COCT*)&pOt_x);
  271.     }
  272.     pOt_TermDecl_COCY();
  273.   } else {
  274.     pOt_Drop_COCQ((struct pOt__tag_3_COCT*)&pOt_x);
  275.   }
  276.  
  277. pOt__Epilogue:;
  278.   pOt__gc_root=(struct pOt__tag_gc_node*)pOt__gc_ptrs.next;
  279. }
  280.  
  281.  
  282.  
  283.  
  284. extern void pOt_TypeObj_COCY
  285. #if pOt__ANSI_C
  286.   (pOt_Object_COCT pOt_t)
  287. #else
  288.   (pOt_t)
  289.   pOt_Object_COCT pOt_t;
  290.  
  291. #endif
  292. {
  293.   pOt_INTEGER pOt_np;
  294.   struct pOt__tag_3_COCT pOt_x;
  295.   struct {void *next, *vars[0x2];} pOt__gc_ptrs;
  296.   struct {void *next, *vars[0x2];} pOt__gc_strs;
  297.   pOt__gc_ptrs.next = pOt__gc_root;
  298.   pOt__gc_strs.next = &pOt__gc_ptrs;
  299.   pOt__gc_ptrs.vars[0x1]=pOt_NIL;
  300.   pOt__gc_strs.vars[0x1]=pOt_NIL;
  301.   pOt__gc_ptrs.vars[0x0]=&pOt_t;
  302.   pOt__gc_strs.vars[0x0]=&pOt_x;
  303.   pOt__gc_root=(struct pOt__tag_gc_node*)&pOt__gc_strs;
  304.   pOt__init_var((pOt__TypDsc**)&pOt_x,(pOt__TypDsc*)&pOt__td_3_COCT);
  305.  
  306.   pOt_ObjToItem_COCY((struct pOt__tag_1_COCT*)(pOt_t),(struct pOt__tag_3_COCT*)&pOt_x);
  307.   pOt_Mark_COCQ((struct pOt__tag_3_COCT*)&pOt_x);
  308.   pOt_CObjName_COCN((struct pOt__tag_3_COCT*)&pOt_x,(pOt_INTEGER)(pOt_x.pOt_qoffs),&pOt_np);
  309.   pOt_Modifier_COCY((pOt_INTEGER)(3));
  310.   pOt_Obj_COCY((struct pOt__tag_3_COCT*)&pOt_x);
  311.   pOt_TermDecl_COCY();
  312.  
  313. pOt__Epilogue:;
  314.   pOt__gc_root=(struct pOt__tag_gc_node*)pOt__gc_ptrs.next;
  315. }
  316.  
  317.  
  318.  
  319.  
  320. extern void pOt_Struct_COCY
  321. #if pOt__ANSI_C
  322.   (pOt_Struct_COCT pOt_typ)
  323. #else
  324.   (pOt_typ)
  325.   pOt_Struct_COCT pOt_typ;
  326.  
  327. #endif
  328. {
  329.   struct {void *next, *vars[0x2];} pOt__gc_ptrs;
  330.   struct {void *next, *vars[0x1];} pOt__gc_strs;
  331.   pOt__gc_ptrs.next = pOt__gc_root;
  332.   pOt__gc_strs.next = &pOt__gc_ptrs;
  333.   pOt__gc_ptrs.vars[0x1]=pOt_NIL;
  334.   pOt__gc_strs.vars[0x0]=pOt_NIL;
  335.   pOt__gc_ptrs.vars[0x0]=&pOt_typ;
  336.   pOt__gc_root=(struct pOt__tag_gc_node*)&pOt__gc_strs;
  337.  
  338.   pOt_Type_COCY((struct pOt__tag_2_COCT*)(pOt_typ),(pOt_BOOLEAN)1);
  339.   pOt_TermDecl_COCY();
  340.  
  341. pOt__Epilogue:;
  342.   pOt__gc_root=(struct pOt__tag_gc_node*)pOt__gc_ptrs.next;
  343. }
  344.  
  345.  
  346.  
  347.  
  348. extern void pOt_StartVOList_COCY()
  349. {
  350.   struct {void*next;} pOt__gc_ptrs;
  351.   pOt__gc_ptrs.next = pOt__gc_root;
  352.  
  353.   pOt_prevtyp_COCY=(struct pOt__tag_2_COCT*)(pOt_NIL);
  354.   pOt_prevmarked_COCY=(pOt_BOOLEAN)0;
  355.  
  356. pOt__Epilogue:;
  357.   pOt__gc_root=(struct pOt__tag_gc_node*)pOt__gc_ptrs.next;
  358. }
  359.  
  360.  
  361.  
  362.  
  363. extern void pOt_VarObj_COCY
  364. #if pOt__ANSI_C
  365.   (pOt_Object_COCT pOt_v, pOt_INTEGER pOt_vmode)
  366. #else
  367.   (pOt_v, pOt_vmode)
  368.   pOt_Object_COCT pOt_v;
  369.   pOt_INTEGER pOt_vmode;
  370.  
  371. #endif
  372. {
  373.   pOt_INTEGER pOt_np;
  374.   struct pOt__tag_3_COCT pOt_x;
  375.   struct {void *next, *vars[0x2];} pOt__gc_ptrs;
  376.   struct {void *next, *vars[0x2];} pOt__gc_strs;
  377.   pOt__gc_ptrs.next = pOt__gc_root;
  378.   pOt__gc_strs.next = &pOt__gc_ptrs;
  379.   pOt__gc_ptrs.vars[0x1]=pOt_NIL;
  380.   pOt__gc_strs.vars[0x1]=pOt_NIL;
  381.   pOt__gc_ptrs.vars[0x0]=&pOt_v;
  382.   pOt__gc_strs.vars[0x0]=&pOt_x;
  383.   pOt__gc_root=(struct pOt__tag_gc_node*)&pOt__gc_strs;
  384.   pOt__init_var((pOt__TypDsc**)&pOt_x,(pOt__TypDsc*)&pOt__td_3_COCT);
  385.  
  386.   pOt_ObjToItem_COCY((struct pOt__tag_1_COCT*)(pOt_v),(struct pOt__tag_3_COCT*)&pOt_x);
  387.   pOt_x.pOt_intval=(pOt_LONGINT)(pOt_vmode);
  388.   pOt_Mark_COCQ((struct pOt__tag_3_COCT*)&pOt_x);
  389.   if(( pOt_x.pOt_intval==((pOt_LONGINT)(1)))) {
  390.     pOt_level_COCT+=(1);
  391.     pOt_CObjName_COCN((struct pOt__tag_3_COCT*)&pOt_x,(pOt_INTEGER)(pOt_x.pOt_qoffs),&pOt_np);
  392.     pOt_level_COCT-=(1);
  393.   } else if(( pOt_x.pOt_intval==((pOt_LONGINT)(2)))) {
  394.     pOt_level_COCT-=(1);
  395.     pOt_CObjName_COCN((struct pOt__tag_3_COCT*)&pOt_x,(pOt_INTEGER)(pOt_x.pOt_qoffs),&pOt_np);
  396.     pOt_level_COCT+=(1);
  397.   } else {
  398.     pOt_CObjName_COCN((struct pOt__tag_3_COCT*)&pOt_x,(pOt_INTEGER)(pOt_x.pOt_qoffs),&pOt_np);
  399.   }
  400.   if(( pOt_x.pOt_mode==3)) {
  401.     pOt_Prepend_COCQ(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x58L],&pOt__str_td[0x1]))),(pOt_INTEGER)(pOt_x.pOt_qoffs),&pOt_np);
  402.   }
  403.   pOt_Obj_COCY((struct pOt__tag_3_COCT*)&pOt_x);
  404.  
  405. pOt__Epilogue:;
  406.   pOt__gc_root=(struct pOt__tag_gc_node*)pOt__gc_ptrs.next;
  407. }
  408.  
  409.  
  410.  
  411.  
  412. extern void pOt_StopVOList_COCY()
  413. {
  414.   struct {void*next;} pOt__gc_ptrs;
  415.   pOt__gc_ptrs.next = pOt__gc_root;
  416.  
  417.   if(( pOt_prevtyp_COCY!=pOt_NIL)) {
  418.     pOt_TermDecl_COCY();
  419.   }
  420.   pOt_prevtyp_COCY=(struct pOt__tag_2_COCT*)(pOt_NIL);
  421.  
  422. pOt__Epilogue:;
  423.   pOt__gc_root=(struct pOt__tag_gc_node*)pOt__gc_ptrs.next;
  424. }
  425.  
  426.  
  427.  
  428.  
  429. extern void pOt_ProcObj_COCY
  430. #if pOt__ANSI_C
  431.   (pOt_Object_COCT pOt_p, pOt_INTEGER pOt_pmode)
  432. #else
  433.   (pOt_p, pOt_pmode)
  434.   pOt_Object_COCT pOt_p;
  435.   pOt_INTEGER pOt_pmode;
  436.  
  437. #endif
  438. {
  439.   pOt_INTEGER pOt_np;
  440.   struct pOt__tag_3_COCT pOt_x;
  441.   struct {void *next, *vars[0x2];} pOt__gc_ptrs;
  442.   struct {void *next, *vars[0x2];} pOt__gc_strs;
  443.   pOt__gc_ptrs.next = pOt__gc_root;
  444.   pOt__gc_strs.next = &pOt__gc_ptrs;
  445.   pOt__gc_ptrs.vars[0x1]=pOt_NIL;
  446.   pOt__gc_strs.vars[0x1]=pOt_NIL;
  447.   pOt__gc_ptrs.vars[0x0]=&pOt_p;
  448.   pOt__gc_strs.vars[0x0]=&pOt_x;
  449.   pOt__gc_root=(struct pOt__tag_gc_node*)&pOt__gc_strs;
  450.   pOt__init_var((pOt__TypDsc**)&pOt_x,(pOt__TypDsc*)&pOt__td_3_COCT);
  451.  
  452.   pOt_ObjToItem_COCY((struct pOt__tag_1_COCT*)(pOt_p),(struct pOt__tag_3_COCT*)&pOt_x);
  453.   pOt_x.pOt_intval=(pOt_LONGINT)(pOt_pmode);
  454.   if(( pOt_x.pOt_intval!=((pOt_LONGINT)(3)))) {
  455.     pOt_x.pOt_mnolev-=(1);
  456.   }
  457.   pOt_Mark_COCQ((struct pOt__tag_3_COCT*)&pOt_x);
  458.   pOt_CObjName_COCN((struct pOt__tag_3_COCT*)&pOt_x,(pOt_INTEGER)(pOt_x.pOt_qoffs),&pOt_np);
  459.   switch(pOt_x.pOt_mode) {
  460.   case 14:
  461.     pOt_Modifier_COCY((pOt_INTEGER)(1));
  462.   break;
  463.   case 15:
  464.     pOt_Modifier_COCY((pOt_INTEGER)(0));
  465.   break;
  466.   case 17:
  467.   break;
  468.   case 18:
  469.     pOt_Modifier_COCY((pOt_INTEGER)(2));
  470.   break;
  471.   default:;
  472.     pOt__halt(__FILE__,__LINE__,0x10);
  473.   }
  474.   pOt_Type_COCY((struct pOt__tag_2_COCT*)(pOt_x.pOt_typ),(pOt_BOOLEAN)0);
  475.   pOt_Release_COCQ((struct pOt__tag_3_COCT*)&pOt_x);
  476.   pOt_ParList_COCY((struct pOt__tag_1_COCT*)((*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_x.pOt_obj))).pOt_dsc),(pOt_x.pOt_intval!=((pOt_LONGINT)(0))));
  477.   if(( pOt_x.pOt_intval!=((pOt_LONGINT)(0)))) {
  478.     pOt_TermDecl_COCY();
  479.   }
  480.  
  481. pOt__Epilogue:;
  482.   pOt__gc_root=(struct pOt__tag_gc_node*)pOt__gc_ptrs.next;
  483. }
  484.  
  485.  
  486.  
  487.  
  488. extern void pOt_RetObj_COCY
  489. #if pOt__ANSI_C
  490.   (pOt_Object_COCT pOt_proc)
  491. #else
  492.   (pOt_proc)
  493.   pOt_Object_COCT pOt_proc;
  494.  
  495. #endif
  496. {
  497.   pOt_INTEGER pOt_np;
  498.   struct pOt__tag_3_COCT pOt_x;
  499.   struct {void *next, *vars[0x2];} pOt__gc_ptrs;
  500.   struct {void *next, *vars[0x2];} pOt__gc_strs;
  501.   pOt__gc_ptrs.next = pOt__gc_root;
  502.   pOt__gc_strs.next = &pOt__gc_ptrs;
  503.   pOt__gc_ptrs.vars[0x1]=pOt_NIL;
  504.   pOt__gc_strs.vars[0x1]=pOt_NIL;
  505.   pOt__gc_ptrs.vars[0x0]=&pOt_proc;
  506.   pOt__gc_strs.vars[0x0]=&pOt_x;
  507.   pOt__gc_root=(struct pOt__tag_gc_node*)&pOt__gc_strs;
  508.   pOt__init_var((pOt__TypDsc**)&pOt_x,(pOt__TypDsc*)&pOt__td_3_COCT);
  509.  
  510.   pOt_Mark_COCQ((struct pOt__tag_3_COCT*)&pOt_x);
  511.   pOt_CRetName_COCN((pOt_INTEGER)(pOt_x.pOt_qoffs),&pOt_np);
  512.   pOt_Type_COCY((struct pOt__tag_2_COCT*)((*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_proc))).pOt_typ),(pOt_BOOLEAN)0);
  513.   pOt_Release_COCQ((struct pOt__tag_3_COCT*)&pOt_x);
  514.   pOt_TermDecl_COCY();
  515.  
  516. pOt__Epilogue:;
  517.   pOt__gc_root=(struct pOt__tag_gc_node*)pOt__gc_ptrs.next;
  518. }
  519.  
  520.  
  521.  
  522.  
  523. extern void pOt_BodyObj_COCY
  524. #if pOt__ANSI_C
  525.   (pOt_Object_COCT pOt_obj, pOt_INTEGER pOt_pmode)
  526. #else
  527.   (pOt_obj, pOt_pmode)
  528.   pOt_Object_COCT pOt_obj;
  529.   pOt_INTEGER pOt_pmode;
  530.  
  531. #endif
  532. {
  533.   pOt_INTEGER pOt_np;
  534.   struct pOt__tag_3_COCT pOt_x;
  535.   struct {void *next, *vars[0x2];} pOt__gc_ptrs;
  536.   struct {void *next, *vars[0x2];} pOt__gc_strs;
  537.   pOt__gc_ptrs.next = pOt__gc_root;
  538.   pOt__gc_strs.next = &pOt__gc_ptrs;
  539.   pOt__gc_ptrs.vars[0x1]=pOt_NIL;
  540.   pOt__gc_strs.vars[0x1]=pOt_NIL;
  541.   pOt__gc_ptrs.vars[0x0]=&pOt_obj;
  542.   pOt__gc_strs.vars[0x0]=&pOt_x;
  543.   pOt__gc_root=(struct pOt__tag_gc_node*)&pOt__gc_strs;
  544.   pOt__init_var((pOt__TypDsc**)&pOt_x,(pOt__TypDsc*)&pOt__td_3_COCT);
  545.  
  546.   if(( pOt_pmode==((pOt_INTEGER)(3)))) {
  547.     pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x78L],&pOt__str_td[0x7]))));
  548.   }
  549.   pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x84L],&pOt__str_td[0x5]))));
  550.   pOt_Mark_COCQ((struct pOt__tag_3_COCT*)&pOt_x);
  551.   pOt_CBodyName_COCN((struct pOt__tag_1_COCT*)(pOt_obj),(pOt_INTEGER)(pOt_x.pOt_qoffs),&pOt_np);
  552.   pOt_Release_COCQ((struct pOt__tag_3_COCT*)&pOt_x);
  553.   if(( pOt_pmode==((pOt_INTEGER)(0)))) {
  554.     pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x90L],&pOt__str_td[0x2]))));
  555.     pOt_Wrap_COCO();
  556.   } else {
  557.     pOt_Separate_COCO();
  558.     pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x98L],&pOt__str_td[0x11]))));
  559.     pOt_TermDecl_COCY();
  560.   }
  561.  
  562. pOt__Epilogue:;
  563.   pOt__gc_root=(struct pOt__tag_gc_node*)pOt__gc_ptrs.next;
  564. }
  565.  
  566.  
  567. struct pOt__tag_0_COCY {
  568.   pOt__ArrTypDsc *td;
  569.   pOt_CHAR arr[0x9L];
  570. } ;
  571. static pOt__ArrTypDsc pOt__td_0_COCY= {
  572.   1,
  573.   0x9L, sizeof(pOt_CHAR)
  574. };
  575.  
  576.  
  577. static void pOt_StrTypeDef_COCY
  578. #if pOt__ANSI_C
  579.   (pOt_Struct_COCT pOt_str)
  580. #else
  581.   (pOt_str)
  582.   pOt_Struct_COCT pOt_str;
  583.  
  584. #endif
  585. {
  586.   struct pOt__tag_0_COCY pOt_s;
  587.   pOt_INTEGER pOt_np;
  588.   struct pOt__tag_3_COCT pOt_x;
  589.   pOt_Object_COCT pOt_fld;
  590.   struct {void *next, *vars[0x3];} pOt__gc_ptrs;
  591.   struct {void *next, *vars[0x2];} pOt__gc_strs;
  592.   pOt__gc_ptrs.next = pOt__gc_root;
  593.   pOt__gc_strs.next = &pOt__gc_ptrs;
  594.   pOt__gc_ptrs.vars[0x2]=pOt_NIL;
  595.   pOt__gc_strs.vars[0x1]=pOt_NIL;
  596.   pOt__gc_ptrs.vars[0x1]=&pOt_str;
  597.   pOt__gc_strs.vars[0x0]=&pOt_x;
  598.   pOt__gc_ptrs.vars[0x0]=&pOt_fld;
  599.   pOt__gc_root=(struct pOt__tag_gc_node*)&pOt__gc_strs;
  600.   pOt__init_var((pOt__TypDsc**)&pOt_s,(pOt__TypDsc*)&pOt__td_0_COCY);
  601.   pOt__init_var((pOt__TypDsc**)&pOt_x,(pOt__TypDsc*)&pOt__td_3_COCT);
  602.   pOt_fld=pOt_NIL;
  603.  
  604.   pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0xB0L],&pOt__str_td[0x1]))));
  605.   pOt_Wrap_COCO();
  606.   pOt_Indent_COCO();
  607.   switch((*((struct pOt__tag_2_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_str))).pOt_form) {
  608.   case 15:
  609.     switch((*((struct pOt__tag_2_COCT*)pOt__nilchk(__FILE__,__LINE__,(*((struct pOt__tag_2_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_str))).pOt_BaseTyp))).pOt_form) {
  610.     case 0:
  611.     case 1:
  612.     case 2:
  613.     case 3:
  614.     case 4:
  615.     case 5:
  616.     case 6:
  617.     case 7:
  618.     case 8:
  619.     case 9:
  620.       pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0xB8L],&pOt__str_td[0xE]))));
  621.     break;
  622.     case 13:
  623.     case 14:
  624.       pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0xCCL],&pOt__str_td[0x11]))));
  625.     break;
  626.     case 10:
  627.     case 11:
  628.     case 12:
  629.     break;
  630.     case 15:
  631.     case 17:
  632.       pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0xE4L],&pOt__str_td[0x11]))));
  633.     break;
  634.     case 16:
  635.     break;
  636.     default:;
  637.       pOt__halt(__FILE__,__LINE__,0x10);
  638.     }
  639.     pOt_Separate_COCO();
  640.     pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0xFCL],&pOt__str_td[0x3]))));
  641.     pOt_TermDecl_COCY();
  642.     pOt_x.pOt_mode=12;
  643.     pOt_x.pOt_typ=(struct pOt__tag_2_COCT*)((*((struct pOt__tag_2_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_str))).pOt_BaseTyp);
  644.     pOt_Mark_COCQ((struct pOt__tag_3_COCT*)&pOt_x);
  645.     pOt_Append_COCQ(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x104L],&pOt__str_td[0x6]))));
  646.     pOt_FromLInt_Strings((pOt_LONGINT)((*((struct pOt__tag_2_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_str))).pOt_n),16,(pOt__ArrTypDsc**)&pOt_s);
  647.     pOt_Append_COCQ(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&pOt_s));
  648.     pOt_Append_COCQ(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x110L],&pOt__str_td[0x2]))));
  649.     pOt_StartVOList_COCY();
  650.     pOt_Obj_COCY((struct pOt__tag_3_COCT*)&pOt_x);
  651.     pOt_StopVOList_COCY();
  652.   break;
  653.   case 17:
  654.     if(( (*((struct pOt__tag_2_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_str))).pOt_BaseTyp==pOt_NIL)) {
  655.       pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x118L],&pOt__str_td[0x12]))));
  656.     } else {
  657.       pOt_Type_COCY((struct pOt__tag_2_COCT*)((*((struct pOt__tag_2_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_str))).pOt_BaseTyp),(pOt_BOOLEAN)0);
  658.       pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x130L],&pOt__str_td[0x4]))));
  659.     }
  660.     pOt_TermDecl_COCY();
  661.     pOt_fld=(struct pOt__tag_1_COCT*)((*((struct pOt__tag_2_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_str))).pOt_link);
  662.     if(( pOt_fld!=pOt_NIL)) {
  663.       pOt_StartVOList_COCY();
  664.       for(;;) {
  665.         if(( pOt_fld!=pOt_NIL)); else break;
  666.         if(pOt__cmpss((pOt_CHAR*)& (*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_fld))).pOt_name,&pOt__strcon_buf[0x13CL],0xA)) {
  667.           pOt_VarObj_COCY((struct pOt__tag_1_COCT*)(pOt_fld),(pOt_INTEGER)(0));
  668.           pOt_fld=(struct pOt__tag_1_COCT*)((*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_fld))).pOt_next);
  669.         }
  670.       }
  671.       pOt_StopVOList_COCY();
  672.     }
  673.   break;
  674.   default:;
  675.     pOt__halt(__FILE__,__LINE__,0x10);
  676.   }
  677.   pOt_Undent_COCO();
  678.   pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x144L],&pOt__str_td[0x1]))));
  679.  
  680. pOt__Epilogue:;
  681.   pOt__gc_root=(struct pOt__tag_gc_node*)pOt__gc_ptrs.next;
  682. }
  683.  
  684.  
  685.  
  686.  
  687. extern void pOt_Type_COCY
  688. #if pOt__ANSI_C
  689.   (pOt_Struct_COCT pOt_str, pOt_BOOLEAN pOt_def)
  690. #else
  691.   (pOt_str, pOt_def)
  692.   pOt_Struct_COCT pOt_str;
  693.   pOt_BOOLEAN pOt_def;
  694.  
  695. #endif
  696. {
  697.   pOt_INTEGER pOt_np;
  698.   struct pOt__tag_3_COCT pOt_x;
  699.   struct {void *next, *vars[0x2];} pOt__gc_ptrs;
  700.   struct {void *next, *vars[0x2];} pOt__gc_strs;
  701.   pOt__gc_ptrs.next = pOt__gc_root;
  702.   pOt__gc_strs.next = &pOt__gc_ptrs;
  703.   pOt__gc_ptrs.vars[0x1]=pOt_NIL;
  704.   pOt__gc_strs.vars[0x1]=pOt_NIL;
  705.   pOt__gc_ptrs.vars[0x0]=&pOt_str;
  706.   pOt__gc_strs.vars[0x0]=&pOt_x;
  707.   pOt__gc_root=(struct pOt__tag_gc_node*)&pOt__gc_strs;
  708.   pOt__init_var((pOt__TypDsc**)&pOt_x,(pOt__TypDsc*)&pOt__td_3_COCT);
  709.  
  710.   pOt_x.pOt_mnolev=(pOt_INTEGER)(-(*((struct pOt__tag_2_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_str))).pOt_mno);
  711.   pOt_x.pOt_mode=13;
  712.   pOt_x.pOt_typ=(struct pOt__tag_2_COCT*)(pOt_str);
  713.   pOt_x.pOt_obj=(struct pOt__tag_1_COCT*)((*((struct pOt__tag_2_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_str))).pOt_strobj);
  714.   pOt_Mark_COCQ((struct pOt__tag_3_COCT*)&pOt_x);
  715.   if(( (*((struct pOt__tag_2_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_str))).pOt_form==12)) {
  716.     pOt_Append_COCQ(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x14CL],&pOt__str_td[0x4]))));
  717.     pOt_Release_COCQ((struct pOt__tag_3_COCT*)&pOt_x);
  718.   } else if(( (*((struct pOt__tag_2_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_str))).pOt_form==16)) {
  719.     if(( (*((struct pOt__tag_2_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_str))).pOt_BaseTyp==pOt_bytetyp_COCT)) {
  720.       pOt_Append_COCQ(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x158L],&pOt__str_td[0xB]))));
  721.     } else {
  722.       pOt_Append_COCQ(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x168L],&pOt__str_td[0xB]))));
  723.     }
  724.     pOt_Release_COCQ((struct pOt__tag_3_COCT*)&pOt_x);
  725.   } else if(((unsigned long)0!=((unsigned long)1<<pOt__rngchk_se(__FILE__,__LINE__, (*((struct pOt__tag_2_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_str))).pOt_form)&(pOt_SET)0x28000L))) {
  726.     pOt_CTagName_COCN((struct pOt__tag_2_COCT*)(pOt_str),(pOt_INTEGER)(pOt_x.pOt_qoffs),&pOt_np);
  727.     pOt_Release_COCQ((struct pOt__tag_3_COCT*)&pOt_x);
  728.     if(pOt_def) {
  729.       pOt_Separate_COCO();
  730.       pOt_StrTypeDef_COCY((struct pOt__tag_2_COCT*)(pOt_str));
  731.     }
  732.   } else {
  733.     if(( pOt_x.pOt_mnolev==((pOt_INTEGER)(0)))) {
  734.       pOt_FindObj_COCT((struct pOt__tag_1_COCT*)(pOt_x.pOt_obj),&pOt_x.pOt_mnolev);
  735.     }
  736.     if(( (*((struct pOt__tag_2_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_str))).pOt_form!=0)) {
  737.       pOt_CObjName_COCN((struct pOt__tag_3_COCT*)&pOt_x,(pOt_INTEGER)(pOt_x.pOt_qoffs),&pOt_np);
  738.     }
  739.     pOt_Release_COCQ((struct pOt__tag_3_COCT*)&pOt_x);
  740.   }
  741.   pOt_Separate_COCO();
  742.  
  743. pOt__Epilogue:;
  744.   pOt__gc_root=(struct pOt__tag_gc_node*)pOt__gc_ptrs.next;
  745. }
  746.  
  747.  
  748.  
  749.  
  750. extern void pOt_ParList_COCY
  751. #if pOt__ANSI_C
  752.   (pOt_Object_COCT pOt_par, pOt_BOOLEAN pOt_fwd)
  753. #else
  754.   (pOt_par, pOt_fwd)
  755.   pOt_Object_COCT pOt_par;
  756.   pOt_BOOLEAN pOt_fwd;
  757.  
  758. #endif
  759. {
  760.   pOt_INTEGER pOt_np;
  761.   struct pOt__tag_3_COCT pOt_x;
  762.   pOt_Object_COCT pOt_parorg, pOt_parend;
  763.   struct {void *next, *vars[0x4];} pOt__gc_ptrs;
  764.   struct {void *next, *vars[0x2];} pOt__gc_strs;
  765.   pOt__gc_ptrs.next = pOt__gc_root;
  766.   pOt__gc_strs.next = &pOt__gc_ptrs;
  767.   pOt__gc_ptrs.vars[0x3]=pOt_NIL;
  768.   pOt__gc_strs.vars[0x1]=pOt_NIL;
  769.   pOt__gc_ptrs.vars[0x2]=&pOt_par;
  770.   pOt__gc_strs.vars[0x0]=&pOt_x;
  771.   pOt__gc_ptrs.vars[0x1]=&pOt_parorg;
  772.   pOt__gc_ptrs.vars[0x0]=&pOt_parend;
  773.   pOt__gc_root=(struct pOt__tag_gc_node*)&pOt__gc_strs;
  774.   pOt__init_var((pOt__TypDsc**)&pOt_x,(pOt__TypDsc*)&pOt__td_3_COCT);
  775.   pOt_parorg=pOt_NIL;
  776.   pOt_parend=pOt_NIL;
  777.  
  778.   if(((((pOt_par!=pOt_NIL))&&(((*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_par))).pOt_mode<=3)))&&(((*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_par))).pOt_intval==((pOt_LONGINT)(1)))))) {
  779.     if(pOt_fwd) {
  780.       pOt_Separate_COCO();
  781.       pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x178L],&pOt__str_td[0xB]))));
  782.       for(;;) {
  783.         pOt_ObjToItem_COCY((struct pOt__tag_1_COCT*)(pOt_par),(struct pOt__tag_3_COCT*)&pOt_x);
  784.         pOt_x.pOt_intval=(pOt_LONGINT)(0);
  785.         pOt_Mark_COCQ((struct pOt__tag_3_COCT*)&pOt_x);
  786.         if(( pOt_x.pOt_mode==3)) {
  787.           pOt_Prepend_COCQ(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x58L],&pOt__str_td[0x1]))),(pOt_INTEGER)(pOt_x.pOt_qoffs),&pOt_np);
  788.         }
  789.         pOt_prevtyp_COCY=(struct pOt__tag_2_COCT*)(pOt_NIL);
  790.         pOt_Obj_COCY((struct pOt__tag_3_COCT*)&pOt_x);
  791.         pOt_par=(struct pOt__tag_1_COCT*)((*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_par))).pOt_next);
  792.         if(((((pOt_par==pOt_NIL))||(((*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_par))).pOt_mode>3)))||(((*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_par))).pOt_intval==((pOt_LONGINT)(0)))))) {
  793.           goto pOt__LoopLabel_1;
  794.         }
  795.         pOt_ContDecl_COCY();
  796.       }
  797.     pOt__LoopLabel_1:;
  798.       pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x188L],&pOt__str_td[0x2]))));
  799.     } else {
  800.       pOt_parorg=(struct pOt__tag_1_COCT*)(pOt_par);
  801.       pOt_Indent_COCO();
  802.       pOt_PutPP_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x190L],&pOt__str_td[0xE]))));
  803.       pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x1A4L],&pOt__str_td[0x1]))));
  804.       for(;;) {
  805.         pOt_ObjToItem_COCY((struct pOt__tag_1_COCT*)(pOt_par),(struct pOt__tag_3_COCT*)&pOt_x);
  806.         pOt_x.pOt_intval=(pOt_LONGINT)(0);
  807.         pOt_Mark_COCQ((struct pOt__tag_3_COCT*)&pOt_x);
  808.         pOt_CObjName_COCN((struct pOt__tag_3_COCT*)&pOt_x,(pOt_INTEGER)(pOt_x.pOt_qoffs),&pOt_np);
  809.         if(( pOt_x.pOt_mode==3)) {
  810.           pOt_Prepend_COCQ(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x58L],&pOt__str_td[0x1]))),(pOt_INTEGER)(pOt_x.pOt_qoffs),&pOt_np);
  811.         }
  812.         pOt_prevtyp_COCY=(struct pOt__tag_2_COCT*)(pOt_NIL);
  813.         pOt_Obj_COCY((struct pOt__tag_3_COCT*)&pOt_x);
  814.         pOt_par=(struct pOt__tag_1_COCT*)((*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_par))).pOt_next);
  815.         if(((((pOt_par==pOt_NIL))||(((*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_par))).pOt_mode>3)))||(((*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_par))).pOt_intval==((pOt_LONGINT)(0)))))) {
  816.           pOt_parend=(struct pOt__tag_1_COCT*)(pOt_par);
  817.           goto pOt__LoopLabel_2;
  818.         }
  819.         pOt_ContDecl_COCY();
  820.       }
  821.     pOt__LoopLabel_2:;
  822.       pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x50L],&pOt__str_td[0x1]))));
  823.       pOt_PutPP_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x1ACL],&pOt__str_td[0x4]))));
  824.       pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x1A4L],&pOt__str_td[0x1]))));
  825.       pOt_par=(struct pOt__tag_1_COCT*)(pOt_parorg);
  826.       for(;;) {
  827.         pOt_ObjToItem_COCY((struct pOt__tag_1_COCT*)(pOt_par),(struct pOt__tag_3_COCT*)&pOt_x);
  828.         pOt_Mark_COCQ((struct pOt__tag_3_COCT*)&pOt_x);
  829.         pOt_CObjName_COCN((struct pOt__tag_3_COCT*)&pOt_x,(pOt_INTEGER)(pOt_x.pOt_qoffs),&pOt_np);
  830.         pOt_Release_COCQ((struct pOt__tag_3_COCT*)&pOt_x);
  831.         pOt_par=(struct pOt__tag_1_COCT*)((*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_par))).pOt_next);
  832.         if(( pOt_par==pOt_parend)) {
  833.           goto pOt__LoopLabel_3;
  834.         }
  835.         pOt_ContDecl_COCY();
  836.       }
  837.     pOt__LoopLabel_3:;
  838.       pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x50L],&pOt__str_td[0x1]))));
  839.       pOt_Wrap_COCO();
  840.       pOt_par=(struct pOt__tag_1_COCT*)(pOt_parorg);
  841.       pOt_StartVOList_COCY();
  842.       for(;;) {
  843.         pOt_VarObj_COCY((struct pOt__tag_1_COCT*)(pOt_par),(pOt_INTEGER)(0));
  844.         pOt_par=(struct pOt__tag_1_COCT*)((*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_par))).pOt_next);
  845.         if(( pOt_par==pOt_parend)) break;
  846.       }
  847.       pOt_StopVOList_COCY();
  848.       pOt_PutPP_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x1B8L],&pOt__str_td[0x5]))));
  849.       pOt_Undent_COCO();
  850.     }
  851.   } else {
  852.     if(pOt_fwd) {
  853.       pOt_Separate_COCO();
  854.       pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x98L],&pOt__str_td[0x11]))));
  855.     } else {
  856.       pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x90L],&pOt__str_td[0x2]))));
  857.       pOt_Wrap_COCO();
  858.     }
  859.   }
  860.  
  861. pOt__Epilogue:;
  862.   pOt__gc_root=(struct pOt__tag_gc_node*)pOt__gc_ptrs.next;
  863. }
  864.  
  865.  
  866. struct pOt__tag_1_COCY {
  867.   pOt__ArrTypDsc *td;
  868.   pOt_CHAR arr[0x9L];
  869. } ;
  870. static pOt__ArrTypDsc pOt__td_1_COCY= {
  871.   1,
  872.   0x9L, sizeof(pOt_CHAR)
  873. };
  874.  
  875. static pOt_INTEGER (*pOt_nptr_GCNode_COCY), (*pOt_nstr_GCNode_COCY);
  876. static pOt_Object_COCT (*pOt_firstvar_GCNode_COCY), (*pOt_obj_GCNode_COCY);
  877. static struct pOt__tag_1_COCY (*pOt_s_GCNode_COCY);
  878. static struct pOt__tag_3_COCT (*pOt_x_GCNode_COCY);
  879. static pOt_INTEGER (*pOt_np_GCNode_COCY);
  880. static pOt_BOOLEAN (*pOt_dummyGC_GCNode_COCY);
  881.  
  882. extern void pOt_GCNode_COCY pOt__ARGS((pOt_INTEGER , pOt_INTEGER , pOt_Object_COCT ));
  883.  
  884.  
  885.  
  886.  
  887. static void pOt_Ptr_GCNode_COCY
  888. #if pOt__ANSI_C
  889.   (pOt_INTEGER pOt_iptr)
  890. #else
  891.   (pOt_iptr)
  892.   pOt_INTEGER pOt_iptr;
  893.  
  894. #endif
  895. {
  896.   struct {void*next;} pOt__gc_ptrs;
  897.   pOt__gc_ptrs.next = pOt__gc_root;
  898.  
  899.   pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x1C4L],&pOt__str_td[0x14]))));
  900.   pOt_FromLInt_Strings((pOt_LONGINT)(pOt_iptr),16,(pOt__ArrTypDsc**)&(*pOt_s_GCNode_COCY));
  901.   pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt_s_GCNode_COCY)));
  902.   pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x1E0L],&pOt__str_td[0x2]))));
  903.  
  904. pOt__Epilogue:;
  905.   pOt__gc_root=(struct pOt__tag_gc_node*)pOt__gc_ptrs.next;
  906. }
  907.  
  908.  
  909.  
  910.  
  911. static void pOt_Str_GCNode_COCY
  912. #if pOt__ANSI_C
  913.   (pOt_INTEGER pOt_istr)
  914. #else
  915.   (pOt_istr)
  916.   pOt_INTEGER pOt_istr;
  917.  
  918. #endif
  919. {
  920.   struct {void*next;} pOt__gc_ptrs;
  921.   pOt__gc_ptrs.next = pOt__gc_root;
  922.  
  923.   pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x1E8L],&pOt__str_td[0x14]))));
  924.   pOt_FromLInt_Strings((pOt_LONGINT)(pOt_istr),16,(pOt__ArrTypDsc**)&(*pOt_s_GCNode_COCY));
  925.   pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt_s_GCNode_COCY)));
  926.   pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x1E0L],&pOt__str_td[0x2]))));
  927.  
  928. pOt__Epilogue:;
  929.   pOt__gc_root=(struct pOt__tag_gc_node*)pOt__gc_ptrs.next;
  930. }
  931.  
  932. extern void pOt_GCNode_COCY
  933. #if pOt__ANSI_C
  934.   (pOt_INTEGER pOt_nptr, pOt_INTEGER pOt_nstr, pOt_Object_COCT pOt_firstvar)
  935. #else
  936.   (pOt_nptr, pOt_nstr, pOt_firstvar)
  937.   pOt_INTEGER pOt_nptr, pOt_nstr;
  938.   pOt_Object_COCT pOt_firstvar;
  939.  
  940. #endif
  941. {
  942.   pOt_INTEGER (*pOt_nptr_), (*pOt_nstr_);
  943.   pOt_Object_COCT (*pOt_firstvar_), pOt_obj, (*pOt_obj_);
  944.   struct pOt__tag_1_COCY pOt_s, (*pOt_s_);
  945.   struct pOt__tag_3_COCT pOt_x, (*pOt_x_);
  946.   pOt_INTEGER pOt_np, (*pOt_np_);
  947.   pOt_BOOLEAN pOt_dummyGC, (*pOt_dummyGC_);
  948.   struct {void *next, *vars[0x3];} pOt__gc_ptrs;
  949.   struct {void *next, *vars[0x2];} pOt__gc_strs;
  950.   pOt__gc_ptrs.next = pOt__gc_root;
  951.   pOt__gc_strs.next = &pOt__gc_ptrs;
  952.   pOt__gc_ptrs.vars[0x2]=pOt_NIL;
  953.   pOt__gc_strs.vars[0x1]=pOt_NIL;
  954.   pOt__gc_ptrs.vars[0x1]=&pOt_firstvar;
  955.   pOt__gc_ptrs.vars[0x0]=&pOt_obj;
  956.   pOt__gc_strs.vars[0x0]=&pOt_x;
  957.   pOt__gc_root=(struct pOt__tag_gc_node*)&pOt__gc_strs;
  958.   pOt_nptr_=pOt_nptr_GCNode_COCY;
  959.   pOt_nptr_GCNode_COCY=&pOt_nptr;
  960.   pOt_nstr_=pOt_nstr_GCNode_COCY;
  961.   pOt_nstr_GCNode_COCY=&pOt_nstr;
  962.   pOt_firstvar_=pOt_firstvar_GCNode_COCY;
  963.   pOt_firstvar_GCNode_COCY=&pOt_firstvar;
  964.   pOt_obj_=pOt_obj_GCNode_COCY;
  965.   pOt_obj_GCNode_COCY=&pOt_obj;
  966.   pOt_obj=pOt_NIL;
  967.   pOt_s_=pOt_s_GCNode_COCY;
  968.   pOt_s_GCNode_COCY=&pOt_s;
  969.   pOt__init_var((pOt__TypDsc**)&pOt_s,(pOt__TypDsc*)&pOt__td_1_COCY);
  970.   pOt_x_=pOt_x_GCNode_COCY;
  971.   pOt_x_GCNode_COCY=&pOt_x;
  972.   pOt__init_var((pOt__TypDsc**)&pOt_x,(pOt__TypDsc*)&pOt__td_3_COCT);
  973.   pOt_np_=pOt_np_GCNode_COCY;
  974.   pOt_np_GCNode_COCY=&pOt_np;
  975.   pOt_dummyGC_=pOt_dummyGC_GCNode_COCY;
  976.   pOt_dummyGC_GCNode_COCY=&pOt_dummyGC;
  977.  
  978.   if(( pOt_level_COCT==((pOt_INTEGER)(0)))) {
  979.     pOt_Modifier_COCY((pOt_INTEGER)(1));
  980.     pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x204L],&pOt__str_td[0x1C]))));
  981.     pOt_FromLInt_Strings((pOt_LONGINT)((pOt_INTEGER)pOt__addchk(__FILE__,__LINE__,(pOt_LONGINT)(pOt_nptr),(pOt_LONGINT)(1),5)),16,(pOt__ArrTypDsc**)&pOt_s);
  982.     pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&pOt_s));
  983.     pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x228L],&pOt__str_td[0x1D]))));
  984.     pOt_Wrap_COCO();
  985.     pOt_Indent_COCO();
  986.     pOt_obj=(struct pOt__tag_1_COCT*)(pOt_firstvar);
  987.     for(;;) {
  988.       if((((pOt_obj!=pOt_NIL))&&(((*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_obj))).pOt_mode<=13)))); else break;
  989.       if(((((*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_obj))).pOt_mode==1))&&(((*((struct pOt__tag_2_COCT*)pOt__nilchk(__FILE__,__LINE__,(*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_obj))).pOt_typ))).pOt_form==13)))) {
  990.         pOt_ObjToItem_COCY((struct pOt__tag_1_COCT*)(pOt_obj),(struct pOt__tag_3_COCT*)&pOt_x);
  991.         if(( pOt_x.pOt_mode==1)) {
  992.           pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x24CL],&pOt__str_td[0x1]))));
  993.         }
  994.         pOt_Mark_COCQ((struct pOt__tag_3_COCT*)&pOt_x);
  995.         pOt_CObjName_COCN((struct pOt__tag_3_COCT*)&pOt_x,(pOt_INTEGER)(pOt_x.pOt_qoffs),&pOt_np);
  996.         pOt_Release_COCQ((struct pOt__tag_3_COCT*)&pOt_x);
  997.         pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x0L],&pOt__str_td[0x1]))));
  998.         pOt_Wrap_COCO();
  999.       }
  1000.       pOt_obj=(struct pOt__tag_1_COCT*)((*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_obj))).pOt_next);
  1001.     }
  1002.     pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x254L],&pOt__str_td[0x7]))));
  1003.     pOt_Wrap_COCO();
  1004.     pOt_Undent_COCO();
  1005.     pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x260L],&pOt__str_td[0x2]))));
  1006.     pOt_TermDecl_COCY();
  1007.     pOt_Modifier_COCY((pOt_INTEGER)(1));
  1008.     pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x204L],&pOt__str_td[0x1C]))));
  1009.     pOt_FromLInt_Strings((pOt_LONGINT)((pOt_INTEGER)pOt__addchk(__FILE__,__LINE__,(pOt_LONGINT)(pOt_nstr),(pOt_LONGINT)(1),5)),16,(pOt__ArrTypDsc**)&pOt_s);
  1010.     pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&pOt_s));
  1011.     pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x268L],&pOt__str_td[0x23]))));
  1012.     pOt_Wrap_COCO();
  1013.     pOt_Indent_COCO();
  1014.     pOt_obj=(struct pOt__tag_1_COCT*)(pOt_firstvar);
  1015.     for(;;) {
  1016.       if((((pOt_obj!=pOt_NIL))&&(((*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_obj))).pOt_mode<=13)))); else break;
  1017.       if((((((*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_obj))).pOt_mode==1))&&(((unsigned long)0!=((unsigned long)1<<pOt__rngchk_se(__FILE__,__LINE__,(*((struct pOt__tag_2_COCT*)pOt__nilchk(__FILE__,__LINE__,(*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_obj))).pOt_typ))).pOt_form)&(pOt_SET)0x38000L))))&&pOt_HasPtr_COCT((struct pOt__tag_2_COCT*)((*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_obj))).pOt_typ)))) {
  1018.         pOt_ObjToItem_COCY((struct pOt__tag_1_COCT*)(pOt_obj),(struct pOt__tag_3_COCT*)&pOt_x);
  1019.         if(( pOt_x.pOt_mode==1)) {
  1020.           pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x24CL],&pOt__str_td[0x1]))));
  1021.         }
  1022.         pOt_Mark_COCQ((struct pOt__tag_3_COCT*)&pOt_x);
  1023.         pOt_CObjName_COCN((struct pOt__tag_3_COCT*)&pOt_x,(pOt_INTEGER)(pOt_x.pOt_qoffs),&pOt_np);
  1024.         pOt_Release_COCQ((struct pOt__tag_3_COCT*)&pOt_x);
  1025.         pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x0L],&pOt__str_td[0x1]))));
  1026.         pOt_Wrap_COCO();
  1027.       }
  1028.       pOt_obj=(struct pOt__tag_1_COCT*)((*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_obj))).pOt_next);
  1029.     }
  1030.     pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x254L],&pOt__str_td[0x7]))));
  1031.     pOt_Wrap_COCO();
  1032.     pOt_Undent_COCO();
  1033.     pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x260L],&pOt__str_td[0x2]))));
  1034.     pOt_TermDecl_COCY();
  1035.   } else {
  1036.     pOt_dummyGC=(((pOt_nstr==((pOt_INTEGER)(0))))&&((pOt_nptr==((pOt_INTEGER)(0)))));
  1037.     if(pOt_dummyGC) {
  1038.       pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x290L],&pOt__str_td[0x20]))));
  1039.       pOt_TermDecl_COCY();
  1040.     } else {
  1041.       pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x204L],&pOt__str_td[0x1C]))));
  1042.       pOt_FromLInt_Strings((pOt_LONGINT)((pOt_INTEGER)pOt__addchk(__FILE__,__LINE__,(pOt_LONGINT)(pOt_nptr),(pOt_LONGINT)(1),5)),16,(pOt__ArrTypDsc**)&pOt_s);
  1043.       pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&pOt_s));
  1044.       pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x2B8L],&pOt__str_td[0x10]))));
  1045.       pOt_TermDecl_COCY();
  1046.       pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x204L],&pOt__str_td[0x1C]))));
  1047.       pOt_FromLInt_Strings((pOt_LONGINT)((pOt_INTEGER)pOt__addchk(__FILE__,__LINE__,(pOt_LONGINT)(pOt_nstr),(pOt_LONGINT)(1),5)),16,(pOt__ArrTypDsc**)&pOt_s);
  1048.       pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&pOt_s));
  1049.       pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x2D0L],&pOt__str_td[0x10]))));
  1050.       pOt_TermDecl_COCY();
  1051.     }
  1052.     pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x2E8L],&pOt__str_td[0x20]))));
  1053.     pOt_TermDecl_COCY();
  1054.     if(!pOt_dummyGC) {
  1055.       pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x310L],&pOt__str_td[0x21]))));
  1056.       pOt_TermDecl_COCY();
  1057.       pOt_Ptr_GCNode_COCY((pOt_INTEGER)(pOt_nptr));
  1058.       pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x254L],&pOt__str_td[0x7]))));
  1059.       pOt_TermDecl_COCY();
  1060.       pOt_Str_GCNode_COCY((pOt_INTEGER)(pOt_nstr));
  1061.       pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x254L],&pOt__str_td[0x7]))));
  1062.       pOt_TermDecl_COCY();
  1063.       pOt_obj=(struct pOt__tag_1_COCT*)(pOt_firstvar);
  1064.       for(;;) {
  1065.         if((((pOt_obj!=pOt_NIL))&&(((*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_obj))).pOt_mode<=13)))); else break;
  1066.         if(( (*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_obj))).pOt_mode==1)) {
  1067.           pOt_ObjToItem_COCY((struct pOt__tag_1_COCT*)(pOt_obj),(struct pOt__tag_3_COCT*)&pOt_x);
  1068.           if(( (*((struct pOt__tag_2_COCT*)pOt__nilchk(__FILE__,__LINE__,(*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_obj))).pOt_typ))).pOt_form==13)) {
  1069.             pOt_nptr-=(1);
  1070.             pOt_Ptr_GCNode_COCY((pOt_INTEGER)(pOt_nptr));
  1071.             if(( pOt_x.pOt_mode==1)) {
  1072.               pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x24CL],&pOt__str_td[0x1]))));
  1073.             }
  1074.             pOt_Mark_COCQ((struct pOt__tag_3_COCT*)&pOt_x);
  1075.             pOt_CObjName_COCN((struct pOt__tag_3_COCT*)&pOt_x,(pOt_INTEGER)(pOt_x.pOt_qoffs),&pOt_np);
  1076.             pOt_Release_COCQ((struct pOt__tag_3_COCT*)&pOt_x);
  1077.             pOt_TermDecl_COCY();
  1078.           } else if(((((unsigned long)0!=((unsigned long)1<<pOt__rngchk_se(__FILE__,__LINE__,(*((struct pOt__tag_2_COCT*)pOt__nilchk(__FILE__,__LINE__,(*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_obj))).pOt_typ))).pOt_form)&(pOt_SET)0x38000L)))&&pOt_HasPtr_COCT((struct pOt__tag_2_COCT*)((*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_obj))).pOt_typ)))) {
  1079.             pOt_nstr-=(1);
  1080.             pOt_Str_GCNode_COCY((pOt_INTEGER)(pOt_nstr));
  1081.             if(( pOt_x.pOt_mode==1)) {
  1082.               pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x24CL],&pOt__str_td[0x1]))));
  1083.             }
  1084.             pOt_Mark_COCQ((struct pOt__tag_3_COCT*)&pOt_x);
  1085.             pOt_CObjName_COCN((struct pOt__tag_3_COCT*)&pOt_x,(pOt_INTEGER)(pOt_x.pOt_qoffs),&pOt_np);
  1086.             pOt_Release_COCQ((struct pOt__tag_3_COCT*)&pOt_x);
  1087.             pOt_TermDecl_COCY();
  1088.           }
  1089.         }
  1090.         pOt_obj=(struct pOt__tag_1_COCT*)((*((struct pOt__tag_1_COCT*)pOt__nilchk(__FILE__,__LINE__,pOt_obj))).pOt_next);
  1091.       }
  1092.       pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x338L],&pOt__str_td[0x34]))));
  1093.       pOt_TermDecl_COCY();
  1094.     }
  1095.   }
  1096.  
  1097. pOt__Epilogue:;
  1098.   pOt_nptr_GCNode_COCY=pOt_nptr_;
  1099.   pOt_nstr_GCNode_COCY=pOt_nstr_;
  1100.   pOt_firstvar_GCNode_COCY=pOt_firstvar_;
  1101.   pOt_obj_GCNode_COCY=pOt_obj_;
  1102.   pOt_s_GCNode_COCY=pOt_s_;
  1103.   pOt_x_GCNode_COCY=pOt_x_;
  1104.   pOt_np_GCNode_COCY=pOt_np_;
  1105.   pOt_dummyGC_GCNode_COCY=pOt_dummyGC_;
  1106.   pOt__gc_root=(struct pOt__tag_gc_node*)pOt__gc_ptrs.next;
  1107. }
  1108.  
  1109.  
  1110.  
  1111.  
  1112. extern void pOt_GCLock_COCY()
  1113. {
  1114.   struct {void*next;} pOt__gc_ptrs;
  1115.   pOt__gc_ptrs.next = pOt__gc_root;
  1116.  
  1117.   pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x374L],&pOt__str_td[0x18]))));
  1118.   pOt_TermDecl_COCY();
  1119.   pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x394L],&pOt__str_td[0x24]))));
  1120.   pOt_TermDecl_COCY();
  1121.   pOt_PutSeq_COCO(pOt__dup_arr(__FILE__,__LINE__,(pOt__ArrTypDsc**)&(*pOt__set_str_td(&pOt__strcon_buf[0x3C0L],&pOt__str_td[0x11]))));
  1122.   pOt_TermDecl_COCY();
  1123.  
  1124. pOt__Epilogue:;
  1125.   pOt__gc_root=(struct pOt__tag_gc_node*)pOt__gc_ptrs.next;
  1126. }
  1127.  
  1128. void pOt_COCY__body()
  1129. {
  1130.   static int pOt_COCY__loaded=0;
  1131.   if(!pOt_COCY__loaded){
  1132.     pOt_COCY__loaded=1;
  1133.  
  1134.     pOt_Strings__body();
  1135.     pOt_COCT__body();
  1136.     pOt_COCQ__body();
  1137.     pOt_COCN__body();
  1138.     pOt_COCJ__body();
  1139.     pOt_COCO__body();
  1140.  
  1141.     pOt__gc_ptrs.next=pOt__gc_root;
  1142.     pOt__gc_root=(struct pOt__tag_gc_node*)&pOt__gc_strs;
  1143.  
  1144.     pOt_prevtyp_COCY=pOt_NIL;
  1145.  
  1146.  
  1147.   pOt__Epilogue:;
  1148.   }
  1149. }
  1150.