Home | History | Annotate | Line # | Download | only in lint1
init_c90.c revision 1.3
      1  1.3  rillig /*	$NetBSD: init_c90.c,v 1.3 2022/02/27 11:40:30 rillig Exp $	*/
      2  1.1  rillig # 3 "init_c90.c"
      3  1.1  rillig 
      4  1.1  rillig /*
      5  1.1  rillig  * Test initialization before C99.
      6  1.1  rillig  *
      7  1.1  rillig  * C90 3.5.7
      8  1.1  rillig  */
      9  1.1  rillig 
     10  1.1  rillig /* lint1-flags: -sw */
     11  1.1  rillig 
     12  1.1  rillig struct point {
     13  1.1  rillig 	int x, y;
     14  1.1  rillig };
     15  1.1  rillig 
     16  1.1  rillig struct point point_c90 = { 0, 0 };
     17  1.3  rillig /* expect+2: warning: struct or union member name in initializer is a C99 feature [313] */
     18  1.3  rillig /* expect+1: warning: struct or union member name in initializer is a C99 feature [313] */
     19  1.1  rillig struct point point_c99 = { .x = 0, .y = 0 };
     20  1.1  rillig 
     21  1.1  rillig struct point points_c90[] = {{ 0, 0 }};
     22  1.3  rillig /* expect+1: warning: array initializer with designators is a C99 feature [321] */
     23  1.1  rillig struct point points_c99[] = {[3] = { 0, 0 }};
     24  1.2  rillig 
     25  1.2  rillig 
     26  1.2  rillig struct point
     27  1.2  rillig compound_literal(void) {
     28  1.3  rillig 	/* expect+1: compound literals are a C99/GCC extension [319] */
     29  1.2  rillig 	return (struct point){ 0, 0 };
     30  1.2  rillig }
     31