aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/AST/ASTStructuralEquivalence.cpp
diff options
context:
space:
mode:
authorhuqizhi <836744285@qq.com>2023-09-08 14:48:32 +0800
committerwangpc <wangpengcheng.pp@bytedance.com>2023-09-08 14:52:14 +0800
commitb0ea2790c41db65b3c283f78a5f534bc26fc6f8f (patch)
treeb7cbcd74145f4469147582d2a312cefe103c8cd4 /clang/lib/AST/ASTStructuralEquivalence.cpp
parent11c3b979e6512b00a5bd9c3e0d4ed986cf500630 (diff)
downloadllvm-b0ea2790c41db65b3c283f78a5f534bc26fc6f8f.zip
llvm-b0ea2790c41db65b3c283f78a5f534bc26fc6f8f.tar.gz
llvm-b0ea2790c41db65b3c283f78a5f534bc26fc6f8f.tar.bz2
[ASTImport]CXXBoolLiteralExpr should be handled explicitly in statement comparation
In the comparation of return statement, return value(if it is CXXBoolLiteralExpr) should be handled explicitly, otherwise an incorrect result would be returned. Reviewed By: steakhal, donat.nagy Differential Revision: https://reviews.llvm.org/D159479
Diffstat (limited to 'clang/lib/AST/ASTStructuralEquivalence.cpp')
-rw-r--r--clang/lib/AST/ASTStructuralEquivalence.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/clang/lib/AST/ASTStructuralEquivalence.cpp b/clang/lib/AST/ASTStructuralEquivalence.cpp
index b211e34..5444202 100644
--- a/clang/lib/AST/ASTStructuralEquivalence.cpp
+++ b/clang/lib/AST/ASTStructuralEquivalence.cpp
@@ -366,6 +366,10 @@ class StmtComparer {
return true;
}
+ bool IsStmtEquivalent(const CXXBoolLiteralExpr *E1, const CXXBoolLiteralExpr *E2) {
+ return E1->getValue() == E2->getValue();
+ }
+
/// End point of the traversal chain.
bool TraverseStmt(const Stmt *S1, const Stmt *S2) { return true; }