xref: /llvm-project/lldb/test/API/macosx/function-starts/main.cpp (revision 99451b4453688a94c6014cac233d371ab4cc342d)
1*99451b44SJordan Rupprecht #include <stdio.h>
2*99451b44SJordan Rupprecht #include <fcntl.h>
3*99451b44SJordan Rupprecht 
4*99451b44SJordan Rupprecht #include <chrono>
5*99451b44SJordan Rupprecht #include <fstream>
6*99451b44SJordan Rupprecht #include <thread>
7*99451b44SJordan Rupprecht 
dont_strip_me()8*99451b44SJordan Rupprecht extern void dont_strip_me()
9*99451b44SJordan Rupprecht {
10*99451b44SJordan Rupprecht   printf("I wasn't stripped\n");
11*99451b44SJordan Rupprecht }
12*99451b44SJordan Rupprecht 
a_function()13*99451b44SJordan Rupprecht static void *a_function()
14*99451b44SJordan Rupprecht {
15*99451b44SJordan Rupprecht     while (1)
16*99451b44SJordan Rupprecht     {
17*99451b44SJordan Rupprecht         std::this_thread::sleep_for(std::chrono::microseconds(100));
18*99451b44SJordan Rupprecht         dont_strip_me();
19*99451b44SJordan Rupprecht     }
20*99451b44SJordan Rupprecht     return 0;
21*99451b44SJordan Rupprecht }
22*99451b44SJordan Rupprecht 
main(int argc,char const * argv[])23*99451b44SJordan Rupprecht int main(int argc, char const *argv[])
24*99451b44SJordan Rupprecht {
25*99451b44SJordan Rupprecht     {
26*99451b44SJordan Rupprecht         // Create file to signal that this process has started up.
27*99451b44SJordan Rupprecht         std::ofstream f;
28*99451b44SJordan Rupprecht         f.open(argv[1]);
29*99451b44SJordan Rupprecht     }
30*99451b44SJordan Rupprecht     a_function();
31*99451b44SJordan Rupprecht     return 0;
32*99451b44SJordan Rupprecht }
33