Home | History | Annotate | Line # | Download | only in indent
psym_do.c revision 1.4
      1  1.4  rillig /* $NetBSD: psym_do.c,v 1.4 2022/04/24 10:36:37 rillig Exp $ */
      2  1.1  rillig 
      3  1.1  rillig /*
      4  1.1  rillig  * Tests for the parser symbol psym_do, which represents the state after
      5  1.1  rillig  * reading the token 'do', now waiting for the statement of the loop body.
      6  1.1  rillig  */
      7  1.1  rillig 
      8  1.3  rillig //indent input
      9  1.4  rillig void function(void) {
     10  1.4  rillig 	do stmt(); while (0);
     11  1.4  rillig 	do {} while (0);
     12  1.4  rillig }
     13  1.3  rillig //indent end
     14  1.1  rillig 
     15  1.4  rillig //indent run
     16  1.4  rillig void
     17  1.4  rillig function(void)
     18  1.4  rillig {
     19  1.4  rillig 	do
     20  1.4  rillig 		stmt();
     21  1.4  rillig 	while (0);
     22  1.4  rillig 	do {
     23  1.4  rillig 	} while (0);
     24  1.4  rillig }
     25  1.4  rillig //indent end
     26  1.4  rillig 
     27  1.4  rillig 
     28  1.4  rillig /*
     29  1.4  rillig  * The keyword 'do' is followed by a statement, as opposed to 'while', which
     30  1.4  rillig  * is followed by a parenthesized expression.
     31  1.4  rillig  */
     32  1.4  rillig //indent input
     33  1.4  rillig void
     34  1.4  rillig function(void)
     35  1.4  rillig {
     36  1.4  rillig 	do(var)--;while(var>0);
     37  1.4  rillig }
     38  1.4  rillig //indent end
     39  1.4  rillig 
     40  1.4  rillig //indent run
     41  1.4  rillig void
     42  1.4  rillig function(void)
     43  1.4  rillig {
     44  1.4  rillig 	do
     45  1.4  rillig 		(var)--;
     46  1.4  rillig 	while (var > 0);
     47  1.4  rillig }
     48  1.4  rillig //indent end
     49