]> CyberLeo.Net >> Repos - FreeBSD/releng/9.2.git/blob - tools/regression/pthread/unwind/Test.cpp
- Copy stable/9 to releng/9.2 as part of the 9.2-RELEASE cycle.
[FreeBSD/releng/9.2.git] / tools / regression / pthread / unwind / Test.cpp
1 /* $FreeBSD$ */
2
3 int destructed;
4 int destructed2;
5
6 class Test {
7 public:
8         Test() { printf("Test::Test()\n"); }
9         ~Test() { printf("Test::~Test()\n"); destructed = 1; }
10 };
11
12 void
13 cleanup_handler(void *arg)
14 {
15         destructed2 = 1;
16         printf("%s()\n", __func__);
17 }
18
19 void
20 check_destruct(void)
21 {
22         if (!destructed)
23                 printf("Bug, object destructor is not called\n");
24         else
25                 printf("OK\n");
26 }
27
28 void
29 check_destruct2(void)
30 {
31         if (!destructed)
32                 printf("Bug, object destructor is not called\n");
33         else if (!destructed2)
34                 printf("Bug, cleanup handler is not called\n");
35         else
36                 printf("OK\n");
37 }