llvm/clang/unittests/Tooling/RecursiveASTVisitorTests/DeclRefExpr.cpp

//===- unittest/Tooling/RecursiveASTVisitorTests/DeclRefExpr.cpp ----------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//

#include "TestVisitor.h"

usingnamespaceclang;

namespace {

class DeclRefExprVisitor : public ExpectedLocationVisitor<DeclRefExprVisitor> {};

TEST(RecursiveASTVisitor, VisitsBaseClassTemplateArguments) {}

TEST(RecursiveASTVisitor, VisitsCXXForRangeStmtRange) {}

TEST(RecursiveASTVisitor, VisitsCallExpr) {}

TEST(RecursiveASTVisitor, VisitsExplicitLambdaCaptureInit) {}

TEST(RecursiveASTVisitor, VisitsUseOfImplicitLambdaCapture) {}

TEST(RecursiveASTVisitor, VisitsImplicitLambdaCaptureInit) {}

TEST(RecursiveASTVisitor, VisitsLambdaInitCaptureInit) {}

/* FIXME: According to Richard Smith this is a bug in the AST.
TEST(RecursiveASTVisitor, VisitsBaseClassTemplateArgumentsInInstantiation) {
  DeclRefExprVisitor Visitor;
  Visitor.ExpectMatch("x", 3, 43);
  EXPECT_TRUE(Visitor.runOver(
    "template <typename T> void x();\n"
    "template <void (*T)()> class X {};\n"
    "template <typename T> class Y : public X< x<T> > {};\n"
    "Y<int> y;"));
}
*/

TEST(RecursiveASTVisitor, VisitsExtension) {}

TEST(RecursiveASTVisitor, VisitsCopyExprOfBlockDeclCapture) {}

} // end anonymous namespace