Author: Raphael Isemann Date: 2021-10-11T13:33:47+02:00 New Revision: 592e89cc4e9a7d184e16d4c61abcbcb62cf7e6ed
URL: https://github.com/llvm/llvm-project/commit/592e89cc4e9a7d184e16d4c61abcbcb62cf7e6ed DIFF: https://github.com/llvm/llvm-project/commit/592e89cc4e9a7d184e16d4c61abcbcb62cf7e6ed.diff LOG: [lldb] Don't print to stderr in TypeSystemClang::GetBuiltinTypeForDWARFEncodingAndBitSize The current code just prints to the System's 'error log' which is usually stderr (+ some other log backend). Printing to stderr however just interferes with LLDB's console UI, so when this code is triggered during for example command completion it just breaks the LLDB console interface until the next redraw. Instead just use the normal LLDB log which is by default hidden and is what users usually attach to bug reports. The only known bug that triggers this is https://bugs.llvm.org/show_bug.cgi?id=46775 Reviewed By: labath Differential Revision: https://reviews.llvm.org/D111149 Added: Modified: lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp Removed: ################################################################################ diff --git a/lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp b/lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp index 152b570a6f913..f49ca04c1f46f 100644 --- a/lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp +++ b/lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp @@ -1155,20 +1155,12 @@ CompilerType TypeSystemClang::GetBuiltinTypeForDWARFEncodingAndBitSize( } break; } - // This assert should fire for anything that we don't catch above so we know - // to fix any issues we run into. - if (!type_name.empty()) { - std::string type_name_str = type_name.str(); - Host::SystemLog(Host::eSystemLogError, - "error: need to add support for DW_TAG_base_type '%s' " - "encoded with DW_ATE = 0x%x, bit_size = %u\n", - type_name_str.c_str(), dw_ate, bit_size); - } else { - Host::SystemLog(Host::eSystemLogError, "error: need to add support for " - "DW_TAG_base_type encoded with " - "DW_ATE = 0x%x, bit_size = %u\n", - dw_ate, bit_size); - } + + Log *log = lldb_private::GetLogIfAllCategoriesSet(LIBLLDB_LOG_TYPES); + LLDB_LOG(log, + "error: need to add support for DW_TAG_base_type '{0}' " + "encoded with DW_ATE = {1:x}, bit_size = {2}", + type_name, dw_ate, bit_size); return CompilerType(); } _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits