[llvm-branch-commits] [lldb] [lldb] Store all XML register types in a single string map (PR #213887)

David Spickett via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Wed Aug 5 06:57:36 PDT 2026


================
@@ -5040,7 +5040,7 @@ static void ParseEnums(
             LLDB_LOG(log,
                      "ProcessGDBRemote::ParseEnums Found enum type \"{0}\"",
                      id);
-            registers_enum_types.insert_or_assign(
----------------
DavidSpickett wrote:

I think it is safe, for now, but you're right that it's suspicious and it wouldn't take much to break it.

We parse all enums first, then flags, so:
1. Nothing that could reference an enum is parsed by the point the enums are parsed.
2. I there are N enums with ID X, we are using the last one.

1 is hard to verify without knowing where to look, and 2 is the reverse of how we treat flags.

I will treat duplicate enum IDs the same as we do for flags.

https://github.com/llvm/llvm-project/pull/213887


More information about the llvm-branch-commits mailing list