]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/testsuite/gcc.dg/pr60257.c
Update copyright years.
[thirdparty/gcc.git] / gcc / testsuite / gcc.dg / pr60257.c
CommitLineData
96b40f8d
MP
1/* PR c/60257 */
2/* { dg-do compile } */
3/* { dg-options "-Wc++-compat -Woverride-init" } */
4/* { dg-prune-output ".*near initialization for.*" } */
5
6enum E1 { A };
7enum E2 { B };
8
9struct S
10{
11 enum E1 e: 3;
12};
13
14struct S s[] =
15{
16 { B } /* { dg-warning "5:enum conversion in initialization is invalid in C\[+\]\[+\]" } */
17};
18
19union U {
20 int i;
21 long long int l;
22};
23
24struct R {
25 int a;
26};
27
28void
29foo (int i)
30{
31 union U u = { .i = ++i, .l = 1 }; /* { dg-warning "32:initialized field with side-effects overwritten" } */
32 union U u2 = { .i = 1, .l = 3 }; /* { dg-warning "31:initialized field overwritten" } */
33 int a[] = { i++, [0] = 1 }; /* { dg-warning "26:initialized field with side-effects overwritten" } */
34 int a2[] = { i, [0] = 1 }; /* { dg-warning "25:initialized field overwritten" } */
35 struct R r = { 1, .a = 2 }; /* { dg-warning "26:initialized field overwritten" } */
36 struct R r2 = { ++i, .a = 2 }; /* { dg-warning "29:initialized field with side-effects overwritten" } */
37}