-
Notifications
You must be signed in to change notification settings - Fork 1.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
cpptools-srv crashes frequently,(Comes with stack) #12956
Comments
In addition, I would like to ask by the way that there are multiple executable files in my project, so I wrote multiple configurations (such as game and cnet in the configuration file above), but when I edit the code files of the two modules, the configuration does not switch. Is there a way to switch automatically? Or how to configure auto-completion and reference search for multiple executable files in the project? |
@x1ntt You can use a multi-root workspace, one workspace folder for each executable and each workspace folder can have a different configuration. |
@x1ntt I'm not sure how you can configure your OS to stop logging crashes dumps. Our extension isn't creating though dmp files (although cpptools-srv is crashing). You can delete the dmp files. Are you able to find a sample repro code that repros the issue you can share with us? |
Setting the process to generate core is used to track bugs in our project. It is an accident to collect the core of cpptools-srv, but maybe it will be helpful? If there is any information that needs to be obtained from the core, I can provide help (such as specific stack, specific heap variables), can you give me a debug version of cpptools-srv with symbol information, or tell me how to build cpptools-srv (I hope this is cpp development), I can reproduce it 100% here (in fact, it has crashed dozens of times just a while ago, just clicking randomly or waiting for it to analyze the project), but I can't provide the core file (the project I maintain is not open source, nor does it belong to me, the core file may contain the project structure). For example, how is cpptools-srv started? I can execute I will try to reproduce it using open source projects on my own personal computer, and pay attention to possible clues in existing projects. I will feedback here, or #12666 is also OK. |
@sean-mcmanus Note: Although version 1.20.0 also crashes, it can completely scan my project, while 1.23.1 can't even completely scan the project |
@sean-mcmanus Here are the steps
cmake_minimum_required(VERSION 3.8)
project(luatinkerE)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g ")
include(CheckCXXCompilerFlag)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++20")
#add_compile_options("-fno-limit-debug-info")
include_directories(lua/src luatinkere tests)
aux_source_directory(luatinkere cur_src)
aux_source_directory(tests cur_src)
aux_source_directory(lua/src cur_src)
link_directories(${CMAKE_CURRENT_SOURCE_DIR}/lua/src)
add_executable(test_runner ${cur_src})
target_link_libraries(test_runner dl)
#target_link_libraries(test_runner liblua.a dl)
I didn't know where the key steps were, so I recorded a video (there were a lot of invalid operations, I was a little nervous :( cpptool_crash.mp4The following are the relevant software versionsVersion: 1.92.2 (system setup)
Submit: fee1edb8d6d72a0ddff41e5f71a671c23ed924b9
Date: 2024-08-14T17:29:30.058Z
Electron: 30.1.2
ElectronBuildId: 9870757
Chromium: 124.0.6367.243
Node.js: 20.14.0
V8: 12.4.254.20-electron.0
OS: Windows_NT x64 10.0.22631
Local system: windows11
cpp_tools: v1.23.1 (pre-release)
Remote - SSH: v0.115.1
Remote os: Rockylinux9.1
gcc: 11.4.1 20231218 (Red Hat 11.4.1-3) (GCC) The stack shown in the videocpptools-srv
2024/11/20 22:11:31
SIGSEGV
compare_expressions(an_expr_node*, an_expr_node*, int)+2124
compare_constants(a_constant*, a_constant*, int)+3424
compare_constants(a_constant*, a_constant*, int)+2885
equiv_template_arg_lists(a_template_arg*, a_template_arg*, int)+843
hash_find(a_hash_table*, void*, int)+120
…
find_template_class(a_symbol*, a_template_arg**, int, a_symbol*, int, int, int)+19
coalesce_template_class_reference(a_symbol*, long long, int*)+2787
…
f_is_generalized_identifier_start(long long, a_type*)+2544
decl_specifiers(unsigned long, a_decl_parse_state*, a_decl_pos_block*)+18493
type_name_full(a_decl_parse_state*)+252
…
…
find_template_class(a_symbol*, a_template_arg**, int, a_symbol*, int, int, int)+19
coalesce_template_class_reference(a_symbol*, long long, int*)+2787
…
f_is_generalized_identifier_start(long long, a_type*)+2544
decl_specifiers(unsigned long, a_decl_parse_state*, a_decl_pos_block*)+18493
type_name_full(a_decl_parse_state*)+252
…
…
find_template_class(a_symbol*, a_template_arg**, int, a_symbol*, int, int, int)+19
coalesce_template_class_reference(a_symbol*, long long, int*)+2787
…
f_is_generalized_identifier_start(long long, a_type*)+9502
…
…
scan_dependent_type_parenthesized_initializer(an_init_state*, an_init_component*)+685
…
…
ctor_initializer(a_routine*, int, int)+12331
scan_function_body(a_routine*, a_func_info_block*, unsigned long, a_macro_arg_fixup**, a_macro_arg_fixup**)+4860
function_prototype_instantiation(a_symbol*)+681
…
process_deferred_class_fixups_and_instantiations(int)+107
…
template_or_specialization_declaration_full(a_tmpl_decl_state*, int, a_decl_parse_state*)+5603
…
template_directive_or_declaration(a_token_kind*, int, a_source_position*)+229
scan_nonmember_declaration(a_decl_parse_state*, a_source_range*)+6714
…
…
scan_nonmember_declaration(a_decl_parse_state*, a_source_range*)+9443
…
…
scan_nonmember_declaration(a_decl_parse_state*, a_source_range*)+9443 I'm not sure if this is the same reason as the issue I raised, maybe it can help : ) |
Environment
Bug Summary and Steps to Reproduce
Bug Summary:
I didn't find a pattern for its crashes. I only saw "IntelliSense process crashed handle_quick_info" in the output window, and obtained a large number of core files. It crashed very frequently, and each core was 200-300MB in size. I guess it should fill up my hard drive soon.
I need a way to stop this process from generating core files. For example, execute
ulimit -c 0
only for this processExpected behavior:
No Crash.
Configuration and Logs
Sorry, due to development environment limitations, I can't easily get the log file, but I can provide the stack trace
Other Extensions
No response
Additional context
The text was updated successfully, but these errors were encountered: