Development of C/C++ macro debugger

OData support
Dr. Csorba Kristóf
Department of Automation and Applied Informatics

The C/C++ programming language family is one of the most popular programming language family. One of its important property what is almost unique in the modern programming languages is that it contains a macro language which is processed before the compilation with a dedicated preprocessor which one is doing string manipulation on the source files.

In practice almost all (bigger) C/C++ program contains some macros to protect the header files from multi time inclusion. The compile time configuration of the program is also solvable using the macro language. Next to it the macro meta-programming is also a quite common tool because in some case it is possible to reduce the amount of code duplications with it.

The biggest disadvantage of the macro language in C/C++ is that there is almost no development tool available to support the development process. Finding and debugging the mistakes made by the programmer is also quite difficult because the error messages produced by the compiler are usually don't contains too much information.

The goal of this dissertation is to develop a tool which support the development of macro programs in C/C++ with implementing a debugger tool for the macro language. The tool contains a macro analyzer backend written in C++ which is perform the analysis of the provided source code and based on it produces an appropriate trace file. Next to it the dissertation will show a user interface which is based on web technologies (HTML5 and Java Script) which is capable to display the trace file generated by the backend for the user in a graphical form.


Please sign in to download the files of this thesis.