]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
Only search types in cp_lookup_rtti_type
authorTom Tromey <tom@tromey.com>
Tue, 19 Sep 2023 23:39:31 +0000 (17:39 -0600)
committerTom Tromey <tom@tromey.com>
Sun, 28 Jan 2024 17:58:17 +0000 (10:58 -0700)
This changes cp_lookup_rtti_type to only search for types -- not
functions or variables.  Due to the symbol-matching hack, this could
just use SEARCH_TYPE_DOMAIN, but I think it's better to be clear; also
I hold on to some hope that perhaps the hack can someday be removed.

gdb/cp-support.c

index 9a59d7632a15e013bd447ee994eaf18a5bd8342f..6b7c2f5a0628e4fc8d12d80b2c8fa1b573b54f74 100644 (file)
@@ -1498,9 +1498,9 @@ cp_lookup_rtti_type (const char *name, const struct block *block)
   struct symbol * rtti_sym;
   struct type * rtti_type;
 
-  /* Use VAR_DOMAIN here as NAME may be a typedef.  PR 18141, 18417.
-     Classes "live" in both STRUCT_DOMAIN and VAR_DOMAIN.  */
-  rtti_sym = lookup_symbol (name, block, SEARCH_VFT, NULL).symbol;
+  rtti_sym = lookup_symbol (name, block,
+                           SEARCH_TYPE_DOMAIN | SEARCH_STRUCT_DOMAIN,
+                           nullptr).symbol;
 
   if (rtti_sym == NULL)
     {