mirror of
https://github.com/bminor/binutils-gdb.git
synced 2025-11-16 12:34:43 +00:00
gdb: fix some flake8 F824 warnings
flake8 7.2.0 appears to have this new warning:
F824: global name / nonlocal name is unused: name is never assigned in scope
It points out a few places in our code base where "global" is not
necessary, fix them.
Change-Id: Ia6fb08686977559726fefe2a5bb95d8dcb298bb0
Approved-By: Tom Tromey <tom@tromey.com>
This commit is contained in:
@@ -96,5 +96,4 @@ def pre_command_loop():
|
||||
# These are handy for bug reports.
|
||||
startup.exec_and_log("show version")
|
||||
startup.exec_and_log("show configuration")
|
||||
global server
|
||||
startup.start_dap(server.main_loop)
|
||||
|
||||
@@ -51,7 +51,6 @@ def suppress_new_breakpoint_event():
|
||||
|
||||
@in_gdb_thread
|
||||
def _bp_modified(event):
|
||||
global _suppress_bp
|
||||
if not _suppress_bp:
|
||||
send_event(
|
||||
"breakpoint",
|
||||
@@ -64,7 +63,6 @@ def _bp_modified(event):
|
||||
|
||||
@in_gdb_thread
|
||||
def _bp_created(event):
|
||||
global _suppress_bp
|
||||
if not _suppress_bp:
|
||||
send_event(
|
||||
"breakpoint",
|
||||
@@ -77,7 +75,6 @@ def _bp_created(event):
|
||||
|
||||
@in_gdb_thread
|
||||
def _bp_deleted(event):
|
||||
global _suppress_bp
|
||||
if not _suppress_bp:
|
||||
send_event(
|
||||
"breakpoint",
|
||||
@@ -151,7 +148,6 @@ def _remove_entries(table, *names):
|
||||
# the breakpoint.
|
||||
@in_gdb_thread
|
||||
def _set_breakpoints_callback(kind, specs, creator):
|
||||
global breakpoint_map
|
||||
# Try to reuse existing breakpoints if possible.
|
||||
if kind in breakpoint_map:
|
||||
saved_map = breakpoint_map[kind]
|
||||
|
||||
@@ -238,7 +238,6 @@ def _on_stop(event):
|
||||
):
|
||||
obj["reason"] = "pause"
|
||||
else:
|
||||
global stop_reason_map
|
||||
obj["reason"] = stop_reason_map[event.details["reason"]]
|
||||
_expected_pause = False
|
||||
send_event_maybe_later("stopped", obj)
|
||||
|
||||
@@ -53,12 +53,11 @@ gdb.events.cont.connect(_clear_frame_ids)
|
||||
@in_gdb_thread
|
||||
def frame_for_id(id):
|
||||
"""Given a frame identifier ID, return the corresponding frame."""
|
||||
global thread_ids
|
||||
if id in thread_ids:
|
||||
thread_id = thread_ids[id]
|
||||
if thread_id != gdb.selected_thread().global_num:
|
||||
set_thread(thread_id)
|
||||
global _all_frames
|
||||
|
||||
return _all_frames[id]
|
||||
|
||||
|
||||
@@ -103,10 +102,8 @@ def _frame_id_generator():
|
||||
|
||||
# Helper function to assign an ID to a frame.
|
||||
def get_id(frame):
|
||||
global _all_frames
|
||||
num = len(_all_frames)
|
||||
_all_frames.append(frame)
|
||||
global thread_ids
|
||||
thread_ids[num] = gdb.selected_thread().global_num
|
||||
return num
|
||||
|
||||
@@ -128,7 +125,6 @@ def _frame_id_generator():
|
||||
@in_gdb_thread
|
||||
def _get_frame_iterator():
|
||||
thread_id = gdb.selected_thread().global_num
|
||||
global _iter_map
|
||||
if thread_id not in _iter_map:
|
||||
_iter_map[thread_id] = _MemoizingIterator(_frame_id_generator())
|
||||
return _iter_map[thread_id]
|
||||
|
||||
@@ -78,7 +78,6 @@ def get_global_scope(frame):
|
||||
except RuntimeError:
|
||||
return None
|
||||
|
||||
global _id_to_scope
|
||||
block = block.static_block
|
||||
if block in _id_to_scope:
|
||||
return _id_to_scope[block]
|
||||
|
||||
@@ -164,7 +164,6 @@ def attach(
|
||||
@request("configurationDone", on_dap_thread=True)
|
||||
def config_done(**args):
|
||||
# Handle the launch or attach.
|
||||
global _launch_or_attach_promise
|
||||
if _launch_or_attach_promise is None:
|
||||
raise DAPException("launch or attach not specified")
|
||||
# Resolve the launch or attach, but only after the
|
||||
|
||||
@@ -120,7 +120,6 @@ class _FinishScopeReference(_ScopeReference):
|
||||
|
||||
def fetch_one_child(self, idx):
|
||||
assert idx == 0
|
||||
global _last_return_value
|
||||
return ("(return)", _last_return_value)
|
||||
|
||||
|
||||
@@ -145,8 +144,6 @@ class _RegisterReference(_ScopeReference):
|
||||
|
||||
@request("scopes")
|
||||
def scopes(*, frameId: int, **extra):
|
||||
global _last_return_value
|
||||
global frame_to_scope
|
||||
if frameId in frame_to_scope:
|
||||
scopes = frame_to_scope[frameId]
|
||||
else:
|
||||
|
||||
@@ -307,7 +307,6 @@ class Server:
|
||||
args = {}
|
||||
|
||||
def fn():
|
||||
global _commands
|
||||
return _commands[params["command"]](**args)
|
||||
|
||||
self.invoke_request(req, result, fn)
|
||||
@@ -440,7 +439,6 @@ def send_event(event, body=None):
|
||||
"""Send an event to the DAP client.
|
||||
EVENT is the name of the event, a string.
|
||||
BODY is the body of the event, an arbitrary object."""
|
||||
global _server
|
||||
_server.send_event(event, body)
|
||||
|
||||
|
||||
@@ -449,13 +447,11 @@ def send_event_maybe_later(event, body=None):
|
||||
within the dap thread and that request is configured to delay the event,
|
||||
wait until the response has been sent until the event is sent back to
|
||||
the client."""
|
||||
global _server
|
||||
_server.send_event_maybe_later(event, body)
|
||||
|
||||
|
||||
def call_function_later(fn):
|
||||
"""Call FN later -- after the current request's response has been sent."""
|
||||
global _server
|
||||
_server.call_function_later(fn)
|
||||
|
||||
|
||||
@@ -533,7 +529,6 @@ def request(
|
||||
|
||||
if response:
|
||||
if defer_stop_events:
|
||||
global _server
|
||||
if _server is not None:
|
||||
with _server.delayed_events_lock:
|
||||
_server.defer_stop_events = True
|
||||
@@ -555,7 +550,6 @@ def request(
|
||||
if expect_stopped:
|
||||
cmd = _check_not_running(cmd)
|
||||
|
||||
global _commands
|
||||
assert name not in _commands
|
||||
_commands[name] = cmd
|
||||
return cmd
|
||||
@@ -568,7 +562,6 @@ def capability(name, value=True):
|
||||
the DAP capability NAME."""
|
||||
|
||||
def wrap(func):
|
||||
global _capabilities
|
||||
assert name not in _capabilities
|
||||
_capabilities[name] = value
|
||||
return func
|
||||
@@ -581,7 +574,6 @@ def client_bool_capability(name, default=False):
|
||||
|
||||
If the capability was not specified, or did not have boolean type,
|
||||
DEFAULT is returned. DEFAULT defaults to False."""
|
||||
global _server
|
||||
if name in _server.config and isinstance(_server.config[name], bool):
|
||||
return _server.config[name]
|
||||
return default
|
||||
@@ -589,7 +581,6 @@ def client_bool_capability(name, default=False):
|
||||
|
||||
@request("initialize", on_dap_thread=True)
|
||||
def initialize(**args):
|
||||
global _server, _capabilities
|
||||
_server.config = args
|
||||
_server.send_event_later("initialized")
|
||||
global _lines_start_at_1
|
||||
@@ -705,7 +696,6 @@ def export_line(line: int) -> int:
|
||||
"""Rewrite LINE according to client capability.
|
||||
This applies the linesStartAt1 capability as needed,
|
||||
when sending a line number from gdb to the client."""
|
||||
global _lines_start_at_1
|
||||
if not _lines_start_at_1:
|
||||
# In gdb, lines start at 1, so we only need to change this if
|
||||
# the client starts at 0.
|
||||
@@ -717,7 +707,6 @@ def import_line(line: int) -> int:
|
||||
"""Rewrite LINE according to client capability.
|
||||
This applies the linesStartAt1 capability as needed,
|
||||
when the client sends a line number to gdb."""
|
||||
global _lines_start_at_1
|
||||
if not _lines_start_at_1:
|
||||
# In gdb, lines start at 1, so we only need to change this if
|
||||
# the client starts at 0.
|
||||
|
||||
@@ -37,7 +37,6 @@ def make_source(fullname, filename=None):
|
||||
FILENAME is the base name; if None (the default), then it is
|
||||
computed from FULLNAME.
|
||||
"""
|
||||
global _source_map
|
||||
if fullname in _source_map:
|
||||
result = _source_map[fullname]
|
||||
else:
|
||||
@@ -53,7 +52,6 @@ def make_source(fullname, filename=None):
|
||||
global _next_source
|
||||
result["sourceReference"] = _next_source
|
||||
|
||||
global _id_map
|
||||
_id_map[_next_source] = result
|
||||
_next_source += 1
|
||||
|
||||
@@ -71,7 +69,6 @@ def decode_source(source):
|
||||
if "sourceReference" not in source:
|
||||
raise DAPException("either 'path' or 'sourceReference' must appear in Source")
|
||||
ref = source["sourceReference"]
|
||||
global _id_map
|
||||
if ref not in _id_map:
|
||||
raise DAPException("no sourceReference " + str(ref))
|
||||
return _id_map[ref]["path"]
|
||||
|
||||
@@ -69,7 +69,6 @@ class BaseReference(ABC):
|
||||
NAME is a string or None. None means this does not have a
|
||||
name, e.g., the result of expression evaluation."""
|
||||
|
||||
global all_variables
|
||||
all_variables.append(self)
|
||||
self._ref = len(all_variables)
|
||||
self._name = name
|
||||
@@ -267,7 +266,7 @@ class VariableReference(BaseReference):
|
||||
@in_gdb_thread
|
||||
def find_variable(ref):
|
||||
"""Given a variable reference, return the corresponding variable object."""
|
||||
global all_variables
|
||||
|
||||
# Variable references are offset by 1.
|
||||
ref = ref - 1
|
||||
if ref < 0 or ref > len(all_variables):
|
||||
|
||||
@@ -80,7 +80,6 @@ try:
|
||||
# ignore.
|
||||
pass
|
||||
|
||||
global _asm_lexers
|
||||
if lexer_type not in _asm_lexers:
|
||||
_asm_lexers[lexer_type] = lexers.get_lexer_by_name(lexer_type)
|
||||
_asm_lexers[lexer_type].add_filter(HandleNasmComments())
|
||||
|
||||
@@ -62,7 +62,6 @@ sum_matcher = re.compile("^(.?(PASS|FAIL)): (.*)$")
|
||||
def parse_sum_line(line: str, dic: dict[str, set[str]]):
|
||||
"""Parse a single LINE from a sumfile, and store the results in the
|
||||
dictionary referenced by DIC."""
|
||||
global sum_matcher
|
||||
|
||||
line = line.rstrip()
|
||||
m = re.match(sum_matcher, line)
|
||||
@@ -96,7 +95,6 @@ def read_sum_files(files: list[str]):
|
||||
"""Read the sumfiles (passed as a list in the FILES variable), and
|
||||
process each one, filling the FILES_AND_TESTS global dictionary with
|
||||
information about them."""
|
||||
global files_and_tests
|
||||
|
||||
for x in files:
|
||||
with open(x, "r") as f:
|
||||
@@ -115,7 +113,6 @@ def identify_racy_tests():
|
||||
This function does that for all sets (PASS, FAIL, KPASS, KFAIL, etc.),
|
||||
and then print a sorted list (without duplicates) of all the tests
|
||||
that were found to be racy."""
|
||||
global files_and_tests
|
||||
|
||||
# First, construct two dictionaries that will hold one set of
|
||||
# testcases for each state (PASS, FAIL, etc.).
|
||||
|
||||
Reference in New Issue
Block a user