Remove some globals from nat/windows-nat.c
authorTom Tromey <tromey@adacore.com>
Thu, 31 Mar 2022 19:41:02 +0000 (13:41 -0600)
committerTom Tromey <tromey@adacore.com>
Mon, 4 Apr 2022 19:58:37 +0000 (13:58 -0600)
commit0578e87f93b09e4cc41d3982eb1672bcfc81042d
treef2781002de2cf155a7f4cc9ae5f0c7bf08d1a270
parentfc0b013e44e5a450631706bc25612b975cfbc692
Remove some globals from nat/windows-nat.c

nat/windows-nat.c has a number of globals that it uses to communicate
with its clients (gdb and gdbserver).  However, if we ever want the
Windows ports to be multi-inferior, globals won't work.

This patch takes a step toward that by moving most nat/windows-nat.c
globals into a new struct windows_process_info.  Many functions are
converted to be methods on this object.

A couple of globals remain, as they are needed to truly be global due
to the way that the Windows debugging APIs work.

The clients still have a global for the current process.  That is,
this patch is a step toward the end goal, but doesn't implement the
goal itself.
gdb/nat/windows-nat.c
gdb/nat/windows-nat.h
gdb/windows-nat.c
gdbserver/win32-low.cc