[PATCH] D122372: [lld][COFF] Fix TypeServerSource lookup on GUID collisions

Reid Kleckner via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Mar 25 15:31:40 PDT 2022


rnk added a comment.

I think this is a reasonable approach that avoids FS access and path canonicalization issues, +1 to this.

For a test, I don't think it's necessary to go so far as to construct an input that would generate a warning. I'd start with this code, and then YAML-ify the 2 objects and 2 PDB files:

  // foo.cpp
  struct Foo { int x; };
  Foo foo_gv;
  // bar.cpp
  struct Bar { int x; };
  Bar bar_gv;

Compile these with MSVC -Zi, obj2yaml the objs, llvm-pdbutil pdb2yaml the PDBs, edit the GUIDs to be invalid. The test case should make objs from them, link them together, dump the symbols, and confirm that `bar_gv` and `foo_gv` have the right types.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D122372/new/

https://reviews.llvm.org/D122372



More information about the llvm-commits mailing list