Limited Ada source level debugging is supported and it is roughly similar to what is supported by "yacc," where we can associate the Ada source code and the Ada line numbers with particular locations in the C/C++ source code, using "#line" directives. However, this can be confusing, because the programmer still has to live with the fact that in Ada upper/lower case doesn't matter in Ada debugging, while in "gdb" it does matter, and with the fact that Ada has overloading, but in the generated code we append unique numeric indices to names, such as "Ada::Text_io::Put_line__2" for what in Ada was "Ada.Text_IO.Put_Line." Because of this, we generally recommend that developers debug at the C/C++ source code level. The names are usually easy to connect back to the Ada source code level, and they are displayed in the C/C++ source code with the correct upper/lower case
MapuSoft
Comments