Parser is a part of compiler and responsible for syntax recognition. Scanner (or tokenization) used by lexical analyzer. In Semantic analysis consistency and definition of syntax is checked. An optimizer is used improve the IR program. So option (A) is correct.