1 /* As pr94851-1.c, but verify that we don't get confused by a call to
2 an unknown function (PR analyzer/98575). */
4 /* { dg-additional-options "-O2" } */
5 /* { dg-skip-if "requires hosted libstdc++ for stdlib malloc" { ! hostedlib } } */
10 typedef struct AMARK
{
21 extern void unknown_fn (void);
26 AMARK
*p
= curbp
->b_amark
;
27 AMARK
*last
= curbp
->b_amark
;
33 while (p
!= (AMARK
*)NULL
&& p
->m_name
!= (char)c
) {
38 if (p
!= (AMARK
*)NULL
) {
39 printf("over writing mark %c\n", c
);
41 if ((p
= (AMARK
*)malloc(sizeof(AMARK
))) == (AMARK
*)NULL
)
44 p
->m_next
= (AMARK
*)NULL
;
46 if (curbp
->b_amark
== (AMARK
*)NULL
)
49 last
->m_next
= p
; /* { dg-warning "dereference of NULL 'last'" "deref" } */
52 p
->m_name
= (char)c
; /* { dg-bogus "leak of 'p'" "bogus leak" } */