I sympathize with the general idea, but I don't like dead code
after abort(). What about cleaning that up?
Good idea, but it should be a separate patch. This patch is "safe",
whereas the cleanup patch could cause problems if it's not done
carefully.
This patch is "safe", however I'd consider not changing
assert(0)->abort() if there is code after the assert that looks like an
attempt at recovering. Example:
if (!p) {
printf ("the impossible has happened!");
assert (0);
}
return p->q;
should be changed to abort, while
if (!p) {
printf ("the impossible has happened!");
assert (0);
return 0;
}
return p->q;
should not.
Paolo