Author: shafik Date: Thu Mar 28 10:22:13 2019 New Revision: 357188 URL: http://llvm.org/viewvc/llvm-project?rev=357188&view=rev Log: Regression test to ensure that we handling importing of std::vector of enums correctly
Summary: https://reviews.llvm.org/D59845 added a fix for the IsStructuralMatch(...) specialization for EnumDecl this test should pass once this fix is committed. Differential Revision: https://reviews.llvm.org/D59847 Added: lldb/trunk/packages/Python/lldbsuite/test/expression_command/vector_of_enums/ lldb/trunk/packages/Python/lldbsuite/test/expression_command/vector_of_enums/Makefile lldb/trunk/packages/Python/lldbsuite/test/expression_command/vector_of_enums/TestVectorOfEnums.py lldb/trunk/packages/Python/lldbsuite/test/expression_command/vector_of_enums/main.cpp Added: lldb/trunk/packages/Python/lldbsuite/test/expression_command/vector_of_enums/Makefile URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/expression_command/vector_of_enums/Makefile?rev=357188&view=auto ============================================================================== --- lldb/trunk/packages/Python/lldbsuite/test/expression_command/vector_of_enums/Makefile (added) +++ lldb/trunk/packages/Python/lldbsuite/test/expression_command/vector_of_enums/Makefile Thu Mar 28 10:22:13 2019 @@ -0,0 +1,5 @@ +LEVEL = ../../make + +CXX_SOURCES := main.cpp + +include $(LEVEL)/Makefile.rules Added: lldb/trunk/packages/Python/lldbsuite/test/expression_command/vector_of_enums/TestVectorOfEnums.py URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/expression_command/vector_of_enums/TestVectorOfEnums.py?rev=357188&view=auto ============================================================================== --- lldb/trunk/packages/Python/lldbsuite/test/expression_command/vector_of_enums/TestVectorOfEnums.py (added) +++ lldb/trunk/packages/Python/lldbsuite/test/expression_command/vector_of_enums/TestVectorOfEnums.py Thu Mar 28 10:22:13 2019 @@ -0,0 +1,28 @@ +""" +Test Expression Parser regression test to ensure that we handle enums +correctly, in this case specifically std::vector of enums. +""" + + +import lldb +from lldbsuite.test.decorators import * +from lldbsuite.test.lldbtest import * +from lldbsuite.test import lldbutil + +class TestVectorOfEnums(TestBase): + + mydir = TestBase.compute_mydir(__file__) + + def test_vector_of_enums(self): + self.build() + + lldbutil.run_to_source_breakpoint(self, '// break here', + lldb.SBFileSpec("main.cpp", False)) + + self.expect("expr v", substrs=[ + 'size=3', + '[0] = a', + '[1] = b', + '[2] = c', + '}' + ]) Added: lldb/trunk/packages/Python/lldbsuite/test/expression_command/vector_of_enums/main.cpp URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/expression_command/vector_of_enums/main.cpp?rev=357188&view=auto ============================================================================== --- lldb/trunk/packages/Python/lldbsuite/test/expression_command/vector_of_enums/main.cpp (added) +++ lldb/trunk/packages/Python/lldbsuite/test/expression_command/vector_of_enums/main.cpp Thu Mar 28 10:22:13 2019 @@ -0,0 +1,14 @@ +#include <vector> + +enum E { +a, +b, +c, +d +} ; + +int main() { + std::vector<E> v = {E::a, E::b, E::c}; + + return v.size(); // break here +} _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits