diff --git a/clang/utils/TableGen/ClangAttrEmitter.cpp b/clang/utils/TableGen/ClangAttrEmitter.cpp index 42627f02cf35..f892626a447e 100644 --- a/clang/utils/TableGen/ClangAttrEmitter.cpp +++ b/clang/utils/TableGen/ClangAttrEmitter.cpp @@ -3739,7 +3739,8 @@ static void GenerateHasAttrSpellingStringSwitch( : '(' + itostr(Version) + ')'; if (Scope.empty() || Scope == Spelling.nameSpace()) { - if (TestStringMap.contains(Spelling.name())) + if (TestStringMap.contains(Spelling.name()) && + TestStringMap[Spelling.name()] != TestStr) TestStringMap[Spelling.name()] += " || " + TestStr; else TestStringMap[Spelling.name()] = TestStr;