Index: head/cddl/contrib/opensolaris/tools/ctf/cvt/merge.c =================================================================== --- head/cddl/contrib/opensolaris/tools/ctf/cvt/merge.c +++ head/cddl/contrib/opensolaris/tools/ctf/cvt/merge.c @@ -452,6 +452,10 @@ if (ed.ed_tgt->t_type == FORWARD && ctdp->t_type != FORWARD) { int id = mcd->md_tgt->td_nextid++; +#ifdef __FreeBSD__ + if (CTF_TYPE_ISCHILD(id)) + terminate("No room for additional types\n"); +#endif debug(3, "Creating new defn type %d <%x>\n", id, id); add_mapping(mcd->md_ta, ctdp->t_id, id); alist_add(mcd->md_fdida, (void *)(ulong_t)ed.ed_tgt, @@ -473,6 +477,10 @@ } else { int id = mcd->md_tgt->td_nextid++; +#ifdef __FreeBSD__ + if (CTF_TYPE_ISCHILD(id)) + terminate("No room for additional types\n"); +#endif debug(3, "Creating new type %d <%x>\n", id, id); add_mapping(mcd->md_ta, ctdp->t_id, id); hash_add(mcd->md_tdtba, ctdp); Index: head/cddl/contrib/opensolaris/tools/ctf/cvt/util.c =================================================================== --- head/cddl/contrib/opensolaris/tools/ctf/cvt/util.c +++ head/cddl/contrib/opensolaris/tools/ctf/cvt/util.c @@ -148,17 +148,7 @@ if (getenv("CTF_ABORT_ON_TERMINATE") != NULL) abort(); -#if defined(__FreeBSD__) -/* - * For the time being just output the termination message, but don't - * return an exit status that would cause the build to fail. We need - * to get as much stuff built as possible before going back and - * figuring out what is wrong with certain files. - */ - exit(0); -#else exit(1); -#endif } /*PRINTFLIKE1*/