Exemplo n.º 1
0
void another_statement()
{
	level++;
	trace("another_statement");
	if (current.token != nline)
	{
		match(semi);
		statement();
		another_statement();
	}
	level--;
}
Exemplo n.º 2
0
void program()
{
	level++;
	trace("program");
	while (current.token != done)
	{
		if (current.token == iconst)
		{
			match(iconst);
			match(colon);
		}
		statement();
		another_statement();
		match(nline);
		dumpword();
	}
	level--;
}
Exemplo n.º 3
0
void foo(void)
{
   switch(ch)
   {
   // handle 'a'
   case 'a':
      {
         handle_a();
         multiline(123,
                   345);
         break;
      }

   // handle 'b'
   case 'b':
      handle_b();
      multiline(123,
                345);
      break;

   // handle 'c' and 'd'
   case 'c':
   case 'd':
      // c and d are really the same thing
      handle_cd();
      multiline(123,
                345);
      break;

   case 'e':
      {
         handle_a();
         multiline(123,
                   345);
      }
      break;
      // case1
   case (case1):
   {
           //do stuff
       break;
   }
   case (case2):
       {
           //do stuff
       break;
       }
   case (case3):

           /*do stuff*/
       break;
   case (case3):
       statement();
       {
          another_statement();
       }
       break;

 // really should not get here
   default:
      handle_default();
      multiline(123,
                345);
      break;
   }
   multiline(123,
             345);
}