Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/gcc.dg/Wrestrict-18.c @ 158:494b0b89df80 default tip
...
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Mon, 25 May 2020 18:13:55 +0900 |
parents | 1830386684a0 |
children |
line wrap: on
line source
/* PR tree-optimization/86196 - Bogus -Wrestrict on memcpy between array elements at unequal indices { dg-do compile } { dg-options "-O2 -Wall" } */ typedef __SIZE_TYPE__ size_t; extern void* memcpy (void*, const void*, size_t); struct S { int n; void * p; }; /* Test case submitted in the PR. */ void pr86196_c0 (struct S * a, size_t n) { for (size_t i = 0, j = 0; i != n; ++i) { if (a[i].n == 0) { if (i != j) memcpy (&a[j], &a[i], sizeof (struct S)); /* { dg-bogus "\\\[-Wrestrict" } */ ++j; } } } /* Reduced test case. */ void pr86196_c1 (struct S *a, int i, int j) { if (i != j) memcpy (&a[j], &a[i], sizeof (struct S)); /* { dg-bogus "\\\[-Wrestrict" } */ }