-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Closed
Labels
Description
With 1.0.1-insiders, I noticed cpptools become unresponsive, though so far I only repro on macOS (Catalina 10.15.6). Stacks are below. cpptools-srv was at 100%. An IntelliSense update appears to have been stuck. I waited >10 minutes. I have a project that repro's consistently, but reducing it may be difficult.
cpptools
* thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGSTOP
* frame #0: 0x00007fff6c41f69e libsystem_kernel.dylib`__read_nocancel + 10
frame #1: 0x00007fff6c36c2cb libsystem_c.dylib`_sread + 16
frame #2: 0x00007fff6c36b946 libsystem_c.dylib`__srefill1 + 24
frame #3: 0x00007fff6c36ba68 libsystem_c.dylib`__srget + 14
frame #4: 0x00007fff6c367d1c libsystem_c.dylib`getc + 52
frame #5: 0x00007fff695bbbc9 libc++.1.dylib`std::__1::__stdinbuf<char>::__getchar(bool) + 109
frame #6: 0x0000000109113656 cpptools`std::__1::basic_istream<char, std::__1::char_traits<char> >& std::__1::getline<char, std::__1::char_traits<char>, std::__1::allocator<char> >(std::__1::basic_istream<char, std::__1::char_traits<char> >&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&, char) + 150
frame #7: 0x00000001090d474c cpptools`vscode::message_handler::main_loop() + 1724
frame #8: 0x00000001090d121e cpptools`main + 206
frame #9: 0x00007fff6c2dccc9 libdyld.dylib`start + 1
thread #2
frame #0: 0x00007fff6c41e81e libsystem_kernel.dylib`read + 10
frame #1: 0x00000001091be48e cpptools`comm_pipe_nix::read(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&) + 94
frame #2: 0x00000001090a1082 cpptools`bool comm_client::send_request<microsoft::cpp::intellisense::UpdateIntelliSenseRequest, microsoft::cpp::intellisense::UpdateIntelliSenseResponse>(microsoft::cpp::intellisense::UpdateIntelliSenseRequest&, microsoft::cpp::intellisense::UpdateIntelliSenseResponse&, bool) + 498
frame #3: 0x00000001090a0be4 cpptools`intellisense_client::update_intellisense(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, bool, reparse, bool, bool) + 372
frame #4: 0x00000001090b0e00 cpptools`std::__1::__function::__func<intellisense_client::queue_update_intellisense(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, bool, reparse, bool, bool, std::__1::function<void (microsoft::cpp::intellisense::UpdateIntelliSenseResponse&&)>, std::__1::function<void ()>)::$_2, std::__1::allocator<intellisense_client::queue_update_intellisense(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, bool, reparse, bool, bool, std::__1::function<void (microsoft::cpp::intellisense::UpdateIntelliSenseResponse&&)>, std::__1::function<void ()>)::$_2>, microsoft::cpp::intellisense::UpdateIntelliSenseResponse ()>::operator()() + 48
frame #5: 0x00000001090b1e07 cpptools`snapshot_work_queue<microsoft::cpp::intellisense::UpdateIntelliSenseResponse, 250>::worker_proc() + 375
frame #6: 0x0000000109177de8 cpptools`std::__1::__function::__func<msvc::thread_pool::enqueue(std::__1::function<void ()>, std::__1::future<void>*)::$_2, std::__1::allocator<msvc::thread_pool::enqueue(std::__1::function<void ()>, std::__1::future<void>*)::$_2>, void ()>::operator()() + 24
frame #7: 0x000000010917610c cpptools`msvc::thread_pool::do_work(unsigned long) + 764
frame #8: 0x00000001091777c1 cpptools`void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, msvc::thread_pool::add_threads()::$_1> >(void*) + 49
frame #9: 0x00007fff6c4e1109 libsystem_pthread.dylib`_pthread_start + 148
frame #10: 0x00007fff6c4dcb8b libsystem_pthread.dylib`thread_start + 15
thread #3
frame #0: 0x00007fff6c420882 libsystem_kernel.dylib`__psynch_cvwait + 10
frame #1: 0x00007fff6c4e1425 libsystem_pthread.dylib`_pthread_cond_wait + 698
frame #2: 0x00000001091c282b cpptools`neosmart::WaitForMultipleEvents(neosmart::neosmart_event_t_**, int, bool, unsigned long long, int&) + 1179
frame #3: 0x00000001091bdfd5 cpptools`msvc::alertable_event::wait_for_multiple(msvc::alertable_event**, unsigned long, bool, unsigned int) + 325
frame #4: 0x0000000109175fca cpptools`msvc::thread_pool::do_work(unsigned long) + 442
frame #5: 0x00000001091777c1 cpptools`void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, msvc::thread_pool::add_threads()::$_1> >(void*) + 49
frame #6: 0x00007fff6c4e1109 libsystem_pthread.dylib`_pthread_start + 148
frame #7: 0x00007fff6c4dcb8b libsystem_pthread.dylib`thread_start + 15
thread #4
frame #0: 0x00007fff6c420882 libsystem_kernel.dylib`__psynch_cvwait + 10
frame #1: 0x00007fff6c4e1425 libsystem_pthread.dylib`_pthread_cond_wait + 698
frame #2: 0x00000001091c282b cpptools`neosmart::WaitForMultipleEvents(neosmart::neosmart_event_t_**, int, bool, unsigned long long, int&) + 1179
frame #3: 0x00000001091bdfd5 cpptools`msvc::alertable_event::wait_for_multiple(msvc::alertable_event**, unsigned long, bool, unsigned int) + 325
frame #4: 0x0000000109175fca cpptools`msvc::thread_pool::do_work(unsigned long) + 442
frame #5: 0x00000001091777c1 cpptools`void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, msvc::thread_pool::add_threads()::$_1> >(void*) + 49
frame #6: 0x00007fff6c4e1109 libsystem_pthread.dylib`_pthread_start + 148
frame #7: 0x00007fff6c4dcb8b libsystem_pthread.dylib`thread_start + 15
thread #5
frame #0: 0x00007fff6c420882 libsystem_kernel.dylib`__psynch_cvwait + 10
frame #1: 0x00007fff6c4e1425 libsystem_pthread.dylib`_pthread_cond_wait + 698
frame #2: 0x00000001091c282b cpptools`neosmart::WaitForMultipleEvents(neosmart::neosmart_event_t_**, int, bool, unsigned long long, int&) + 1179
frame #3: 0x00000001091bdfd5 cpptools`msvc::alertable_event::wait_for_multiple(msvc::alertable_event**, unsigned long, bool, unsigned int) + 325
frame #4: 0x0000000109175fca cpptools`msvc::thread_pool::do_work(unsigned long) + 442
frame #5: 0x00000001091777c1 cpptools`void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, msvc::thread_pool::add_threads()::$_1> >(void*) + 49
frame #6: 0x00007fff6c4e1109 libsystem_pthread.dylib`_pthread_start + 148
frame #7: 0x00007fff6c4dcb8b libsystem_pthread.dylib`thread_start + 15
thread #6
frame #0: 0x00007fff6c420882 libsystem_kernel.dylib`__psynch_cvwait + 10
frame #1: 0x00007fff6c4e1425 libsystem_pthread.dylib`_pthread_cond_wait + 698
frame #2: 0x00000001091c22d4 cpptools`neosmart::UnlockedWaitForEvent(neosmart::neosmart_event_t_*, unsigned long long) + 180
frame #3: 0x00000001091c234f cpptools`neosmart::WaitForEvent(neosmart::neosmart_event_t_*, unsigned long long) + 63
frame #4: 0x00000001091bde7c cpptools`msvc::alertable_event::wait(unsigned int) + 28
frame #5: 0x00000001091776ee cpptools`void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, msvc::thread_pool::thread_pool()::$_0> >(void*) + 286
frame #6: 0x00007fff6c4e1109 libsystem_pthread.dylib`_pthread_start + 148
frame #7: 0x00007fff6c4dcb8b libsystem_pthread.dylib`thread_start + 15
thread #7
frame #0: 0x00007fff6c420882 libsystem_kernel.dylib`__psynch_cvwait + 10
frame #1: 0x00007fff6c4e1425 libsystem_pthread.dylib`_pthread_cond_wait + 698
frame #2: 0x00007fff695af592 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 18
frame #3: 0x00007fff695dd9ef libc++.1.dylib`std::__1::recursive_timed_mutex::lock() + 101
frame #4: 0x0000000109098a74 cpptools`bool comm_client::send_request<microsoft::cpp::intellisense::ContainsFileRequest, microsoft::cpp::intellisense::ContainsFileResponse>(microsoft::cpp::intellisense::ContainsFileRequest&, microsoft::cpp::intellisense::ContainsFileResponse&, bool) + 196
frame #5: 0x0000000109098837 cpptools`intellisense_client::contains_source(char const*) + 279
frame #6: 0x00000001090b8166 cpptools`intellisense_client_factory::try_to_fetch(char const*, bool, bool) + 454
frame #7: 0x000000010908b6d1 cpptools`(anonymous namespace)::includes_for_file(vscode::file_uri const&) + 577
frame #8: 0x000000010908d180 cpptools`vscode::include_auto_complete::cache::populate(vscode::file_uri const&) + 32
frame #9: 0x00000001090e4766 cpptools`vscode::message_handler::textDocument_didOpen(vscode::DidOpenTextDocumentParams) + 342
frame #10: 0x00000001090d71ce cpptools`vscode::message_handler::dispatch(vscode::vscode_client_message&&, vscode::vscode_server_message&, vscode::message_handler::msg_proc_thread_token) + 3710
frame #11: 0x00000001090d6277 cpptools`vscode::message_handler::handle_message(vscode::vscode_client_message&&, vscode::message_handler::msg_proc_thread_token) + 55
frame #12: 0x000000010913f420 cpptools`void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, vscode::message_handler::main_loop()::$_3> >(void*) + 2288
frame #13: 0x00007fff6c4e1109 libsystem_pthread.dylib`_pthread_start + 148
frame #14: 0x00007fff6c4dcb8b libsystem_pthread.dylib`thread_start + 15
thread #8
frame #0: 0x00007fff6c420882 libsystem_kernel.dylib`__psynch_cvwait + 10
frame #1: 0x00007fff6c4e1425 libsystem_pthread.dylib`_pthread_cond_wait + 698
frame #2: 0x00007fff695af592 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 18
frame #3: 0x00000001091404f2 cpptools`vscode::message_deque<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, false>::pop_impl(bool) + 82
frame #4: 0x00000001091403d6 cpptools`void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, vscode::message_handler::main_loop()::$_4> >(void*) + 86
frame #5: 0x00007fff6c4e1109 libsystem_pthread.dylib`_pthread_start + 148
frame #6: 0x00007fff6c4dcb8b libsystem_pthread.dylib`thread_start + 15
thread #9
frame #0: 0x00007fff6c420882 libsystem_kernel.dylib`__psynch_cvwait + 10
frame #1: 0x00007fff6c4e1425 libsystem_pthread.dylib`_pthread_cond_wait + 698
frame #2: 0x00007fff695af592 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 18
frame #3: 0x0000000109141d33 cpptools`vscode::message_deque<vscode::folding_ranges_params, false>::pop_impl(bool) + 99
frame #4: 0x0000000109141be9 cpptools`std::__1::__function::__func<vscode::message_handler::main_loop()::$_6, std::__1::allocator<vscode::message_handler::main_loop()::$_6>, void ()>::operator()() + 73
frame #5: 0x00000001091422d3 cpptools`void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, std::__1::function<void ()> > >(void*) + 51
frame #6: 0x00007fff6c4e1109 libsystem_pthread.dylib`_pthread_start + 148
frame #7: 0x00007fff6c4dcb8b libsystem_pthread.dylib`thread_start + 15
thread #10
frame #0: 0x00007fff6c420882 libsystem_kernel.dylib`__psynch_cvwait + 10
frame #1: 0x00007fff6c4e1425 libsystem_pthread.dylib`_pthread_cond_wait + 698
frame #2: 0x00007fff695af592 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 18
frame #3: 0x0000000109141122 cpptools`vscode::message_deque<vscode::browse_engine_update_action, false>::pop_impl(bool) + 82
frame #4: 0x0000000109140887 cpptools`std::__1::__function::__func<vscode::message_handler::main_loop()::$_5, std::__1::allocator<vscode::message_handler::main_loop()::$_5>, void ()>::operator()() + 119
frame #5: 0x00000001091422d3 cpptools`void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, std::__1::function<void ()> > >(void*) + 51
frame #6: 0x00007fff6c4e1109 libsystem_pthread.dylib`_pthread_start + 148
frame #7: 0x00007fff6c4dcb8b libsystem_pthread.dylib`thread_start + 15
thread #11
frame #0: 0x00007fff6c420882 libsystem_kernel.dylib`__psynch_cvwait + 10
frame #1: 0x00007fff6c4e1425 libsystem_pthread.dylib`_pthread_cond_wait + 698
frame #2: 0x00007fff695af592 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 18
frame #3: 0x0000000109142543 cpptools`vscode::message_deque<vscode::vscode_client_message, false>::pop_impl(bool) + 99
frame #4: 0x0000000109142429 cpptools`std::__1::__function::__func<vscode::message_handler::main_loop()::$_7, std::__1::allocator<vscode::message_handler::main_loop()::$_7>, void ()>::operator()() + 73
frame #5: 0x00000001091422d3 cpptools`void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, std::__1::function<void ()> > >(void*) + 51
frame #6: 0x00007fff6c4e1109 libsystem_pthread.dylib`_pthread_start + 148
frame #7: 0x00007fff6c4dcb8b libsystem_pthread.dylib`thread_start + 15
thread #12
frame #0: 0x00007fff6c420882 libsystem_kernel.dylib`__psynch_cvwait + 10
frame #1: 0x00007fff6c4e1425 libsystem_pthread.dylib`_pthread_cond_wait + 698
frame #2: 0x00007fff695af592 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 18
frame #3: 0x0000000109142543 cpptools`vscode::message_deque<vscode::vscode_client_message, false>::pop_impl(bool) + 99
frame #4: 0x0000000109142769 cpptools`std::__1::__function::__func<vscode::message_handler::main_loop()::$_8, std::__1::allocator<vscode::message_handler::main_loop()::$_8>, void ()>::operator()() + 73
frame #5: 0x00000001091422d3 cpptools`void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, std::__1::function<void ()> > >(void*) + 51
frame #6: 0x00007fff6c4e1109 libsystem_pthread.dylib`_pthread_start + 148
frame #7: 0x00007fff6c4dcb8b libsystem_pthread.dylib`thread_start + 15
thread #13
frame #0: 0x00007fff6c420882 libsystem_kernel.dylib`__psynch_cvwait + 10
frame #1: 0x00007fff6c4e1425 libsystem_pthread.dylib`_pthread_cond_wait + 698
frame #2: 0x00007fff695af592 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 18
frame #3: 0x0000000109142e23 cpptools`vscode::message_deque<vscode::message_handler::parse_file_entry, true>::pop_impl(bool) + 99
frame #4: 0x000000010914291a cpptools`std::__1::__function::__func<vscode::message_handler::main_loop()::$_9, std::__1::allocator<vscode::message_handler::main_loop()::$_9>, void ()>::operator()() + 106
frame #5: 0x00000001091422d3 cpptools`void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, std::__1::function<void ()> > >(void*) + 51
frame #6: 0x00007fff6c4e1109 libsystem_pthread.dylib`_pthread_start + 148
frame #7: 0x00007fff6c4dcb8b libsystem_pthread.dylib`thread_start + 15
thread #14
frame #0: 0x00007fff6c420882 libsystem_kernel.dylib`__psynch_cvwait + 10
frame #1: 0x00007fff6c4e1425 libsystem_pthread.dylib`_pthread_cond_wait + 698
frame #2: 0x00007fff695af592 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 18
frame #3: 0x0000000109142543 cpptools`vscode::message_deque<vscode::vscode_client_message, false>::pop_impl(bool) + 99
frame #4: 0x0000000109143468 cpptools`std::__1::__function::__func<vscode::message_handler::main_loop()::$_10, std::__1::allocator<vscode::message_handler::main_loop()::$_10>, void ()>::operator()() + 88
frame #5: 0x00000001091422d3 cpptools`void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, std::__1::function<void ()> > >(void*) + 51
frame #6: 0x00007fff6c4e1109 libsystem_pthread.dylib`_pthread_start + 148
frame #7: 0x00007fff6c4dcb8b libsystem_pthread.dylib`thread_start + 15
thread #15
frame #0: 0x00007fff6c420882 libsystem_kernel.dylib`__psynch_cvwait + 10
frame #1: 0x00007fff6c4e1425 libsystem_pthread.dylib`_pthread_cond_wait + 698
frame #2: 0x00007fff695af592 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 18
frame #3: 0x0000000109143682 cpptools`vscode::message_deque<int, false>::pop_impl(bool) + 82
frame #4: 0x00000001091435dd cpptools`std::__1::__function::__func<vscode::message_handler::main_loop()::$_11, std::__1::allocator<vscode::message_handler::main_loop()::$_11>, void ()>::operator()() + 45
frame #5: 0x00000001091422d3 cpptools`void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, std::__1::function<void ()> > >(void*) + 51
frame #6: 0x00007fff6c4e1109 libsystem_pthread.dylib`_pthread_start + 148
frame #7: 0x00007fff6c4dcb8b libsystem_pthread.dylib`thread_start + 15
thread #16
frame #0: 0x00007fff6c420882 libsystem_kernel.dylib`__psynch_cvwait + 10
frame #1: 0x00007fff6c4e1425 libsystem_pthread.dylib`_pthread_cond_wait + 698
frame #2: 0x00000001091c22e5 cpptools`neosmart::UnlockedWaitForEvent(neosmart::neosmart_event_t_*, unsigned long long) + 197
frame #3: 0x00000001091c234f cpptools`neosmart::WaitForEvent(neosmart::neosmart_event_t_*, unsigned long long) + 63
frame #4: 0x00000001091bde7c cpptools`msvc::alertable_event::wait(unsigned int) + 28
frame #5: 0x0000000109143c70 cpptools`std::__1::__function::__func<vscode::message_handler::main_loop()::$_12, std::__1::allocator<vscode::message_handler::main_loop()::$_12>, void ()>::operator()() + 976
frame #6: 0x00000001091422d3 cpptools`void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, std::__1::function<void ()> > >(void*) + 51
frame #7: 0x00007fff6c4e1109 libsystem_pthread.dylib`_pthread_start + 148
frame #8: 0x00007fff6c4dcb8b libsystem_pthread.dylib`thread_start + 15
thread #17
frame #0: 0x00007fff6c420882 libsystem_kernel.dylib`__psynch_cvwait + 10
frame #1: 0x00007fff6c4e1425 libsystem_pthread.dylib`_pthread_cond_wait + 698
frame #2: 0x00007fff695af592 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 18
frame #3: 0x00000001096a05db cpptools`run_tag_parser() + 315
frame #4: 0x000000010962c60f cpptools`process_translation_unit(char const*, int, an_exported_template_file*) + 959
frame #5: 0x0000000109325369 cpptools`cfe_main(int, char**) + 121
frame #6: 0x0000000109653c49 cpptools`cfe_main_exception_handler(int, char**) + 9
frame #7: 0x0000000109325459 cpptools`edg_main(int, char**) + 9
frame #8: 0x00000001096a3701 cpptools`antlr_parse_routine() + 353
frame #9: 0x00000001096a3a28 cpptools`void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void (*)()> >(void*) + 40
frame #10: 0x00007fff6c4e1109 libsystem_pthread.dylib`_pthread_start + 148
frame #11: 0x00007fff6c4dcb8b libsystem_pthread.dylib`thread_start + 15
thread #18
frame #0: 0x00007fff6c41e81e libsystem_kernel.dylib`read + 10
frame #1: 0x00000001091be48e cpptools`comm_pipe_nix::read(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&) + 94
frame #2: 0x00000001091745ad cpptools`comm_server::wait_for_requests() + 61
frame #3: 0x00000001090a9101 cpptools`void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, intellisense_client::init()::$_0> >(void*) + 49
frame #4: 0x00007fff6c4e1109 libsystem_pthread.dylib`_pthread_start + 148
frame #5: 0x00007fff6c4dcb8b libsystem_pthread.dylib`thread_start + 15
thread #19
frame #0: 0x00007fff6c41e81e libsystem_kernel.dylib`read + 10
frame #1: 0x00000001091be48e cpptools`comm_pipe_nix::read(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&) + 94
frame #2: 0x00000001091745ad cpptools`comm_server::wait_for_requests() + 61
frame #3: 0x00000001090a9101 cpptools`void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, intellisense_client::init()::$_0> >(void*) + 49
frame #4: 0x00007fff6c4e1109 libsystem_pthread.dylib`_pthread_start + 148
frame #5: 0x00007fff6c4dcb8b libsystem_pthread.dylib`thread_start + 15
thread #20
frame #0: 0x00007fff6c41e81e libsystem_kernel.dylib`read + 10
frame #1: 0x00000001091be48e cpptools`comm_pipe_nix::read(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&) + 94
frame #2: 0x00000001091745ad cpptools`comm_server::wait_for_requests() + 61
frame #3: 0x00000001090a9101 cpptools`void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, intellisense_client::init()::$_0> >(void*) + 49
frame #4: 0x00007fff6c4e1109 libsystem_pthread.dylib`_pthread_start + 148
frame #5: 0x00007fff6c4dcb8b libsystem_pthread.dylib`thread_start + 15
thread #21
frame #0: 0x00007fff6c41e81e libsystem_kernel.dylib`read + 10
frame #1: 0x00000001091be48e cpptools`comm_pipe_nix::read(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&) + 94
frame #2: 0x00000001091745ad cpptools`comm_server::wait_for_requests() + 61
frame #3: 0x00000001090a9101 cpptools`void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, intellisense_client::init()::$_0> >(void*) + 49
frame #4: 0x00007fff6c4e1109 libsystem_pthread.dylib`_pthread_start + 148
frame #5: 0x00007fff6c4dcb8b libsystem_pthread.dylib`thread_start + 15
cpptools-srv
* thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGSTOP
* frame #0: 0x00007fff6c41e81e libsystem_kernel.dylib`read + 10
frame #1: 0x000000010043e98e cpptools-srv`comm_pipe_nix::read(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&) + 94
frame #2: 0x000000010042cdad cpptools-srv`comm_server::wait_for_requests() + 61
frame #3: 0x000000010002dbe2 cpptools-srv`main + 1090
frame #4: 0x00007fff6c2dccc9 libdyld.dylib`start + 1
thread #2
frame #0: 0x00007fff6c420882 libsystem_kernel.dylib`__psynch_cvwait + 10
frame #1: 0x00007fff6c4e1425 libsystem_pthread.dylib`_pthread_cond_wait + 698
frame #2: 0x0000000100442f1b cpptools-srv`neosmart::WaitForMultipleEvents(neosmart::neosmart_event_t_**, int, bool, unsigned long long, int&) + 1179
frame #3: 0x000000010043e4d5 cpptools-srv`msvc::alertable_event::wait_for_multiple(msvc::alertable_event**, unsigned long, bool, unsigned int) + 325
frame #4: 0x000000010042e7ca cpptools-srv`msvc::thread_pool::do_work(unsigned long) + 442
frame #5: 0x000000010042ffc1 cpptools-srv`void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, msvc::thread_pool::add_threads()::$_1> >(void*) + 49
frame #6: 0x00007fff6c4e1109 libsystem_pthread.dylib`_pthread_start + 148
frame #7: 0x00007fff6c4dcb8b libsystem_pthread.dylib`thread_start + 15
thread #3
frame #0: 0x00007fff6c420882 libsystem_kernel.dylib`__psynch_cvwait + 10
frame #1: 0x00007fff6c4e1425 libsystem_pthread.dylib`_pthread_cond_wait + 698
frame #2: 0x0000000100442f1b cpptools-srv`neosmart::WaitForMultipleEvents(neosmart::neosmart_event_t_**, int, bool, unsigned long long, int&) + 1179
frame #3: 0x000000010043e4d5 cpptools-srv`msvc::alertable_event::wait_for_multiple(msvc::alertable_event**, unsigned long, bool, unsigned int) + 325
frame #4: 0x000000010042e7ca cpptools-srv`msvc::thread_pool::do_work(unsigned long) + 442
frame #5: 0x000000010042ffc1 cpptools-srv`void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, msvc::thread_pool::add_threads()::$_1> >(void*) + 49
frame #6: 0x00007fff6c4e1109 libsystem_pthread.dylib`_pthread_start + 148
frame #7: 0x00007fff6c4dcb8b libsystem_pthread.dylib`thread_start + 15
thread #4
frame #0: 0x00007fff6c420882 libsystem_kernel.dylib`__psynch_cvwait + 10
frame #1: 0x00007fff6c4e1425 libsystem_pthread.dylib`_pthread_cond_wait + 698
frame #2: 0x0000000100442f1b cpptools-srv`neosmart::WaitForMultipleEvents(neosmart::neosmart_event_t_**, int, bool, unsigned long long, int&) + 1179
frame #3: 0x000000010043e4d5 cpptools-srv`msvc::alertable_event::wait_for_multiple(msvc::alertable_event**, unsigned long, bool, unsigned int) + 325
frame #4: 0x000000010042e7ca cpptools-srv`msvc::thread_pool::do_work(unsigned long) + 442
frame #5: 0x000000010042ffc1 cpptools-srv`void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, msvc::thread_pool::add_threads()::$_1> >(void*) + 49
frame #6: 0x00007fff6c4e1109 libsystem_pthread.dylib`_pthread_start + 148
frame #7: 0x00007fff6c4dcb8b libsystem_pthread.dylib`thread_start + 15
thread #5
frame #0: 0x00007fff6c420882 libsystem_kernel.dylib`__psynch_cvwait + 10
frame #1: 0x00007fff6c4e1425 libsystem_pthread.dylib`_pthread_cond_wait + 698
frame #2: 0x00007fff695af592 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 18
frame #3: 0x000000010038f351 cpptools-srv`a_compiler_thread::start(edge::query_action_data&) + 209
frame #4: 0x000000010038ecd7 cpptools-srv`edge::an_edge_translation_unit_impl::reinitialize_without_fallback(bool, snapshot::snapshot_session_t, edge::file_position const&, edge::query_action_data&) + 2215
frame #5: 0x0000000100389920 cpptools-srv`edge::an_edge_translation_unit_impl::reinitialize(bool, snapshot::snapshot_session_t, edge::file_position const&, edge::query_action_data&) + 80
frame #6: 0x000000010039376a cpptools-srv`edge::translation_unit::initialize(int, char const**, char const*, char const*, bool, char const*, snapshot::snapshot_session_t, edge::query_action_data&) + 602
frame #7: 0x000000010000ccb6 cpptools-srv`edge_intellisense_server_impl::create_translation_unit() + 534
frame #8: 0x00000001000087b7 cpptools-srv`edge_intellisense_server_impl::handle_update_intellisense(microsoft::cpp::intellisense::UpdateIntelliSenseRequest const&) + 71
frame #9: 0x000000010003109e cpptools-srv`work_queue::worker_proc() + 190
frame #10: 0x0000000100430968 cpptools-srv`std::__1::__function::__func<msvc::thread_pool::enqueue(std::__1::function<void ()>, std::__1::future<void>*)::$_2, std::__1::allocator<msvc::thread_pool::enqueue(std::__1::function<void ()>, std::__1::future<void>*)::$_2>, void ()>::operator()() + 24
frame #11: 0x000000010042e90c cpptools-srv`msvc::thread_pool::do_work(unsigned long) + 764
frame #12: 0x000000010042ffc1 cpptools-srv`void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, msvc::thread_pool::add_threads()::$_1> >(void*) + 49
frame #13: 0x00007fff6c4e1109 libsystem_pthread.dylib`_pthread_start + 148
frame #14: 0x00007fff6c4dcb8b libsystem_pthread.dylib`thread_start + 15
thread #6
frame #0: 0x00007fff6c420882 libsystem_kernel.dylib`__psynch_cvwait + 10
frame #1: 0x00007fff6c4e1425 libsystem_pthread.dylib`_pthread_cond_wait + 698
frame #2: 0x00000001004429c4 cpptools-srv`neosmart::UnlockedWaitForEvent(neosmart::neosmart_event_t_*, unsigned long long) + 180
frame #3: 0x0000000100442a3f cpptools-srv`neosmart::WaitForEvent(neosmart::neosmart_event_t_*, unsigned long long) + 63
frame #4: 0x000000010043e37c cpptools-srv`msvc::alertable_event::wait(unsigned int) + 28
frame #5: 0x000000010042feee cpptools-srv`void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, msvc::thread_pool::thread_pool()::$_0> >(void*) + 286
frame #6: 0x00007fff6c4e1109 libsystem_pthread.dylib`_pthread_start + 148
frame #7: 0x00007fff6c4dcb8b libsystem_pthread.dylib`thread_start + 15
thread #7
frame #0: 0x00000001001dce19 cpptools-srv`perform_scheduled_routine_moves() + 169
frame #1: 0x00000001002d85a4 cpptools-srv`pop_scope_full(int) + 420
frame #2: 0x00000001002dacb9 cpptools-srv`pop_template_instantiation_scope() + 121
frame #3: 0x0000000100320f53 cpptools-srv`rescan_template_constant_parameter(a_symbol*, a_symbol*, a_template_param*, a_template_arg*, int, a_constant**) + 531
frame #4: 0x0000000100266033 cpptools-srv`scan_template_argument_list(a_symbol*, int, int*, long long, long*) + 2403
frame #5: 0x0000000100268042 cpptools-srv`coalesce_template_class_reference(a_symbol*, long long, int*) + 3762
frame #6: 0x0000000100269705 cpptools-srv`coalesce_template_id(a_symbol*, a_token_kind, unsigned int, long long, int, int*) + 405
frame #7: 0x0000000100251931 cpptools-srv`f_is_generalized_identifier_start(long long, a_type*) + 5937
frame #8: 0x00000001000fe4db cpptools-srv`decl_specifiers(unsigned long, a_decl_parse_state*, a_decl_pos_block*) + 3899
frame #9: 0x00000001000d09af cpptools-srv`type_name_full(a_decl_parse_state*) + 239
frame #10: 0x00000001003129e2 cpptools-srv`find_template_class_full(a_symbol*, a_template_arg**, int, a_symbol*, int, int, int, int) + 3938
frame #11: 0x0000000100311a6f cpptools-srv`find_template_class(a_symbol*, a_template_arg**, int, a_symbol*, int, int, int) + 15
frame #12: 0x0000000100268550 cpptools-srv`coalesce_template_class_reference(a_symbol*, long long, int*) + 5056
frame #13: 0x0000000100269705 cpptools-srv`coalesce_template_id(a_symbol*, a_token_kind, unsigned int, long long, int, int*) + 405
frame #14: 0x0000000100251931 cpptools-srv`f_is_generalized_identifier_start(long long, a_type*) + 5937
frame #15: 0x00000001000fe4db cpptools-srv`decl_specifiers(unsigned long, a_decl_parse_state*, a_decl_pos_block*) + 3899
frame #16: 0x00000001000d09af cpptools-srv`type_name_full(a_decl_parse_state*) + 239
frame #17: 0x00000001003129e2 cpptools-srv`find_template_class_full(a_symbol*, a_template_arg**, int, a_symbol*, int, int, int, int) + 3938
frame #18: 0x0000000100311a6f cpptools-srv`find_template_class(a_symbol*, a_template_arg**, int, a_symbol*, int, int, int) + 15
frame #19: 0x0000000100268550 cpptools-srv`coalesce_template_class_reference(a_symbol*, long long, int*) + 5056
frame #20: 0x0000000100269705 cpptools-srv`coalesce_template_id(a_symbol*, a_token_kind, unsigned int, long long, int, int*) + 405
frame #21: 0x0000000100251931 cpptools-srv`f_is_generalized_identifier_start(long long, a_type*) + 5937
frame #22: 0x00000001000c0e51 cpptools-srv`is_type_start_full(int, int, int) + 849
frame #23: 0x00000001000c1a56 cpptools-srv`is_decl_start(int) + 134
frame #24: 0x0000000100105102 cpptools-srv`is_decl_not_expr(unsigned short) + 50
frame #25: 0x000000010011b34f cpptools-srv`scan_expr_full(an_operand*, an_operand*, int, int) + 6207
frame #26: 0x0000000100129740 cpptools-srv`scan_bool_constant_expression(a_constant*) + 80
frame #27: 0x00000001000d4253 cpptools-srv`static_assert_declaration(int) + 99
frame #28: 0x00000001000d73bb cpptools-srv`scan_nonmember_declaration(a_decl_parse_state*, a_source_range*) + 907
frame #29: 0x00000001002e9ef3 cpptools-srv`decl_statement(int, int*) + 291
frame #30: 0x00000001002e55ce cpptools-srv`statement(int, int) + 590
frame #31: 0x00000001002e474a cpptools-srv`compound_statement_full(int, int, int, int, int, a_type**) + 874
frame #32: 0x00000001001a38d6 cpptools-srv`scan_function_body(a_routine*, a_func_info_block*, unsigned long, a_macro_arg_fixup**, a_macro_arg_fixup**) + 4806
frame #33: 0x000000010030ee27 cpptools-srv`function_prototype_instantiation(a_symbol*) + 935
frame #34: 0x000000010032aedc cpptools-srv`template_declaration(a_tmpl_decl_state*) + 11580
frame #35: 0x0000000100325df4 cpptools-srv`template_or_specialization_declaration_full(a_tmpl_decl_state*, int, a_decl_parse_state*) + 6868
frame #36: 0x000000010032c1b3 cpptools-srv`template_or_specialization_declaration(a_token_kind*, int, a_source_position*, int, a_decl_parse_state*) + 851
frame #37: 0x0000000100330eb6 cpptools-srv`template_directive_or_declaration(a_token_kind*, int, a_source_position*) + 838
frame #38: 0x00000001000d764c cpptools-srv`scan_nonmember_declaration(a_decl_parse_state*, a_source_range*) + 1564
frame #39: 0x00000001000dfd1e cpptools-srv`namespace_declaration(a_token_kind*, int, int, a_source_position*, a_symbol**) + 4446
frame #40: 0x00000001000d7d45 cpptools-srv`scan_nonmember_declaration(a_decl_parse_state*, a_source_range*) + 3349
frame #41: 0x00000001000dfd1e cpptools-srv`namespace_declaration(a_token_kind*, int, int, a_source_position*, a_symbol**) + 4446
frame #42: 0x00000001000d7d45 cpptools-srv`scan_nonmember_declaration(a_decl_parse_state*, a_source_range*) + 3349
frame #43: 0x00000001000dd927 cpptools-srv`declaration(int, int, int, int, a_param_id*, a_source_range*) + 311
frame #44: 0x00000001000dea34 cpptools-srv`linkage_specification(a_decl_parse_state*) + 436
frame #45: 0x00000001000d748c cpptools-srv`scan_nonmember_declaration(a_decl_parse_state*, a_source_range*) + 1116
frame #46: 0x00000001000dd927 cpptools-srv`declaration(int, int, int, int, a_param_id*, a_source_range*) + 311
frame #47: 0x00000001000dea34 cpptools-srv`linkage_specification(a_decl_parse_state*) + 436
frame #48: 0x00000001000d748c cpptools-srv`scan_nonmember_declaration(a_decl_parse_state*, a_source_range*) + 1116
frame #49: 0x00000001000ddb39 cpptools-srv`translation_unit() + 393
frame #50: 0x000000010034f45a cpptools-srv`process_translation_unit(char const*, int, an_exported_template_file*) + 954
frame #51: 0x00000001000481b9 cpptools-srv`cfe_main(int, char**) + 121
frame #52: 0x0000000100377219 cpptools-srv`cfe_main_exception_handler(int, char**) + 9
frame #53: 0x00000001000482a9 cpptools-srv`edg_main(int, char**) + 9
frame #54: 0x000000010036b06b cpptools-srv`invoke_edge_compiler(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > >&) + 9611
frame #55: 0x0000000100368a1d cpptools-srv`edge_compiler_main(int, char const**) + 109
frame #56: 0x00000001003bc352 cpptools-srv`preparse(int, char const**, a_scout_store*, edge::translation_unit*) + 242
frame #57: 0x0000000100392ea8 cpptools-srv`a_compiler_thread::compiler_thread_routine(a_compiler_thread*) + 296
frame #58: 0x00000001003b318c cpptools-srv`void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void (*)(a_compiler_thread*), a_compiler_thread*> >(void*) + 44
frame #59: 0x00007fff6c4e1109 libsystem_pthread.dylib`_pthread_start + 148
frame #60: 0x00007fff6c4dcb8b libsystem_pthread.dylib`thread_start + 15
cpptools-srv (from another repro)
* thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGSTOP
* frame #0: 0x00007fff6c41f55e libsystem_kernel.dylib`__ulock_wait + 10
frame #1: 0x00007fff6c4e25c2 libsystem_pthread.dylib`_pthread_join + 347
frame #2: 0x00007fff695e65e6 libc++.1.dylib`std::__1::thread::join() + 24
frame #3: 0x000000010042e1b0 cpptools-srv`msvc::thread_pool::shutdown() + 64
frame #4: 0x000000010002dbee cpptools-srv`main + 1102
frame #5: 0x00007fff6c2dccc9 libdyld.dylib`start + 1
frame #6: 0x00007fff6c2dccc9 libdyld.dylib`start + 1
thread #2
frame #0: 0x00007fff6c420882 libsystem_kernel.dylib`__psynch_cvwait + 10
frame #1: 0x00007fff6c4e1425 libsystem_pthread.dylib`_pthread_cond_wait + 698
frame #2: 0x00007fff695af592 libc++.1.dylib`std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 18
frame #3: 0x000000010038f351 cpptools-srv`a_compiler_thread::start(edge::query_action_data&) + 209
frame #4: 0x000000010038ecd7 cpptools-srv`edge::an_edge_translation_unit_impl::reinitialize_without_fallback(bool, snapshot::snapshot_session_t, edge::file_position const&, edge::query_action_data&) + 2215
frame #5: 0x0000000100389920 cpptools-srv`edge::an_edge_translation_unit_impl::reinitialize(bool, snapshot::snapshot_session_t, edge::file_position const&, edge::query_action_data&) + 80
frame #6: 0x000000010039376a cpptools-srv`edge::translation_unit::initialize(int, char const**, char const*, char const*, bool, char const*, snapshot::snapshot_session_t, edge::query_action_data&) + 602
frame #7: 0x000000010000ccb6 cpptools-srv`edge_intellisense_server_impl::create_translation_unit() + 534
frame #8: 0x00000001000087b7 cpptools-srv`edge_intellisense_server_impl::handle_update_intellisense(microsoft::cpp::intellisense::UpdateIntelliSenseRequest const&) + 71
frame #9: 0x000000010003109e cpptools-srv`work_queue::worker_proc() + 190
frame #10: 0x0000000100430968 cpptools-srv`std::__1::__function::__func<msvc::thread_pool::enqueue(std::__1::function<void ()>, std::__1::future<void>*)::$_2, std::__1::allocator<msvc::thread_pool::enqueue(std::__1::function<void ()>, std::__1::future<void>*)::$_2>, void ()>::operator()() + 24
frame #11: 0x000000010042e90c cpptools-srv`msvc::thread_pool::do_work(unsigned long) + 764
frame #12: 0x000000010042ffc1 cpptools-srv`void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, msvc::thread_pool::add_threads()::$_1> >(void*) + 49
frame #13: 0x00007fff6c4e1109 libsystem_pthread.dylib`_pthread_start + 148
frame #14: 0x00007fff6c4dcb8b libsystem_pthread.dylib`thread_start + 15
thread #3
frame #0: 0x00000001001dce19 cpptools-srv`perform_scheduled_routine_moves() + 169
frame #1: 0x00000001002d85a4 cpptools-srv`pop_scope_full(int) + 420
frame #2: 0x00000001002dacb9 cpptools-srv`pop_template_instantiation_scope() + 121
frame #3: 0x0000000100320f53 cpptools-srv`rescan_template_constant_parameter(a_symbol*, a_symbol*, a_template_param*, a_template_arg*, int, a_constant**) + 531
frame #4: 0x0000000100266033 cpptools-srv`scan_template_argument_list(a_symbol*, int, int*, long long, long*) + 2403
frame #5: 0x0000000100268042 cpptools-srv`coalesce_template_class_reference(a_symbol*, long long, int*) + 3762
frame #6: 0x0000000100269705 cpptools-srv`coalesce_template_id(a_symbol*, a_token_kind, unsigned int, long long, int, int*) + 405
frame #7: 0x0000000100251931 cpptools-srv`f_is_generalized_identifier_start(long long, a_type*) + 5937
frame #8: 0x00000001000fe4db cpptools-srv`decl_specifiers(unsigned long, a_decl_parse_state*, a_decl_pos_block*) + 3899
frame #9: 0x00000001000d09af cpptools-srv`type_name_full(a_decl_parse_state*) + 239
frame #10: 0x00000001003129e2 cpptools-srv`find_template_class_full(a_symbol*, a_template_arg**, int, a_symbol*, int, int, int, int) + 3938
frame #11: 0x0000000100311a6f cpptools-srv`find_template_class(a_symbol*, a_template_arg**, int, a_symbol*, int, int, int) + 15
frame #12: 0x0000000100268550 cpptools-srv`coalesce_template_class_reference(a_symbol*, long long, int*) + 5056
frame #13: 0x0000000100269705 cpptools-srv`coalesce_template_id(a_symbol*, a_token_kind, unsigned int, long long, int, int*) + 405
frame #14: 0x0000000100251931 cpptools-srv`f_is_generalized_identifier_start(long long, a_type*) + 5937
frame #15: 0x00000001000fe4db cpptools-srv`decl_specifiers(unsigned long, a_decl_parse_state*, a_decl_pos_block*) + 3899
frame #16: 0x00000001000d09af cpptools-srv`type_name_full(a_decl_parse_state*) + 239
frame #17: 0x00000001003129e2 cpptools-srv`find_template_class_full(a_symbol*, a_template_arg**, int, a_symbol*, int, int, int, int) + 3938
frame #18: 0x0000000100311a6f cpptools-srv`find_template_class(a_symbol*, a_template_arg**, int, a_symbol*, int, int, int) + 15
frame #19: 0x0000000100268550 cpptools-srv`coalesce_template_class_reference(a_symbol*, long long, int*) + 5056
frame #20: 0x0000000100269705 cpptools-srv`coalesce_template_id(a_symbol*, a_token_kind, unsigned int, long long, int, int*) + 405
frame #21: 0x0000000100251931 cpptools-srv`f_is_generalized_identifier_start(long long, a_type*) + 5937
frame #22: 0x00000001000c0e51 cpptools-srv`is_type_start_full(int, int, int) + 849
frame #23: 0x00000001000c1a56 cpptools-srv`is_decl_start(int) + 134
frame #24: 0x0000000100105102 cpptools-srv`is_decl_not_expr(unsigned short) + 50
frame #25: 0x000000010011b34f cpptools-srv`scan_expr_full(an_operand*, an_operand*, int, int) + 6207
frame #26: 0x0000000100129740 cpptools-srv`scan_bool_constant_expression(a_constant*) + 80
frame #27: 0x00000001000d4253 cpptools-srv`static_assert_declaration(int) + 99
frame #28: 0x00000001000d73bb cpptools-srv`scan_nonmember_declaration(a_decl_parse_state*, a_source_range*) + 907
frame #29: 0x00000001002e9ef3 cpptools-srv`decl_statement(int, int*) + 291
frame #30: 0x00000001002e55ce cpptools-srv`statement(int, int) + 590
frame #31: 0x00000001002e474a cpptools-srv`compound_statement_full(int, int, int, int, int, a_type**) + 874
frame #32: 0x00000001001a38d6 cpptools-srv`scan_function_body(a_routine*, a_func_info_block*, unsigned long, a_macro_arg_fixup**, a_macro_arg_fixup**) + 4806
frame #33: 0x000000010030ee27 cpptools-srv`function_prototype_instantiation(a_symbol*) + 935
frame #34: 0x000000010032aedc cpptools-srv`template_declaration(a_tmpl_decl_state*) + 11580
frame #35: 0x0000000100325df4 cpptools-srv`template_or_specialization_declaration_full(a_tmpl_decl_state*, int, a_decl_parse_state*) + 6868
frame #36: 0x000000010032c1b3 cpptools-srv`template_or_specialization_declaration(a_token_kind*, int, a_source_position*, int, a_decl_parse_state*) + 851
frame #37: 0x0000000100330eb6 cpptools-srv`template_directive_or_declaration(a_token_kind*, int, a_source_position*) + 838
frame #38: 0x00000001000d764c cpptools-srv`scan_nonmember_declaration(a_decl_parse_state*, a_source_range*) + 1564
frame #39: 0x00000001000dfd1e cpptools-srv`namespace_declaration(a_token_kind*, int, int, a_source_position*, a_symbol**) + 4446
frame #40: 0x00000001000d7d45 cpptools-srv`scan_nonmember_declaration(a_decl_parse_state*, a_source_range*) + 3349
frame #41: 0x00000001000dfd1e cpptools-srv`namespace_declaration(a_token_kind*, int, int, a_source_position*, a_symbol**) + 4446
frame #42: 0x00000001000d7d45 cpptools-srv`scan_nonmember_declaration(a_decl_parse_state*, a_source_range*) + 3349
frame #43: 0x00000001000dd927 cpptools-srv`declaration(int, int, int, int, a_param_id*, a_source_range*) + 311
frame #44: 0x00000001000dea34 cpptools-srv`linkage_specification(a_decl_parse_state*) + 436
frame #45: 0x00000001000d748c cpptools-srv`scan_nonmember_declaration(a_decl_parse_state*, a_source_range*) + 1116
frame #46: 0x00000001000dd927 cpptools-srv`declaration(int, int, int, int, a_param_id*, a_source_range*) + 311
frame #47: 0x00000001000dea34 cpptools-srv`linkage_specification(a_decl_parse_state*) + 436
frame #48: 0x00000001000d748c cpptools-srv`scan_nonmember_declaration(a_decl_parse_state*, a_source_range*) + 1116
frame #49: 0x00000001000ddb39 cpptools-srv`translation_unit() + 393
frame #50: 0x000000010034f45a cpptools-srv`process_translation_unit(char const*, int, an_exported_template_file*) + 954
frame #51: 0x00000001000481b9 cpptools-srv`cfe_main(int, char**) + 121
frame #52: 0x0000000100377219 cpptools-srv`cfe_main_exception_handler(int, char**) + 9
frame #53: 0x00000001000482a9 cpptools-srv`edg_main(int, char**) + 9
frame #54: 0x000000010036b06b cpptools-srv`invoke_edge_compiler(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > >&) + 9611
frame #55: 0x0000000100368a1d cpptools-srv`edge_compiler_main(int, char const**) + 109
frame #56: 0x00000001003bc352 cpptools-srv`preparse(int, char const**, a_scout_store*, edge::translation_unit*) + 242
frame #57: 0x0000000100392ea8 cpptools-srv`a_compiler_thread::compiler_thread_routine(a_compiler_thread*) + 296
frame #58: 0x00000001003b318c cpptools-srv`void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void (*)(a_compiler_thread*), a_compiler_thread*> >(void*) + 44
frame #59: 0x00007fff6c4e1109 libsystem_pthread.dylib`_pthread_start + 148
frame #60: 0x00007fff6c4dcb8b libsystem_pthread.dylib`thread_start + 15