Home | History | Annotate | Line # | Download | only in lint1
msg_249.c revision 1.6
      1  1.6  rillig /*	$NetBSD: msg_249.c,v 1.6 2021/07/10 10:30:26 rillig Exp $	*/
      2  1.1  rillig # 3 "msg_249.c"
      3  1.1  rillig 
      4  1.1  rillig // Test for message: syntax error '%s' [249]
      5  1.1  rillig 
      6  1.3  rillig /*
      7  1.4  rillig  * Cover the grammar rule 'top_level_declaration: error T_SEMI'.
      8  1.4  rillig  */
      9  1.4  rillig /* expect+1: syntax error '"' [249] */
     10  1.4  rillig "syntax error in top_level_declaration";
     11  1.4  rillig 
     12  1.4  rillig /* XXX: This is necessary to recover the yacc parser. */
     13  1.4  rillig int recover_from_semi;
     14  1.4  rillig 
     15  1.4  rillig /*
     16  1.4  rillig  * Cover the grammar rule 'top_level_declaration: error T_RBRACE'.
     17  1.4  rillig  */
     18  1.4  rillig /* expect+1: syntax error '"' [249] */
     19  1.4  rillig "syntax error in top_level_declaration"}
     20  1.4  rillig 
     21  1.4  rillig /* XXX: This is necessary to recover the yacc parser. */
     22  1.4  rillig int recover_from_rbrace;
     23  1.4  rillig 
     24  1.4  rillig /*
     25  1.3  rillig  * Before func.c 1.110 from 2021-06-19, lint ran into this:
     26  1.3  rillig  * assertion "cstmt->c_kind == kind" failed in end_control_statement
     27  1.3  rillig  */
     28  1.3  rillig void
     29  1.3  rillig function(void)
     30  1.3  rillig {
     31  1.3  rillig 	if (0)
     32  1.3  rillig 		;
     33  1.3  rillig 	);			/* expect: syntax error ')' */
     34  1.3  rillig }
     35  1.4  rillig 
     36  1.5  rillig /* XXX: It is unexpected that this error is not detected. */
     37  1.5  rillig "This syntax error is not detected.";
     38  1.5  rillig 
     39  1.4  rillig /* XXX: This is necessary to recover the yacc parser. */
     40  1.5  rillig double recover_from_rparen;
     41  1.5  rillig 
     42  1.5  rillig /* Ensure that the declaration after the syntax error is processed. */
     43  1.5  rillig double *
     44  1.5  rillig access_declaration_after_syntax_error(void)
     45  1.5  rillig {
     46  1.5  rillig 	return &recover_from_rparen;
     47  1.5  rillig }
     48  1.6  rillig 
     49  1.6  rillig struct cover_member_declaration {
     50  1.6  rillig 	/* cover 'noclass_declmods ... notype_member_decls' */
     51  1.6  rillig 	const noclass_declmods;
     52  1.6  rillig 
     53  1.6  rillig 	/* cover 'noclass_declspecs ...' */
     54  1.6  rillig 	const int noclass_declspecs;
     55  1.6  rillig 
     56  1.6  rillig 	/* cover 'noclass_declmods deftyp ...' */
     57  1.6  rillig 	/* expect+1: error: syntax error 'unnamed member' [249] */
     58  1.6  rillig 	const;
     59  1.6  rillig };
     60