1f08c3bdfSopenharmony_cistatic int ref[] = { 2f08c3bdfSopenharmony_ci [1] = 3, 3f08c3bdfSopenharmony_ci [2] = 3, 4f08c3bdfSopenharmony_ci [3] = 3, 5f08c3bdfSopenharmony_ci [2] = 2, /* check-should-warn */ 6f08c3bdfSopenharmony_ci [1] = 1, /* check-should-warn */ 7f08c3bdfSopenharmony_ci}; 8f08c3bdfSopenharmony_ci 9f08c3bdfSopenharmony_cistatic int foo[] = { 10f08c3bdfSopenharmony_ci [1 ... 3] = 3, 11f08c3bdfSopenharmony_ci}; 12f08c3bdfSopenharmony_ci 13f08c3bdfSopenharmony_cistatic int foz[4] = { 14f08c3bdfSopenharmony_ci [0 ... 3] = 3, 15f08c3bdfSopenharmony_ci [0] = 0, 16f08c3bdfSopenharmony_ci [1] = 0, 17f08c3bdfSopenharmony_ci [2 ... 3] = 1, 18f08c3bdfSopenharmony_ci [2] = 3, /* check-should-warn */ 19f08c3bdfSopenharmony_ci [3] = 3, /* check-should-warn */ 20f08c3bdfSopenharmony_ci}; 21f08c3bdfSopenharmony_ci 22f08c3bdfSopenharmony_cistatic int bar[] = { 23f08c3bdfSopenharmony_ci [1 ... 3] = 3, 24f08c3bdfSopenharmony_ci [1] = 1, /* check-should-warn */ 25f08c3bdfSopenharmony_ci [2] = 2, /* check-should-warn */ 26f08c3bdfSopenharmony_ci [2 ... 4] = 2, /* check-should-warn */ 27f08c3bdfSopenharmony_ci [2 ... 3] = 2, /* check-should-warn */ 28f08c3bdfSopenharmony_ci [4] = 4, /* check-should-warn */ 29f08c3bdfSopenharmony_ci [0] = 0, 30f08c3bdfSopenharmony_ci [5] = 5, 31f08c3bdfSopenharmony_ci}; 32f08c3bdfSopenharmony_ci 33f08c3bdfSopenharmony_cistatic int baz[3][3] = { 34f08c3bdfSopenharmony_ci [0 ... 2][0 ... 2] = 0, 35f08c3bdfSopenharmony_ci [0] = { 0, 0, 0, }, /* check-should-warn */ 36f08c3bdfSopenharmony_ci [0][0] = 1, /* check-should-warn */ 37f08c3bdfSopenharmony_ci [1] = { 0, 0, 0, }, /* check-should-warn */ 38f08c3bdfSopenharmony_ci [1][0] = 1, /* check-should-warn */ 39f08c3bdfSopenharmony_ci [1][1] = 1, /* check-should-warn */ 40f08c3bdfSopenharmony_ci [1 ... 2][1 ... 2] = 2, 41f08c3bdfSopenharmony_ci}; 42f08c3bdfSopenharmony_ci 43f08c3bdfSopenharmony_ci 44f08c3bdfSopenharmony_cistruct s { 45f08c3bdfSopenharmony_ci int i; 46f08c3bdfSopenharmony_ci int a[2]; 47f08c3bdfSopenharmony_ci}; 48f08c3bdfSopenharmony_ci 49f08c3bdfSopenharmony_cistatic struct s s = { 50f08c3bdfSopenharmony_ci .a[0] = 0, 51f08c3bdfSopenharmony_ci .a[1] = 1, 52f08c3bdfSopenharmony_ci}; 53f08c3bdfSopenharmony_ci 54f08c3bdfSopenharmony_cistatic struct s a[2] = { 55f08c3bdfSopenharmony_ci [0].i = 0, 56f08c3bdfSopenharmony_ci [1].i = 1, 57f08c3bdfSopenharmony_ci [0].a[0] = 2, 58f08c3bdfSopenharmony_ci [0].a[1] = 3, 59f08c3bdfSopenharmony_ci}; 60f08c3bdfSopenharmony_ci 61f08c3bdfSopenharmony_cistatic struct s b[2] = { 62f08c3bdfSopenharmony_ci [0 ... 1] = { 0, { 1, 2 }, }, 63f08c3bdfSopenharmony_ci [0].i = 0, 64f08c3bdfSopenharmony_ci [1].i = 1, 65f08c3bdfSopenharmony_ci [0].a[0] = 2, 66f08c3bdfSopenharmony_ci [0].a[1] = 3, 67f08c3bdfSopenharmony_ci}; 68f08c3bdfSopenharmony_ci 69f08c3bdfSopenharmony_ci/* 70f08c3bdfSopenharmony_ci * check-name: field-override 71f08c3bdfSopenharmony_ci * check-command: sparse -Woverride-init -Woverride-init-all $file 72f08c3bdfSopenharmony_ci * 73f08c3bdfSopenharmony_ci * check-error-start 74f08c3bdfSopenharmony_cifield-override.c:2:10: warning: Initializer entry defined twice 75f08c3bdfSopenharmony_cifield-override.c:6:10: also defined here 76f08c3bdfSopenharmony_cifield-override.c:3:10: warning: Initializer entry defined twice 77f08c3bdfSopenharmony_cifield-override.c:5:10: also defined here 78f08c3bdfSopenharmony_cifield-override.c:17:10: warning: Initializer entry defined twice 79f08c3bdfSopenharmony_cifield-override.c:18:10: also defined here 80f08c3bdfSopenharmony_cifield-override.c:17:10: warning: Initializer entry defined twice 81f08c3bdfSopenharmony_cifield-override.c:19:10: also defined here 82f08c3bdfSopenharmony_cifield-override.c:23:10: warning: Initializer entry defined twice 83f08c3bdfSopenharmony_cifield-override.c:24:10: also defined here 84f08c3bdfSopenharmony_cifield-override.c:23:10: warning: Initializer entry defined twice 85f08c3bdfSopenharmony_cifield-override.c:25:10: also defined here 86f08c3bdfSopenharmony_cifield-override.c:23:10: warning: Initializer entry defined twice 87f08c3bdfSopenharmony_cifield-override.c:26:10: also defined here 88f08c3bdfSopenharmony_cifield-override.c:26:10: warning: Initializer entry defined twice 89f08c3bdfSopenharmony_cifield-override.c:27:10: also defined here 90f08c3bdfSopenharmony_cifield-override.c:26:10: warning: Initializer entry defined twice 91f08c3bdfSopenharmony_cifield-override.c:28:10: also defined here 92f08c3bdfSopenharmony_cifield-override.c:35:10: warning: Initializer entry defined twice 93f08c3bdfSopenharmony_cifield-override.c:36:10: also defined here 94f08c3bdfSopenharmony_cifield-override.c:37:10: warning: Initializer entry defined twice 95f08c3bdfSopenharmony_cifield-override.c:38:10: also defined here 96f08c3bdfSopenharmony_cifield-override.c:37:10: warning: Initializer entry defined twice 97f08c3bdfSopenharmony_cifield-override.c:39:10: also defined here 98f08c3bdfSopenharmony_cifield-override.c:37:10: warning: Initializer entry defined twice 99f08c3bdfSopenharmony_cifield-override.c:40:10: also defined here 100f08c3bdfSopenharmony_ci * check-error-end 101f08c3bdfSopenharmony_ci */ 102