public inbox for gdb-cvs@sourceware.org
help / color / mirror / Atom feed
* [binutils-gdb] Remove the_windows_nat_target global
@ 2022-12-01 18:39 Tom Tromey
  0 siblings, 0 replies; only message in thread
From: Tom Tromey @ 2022-12-01 18:39 UTC (permalink / raw)
  To: gdb-cvs

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=5f8363d9248f1864b58d329a2c734527c3713055

commit 5f8363d9248f1864b58d329a2c734527c3713055
Author: Tom Tromey <tromey@adacore.com>
Date:   Wed Nov 30 08:51:09 2022 -0700

    Remove the_windows_nat_target global
    
    I belatedly realized that the "the_windows_nat_target" global isn't
    really necessary.  It's only used in one place, where 'this' would be
    simpler and clearer.  This patch removes the global entirely.
    
    Approved-By: Simon Marchi <simon.marchi@efficios.com>

Diff:
---
 gdb/windows-nat.c | 11 ++++-------
 1 file changed, 4 insertions(+), 7 deletions(-)

diff --git a/gdb/windows-nat.c b/gdb/windows-nat.c
index 17422e15f80..900d8c3d3c4 100644
--- a/gdb/windows-nat.c
+++ b/gdb/windows-nat.c
@@ -387,10 +387,6 @@ private:
   bool m_is_async = false;
 };
 
-/* This is a pointer and not a global specifically to avoid a C++
-   "static initializer fiasco" situation.  */
-static windows_nat_target *the_windows_nat_target;
-
 static void
 check (BOOL ok, const char *file, int line)
 {
@@ -629,7 +625,7 @@ windows_nat_target::delete_thread (ptid_t ptid, DWORD exit_code,
 		target_pid_to_str (ptid).c_str (),
 		(unsigned) exit_code);
 
-  ::delete_thread (find_thread_ptid (the_windows_nat_target, ptid));
+  ::delete_thread (find_thread_ptid (this, ptid));
 
   auto iter = std::find_if (windows_process.thread_list.begin (),
 			    windows_process.thread_list.end (),
@@ -3126,8 +3122,9 @@ _initialize_windows_nat ()
      calling x86_set_debug_register_length function
      in processor windows specific native file.  */
 
-  the_windows_nat_target = new windows_nat_target;
-  add_inf_child_target (the_windows_nat_target);
+  /* The target is not a global specifically to avoid a C++ "static
+     initializer fiasco" situation.  */
+  add_inf_child_target (new windows_nat_target);
 
 #ifdef __CYGWIN__
   cygwin_internal (CW_SET_DOS_FILE_WARNING, 0);

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2022-12-01 18:39 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-12-01 18:39 [binutils-gdb] Remove the_windows_nat_target global Tom Tromey

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).