def get_stack_trace(self, source=None, script=None,
breakpoint=BREAKPOINT_FN,
cmds_after_breakpoint=None,
- import_site=False):
+ import_site=False,
+ ignore_stderr=False):
'''
Run 'python -c SOURCE' under gdb with a breakpoint.
# Use "args" to invoke gdb, capturing stdout, stderr:
out, err = run_gdb(*args, PYTHONHASHSEED=PYTHONHASHSEED)
- for line in err.splitlines():
- print(line, file=sys.stderr)
+ if not ignore_stderr:
+ for line in err.splitlines():
+ print(line, file=sys.stderr)
# bpo-34007: Sometimes some versions of the shared libraries that
# are part of the traceback are compiled in optimised mode and the
cmd,
breakpoint=func_name,
cmds_after_breakpoint=['bt', 'py-bt'],
+ # bpo-45207: Ignore 'Function "meth_varargs" not
+ # defined.' message in stderr.
+ ignore_stderr=True,
)
self.assertIn(f'<built-in method {func_name}', gdb_output)
cmd,
breakpoint=func_name,
cmds_after_breakpoint=['py-bt-full'],
+ # bpo-45207: Ignore 'Function "meth_varargs" not
+ # defined.' message in stderr.
+ ignore_stderr=True,
)
self.assertIn(
f'#{expected_frame} <built-in method {func_name}',