Changeset View
Changeset View
Standalone View
Standalone View
clang/lib/AST/ASTContext.cpp
- This file is larger than 256 KB, so syntax highlighting is disabled by default.
Show First 20 Lines • Show All 6,506 Lines • ▼ Show 20 Lines | if (const auto *NamespaceX = dyn_cast<NamespaceDecl>(X)) { | ||||
const auto *NamespaceY = cast<NamespaceDecl>(Y); | const auto *NamespaceY = cast<NamespaceDecl>(Y); | ||||
return NamespaceX->isInline() == NamespaceY->isInline(); | return NamespaceX->isInline() == NamespaceY->isInline(); | ||||
} | } | ||||
// Identical template names and kinds match if their template parameter lists | // Identical template names and kinds match if their template parameter lists | ||||
// and patterns match. | // and patterns match. | ||||
if (const auto *TemplateX = dyn_cast<TemplateDecl>(X)) { | if (const auto *TemplateX = dyn_cast<TemplateDecl>(X)) { | ||||
const auto *TemplateY = cast<TemplateDecl>(Y); | const auto *TemplateY = cast<TemplateDecl>(Y); | ||||
// FIXME: for C++20 concepts, check their requirements are the same. | |||||
return isSameEntity(TemplateX->getTemplatedDecl(), | return isSameEntity(TemplateX->getTemplatedDecl(), | ||||
TemplateY->getTemplatedDecl()) && | TemplateY->getTemplatedDecl()) && | ||||
isSameTemplateParameterList(TemplateX->getTemplateParameters(), | isSameTemplateParameterList(TemplateX->getTemplateParameters(), | ||||
TemplateY->getTemplateParameters()); | TemplateY->getTemplateParameters()); | ||||
} | } | ||||
// Fields with the same name and the same type match. | // Fields with the same name and the same type match. | ||||
if (const auto *FDX = dyn_cast<FieldDecl>(X)) { | if (const auto *FDX = dyn_cast<FieldDecl>(X)) { | ||||
▲ Show 20 Lines • Show All 5,828 Lines • Show Last 20 Lines |