[Lldb-commits] [libcxxabi] [lldb] [llvm] [lldb] Add frame-format option to highlight function names in backtraces (PR #131836)
Pavel Labath via lldb-commits
lldb-commits at lists.llvm.org
Fri Apr 11 04:49:51 PDT 2025
================
@@ -208,6 +209,152 @@ static bool PrettyPrintFunctionNameWithArgs(Stream &out_stream,
return true;
}
+static std::optional<llvm::StringRef> GetDemangledBasename(Function &function) {
+ auto demangled_name = function.GetName().GetStringRef();
+ if (demangled_name.empty())
+ return std::nullopt;
+
+ const std::optional<DemangledNameInfo> &info =
+ function.GetMangled().GetDemangledInfo();
+ if (!info)
+ return std::nullopt;
+
+ // Function without a basename is nonsense.
+ if (!info->hasBasename())
+ return std::nullopt;
+
+ assert(info->BasenameRange.first < demangled_name.size());
+ assert(info->BasenameRange.second < demangled_name.size());
+
+ return demangled_name.substr(info->BasenameRange.first,
+ info->BasenameRange.second -
+ info->BasenameRange.first);
----------------
labath wrote:
```suggestion
return demangled_name.slice(info->BasenameRange.first,
info->BasenameRange.second);
```
https://github.com/llvm/llvm-project/pull/131836
More information about the lldb-commits
mailing list