Add a way to temporarily set a gdb parameter from Python
authorTom Tromey <tromey@adacore.com>
Tue, 4 Jan 2022 18:00:52 +0000 (11:00 -0700)
committerTom Tromey <tromey@adacore.com>
Wed, 26 Jan 2022 13:49:51 +0000 (06:49 -0700)
commitb583c328e71369f90f4042ac7973ce9edfdb44b3
tree3ed1cfd9763fe4984c72d204113f3b166e47d011
parentdedb7102b3b35f789fd5c140fe01917eaeae2853
Add a way to temporarily set a gdb parameter from Python

It's sometimes useful to temporarily set some gdb parameter from
Python.  Now that the 'endian' crash is fixed, and now that the
current language is no longer captured by the Python layer, it seems
reasonable to add a helper function for this situation.

This adds a new gdb.with_parameter function.  This creates a context
manager which temporarily sets some parameter to a specified value.
The old value is restored when the context is exited.  This is most
useful with the Python "with" statement:

   with gdb.with_parameter('language', 'ada'):
      ... do Ada stuff

This also adds a simple function to set a parameter,
gdb.set_parameter, as suggested by Andrew.

This is PR python/10790.

Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=10790
gdb/NEWS
gdb/doc/python.texi
gdb/python/lib/gdb/__init__.py
gdb/testsuite/gdb.python/py-lookup-type.exp