Drop bp_callbacks.on_destroy

Unless until it turns out it's really needed, in which case drop the
arch_breakpoint_data customization and convert current uses to the
OO model.
diff --git a/breakpoint.h b/breakpoint.h
index 30a9d7c..0509304 100644
--- a/breakpoint.h
+++ b/breakpoint.h
@@ -63,9 +63,8 @@
 struct breakpoint;
 
 struct bp_callbacks {
-	void (*on_hit) (struct breakpoint *bp, struct Process *proc);
-	void (*on_continue) (struct breakpoint *bp, struct Process *proc);
-	void (*on_destroy) (struct breakpoint *bp);
+	void (*on_hit)(struct breakpoint *bp, struct Process *proc);
+	void (*on_continue)(struct breakpoint *bp, struct Process *proc);
 };
 
 struct breakpoint {
@@ -80,7 +79,7 @@
 /* Call on-hit handler of BP, if any is set.  */
 void breakpoint_on_hit(struct breakpoint *bp, struct Process *proc);
 
-/* Call on-reenable handler of BP.  If none is set, call
+/* Call on-continue handler of BP.  If none is set, call
  * continue_after_breakpoint.  */
 void breakpoint_on_continue(struct breakpoint *bp, struct Process *proc);
 
diff --git a/breakpoints.c b/breakpoints.c
index ab0e688..dd1a010 100644
--- a/breakpoints.c
+++ b/breakpoints.c
@@ -98,11 +98,6 @@
 	if (bp == NULL)
 		return;
 
-	/* XXX I'm not convinced that we need on_destroy.  We already
-	 * have arch_breakpoint_destroy, which is necessary as a
-	 * counterpart of arch_breakpoint_init in any case.  */
-	if (bp->cbs != NULL && bp->cbs->on_destroy != NULL)
-		(bp->cbs->on_destroy) (bp);
 
 	arch_breakpoint_destroy(bp);
 }
@@ -283,6 +278,13 @@
 	dict_apply_to_all(proc->breakpoints, disable_bp_cb, proc);
 }
 
+/* XXX This is not currently properly supported.  On clone, this is
+ * just sliced.  Hopefully at the point that clone is done, this
+ * breakpoint is not necessary anymore.  If this use case ends up
+ * being important, we need to add a clone and destroy callbacks to
+ * breakpoints, and we should also probably drop arch_breakpoint_data
+ * so that we don't end up with two different customization mechanisms
+ * for one structure.  */
 struct entry_breakpoint {
 	struct breakpoint super;
 	target_address_t dyn_addr;
@@ -299,11 +301,6 @@
 	linkmap_init(proc, bp->dyn_addr);
 }
 
-static void
-entry_breakpoint_on_destroy(struct breakpoint *a)
-{
-}
-
 int
 entry_breakpoint_init(struct Process *proc,
 		      struct entry_breakpoint *bp, target_address_t addr,
@@ -315,7 +312,6 @@
 
 	static struct bp_callbacks entry_callbacks = {
 		.on_hit = entry_breakpoint_on_hit,
-		.on_destroy = entry_breakpoint_on_destroy,
 	};
 	bp->super.cbs = &entry_callbacks;
 	bp->dyn_addr = lib->dyn_addr;