GDB supports a fairly large subset of Ada expression syntax, with some extensions. The philosophy behind the design of this subset is
- * That GDB should provide basic literals and access to operations for arithmetic, dereferencing, field selection, indexing, and subprogram calls, leaving more sophisticated computations to subprograms written into the program (which therefore may be called from GDB).
- * That type safety and strict adherence to Ada language restrictions are not particularly relevant in a debugging context.
- * That brevity is important to the GDB user.
Thus, for brevity, the debugger acts as if there were implicit with and use clauses in effect for all user-written packages, thus making it unnecessary to fully qualify most names with their packages, regardless of context. Where this causes ambiguity, GDB asks the user’s intent.
For details on the supported Ada syntax, see Debugging with GDB.