Home | History | Annotate | Line # | Download | only in indent
psym_while_expr.c revision 1.2
      1  1.2  rillig /* $NetBSD: psym_while_expr.c,v 1.2 2021/11/20 16:54:17 rillig Exp $ */
      2  1.1  rillig /* $FreeBSD$ */
      3  1.1  rillig 
      4  1.1  rillig /*
      5  1.1  rillig  * Tests for the parser symbol psym_while_expr, which represents the keyword
      6  1.1  rillig  * 'while' followed by the controlling expression, now waiting for the
      7  1.1  rillig  * statement of the loop body.
      8  1.1  rillig  */
      9  1.1  rillig 
     10  1.1  rillig #indent input
     11  1.1  rillig // TODO: add input
     12  1.1  rillig #indent end
     13  1.1  rillig 
     14  1.1  rillig #indent run-equals-input
     15  1.2  rillig 
     16  1.2  rillig 
     17  1.2  rillig #indent input
     18  1.2  rillig void
     19  1.2  rillig function(void)
     20  1.2  rillig {
     21  1.2  rillig 	while(cond){}
     22  1.2  rillig 
     23  1.2  rillig 	do{}while(cond);
     24  1.2  rillig 
     25  1.2  rillig 	if(cmd)while(cond);
     26  1.2  rillig 
     27  1.2  rillig 	{}while(cond);
     28  1.2  rillig }
     29  1.2  rillig #indent end
     30  1.2  rillig 
     31  1.2  rillig #indent run
     32  1.2  rillig void
     33  1.2  rillig function(void)
     34  1.2  rillig {
     35  1.2  rillig 	while (cond) {
     36  1.2  rillig 	}
     37  1.2  rillig 
     38  1.2  rillig 	do {
     39  1.2  rillig 	} while (cond);
     40  1.2  rillig 
     41  1.2  rillig 	if (cmd)
     42  1.2  rillig 	/* $ XXX: Where does the code say that ';' stays on the same line? */
     43  1.2  rillig 		while (cond);
     44  1.2  rillig 
     45  1.2  rillig 	{
     46  1.2  rillig 	/* $ FIXME: the '}' must be on a line of its own. */
     47  1.2  rillig 	} while (cond);
     48  1.2  rillig }
     49  1.2  rillig #indent end
     50