Abaixo, estão enumeradas as fases que integram o front-end de um compilador:

1) Análise Semântica

2) Análise Léxica

3) Análise Sintática

4) Gerador de código intermediário

Indique a sequência correta, com a ordem em que as fases ocorrem.