diff options
author | dingfei <fding@feysh.com> | 2023-07-18 16:29:56 +0800 |
---|---|---|
committer | dingfei <fding@feysh.com> | 2023-07-18 16:29:56 +0800 |
commit | 5b99aa57f74e1432691f366d26a2ec21907a7a70 (patch) | |
tree | e794863d41feb10615d20c4750fd198db54eff68 /llvm/lib/IR/Function.cpp | |
parent | e9ab43dd44cafe5a67f0a12b9ff1021d47074970 (diff) | |
download | llvm-5b99aa57f74e1432691f366d26a2ec21907a7a70.zip llvm-5b99aa57f74e1432691f366d26a2ec21907a7a70.tar.gz llvm-5b99aa57f74e1432691f366d26a2ec21907a7a70.tar.bz2 |
[ASTImporter] Fix 'isVirtual()' assert failure while import overridden methods
CXXMethodDecl::isVirtual() count the number of overridden methods.
This assertion is not true before overridden methods are fully loaded.
The body of this CXXMethodDecl can introduce deps on a derived class
which contains a method overriding this method, causing the assertion failure.
ImportOverriddenMethods() is moved before body loading to fix this issue.
Testcase is contributed by Balázs Kéri (balazske)
Differential Revision: https://reviews.llvm.org/D154701
Diffstat (limited to 'llvm/lib/IR/Function.cpp')
0 files changed, 0 insertions, 0 deletions