private void makeSymbolTable( )
  {
    for( SemanticAction def: startNode.getBranches() )
    {
      String defName = def.getName();
      if( defName.equals("print") ){
        System.out.println( "User-defined print function not allowed." );
      } else if( defName.equals("main") ){
        mainCounter++;
      }
      for( SemanticAction defNode: def.getBranches() )
      {
        if( defNode.type == SemanticAction.TYPE.TYPE ||
           defNode.type == SemanticAction.TYPE.FORMAL )
          symbolTable.put( defName, defNode );
      }
    }
    
    
    if( mainCounter < 1 )
      System.out.println( "No main function defined." );
    else if( mainCounter > 1 )
      System.out.println( "Too many main functions defined." );
  }