================ @@ -402,4 +404,122 @@ Interpreter::Visit(const BitFieldExtractionNode *node) { return child_valobj_sp; } +static lldb::TypeSystemSP GetTypeSystemFromCU(std::shared_ptr<StackFrame> ctx) { + SymbolContext symbol_context = + ctx->GetSymbolContext(lldb::eSymbolContextCompUnit); + auto language = symbol_context.comp_unit->GetLanguage(); + + symbol_context = ctx->GetSymbolContext(lldb::eSymbolContextModule); + auto type_system = + symbol_context.module_sp->GetTypeSystemForLanguage(language); + + if (type_system) + return *type_system; + + return lldb::TypeSystemSP(); +} + +static CompilerType GetBasicType(lldb::TypeSystemSP type_system, + lldb::BasicType basic_type) { + if (type_system) + if (auto compiler_type = type_system.get()->GetBasicTypeFromAST(basic_type)) + return compiler_type; + + CompilerType empty_type; + return empty_type; +} + +llvm::Expected<CompilerType> +Interpreter::PickLiteralType(lldb::TypeSystemSP type_system, + std::shared_ptr<ExecutionContextScope> ctx, + const ScalarLiteralNode *literal) { + Scalar scalar = literal->GetValue(); + if (scalar.GetType() == Scalar::e_float) { + if (literal->IsFloat()) + return GetBasicType(type_system, lldb::eBasicTypeFloat); + return GetBasicType(type_system, lldb::eBasicTypeDouble); + } else if (scalar.GetType() == Scalar::e_int) { ---------------- labath wrote:
No else after return: https://llvm.org/docs/CodingStandards.html#don-t-use-else-after-a-return https://github.com/llvm/llvm-project/pull/152308 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits