/* PR opt/7409. */ extern void abort (void); char g_list[] = { '1' }; void g (void *p, char *list, int length, char **elementPtr, char **nextPtr) { if (*nextPtr != g_list) abort (); **nextPtr = 0; } int main (void) { char *list = g_list; char *element; int i, length = 100; for (i = 0; *list != 0; i++) { char *prevList = list; g (0, list, length, &element, &list); length -= (list - prevList); } return 0; }