PR middle-end/85602 - -Wsizeof-pointer-memaccess for strncat with size of source
[official-gcc.git] / gcc / testsuite / gcc.dg / store_merging_21.c
blobec0c8e240b7427cb0be20d4057c9316d16b6317e
1 /* { dg-do compile } */
2 /* { dg-require-effective-target store_merge } */
3 /* { dg-options "-O2 -fdump-tree-store-merging" } */
5 extern void abort (void);
7 struct S1 {
8 unsigned int flag : 1;
9 unsigned int size : 31;
12 void foo1 (struct S1 *s, struct S1 *m)
14 s->flag = 1;
15 s->size = m->size;
18 void bar1 (struct S1 *s, struct S1 *m, _Bool flag)
20 s->flag = flag;
21 s->size = m->size;
24 struct S2 {
25 unsigned int size : 31;
26 unsigned int flag : 1;
29 void foo2 (struct S2 *s, struct S2 *m)
31 s->size = m->size;
32 s->flag = 1;
35 void bar2 (struct S2 *s, struct S2 *m, _Bool flag)
37 s->flag = flag;
38 s->size = m->size;
41 /* { dg-final { scan-tree-dump-times "Merging successful" 4 "store-merging" } } */