@@ -97,9 +97,9 @@ void CommandObjectDWIMPrint::DoExecute(StringRef command,
9797 StackFrame *frame = m_exe_ctx.GetFramePtr ();
9898
9999 // Either the language was explicitly specified, or we check the frame.
100- lldb::LanguageType language = m_expr_options.language ;
101- if (language == lldb::eLanguageTypeUnknown && frame)
102- language = frame->GuessLanguage (). AsLanguageType () ;
100+ SourceLanguage language{ m_expr_options.language } ;
101+ if (! language && frame)
102+ language = frame->GuessLanguage ();
103103
104104 // Add a hint if object description was requested, but no description
105105 // function was implemented.
@@ -121,8 +121,8 @@ void CommandObjectDWIMPrint::DoExecute(StringRef command,
121121 " ^<\\ S+: 0x[[:xdigit:]]{5,}>\\ s*$" );
122122
123123 if (GetDebugger ().GetShowDontUsePoHint () && target_ptr &&
124- (language == lldb::eLanguageTypeSwift ||
125- language == lldb::eLanguageTypeObjC ) &&
124+ (language. AsLanguageType () == lldb::eLanguageTypeSwift ||
125+ language. IsObjC () ) &&
126126 std::regex_match (output.data (), swift_class_regex)) {
127127
128128 result.AppendNote (
@@ -232,7 +232,8 @@ void CommandObjectDWIMPrint::DoExecute(StringRef command,
232232
233233 // Second, try `expr` as a persistent variable.
234234 if (expr.starts_with (" $" ))
235- if (auto *state = target.GetPersistentExpressionStateForLanguage (language))
235+ if (auto *state = target.GetPersistentExpressionStateForLanguage (
236+ language.AsLanguageType ()))
236237 if (auto var_sp = state->GetVariable (expr))
237238 if (auto valobj_sp = var_sp->GetValueObject ()) {
238239 dump_val_object (*valobj_sp);
0 commit comments