25 lines
362 B
C
25 lines
362 B
C
// PR rtl-optimization/16590
|
|
// { dg-do run }
|
|
// { dg-options "-O2" }
|
|
|
|
extern "C" void abort();
|
|
|
|
struct iterator {
|
|
char * p;
|
|
int *dummy;
|
|
};
|
|
|
|
static iterator pend(char * start) {
|
|
iterator p = {start, 0};
|
|
if (p.p == start) p.p = start+5;
|
|
--p.p;
|
|
return p;
|
|
}
|
|
|
|
int main() {
|
|
char mem[4+1];
|
|
|
|
if(pend(mem).p != mem+4)
|
|
abort ();
|
|
}
|