diff --git a/lldb/packages/Python/lldbsuite/test/expression_command/anonymous-struct/TestCallUserAnonTypedef.py b/lldb/packages/Python/lldbsuite/test/expression_command/anonymous-struct/TestCallUserAnonTypedef.py index 4ee08d4f8579..f5f44a32a97a 100644 --- a/lldb/packages/Python/lldbsuite/test/expression_command/anonymous-struct/TestCallUserAnonTypedef.py +++ b/lldb/packages/Python/lldbsuite/test/expression_command/anonymous-struct/TestCallUserAnonTypedef.py @@ -23,6 +23,7 @@ class TestExprLookupAnonStructTypedef(TestBase): # Find the breakpoint self.line = line_number('main.cpp', '// lldb testsuite break') + @expectedFailureAll(oslist=["windows"]) def test(self): """Test typedeffed untagged struct arguments for function call expressions""" self.build() diff --git a/lldb/packages/Python/lldbsuite/test/expression_command/test/TestExprs.py b/lldb/packages/Python/lldbsuite/test/expression_command/test/TestExprs.py index c3843c0bff0f..8c9a9a5a27e7 100644 --- a/lldb/packages/Python/lldbsuite/test/expression_command/test/TestExprs.py +++ b/lldb/packages/Python/lldbsuite/test/expression_command/test/TestExprs.py @@ -57,7 +57,6 @@ class BasicExprCommandsTestCase(TestBase): patterns = ["\(float\) \$.* = 2\.234"]) # (float) $2 = 2.234 - @expectedFailureAll(oslist=["windows"], bugnumber="llvm.org/pr21765") def test_many_expr_commands(self): self.build_and_run() diff --git a/lldb/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-synthtype/TestDataFormatterSynthType.py b/lldb/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-synthtype/TestDataFormatterSynthType.py index 9563aab7aada..6a03456e5c32 100644 --- a/lldb/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-synthtype/TestDataFormatterSynthType.py +++ b/lldb/packages/Python/lldbsuite/test/functionalities/data-formatter/data-formatter-synthtype/TestDataFormatterSynthType.py @@ -23,7 +23,6 @@ class DataFormatterSynthTypeTestCase(TestBase): self.line = line_number('main.cpp', 'break here') @skipIfFreeBSD # llvm.org/pr20545 bogus output confuses buildbot parser - @expectedFailureAll(oslist=["windows"], bugnumber="llvm.org/pr24462, Data formatters have problems on Windows") def test_with_run_command(self): """Test using Python synthetic children provider to provide a typename.""" self.build() diff --git a/lldb/packages/Python/lldbsuite/test/functionalities/memory/cache/TestMemoryCache.py b/lldb/packages/Python/lldbsuite/test/functionalities/memory/cache/TestMemoryCache.py index 87036411b3c6..a65882d3fa43 100644 --- a/lldb/packages/Python/lldbsuite/test/functionalities/memory/cache/TestMemoryCache.py +++ b/lldb/packages/Python/lldbsuite/test/functionalities/memory/cache/TestMemoryCache.py @@ -9,6 +9,7 @@ from __future__ import print_function import os, time import re import lldb +from lldbsuite.test.decorators import * from lldbsuite.test.lldbtest import * import lldbsuite.test.lldbutil as lldbutil @@ -22,6 +23,7 @@ class MemoryCacheTestCase(TestBase): # Find the line number to break inside main(). self.line = line_number('main.cpp', '// Set break point at this line.') + @expectedFlakeyOS(oslist=["windows"]) def test_memory_cache(self): """Test the MemoryCache class with a sequence of 'memory read' and 'memory write' operations.""" self.build() diff --git a/lldb/packages/Python/lldbsuite/test/functionalities/watchpoint/watchpoint_set_command/TestWatchpointSetErrorCases.py b/lldb/packages/Python/lldbsuite/test/functionalities/watchpoint/watchpoint_set_command/TestWatchpointSetErrorCases.py index 27c759e6fb64..43597ec28f59 100644 --- a/lldb/packages/Python/lldbsuite/test/functionalities/watchpoint/watchpoint_set_command/TestWatchpointSetErrorCases.py +++ b/lldb/packages/Python/lldbsuite/test/functionalities/watchpoint/watchpoint_set_command/TestWatchpointSetErrorCases.py @@ -8,6 +8,7 @@ from __future__ import print_function import os, time import lldb +from lldbsuite.test.decorators import * from lldbsuite.test.lldbtest import * import lldbsuite.test.lldbutil as lldbutil @@ -24,6 +25,7 @@ class WatchpointSetErrorTestCase(TestBase): self.line = line_number(self.source, '// Set break point at this line.') # Build dictionary to have unique executable names for each test method. + @expectedFailureAll(oslist=["windows"]) def test_error_cases_with_watchpoint_set(self): """Test error cases with the 'watchpoint set' command.""" self.build() diff --git a/lldb/packages/Python/lldbsuite/test/lang/c/set_values/TestSetValues.py b/lldb/packages/Python/lldbsuite/test/lang/c/set_values/TestSetValues.py index 5d6f117e7b35..12e20dd42d44 100644 --- a/lldb/packages/Python/lldbsuite/test/lang/c/set_values/TestSetValues.py +++ b/lldb/packages/Python/lldbsuite/test/lang/c/set_values/TestSetValues.py @@ -24,7 +24,6 @@ class SetValuesTestCase(TestBase): self.line4 = line_number('main.c', '// Set break point #4.') self.line5 = line_number('main.c', '// Set break point #5.') - @expectedFailureAll(oslist=["windows"], bugnumber="llvm.org/pr21765") def test(self): """Test settings and readings of program variables.""" self.build() diff --git a/lldb/packages/Python/lldbsuite/test/lang/cpp/const_this/TestConstThis.py b/lldb/packages/Python/lldbsuite/test/lang/cpp/const_this/TestConstThis.py index 2249a8c9b16a..a08af5d091e1 100644 --- a/lldb/packages/Python/lldbsuite/test/lang/cpp/const_this/TestConstThis.py +++ b/lldb/packages/Python/lldbsuite/test/lang/cpp/const_this/TestConstThis.py @@ -1,4 +1,4 @@ from lldbsuite.test import lldbinline from lldbsuite.test import decorators -lldbinline.MakeInlineTest(__file__, globals(), [decorators.expectedFailureAll(oslist=["windows"], bugnumber="llvm.org/pr24764")] ) +lldbinline.MakeInlineTest(__file__, globals(), [] ) diff --git a/lldb/packages/Python/lldbsuite/test/lang/cpp/unsigned_types/TestUnsignedTypes.py b/lldb/packages/Python/lldbsuite/test/lang/cpp/unsigned_types/TestUnsignedTypes.py index c137592558ed..30aadb389680 100644 --- a/lldb/packages/Python/lldbsuite/test/lang/cpp/unsigned_types/TestUnsignedTypes.py +++ b/lldb/packages/Python/lldbsuite/test/lang/cpp/unsigned_types/TestUnsignedTypes.py @@ -9,6 +9,7 @@ from __future__ import print_function import os, time import re import lldb +from lldbsuite.test.decorators import * from lldbsuite.test.lldbtest import * import lldbsuite.test.lldbutil as lldbutil @@ -22,6 +23,7 @@ class UnsignedTypesTestCase(TestBase): # Find the line number to break inside main(). self.line = line_number('main.cpp', '// Set break point at this line.') + @expectedFailureAll(oslist=["windows"]) def test(self): """Test that variables with unsigned types display correctly.""" self.build() diff --git a/lldb/packages/Python/lldbsuite/test/python_api/event/TestEvents.py b/lldb/packages/Python/lldbsuite/test/python_api/event/TestEvents.py index baefd94497bb..1c23f50e9d4d 100644 --- a/lldb/packages/Python/lldbsuite/test/python_api/event/TestEvents.py +++ b/lldb/packages/Python/lldbsuite/test/python_api/event/TestEvents.py @@ -107,6 +107,7 @@ class EventAPITestCase(TestBase): @add_test_categories(['pyapi']) @expectedFlakeyLinux("llvm.org/pr23730") # Flaky, fails ~1/100 cases + @expectedFlakeyOS(oslist=["windows"]) def test_wait_for_event(self): """Exercise SBListener.WaitForEvent() API.""" self.build() diff --git a/lldb/packages/Python/lldbsuite/test/python_api/symbol-context/two-files/TestSymbolContextTwoFiles.py b/lldb/packages/Python/lldbsuite/test/python_api/symbol-context/two-files/TestSymbolContextTwoFiles.py index de3c1f266cc4..1d8d70114573 100644 --- a/lldb/packages/Python/lldbsuite/test/python_api/symbol-context/two-files/TestSymbolContextTwoFiles.py +++ b/lldb/packages/Python/lldbsuite/test/python_api/symbol-context/two-files/TestSymbolContextTwoFiles.py @@ -16,6 +16,7 @@ class SymbolContextTwoFilesTestCase(TestBase): mydir = TestBase.compute_mydir(__file__) @add_test_categories(['pyapi']) + @expectedFailureAll(oslist=["windows"]) def test_lookup_by_address(self): """Test lookup by address in a module with multiple compilation units""" self.build() diff --git a/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp b/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp index 2d5b6e16deee..fed324a1a888 100644 --- a/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp +++ b/lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp @@ -3617,10 +3617,14 @@ DWARFASTParserClang::GetClangDeclForDIE (const DWARFDIE &die) { SymbolFileDWARF *dwarf = die.GetDWARF(); Type *type = GetTypeForDIE(die); - const char *name = die.GetName(); - clang::DeclContext *decl_context = ClangASTContext::DeclContextGetAsDeclContext(dwarf->GetDeclContextContainingUID(die.GetID())); - decl = m_ast.CreateVariableDeclaration(decl_context, name, - ClangUtil::GetQualType(type->GetForwardCompilerType())); + if (dwarf && type) + { + const char *name = die.GetName(); + clang::DeclContext *decl_context = + ClangASTContext::DeclContextGetAsDeclContext(dwarf->GetDeclContextContainingUID(die.GetID())); + decl = m_ast.CreateVariableDeclaration(decl_context, name, + ClangUtil::GetQualType(type->GetForwardCompilerType())); + } break; } case DW_TAG_imported_declaration: diff --git a/lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp b/lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp index e8c82c1def40..8bdb3eacecbb 100644 --- a/lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp +++ b/lldb/source/Plugins/SymbolFile/PDB/SymbolFilePDB.cpp @@ -121,7 +121,7 @@ SymbolFilePDB::CalculateAbilities() auto error = loadDataForEXE(PDB_ReaderType::DIA, llvm::StringRef(exePath), m_session_up); if (error) { - handleAllErrors(std::move(error), [](const GenericError &GE) {}); + llvm::consumeError(std::move(error)); return 0; } }