From aa09537375eb92448b2ba4ac5af5abac06c54cfc Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Sun, 12 Jun 2022 15:53:40 -0600 Subject: [PATCH] Fix self-test failure in addrmap 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 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.30.2