Martin =?utf-8?q?Bednár?= <[email protected]>
Message-ID:
In-Reply-To: <llvm.org/llvm/llvm-project/pull/[email protected]>
================
@@ -10189,16 +10189,28 @@ CXString clang_getBinaryOperatorKindSpelling(enum
CXBinaryOperatorKind kind) {
}
enum CXBinaryOperatorKind clang_getCursorBinaryOperatorKind(CXCursor cursor) {
- if (clang_isExpression(cursor.kind)) {
- const Expr *expr = getCursorExpr(cursor);
+ if (!clang_isExpression(cursor.kind))
+ return CXBinaryOperator_Invalid;
- if (const auto *op = dyn_cast<BinaryOperator>(expr))
- return static_cast<CXBinaryOperatorKind>(op->getOpcode() + 1);
+ const Expr *expr = getCursorExpr(cursor);
+ if (!expr)
+ return CXBinaryOperator_Invalid;
- if (const auto *op = dyn_cast<CXXRewrittenBinaryOperator>(expr))
- return static_cast<CXBinaryOperatorKind>(op->getOpcode() + 1);
- }
+ if (const auto *op = dyn_cast<BinaryOperator>(expr))
+ return static_cast<CXBinaryOperatorKind>(op->getOpcode() + 1);
+ if (const auto *op = dyn_cast<CXXRewrittenBinaryOperator>(expr))
+ return static_cast<CXBinaryOperatorKind>(op->getOpcode() + 1);
+
+ if (const auto *OCE = dyn_cast<CXXOperatorCallExpr>(expr)) {
+ const OverloadedOperatorKind Kind = OCE->getOperator();
----------------
AaronBallman wrote:
```suggestion
OverloadedOperatorKind Kind = OCE->getOperator();
```
https://github.com/llvm/llvm-project/pull/182303
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits