Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/gcc.c-torture/execute/20031215-1.c @ 111:04ced10e8804
gcc 7
author | kono |
---|---|
date | Fri, 27 Oct 2017 22:46:09 +0900 |
parents | |
children |
line wrap: on
line source
/* PR middle-end/13400 */ /* The following test used to fail at run-time with a write to read-only memory, caused by if-conversion converting a conditional write into an unconditional write. */ typedef struct {int c, l; char ch[3];} pstr; const pstr ao = {2, 2, "OK"}; const pstr * const a = &ao; void test1(void) { if (a->ch[a->l]) { ((char *)a->ch)[a->l] = 0; } } void test2(void) { if (a->ch[a->l]) { ((char *)a->ch)[a->l] = -1; } } void test3(void) { if (a->ch[a->l]) { ((char *)a->ch)[a->l] = 1; } } int main(void) { test1(); test2(); test3(); return 0; }