(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.dg/
Wmissing-braces-fixits.c
       1  /* { dg-options "-Wmissing-braces -fdiagnostics-show-caret" } */
       2  
       3  struct sf2 { int i; int j; };
       4  struct sf3 { int i; int j; int k; };
       5  struct sa2 { int arr[2]; };
       6  struct sa3 { int arr[3]; };
       7  
       8  int arr_12[12] = \
       9    { 0, 1, 2, 3, 4, 5,
      10      6, 7, 8, 9, 10, 11};
      11  
      12  int arr_12_1[12][1] = \
      13    { 0, 1, 2, 3, 4, 5, /* { dg-warning "missing braces around initializer" } */
      14      6, 7, 8, 9, 10, 11};
      15    /* { dg-begin-multiline-output "" }
      16     { 0, 1, 2, 3, 4, 5,
      17     ^
      18       {} {} {} {} {} {}
      19       6, 7, 8, 9, 10, 11};
      20       {} {} {} {} { } { }
      21       { dg-end-multiline-output "" } */
      22  
      23  int arr_1_12[1][12] = \
      24    { 0, 1, 2, 3, 4, 5, /* { dg-warning "missing braces around initializer" } */
      25      6, 7, 8, 9, 10, 11};
      26    /* { dg-begin-multiline-output "" }
      27     { 0, 1, 2, 3, 4, 5,
      28     ^
      29       {
      30       6, 7, 8, 9, 10, 11};
      31                         }
      32       { dg-end-multiline-output "" } */
      33  
      34  int arr_2_6[2][6] = \
      35    { 0, 1, 2, 3, 4, 5, /* { dg-warning "missing braces around initializer" } */
      36      6, 7, 8, 9, 10, 11};
      37    /* { dg-begin-multiline-output "" }
      38     { 0, 1, 2, 3, 4, 5,
      39     ^
      40       {               }
      41       6, 7, 8, 9, 10, 11};
      42       {                 }
      43       { dg-end-multiline-output "" } */
      44  
      45  int arr_2_2_3[2][2][3] = \
      46    { 0, 1, 2, 3, 4, 5, /* { dg-warning "missing braces around initializer" } */
      47      6, 7, 8, 9, 10, 11};
      48    /* { dg-begin-multiline-output "" }
      49     { 0, 1, 2, 3, 4, 5,
      50     ^
      51       {{     } {      }}
      52       6, 7, 8, 9, 10, 11};
      53       {{     } {        }}
      54       { dg-end-multiline-output "" } */
      55  
      56  int arr_2_3_2[2][3][2] = \
      57    { 0, 1, 2, 3, 4, 5, /* { dg-warning "missing braces around initializer" } */
      58      6, 7, 8, 9, 10, 11};
      59    /* { dg-begin-multiline-output "" }
      60     { 0, 1, 2, 3, 4, 5,
      61     ^
      62       {{  } {   } {   }}
      63       6, 7, 8, 9, 10, 11};
      64       {{  } {   } {     }}
      65       { dg-end-multiline-output "" } */
      66  
      67  int arr_6_2[6][2] = \
      68    { 0, 1, 2, 3, 4, 5, /* { dg-warning "missing braces around initializer" } */
      69      6, 7, 8, 9, 10, 11};
      70    /* { dg-begin-multiline-output "" }
      71     { 0, 1, 2, 3, 4, 5,
      72     ^
      73       {   } {   } {   }
      74       6, 7, 8, 9, 10, 11};
      75       {   } {   } {     }
      76       { dg-end-multiline-output "" } */
      77  
      78  int arr_3_2_2[3][2][2] = \
      79    { 0, 1, 2, 3, 4, 5, /* { dg-warning "missing braces around initializer" } */
      80      6, 7, 8, 9, 10, 11};
      81    /* { dg-begin-multiline-output "" }
      82     { 0, 1, 2, 3, 4, 5,
      83     ^
      84       {{  } {   }}{{  }
      85       6, 7, 8, 9, 10, 11};
      86       {   }}{{  } {     }}
      87       { dg-end-multiline-output "" } */
      88  
      89  int arr_3_4[3][4] = \
      90    { 0, 1, 2, 3, 4, 5, /* { dg-warning "missing braces around initializer" } */
      91      6, 7, 8, 9, 10, 11};
      92    /* { dg-begin-multiline-output "" }
      93     { 0, 1, 2, 3, 4, 5,
      94     ^
      95       {         } {
      96       6, 7, 8, 9, 10, 11};
      97           } {           }
      98       { dg-end-multiline-output "" } */
      99  
     100  int arr_4_3[4][3] = \
     101    { 0, 1, 2, 3, 4, 5, /* { dg-warning "missing braces around initializer" } */
     102      6, 7, 8, 9, 10, 11};
     103    /* { dg-begin-multiline-output "" }
     104     { 0, 1, 2, 3, 4, 5,
     105     ^
     106       {      } {      }
     107       6, 7, 8, 9, 10, 11};
     108       {      } {        }
     109       { dg-end-multiline-output "" } */
     110  
     111  int arr_2_1_6[2][1][6] = \
     112    { 0, 1, 2, 3, 4, 5, /* { dg-warning "missing braces around initializer" } */
     113      6, 7, 8, 9, 10, 11};
     114    /* { dg-begin-multiline-output "" }
     115     { 0, 1, 2, 3, 4, 5,
     116     ^
     117       {{              }}
     118       6, 7, 8, 9, 10, 11};
     119       {{                }}
     120       { dg-end-multiline-output "" } */
     121  
     122  struct sf2 arr_6_sf2[6] = \
     123    { 0, 1, 2, 3, 4, 5, /* { dg-warning "missing braces around initializer" } */
     124      6, 7, 8, 9, 10, 11};
     125    /* { dg-begin-multiline-output "" }
     126     { 0, 1, 2, 3, 4, 5,
     127     ^
     128       {   } {   } {   }
     129       6, 7, 8, 9, 10, 11};
     130       {   } {   } {     }
     131       { dg-end-multiline-output "" } */
     132  
     133  struct sf3 arr_4_sf3[4] = \
     134    { 0, 1, 2, 3, 4, 5, /* { dg-warning "missing braces around initializer" } */
     135      6, 7, 8, 9, 10, 11};
     136    /* { dg-begin-multiline-output "" }
     137     { 0, 1, 2, 3, 4, 5,
     138     ^
     139       {      } {      }
     140       6, 7, 8, 9, 10, 11};
     141       {      } {        }
     142       { dg-end-multiline-output "" } */
     143  
     144  struct sa2 arr_6_sa2[6] = \
     145    { 0, 1, 2, 3, 4, 5, /* { dg-warning "missing braces around initializer" } */
     146      6, 7, 8, 9, 10, 11};
     147    /* { dg-begin-multiline-output "" }
     148     { 0, 1, 2, 3, 4, 5,
     149     ^
     150       {{  }}{{  }}{{  }}
     151       6, 7, 8, 9, 10, 11};
     152       {{  }}{{  }}{{    }}
     153       { dg-end-multiline-output "" } */
     154  
     155  struct sa3 arr_4_sa3[4] = \
     156    { 0, 1, 2, 3, 4, 5, /* { dg-warning "missing braces around initializer" } */
     157      6, 7, 8, 9, 10, 11};
     158    /* { dg-begin-multiline-output "" }
     159     { 0, 1, 2, 3, 4, 5,
     160     ^
     161       {{     }}{{     }}
     162       6, 7, 8, 9, 10, 11};
     163       {{     }}{{       }}
     164       { dg-end-multiline-output "" } */
     165  
     166  /* PR c/81405.  */
     167  int a5[][0][0] = { 1, 2 }; /* { dg-line pr_81405 } */
     168  
     169    /* { dg-warning "missing braces around initializer" "" { target c } pr_81405 } */
     170    /* { dg-begin-multiline-output "" }
     171   int a5[][0][0] = { 1, 2 };
     172                    ^
     173   {                  -----
     174                      {{1}}}}, {{{2 }}
     175       { dg-end-multiline-output "" } */
     176  
     177    /* { dg-warning "excess elements" "" { target c } pr_81405 } */
     178    /* { dg-begin-multiline-output "" }
     179   int a5[][0][0] = { 1, 2 };
     180                      ^
     181       { dg-end-multiline-output "" } */
     182    /* { dg-begin-multiline-output "" }
     183   int a5[][0][0] = { 1, 2 };
     184                         ^
     185       { dg-end-multiline-output "" } */
     186    /* { dg-begin-multiline-output "" }
     187   int a5[][0][0] = { 1, 2 };
     188   ^~~
     189       { dg-end-multiline-output "" } */