The recent commit
3919cf8a704138e4f2dd79c66e33a62087180f1f caused a
build breakage on the 32-bit debian try bot. This seems related to how
the patch allocates space for the frame unwinder table in a gdbarch.
This commit changes that allocation to be in-place.
get_frame_unwind_table (struct gdbarch *gdbarch)
{
std::vector<const frame_unwind *> *table = frame_unwind_data.get (gdbarch);
- if (table != nullptr)
- return *table;
-
- table = new std::vector<const frame_unwind *>;
- table->insert (table->begin (), standard_unwinders.begin (),
- standard_unwinders.end ());
-
- frame_unwind_data.set (gdbarch, table);
+ if (table == nullptr)
+ table = frame_unwind_data.emplace (gdbarch, standard_unwinders.begin (),
+ standard_unwinders.end ());
return *table;
}