1//===- Redeclaration.h - Redeclarations--------------------------*- C++ -*-===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8//
9// This file defines RedeclarationKind enum.
10//
11//===----------------------------------------------------------------------===//
12
13#ifndef LLVM_CLANG_SEMA_REDECLARATION_H
14#define LLVM_CLANG_SEMA_REDECLARATION_H
15
16/// Specifies whether (or how) name lookup is being performed for a
17/// redeclaration (vs. a reference).
18enum class RedeclarationKind {
19 /// The lookup is a reference to this name that is not for the
20 /// purpose of redeclaring the name.
21 NotForRedeclaration = 0,
22 /// The lookup results will be used for redeclaration of a name,
23 /// if an entity by that name already exists and is visible.
24 ForVisibleRedeclaration,
25 /// The lookup results will be used for redeclaration of a name
26 /// with external linkage; non-visible lookup results with external linkage
27 /// may also be found.
28 ForExternalRedeclaration
29};
30
31#endif // LLVM_CLANG_SEMA_REDECLARATION_H

source code of clang/include/clang/Sema/Redeclaration.h