No compromise, AFAIU. They felt they had no choice but to upgrade to a more modern compiler, and they preferred clang+APL2 over gcc+GPLv3. Apache 2.0 still violates their licensing policy. Technically, GPLv2 also violated their licensing policy. They historically used GPL'd software like gcc when there were no viable alternatives and doing without wasn't acceptable either.
I would imagine that many or most (or all?) OpenBSD developers consider the Apache license less than ideal but GPLv3 counterproductive or even malicious. Not a tough choice from that perspective. I'm not advocating for or against anything, just stating common reasoning amongst BSD folks.
EDIT: See https://marc.info/?l=openbsd-misc&m=159514079929237&w=2