This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH] Remove only use of current_inferior ()->gdbarch outside of gdbarch.*


Hi.

target_gdbarch is a magical thing, there are different kinds of arches:
for multiarch systems (e.g., call) which arch you use for certain
struct gdbarch API calls is important.

E.g.,
https://sourceware.org/ml/gdb-patches/2015-08/msg00789.html

Until this is cleaned up it'd be best to only use target_gdbarch
and not its underlying implementation.
Fortunately there is only one place that needed changing
(further reinforcing my sense that only target_gdbarch should be
used and never current_inferior ()->gdbarch).

Alas, short of an API reorg (which I think is reasonable), I can't think
of a way to prevent this from recurring.


2015-08-27  Doug Evans  <xdje42@gmail.com>

	* ravenscar-thread.c (ravenscar_inferior_created): Replace
	current_inferior ()->gdbarch with its wrapper target_gdbarch.

diff --git a/gdb/ravenscar-thread.c b/gdb/ravenscar-thread.c
index ef82507..fe36c96 100644
--- a/gdb/ravenscar-thread.c
+++ b/gdb/ravenscar-thread.c
@@ -341,7 +341,7 @@ ravenscar_inferior_created (struct target_ops *target, int from_tty)
   struct ravenscar_arch_ops *ops;
 
   if (!ravenscar_task_support
-      || gdbarch_ravenscar_ops (current_inferior ()->gdbarch) == NULL
+      || gdbarch_ravenscar_ops (target_gdbarch ()) == NULL
       || !has_ravenscar_runtime ())
     return;
 


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]