Skip to content

Many lldb tests fail when the debug info format is set to PDB #149498

@DavidSpickett

Description

@DavidSpickett

Using the patch proposed in #149305, many tests fail on Windows. Testing with PDB instead of DWARF is not something we support right now but want for #24834.

********************
Unresolved Tests (5):
  lldb-api :: functionalities/data-formatter/data-formatter-stl/generic/string/TestDataFormatterStdString.py
  lldb-api :: lang/c/vla/TestVLA.py
  lldb-api :: python_api/frame/get-variables/TestGetVariables.py
  lldb-api :: python_api/process/TestProcessAPI.py
  lldb-api :: tools/lldb-dap/commands/TestDAP_commands.py

********************
Failed Tests (119):
  lldb-api :: commands/dwim-print/TestDWIMPrint.py
  lldb-api :: commands/expression/anonymous-struct/TestCallUserAnonTypedef.py
  lldb-api :: commands/expression/argument_passing_restrictions/TestArgumentPassingRestrictions.py
  lldb-api :: commands/expression/call-function/TestCallStdStringFunction.py
  lldb-api :: commands/expression/call-function/TestCallStopAndContinue.py
  lldb-api :: commands/expression/call-function/TestCallUserDefinedFunction.py
  lldb-api :: commands/expression/char/TestExprsChar.py
  lldb-api :: commands/expression/class_template_specialization_empty_pack/TestClassTemplateSpecializationParametersHandling.py
  lldb-api :: commands/expression/codegen-crash-typedefdecl-not-in_declcontext/TestCodegenCrashTypedefDeclNotInDeclContext.py
  lldb-api :: commands/expression/context-object/TestContextObject.py
  lldb-api :: commands/expression/deleting-implicit-copy-constructor/TestDeletingImplicitCopyConstructor.py
  lldb-api :: commands/expression/diagnostics/TestExprDiagnostics.py
  lldb-api :: commands/expression/expr_inside_lambda/TestExprInsideLambdas.py
  lldb-api :: commands/expression/formatters/TestFormatters.py
  lldb-api :: commands/expression/import_base_class_when_class_has_derived_member/TestImportBaseClassWhenClassHasDerivedMember.py
  lldb-api :: commands/expression/inline-namespace/TestInlineNamespace.py
  lldb-api :: commands/expression/namespace-alias/TestInlineNamespaceAlias.py
  lldb-api :: commands/expression/nested/TestNestedExpressions.py
  lldb-api :: commands/expression/no-deadlock/TestExprDoesntBlock.py
  lldb-api :: commands/expression/options/TestExprOptions.py
  lldb-api :: commands/expression/pr35310/TestExprsBug35310.py
  lldb-api :: commands/expression/rdar42038760/TestScalarURem.py
  lldb-api :: commands/expression/rdar44436068/Test128BitsInteger.py
  lldb-api :: commands/expression/static-initializers/TestStaticInitializers.py
  lldb-api :: commands/expression/test/TestExprs.py
  lldb-api :: commands/expression/unwind_expression/TestUnwindExpression.py
  lldb-api :: commands/expression/xvalue/TestXValuePrinting.py
  lldb-api :: commands/frame/recognizer/TestFrameRecognizer.py
  lldb-api :: commands/frame/var-dil/basics/NoDebugInfo/TestFrameVarDILNoDebugInfo.py
  lldb-api :: commands/platform/launchgdbserver/TestPlatformLaunchGDBServer.py
  lldb-api :: functionalities/breakpoint/breakpoint_by_line_and_column/TestBreakpointByLineAndColumn.py
  lldb-api :: functionalities/breakpoint/breakpoint_ids/TestBreakpointIDs.py
  lldb-api :: functionalities/breakpoint/breakpoint_language/TestBreakpointLanguage.py
  lldb-api :: functionalities/breakpoint/breakpoint_on_overload/TestBreakOnOverload.py
  lldb-api :: functionalities/breakpoint/breakpoint_options/TestBreakpointOptions.py
  lldb-api :: functionalities/data-formatter/data-formatter-cpp/TestDataFormatterCpp.py
  lldb-api :: functionalities/data-formatter/data-formatter-ptr-matching/TestDataFormatterPtrMatching.py
  lldb-api :: functionalities/data-formatter/data-formatter-skip-summary/TestDataFormatterSkipSummary.py
  lldb-api :: functionalities/data-formatter/data-formatter-stl/generic/forward_list/TestDataFormatterGenericForwardList.py
  lldb-api :: functionalities/data-formatter/data-formatter-stl/generic/list/TestDataFormatterGenericList.py
  lldb-api :: functionalities/data-formatter/data-formatter-stl/generic/shared_ptr/TestDataFormatterStdSharedPtr.py
  lldb-api :: functionalities/data-formatter/data-formatter-stl/generic/tuple/TestDataFormatterStdTuple.py
  lldb-api :: functionalities/data-formatter/data-formatter-stl/generic/u8string/TestDataFormatterStdU8String.py
  lldb-api :: functionalities/data-formatter/data-formatter-stl/generic/unique_ptr/TestDataFormatterStdUniquePtr.py
  lldb-api :: functionalities/data-formatter/ptr_ref_typedef/TestPtrRef2Typedef.py
  lldb-api :: functionalities/data-formatter/special-chars/TestSummaryStringSpecialChars.py
  lldb-api :: functionalities/data-formatter/stringprinter/TestStringPrinter.py
  lldb-api :: functionalities/data-formatter/typedef_array/TestTypedefArray.py
  lldb-api :: functionalities/data-formatter/var-in-aggregate-misuse/TestVarInAggregateMisuse.py
  lldb-api :: functionalities/data-formatter/varscript_formatting/TestDataFormatterVarScriptFormatting.py
  lldb-api :: functionalities/data-formatter/vector-types/TestVectorTypesFormatting.py
  lldb-api :: functionalities/inline-stepping/TestInlineStepping.py
  lldb-api :: functionalities/location-list-lookup/TestLocationListLookup.py
  lldb-api :: functionalities/memory/find/TestMemoryFind.py
  lldb-api :: functionalities/multiple-slides/TestMultipleSlides.py
  lldb-api :: functionalities/optimized_code/TestNoASanExceptionAfterEvalOP_piece.py
  lldb-api :: functionalities/return-value/TestReturnValue.py
  lldb-api :: functionalities/target_var/TestTargetVar.py
  lldb-api :: functionalities/type_find_first/TestFindFirstType.py
  lldb-api :: functionalities/type_get_module/TestTypeGetModule.py
  lldb-api :: functionalities/type_types/TestFindTypes.py
  lldb-api :: functionalities/unused-inlined-parameters/TestUnusedInlinedParameters.py
  lldb-api :: lang/c/enum_types/TestEnumTypes.py
  lldb-api :: lang/c/fpeval/TestFPEval.py
  lldb-api :: lang/c/inlines/TestRedefinitionsInInlines.py
  lldb-api :: lang/c/local_variables/TestLocalVariables.py
  lldb-api :: lang/c/set_values/TestSetValues.py
  lldb-api :: lang/c/shared_lib/TestSharedLib.py
  lldb-api :: lang/c/struct_types/TestStructTypes.py
  lldb-api :: lang/c/unicode/TestUnicodeSymbols.py
  lldb-api :: lang/cpp/break-on-initializers/TestBreakOnCPP11Initializers.py
  lldb-api :: lang/cpp/breakpoint-commands/TestCPPBreakpointCommands.py
  lldb-api :: lang/cpp/call-function/TestCallCPPFunction.py
  lldb-api :: lang/cpp/chained-calls/TestCppChainedCalls.py
  lldb-api :: lang/cpp/class-template-parameter-pack/TestClassTemplateParameterPack.py
  lldb-api :: lang/cpp/class-template-parameter-pack/TestTemplatePackArgs.py
  lldb-api :: lang/cpp/class_static/TestStaticVariables.py
  lldb-api :: lang/cpp/const_static_integral_member/TestConstStaticIntegralMember.py
  lldb-api :: lang/cpp/const_static_integral_member_int128/TestConstStaticIntegralMemberInt128.py
  lldb-api :: lang/cpp/constructors/TestCppConstructors.py
  lldb-api :: lang/cpp/dereferencing_references/TestCPPDereferencingReferences.py
  lldb-api :: lang/cpp/enum_promotion/TestCPPEnumPromotion.py
  lldb-api :: lang/cpp/extern_c/TestExternCSymbols.py
  lldb-api :: lang/cpp/forward/TestCPPForwardDeclaration.py
  lldb-api :: lang/cpp/function-qualifiers/TestCppFunctionQualifiers.py
  lldb-api :: lang/cpp/function-ref-qualifiers/TestCppFunctionRefQualifiers.py
  lldb-api :: lang/cpp/global_operators/TestCppGlobalOperators.py
  lldb-api :: lang/cpp/global_variables/TestCPPGlobalVariables.py
  lldb-api :: lang/cpp/incompatible-class-templates/TestCppIncompatibleClassTemplates.py
  lldb-api :: lang/cpp/llvm-style/TestLLVMStyle.py
  lldb-api :: lang/cpp/multiple-inheritance/TestCppMultipleInheritance.py
  lldb-api :: lang/cpp/namespace/TestNamespace.py
  lldb-api :: lang/cpp/namespace/TestNamespaceLookup.py
  lldb-api :: lang/cpp/namespace_conflicts/TestNamespaceConflicts.py
  lldb-api :: lang/cpp/nested-template/TestNestedTemplate.py
  lldb-api :: lang/cpp/nsimport/TestCppNsImport.py
  lldb-api :: lang/cpp/operators/TestCppOperators.py
  lldb-api :: lang/cpp/overloaded-functions/TestOverloadedFunctions.py
  lldb-api :: lang/cpp/preferred_name/TestPreferredName.py
  lldb-api :: lang/cpp/rvalue-references/TestRvalueReferences.py
  lldb-api :: lang/cpp/static_methods/TestCPPStaticMethods.py
  lldb-api :: lang/cpp/step-through-trampoline/TestStepThroughTrampoline.py
  lldb-api :: lang/cpp/stl/TestSTL.py
  lldb-api :: lang/cpp/structured-binding/TestStructuredBinding.py
  lldb-api :: lang/cpp/template-specialization-type/TestTemplateSpecializationType.py
  lldb-api :: lang/cpp/template/TestTemplateArgs.py
  lldb-api :: lang/cpp/type_lookup/TestCppTypeLookup.py
  lldb-api :: lang/cpp/type_lookup_duplicate/TestCppTypeLookupDuplicate.py
  lldb-api :: lang/cpp/typedef-to-outer-fwd/TestTypedefToOuterFwd.py
  lldb-api :: lang/cpp/typedef/TestCppTypedef.py
  lldb-api :: lang/cpp/unique-types2/TestUniqueTypes2.py
  lldb-api :: lang/cpp/unsigned_types/TestUnsignedTypes.py
  lldb-api :: lang/mixed/TestMixedLanguages.py
  lldb-api :: macosx/duplicate-archive-members/TestDuplicateMembers.py
  lldb-api :: python_api/frame/inlines/TestInlinedFrame.py
  lldb-api :: python_api/sbmodule/FindTypes/TestSBModuleFindTypes.py
  lldb-api :: python_api/target/TestTargetAPI.py
  lldb-api :: python_api/thread/TestThreadAPI.py
  lldb-api :: python_api/type/TestTypeList.py

********************
Unexpectedly Passed Tests (2):
  lldb-api :: lang/cpp/function_refs/TestFunctionRefs.py
  lldb-api :: lang/cpp/reference-to-outer-type/TestCppReferenceToOuterClass.py


Testing Time: 801.33s

Total Discovered Tests: 1288
  Unsupported        : 670 (52.02%)
  Passed             : 482 (37.42%)
  Expectedly Failed  :  10 (0.78%)
  Unresolved         :   5 (0.39%)
  Failed             : 119 (9.24%)
  Unexpectedly Passed:   2 (0.16%)

If we want to run all debug info tests with PDB as well, these need to be investigated. In the meantime perhaps we can opt-in known good tests.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions