diff options
Diffstat (limited to 'gdb/language.c')
-rw-r--r-- | gdb/language.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/gdb/language.c b/gdb/language.c index cacaf3f..c80237e 100644 --- a/gdb/language.c +++ b/gdb/language.c @@ -730,6 +730,13 @@ symbol_name_matcher_ftype * language_get_symbol_name_matcher (const language_defn *lang, const lookup_name_info &lookup_name) { + /* If currently in Ada mode, and the lookup name is wrapped in + '<...>', hijack all symbol name comparisons using the Ada + matcher, which handles the verbatim matching. */ + if (current_language->la_language == language_ada + && lookup_name.ada ().verbatim_p ()) + return current_language->la_get_symbol_name_matcher (lookup_name); + if (lang->la_get_symbol_name_matcher != nullptr) return lang->la_get_symbol_name_matcher (lookup_name); return default_symbol_name_matcher; |