Make target_desc::compatible an std::vector
This patch changes target_desc::compatible to be a vector of
bfd_arch_info *. This way, we don't need to manually free the vector in
the target_desc destructor.
gdb/ChangeLog:
* target-descriptions.c (arch_p): Remove typedef.
(DEF_VEC_P (arch_p)): Remove.
(struct target_desc) <compatible>: Change type to std::vector.
<~target_desc>: Don't manually free compatible.
(tdesc_compatible_p): Adjust.
(tdesc_add_compatible): Adjust.
(class print_c_tdesc) <visit_pre>: Adjust.