diff options
Diffstat (limited to 'lib/AST/ExprCXX.cpp')
-rw-r--r-- | lib/AST/ExprCXX.cpp | 21 |
1 files changed, 0 insertions, 21 deletions
diff --git a/lib/AST/ExprCXX.cpp b/lib/AST/ExprCXX.cpp index d60ef39070..184c9fe490 100644 --- a/lib/AST/ExprCXX.cpp +++ b/lib/AST/ExprCXX.cpp @@ -160,27 +160,6 @@ bool UnaryTypeTraitExpr::EvaluateTrait() const { } } -OverloadedOperatorKind CXXOperatorCallExpr::getOperator() const { - // All simple function calls (e.g. func()) are implicitly cast to pointer to - // function. As a result, we try and obtain the DeclRefExpr from the - // ImplicitCastExpr. - const ImplicitCastExpr *ICE = dyn_cast<ImplicitCastExpr>(getCallee()); - if (!ICE) // FIXME: deal with more complex calls (e.g. (func)(), (*func)()). - return OO_None; - - const DeclRefExpr *DRE = dyn_cast<DeclRefExpr>(ICE->getSubExpr()); - if (!DRE) - return OO_None; - - if (const FunctionDecl *FDecl = dyn_cast<FunctionDecl>(DRE->getDecl())) - return FDecl->getDeclName().getCXXOverloadedOperator(); - else if (const OverloadedFunctionDecl *Ovl - = dyn_cast<OverloadedFunctionDecl>(DRE->getDecl())) - return Ovl->getDeclName().getCXXOverloadedOperator(); - else - return OO_None; -} - SourceRange CXXOperatorCallExpr::getSourceRange() const { OverloadedOperatorKind Kind = getOperator(); if (Kind == OO_PlusPlus || Kind == OO_MinusMinus) { |