samitolvanen added inline comments.

================
Comment at: lld/ELF/Symbols.cpp:553
+  // incompatible declarations for the same function.
+  if (isWeak() && getName().startswith("__kcfi_typeid_") &&
+      cast<Defined>(this)->value != other.value)
----------------
MaskRay wrote:
> samitolvanen wrote:
> > MaskRay wrote:
> > > This change looks like a hack.
> > I agree, this is not ideal. The request from LKML was to produce a warning 
> > when we link object files with different values for these weak symbols. 
> > What would be the best way to do this in LLD?
> I need to read through the code to suggest a solution.
> 
> If you can provide additional context like LKML URIs, that'll be great.
Here's the latest LKML thread: 
https://lore.kernel.org/lkml/20220513202159.1550547-1-samitolva...@google.com/

Rasmus brought up the concern with `__kcfi_typeid_` mismatches between object 
files here: 
https://lore.kernel.org/lkml/9bd2db3e-2955-66ba-574e-7976bdd95...@rasmusvillemoes.dk/

He didn't specifically request a warning, but I feel like that would be a 
reasonable response in this situation.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D119296

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to