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

Reply via email to