Free Hero Mesh

Diff
Login
This is a mirror of the main repository for Free Hero Mesh. New tickets and changes will not be accepted at this mirror.

Differences From Artifact [9f8ddd9795]:

To Artifact [e38cb33701]:


1608
1609
1610
1611
1612
1613
1614

1615
1616
1617
1618
1619
1620
1621
1622






1623
1624
1625
1626
1627
1628
1629
          x=0;
          for(;;) {
            nxttok();
            if(tokent==TF_CLOSE) break;
            if(Tokenf(TF_MACRO) || !Tokenf(TF_NAME) || tokenv!=OP_USERFLAG) ParseError("User flag or close parenthesis expected\n");
            tokenv=look_hash(glohash,HASH_SIZE,0x1000,0x10FF,0,"user flags");
            if(!tokenv) ParseError("User flag ^%s not defined\n",tokenstr);

            if((tokenv^y)&0xE0) {
              if(y&0x100) ParseError("User flag ^%s belongs to the wrong attribute\n",tokenstr);
            } else {
              if(Tokenf(TF_COMMA)) x&=~(1<<(tokenv&31)); else x|=1<<(tokenv&31);
            }
          }
          tokenv=x;
          goto numeric;






        default:
          ParseError("Invalid parenthesized instruction\n");
      }
    } else if(tokent==TF_CLOSE) {
      if(flowdepth) ParseError("Unterminated flow control structure\n");
      if(peep<ptr && cl->codes[ptr-1]==OP_RET) break;
      if(peep<ptr && (cl->codes[ptr-1]&0xFF00)==0x1E00) break;







>








>
>
>
>
>
>







1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
          x=0;
          for(;;) {
            nxttok();
            if(tokent==TF_CLOSE) break;
            if(Tokenf(TF_MACRO) || !Tokenf(TF_NAME) || tokenv!=OP_USERFLAG) ParseError("User flag or close parenthesis expected\n");
            tokenv=look_hash(glohash,HASH_SIZE,0x1000,0x10FF,0,"user flags");
            if(!tokenv) ParseError("User flag ^%s not defined\n",tokenstr);
            uflags1:
            if((tokenv^y)&0xE0) {
              if(y&0x100) ParseError("User flag ^%s belongs to the wrong attribute\n",tokenstr);
            } else {
              if(Tokenf(TF_COMMA)) x&=~(1<<(tokenv&31)); else x|=1<<(tokenv&31);
            }
          }
          tokenv=x;
          goto numeric;
        case OP_USERFLAG:
          tokenv=look_hash(glohash,HASH_SIZE,0x1000,0x10FF,0,"user flags");
          if(!tokenv) ParseError("User flag ^%s not defined\n",tokenstr);
          x=0;
          y=(tokenv&0xE0)|0x100;
          goto uflags1;
        default:
          ParseError("Invalid parenthesized instruction\n");
      }
    } else if(tokent==TF_CLOSE) {
      if(flowdepth) ParseError("Unterminated flow control structure\n");
      if(peep<ptr && cl->codes[ptr-1]==OP_RET) break;
      if(peep<ptr && (cl->codes[ptr-1]&0xFF00)==0x1E00) break;