public inbox for gdb-patches@sourceware.org
 help / color / mirror / Atom feed
* [pushed] Fix self-test failure in addrmap
@ 2022-06-12 21:56 Tom Tromey
  0 siblings, 0 replies; only message in thread
From: Tom Tromey @ 2022-06-12 21:56 UTC (permalink / raw)
  To: gdb-patches; +Cc: Tom Tromey

Mark pointed out that my recent addrmap C++-ficiation changes caused a
regression in the self-tests.  This patch fixes the problem by
updating this test not to allocate the mutable addrmap on an obstack.
---
 gdb/addrmap.c | 10 +++-------
 1 file changed, 3 insertions(+), 7 deletions(-)

diff --git a/gdb/addrmap.c b/gdb/addrmap.c
index 06f3a831df9..8c357fbf7e5 100644
--- a/gdb/addrmap.c
+++ b/gdb/addrmap.c
@@ -429,9 +429,8 @@ test_addrmap ()
   void *val2 = &array[2];
 
   /* Create mutable addrmap.  */
-  struct obstack temp_obstack;
-  obstack_init (&temp_obstack);
-  struct addrmap_mutable *map = new (&temp_obstack) addrmap_mutable;
+  auto_obstack temp_obstack;
+  std::unique_ptr<struct addrmap_mutable> map (new addrmap_mutable);
   SELF_CHECK (map != nullptr);
 
   /* Check initial state.  */
@@ -445,7 +444,7 @@ test_addrmap ()
 
   /* Create corresponding fixed addrmap.  */
   struct addrmap *map2
-    = new (&temp_obstack) addrmap_fixed (&temp_obstack, map);
+    = new (&temp_obstack) addrmap_fixed (&temp_obstack, map.get ());
   SELF_CHECK (map2 != nullptr);
   CHECK_ADDRMAP_FIND (map2, array, 0, 9, nullptr);
   CHECK_ADDRMAP_FIND (map2, array, 10, 12, val1);
@@ -479,9 +478,6 @@ test_addrmap ()
   CHECK_ADDRMAP_FIND (map, array, 10, 12, val1);
   CHECK_ADDRMAP_FIND (map, array, 13, 13, val2);
   CHECK_ADDRMAP_FIND (map, array, 14, 19, nullptr);
-
-  /* Cleanup.  */
-  obstack_free (&temp_obstack, NULL);
 }
 
 } // namespace selftests
-- 
2.34.1


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

only message in thread, other threads:[~2022-06-12 21:56 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-06-12 21:56 [pushed] Fix self-test failure in addrmap 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).