yonghong-song added a comment.

> Hm.. This root type is used by libbpf to find candidate in kernel BTF. Name 
> and kind of that type is what is used. When you have typedef t and struct t, 
> their names match, but their kinds don't. So it could lead to inability to 
> find a candidate.

The inproper CSE can only happen if the declaration in user program like 
`struct t { ... }; typedef struct t t;` and user try to find existence of both 
`struct t` and typedef `t`. We could have issue if kernel does not have `struct 
t { ...}` and only has `typedef t`. Theoretically this could happen, but as you 
mentioned the chance is really slim. So will not change current implementation 
right now.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D83242

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

Reply via email to