[Lldb-commits] [lldb] [LLDB] Reapply refactored CPlusPlusLanguage::MethodName to break lldb-server dependencies (PR #135033)
Dmitry Vasilyev via lldb-commits
lldb-commits at lists.llvm.org
Wed Apr 9 17:49:21 PDT 2025
slydiman wrote:
Note `Language::ForEach()` gives the following list:
```
cplusplus(eLanguageTypeC_plus_plus)
objc(eLanguageTypeObjC)
objcplusplus(eLanguageTypeObjC_plus_plus)
cplusplus(eLanguageTypeC_plus_plus_03)
cplusplus(eLanguageTypeC_plus_plus_11)
cplusplus(eLanguageTypeC_plus_plus_14)
cplusplus(eLanguageTypeC_plus_plus_17)
cplusplus(eLanguageTypeC_plus_plus_20)
```
so cplusplus plug-in was called many times. The order of language plug-ins in CMakeLists.txt does not matter.
I have optimized `Module::LookupInfo()` a lot.
Note if name_type_mask = eFunctionNameTypeAuto it is very important to call all plugins and cplusplus->GetFunctionNameInfo(). gives `eFunctionNameTypeMethod | eFunctionNameTypeBase` flags to ObjC names.
The TestExternCSymbols.py test failed because of missing logic
```
// Still try and get a basename in case someone specifies a name type mask
// of eFunctionNameTypeFull and a name like "A::func"
```
It must be fixed now.
https://github.com/llvm/llvm-project/pull/135033
More information about the lldb-commits
mailing list