Programming languages and compilers

A language rejects `3 + true` before the program runs because its addition operator requires numeric operands. Which compiler activity made this decision?