Fortran: Fix PR 47485.
[gcc.git] / gcc / testsuite / g++.dg / analyzer / vfunc-2.C
blobba2ac652449dac8116f0bba94d29d7487c60412d
1 // { dg-skip-if "requires hosted libstdc++ for cstdio" { ! hostedlib } }
2 #include <cstdio>
3 #include <cstdlib>
5 struct A
7     int m_data;
8     A() {m_data = 0;}
9     virtual int deallocate (void) 
10     {
11         return 42;
12     }
15 struct B: public A
17     int *ptr;
18     int m_data_b;
19     B() {m_data_b = 0;}
20     void allocate ()
21     {
22         ptr = (int*)malloc(sizeof(int));
23     }
24     int deallocate (void) 
25     { 
26         free(ptr);
27         return 0;
28     }
31 void foo(A *a_ptr)
33     printf("%d\n",a_ptr->deallocate());
36 void test()
38     B b;
39     A a, *aptr;
40     aptr = &b;
41     b.allocate();
42     foo(aptr);
43     aptr = &a;
44     foo(aptr);