refactor for readability
warn if builds [a] and [b] pass but [a,b] doesn't