This paper focuses on the use of object-oriented approaches to syntactical and semantical analysis for complex object-oriented languages like C++. We are interested in these issues both from a design and implementation point of view. We implement a semantic analyzer in an object-oriented manner, using the C++ programming language. We base our approach on design patterns in order to improve the flexibility of the implementation. The purpose of this research is twofold. First, we are interested whether the object-oriented approach to compiler technology (as a possible alternative to attribute grammars) really produces more modular, concise and reusable code in terms of building blocks or control structures for generating analyzers for a possi...