diff options
| -rw-r--r-- | lldb/test/functionalities/data-formatter/data-formatter-skip-summary/TestDataFormatterSkipSummary.py | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/lldb/test/functionalities/data-formatter/data-formatter-skip-summary/TestDataFormatterSkipSummary.py b/lldb/test/functionalities/data-formatter/data-formatter-skip-summary/TestDataFormatterSkipSummary.py index 55f7e947eca..7758043386b 100644 --- a/lldb/test/functionalities/data-formatter/data-formatter-skip-summary/TestDataFormatterSkipSummary.py +++ b/lldb/test/functionalities/data-formatter/data-formatter-skip-summary/TestDataFormatterSkipSummary.py @@ -129,6 +129,22 @@ class DataFormatterTestCase(TestBase): 'm_child2 = Level 4', '}']) + # Bad debugging info on SnowLeopard gcc (Apple Inc. build 5666). + # Skip the following tests if the condition is met. + if self.getCompiler().endswith('gcc') and not self.getCompiler().endswith('llvm-gcc'): + import re, lldbutil + gcc_version_output = system([lldbutil.which(self.getCompiler()), "-v"])[1] + #print "my output:", gcc_version_output + for line in gcc_version_output.split(os.linesep): + m = re.search('\(Apple Inc\. build ([0-9]+)\)', line) + #print "line:", line + if m: + gcc_build = int(m.group(1)) + #print "gcc build:", gcc_build + if gcc_build >= 5666: + # rdar://problem/9804600" + self.skipTest("rdar://problem/9804600 wrong namespace for std::string in debug info") + # Expand same expression, skipping 3 layers of summaries self.expect('frame variable data1.m_child1->m_child2 -T -Y3', substrs = ['(DeepData_3) data1.m_child1->m_child2 = {', |

