Previous: , Up: Setting   [Contents][Index]


15.1.3 Having GDB Infer the Source Language

To have GDB set the working language automatically, use ‘set language local’ or ‘set language auto’. GDB then infers the working language. That is, when your program stops in a frame (usually by encountering a breakpoint), GDB sets the working language to the language recorded for the function in that frame. If the language for a frame is unknown (that is, if the function or block corresponding to the frame was defined in a source file that does not have a recognized extension), the current working language is not changed, and GDB issues a warning.

This may not seem necessary for most programs, which are written entirely in one source language. However, program modules and libraries written in one source language can be used by a main program written in a different source language. Using ‘set language auto’ in this case frees you from having to set the working language manually.

The warning is enabled by default, but it can be controlled via a setting:

set warn-language-frame-mismatch [on|off]

Enable or disable the warning that is issued when the current language is set to a value that does not match the current frame.

show warn-language-frame-mismatch

Show whether the frame-mismatch warning will be issued.