Ignore:
Timestamp:
Mar 24, 2007, 9:08:34 PM (18 years ago)
Author:
cinc
Message:

Rewrote symbol handling.

Location:
trunk/idl-compiler/parser_c
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/idl-compiler/parser_c/interface_parser.c

    r264 r265  
    7272
    7373  do{
    74     g_printf("%d: ", __LINE__);
    75     printToken(curToken);
    76     if(matchNext(IDL_SYMBOL_CLSVERSION))
    77       parseClassVersion();
    78     if(matchNext(IDL_SYMBOL_OVERRIDE))
    79       parseOverrideMethod();
    80     else if(matchNext(IDL_SYMBOL_INSTANCEVAR))
    81       parseInstanceVar();
    82     else if(matchNextKind(KIND_TYPESPEC)) /* Be aware that we don't compare types here */
     74    //  g_printf("%d: ", __LINE__);
     75    //  printToken(curToken);
     76
     77    /* Typespec check must be first */
     78    if(matchNextKind(KIND_TYPESPEC)) /* Be aware that we don't compare types here */
    8379      {
    8480        parseMethod();
     81      }
     82    else if(matchNext(G_TOKEN_SYMBOL))
     83      {
     84        PSYMBOL pCurSymbol;
     85        GTokenValue value;
     86       
     87        value=gScanner->value;
     88        pCurSymbol=value.v_symbol;
     89        switch(pCurSymbol->uiSymbolToken)
     90          {
     91          case IDL_SYMBOL_CLSVERSION:
     92            parseClassVersion();
     93            break;
     94          case IDL_SYMBOL_OVERRIDE:
     95            parseOverrideMethod();
     96            break;
     97          case IDL_SYMBOL_INSTANCEVAR:
     98            parseInstanceVar();
     99            break;
     100          default:
     101            g_scanner_unexp_token(gScanner,
     102                                  G_TOKEN_SYMBOL,
     103                                  NULL,
     104                                  NULL,
     105                                  NULL,
     106                                  "Trying to parse interface body.",
     107                                  TRUE); /* is_error */
     108            exit(1);
     109          }/* switch */
    85110      }
    86111    else
  • trunk/idl-compiler/parser_c/method_parser.c

    r264 r265  
    6666  GTokenValue value;
    6767  PMETHODPARAM pParam;
     68  PSYMBOL pCurSymbol;
    6869
    6970  do{
     
    8485      }
    8586
    86     switch(curToken)
     87    value=gScanner->value;
     88    pCurSymbol=value.v_symbol;
     89    switch(pCurSymbol->uiSymbolToken)
    8790      {
    8891      case IDL_SYMBOL_IN:
     
    151154  PMETHOD pMethod=createMethodStruct();
    152155  PINTERFACE pif;
    153   g_printf("%s %d: ", __FUNCTION__, __LINE__);
    154   printToken(curToken);
     156  //g_printf("%s %d: ", __FUNCTION__, __LINE__);
     157  //printToken(curToken);
    155158
    156159  /* Do type spec */
Note: See TracChangeset for help on using the changeset viewer.