3170c05
--- Lib/test/test_gdb.py.old	2012-04-11 21:04:01.367073855 -0400
3170c05
+++ Lib/test/test_gdb.py	2012-04-12 08:52:58.320288761 -0400
3170c05
@@ -96,6 +96,15 @@ class DebuggerTests(unittest.TestCase):
3170c05
         # Generate a list of commands in gdb's language:
3170c05
         commands = ['set breakpoint pending yes',
3170c05
                     'break %s' % breakpoint,
3170c05
+
3170c05
+                    # GDB as of Fedora 17 onwards can distinguish between the
3170c05
+                    # value of a variable at entry vs current value:
3170c05
+                    #   http://sourceware.org/gdb/onlinedocs/gdb/Variables.html
3170c05
+                    # which leads to the selftests failing with errors like this:
3170c05
+                    #   AssertionError: 'v@entry=()' != '()'
3170c05
+                    # Disable this:
3170c05
+                    'set print entry-values no',
3170c05
+
3170c05
                     'run']
3170c05
         if cmds_after_breakpoint:
3170c05
             commands += cmds_after_breakpoint
3170c05
@@ -135,8 +144,16 @@ class DebuggerTests(unittest.TestCase):
3170c05
         err = err.replace("warning: Cannot initialize thread debugging"
3170c05
                           " library: Debugger service failed\n",
3170c05
                           '')
3170c05
+        err = '\n'.join([line
3170c05
+                         for line in err.splitlines()
3170c05
+                         if not line.startswith('warning: Unable to open')
3170c05
+                         if not line.startswith('Missing separate debuginfo for')
3170c05
+                         if not line.startswith('Try: yum --disablerepo=')
3170c05
+                         # In case 'set print entry-values no' failed:
3170c05
+                         if not line.startswith('Undefined set print command')])
3170c05
 
3170c05
         # Ensure no unexpected error messages:
3170c05
+        self.maxDiff = None
3170c05
         self.assertEqual(err, '')
3170c05
 
3170c05
         return out