]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
gdb: fix some flake8 F824 warnings
authorSimon Marchi <simon.marchi@polymtl.ca>
Thu, 24 Apr 2025 18:48:32 +0000 (14:48 -0400)
committerSimon Marchi <simon.marchi@polymtl.ca>
Thu, 24 Apr 2025 19:34:30 +0000 (15:34 -0400)
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>
12 files changed:
gdb/python/lib/gdb/dap/__init__.py
gdb/python/lib/gdb/dap/breakpoint.py
gdb/python/lib/gdb/dap/events.py
gdb/python/lib/gdb/dap/frames.py
gdb/python/lib/gdb/dap/globalvars.py
gdb/python/lib/gdb/dap/launch.py
gdb/python/lib/gdb/dap/scopes.py
gdb/python/lib/gdb/dap/server.py
gdb/python/lib/gdb/dap/sources.py
gdb/python/lib/gdb/dap/varref.py
gdb/python/lib/gdb/styling.py
gdb/testsuite/analyze-racy-logs.py

index f908c9199817b30185191bf4d5b246d92d8afb6e..1c3cf8e07790a145036150772cbf5e4c9305527d 100644 (file)
@@ -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)
index bfb7bd3b05c95ce44dba7fead40086f9c4943dfd..59da120306785416d50d5692b51dd513ef5cc99e 100644 (file)
@@ -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]
index 54caea0ee86437720f0ae4ff4757c232c575a1fc..4dc9d65e53e12c079a39b1081bb5035b75a03fce 100644 (file)
@@ -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)
index 6433dbe8d05f735ae50aeb3a46ad583de9bcadeb..4dacb87400ab52349b1a114e662084fb9153c181 100644 (file)
@@ -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]
index 2e4b2a6091d56e2052751c19015334af862f760e..9d64d288d2a6459bd674c0321042267a0c14fa31 100644 (file)
@@ -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]
index e093e602d2786c6a190116d06d00e22162515a35..8ac4c7750c61c4111d8bf786878ffff3a31363f5 100644 (file)
@@ -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
index f499dcbba920b6e7b00adb3954cf7f97158e7774..7ce3a7fcfe586f0efe5d10aee0aecce68856014a 100644 (file)
@@ -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:
index d4314e828041aee3e0bb03a4011dff4341d44592..c4fa78183468851ba309765505277c6d5f4ef083 100644 (file)
@@ -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.
index 938c93a889035eddb3bcb279b82ee80f3f43c356..625c01f5d12d6ad5e3e86b440a610fdafbede36c 100644 (file)
@@ -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"]
index 42b53027531da43ed30411735417eeb5312d8c9a..8a13c51a452313fe7fe9c4b4b960146b3c588072 100644 (file)
@@ -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):
index e9387e3a0d3627ac46a03a339bd69201d97cb21f..60c470f7348e771905f544d692d446b3b8e62aeb 100644 (file)
@@ -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())
index e7c56471cd878024e8e617b1259ccfaa5b60fba5..f24bea9d3fcd4ac7d616c39ecff03f6412132058 100755 (executable)
@@ -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.).