aprantl added inline comments.
================
Comment at: lldb/source/Core/ValueObjectDynamicValue.cpp:169
+ if (known_type == lldb::eLanguageTypeObjC &&
+ UseSwiftRuntime(*m_parent, exe_ctx)) {
+ runtime = process->GetLanguageRuntime(lldb::eLanguageTypeSwift);
----------------
This is a bit of a layering violation. Could the ObjC language runtime perform
this check in `GetDynamicTypeAndAddress` and dispatch to the Swift runtime
there?
If you do this, we need to ensure we can't get into an infinite loop between
the runtimes.
Alternatively, we could add a virtual GetPreferredLanguageRuntime() method to
LanguageRuntime that we call here, maybe?
================
Comment at: lldb/source/Plugins/LanguageRuntime/ObjC/ObjCLanguageRuntime.h:89
+ virtual bool IsSwift() const { return false; }
+
----------------
Can you add a Doxygen commen?
/// Determine whether this class is implemented in Swift.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D152837/new/
https://reviews.llvm.org/D152837
_______________________________________________
lldb-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits