From 2d4035e493e3933e8819ee090a66fd6db3cbd8ef Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 11 Nov 2020 19:05:32 -0800 Subject: [PATCH] Fix structural comparison of template template arguments to compare the right union member. Should fix the armv8 buildbot. --- clang/lib/AST/TemplateBase.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/clang/lib/AST/TemplateBase.cpp b/clang/lib/AST/TemplateBase.cpp index 22af254..dd898b2 100644 --- a/clang/lib/AST/TemplateBase.cpp +++ b/clang/lib/AST/TemplateBase.cpp @@ -288,11 +288,14 @@ bool TemplateArgument::structurallyEquals(const TemplateArgument &Other) const { case Null: case Type: case Expression: - case Template: - case TemplateExpansion: case NullPtr: return TypeOrValue.V == Other.TypeOrValue.V; + case Template: + case TemplateExpansion: + return TemplateArg.Name == Other.TemplateArg.Name && + TemplateArg.NumExpansions == Other.TemplateArg.NumExpansions; + case Declaration: return getAsDecl() == Other.getAsDecl(); -- 2.7.4