[PATCH] D137263: add boundary check for ASTUnresolvedSet::erase

zhouyizhou via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri Nov 4 20:42:35 PDT 2022


zhouyizhou added a comment.

In D137263#3909722 <https://reviews.llvm.org/D137263#3909722>, @MaskRay wrote:

> 

Thank Ray for your guidance!

> We need a regression test. See `clang/test/SemaCXX/using-decl*` for some other using declaration tests. Study some tests, find a file which is appropriate, and add a reduced case there.
> Use `ninja check-clang-semacxx` to run `clang/test/SemaCXX` tests. Use `$build/bin/llvm-lit -v clang/test/SemaCXX/using-decl-1.cpp` to run one test.
>
> I find that if I comment out ` cast<CXXRecordDecl>(Shadow->getDeclContext())->removeConversion(Shadow);` in `Sema::HideUsingShadowDecl`, no test fails... So we have a missing coverage issue.

OK, I will try to accomplish all above. There are a lot to learn for me, so please wait for my completion which may take relatively a long time (maybe about 2 weeks).

>> clang-14 build on Ubuntu 22.04 don't trigger above assertion because clang-14 using g++ -std=c++14 by default:
>
> The instruction and the diassembly is irrelevant to this fix and can be removed.

Done

Thanks again

Sincerely
Zhouyi


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

https://reviews.llvm.org/D137263



More information about the cfe-commits mailing list