@@ -232,7 +232,7 @@ class Verifier : public ASTWalker {
232
232
ClosureDiscriminators;
233
233
DeclContext *CanonicalTopLevelSubcontext = nullptr ;
234
234
235
- typedef DeclContext * MacroExpansionDiscriminatorKey;
235
+ typedef std::pair< DeclContext *, Identifier> MacroExpansionDiscriminatorKey;
236
236
llvm::DenseMap<MacroExpansionDiscriminatorKey, SmallBitVector>
237
237
MacroExpansionDiscriminators;
238
238
@@ -2378,7 +2378,10 @@ class Verifier : public ASTWalker {
2378
2378
2379
2379
void verifyChecked (MacroExpansionExpr *expansion) {
2380
2380
auto dc = getCanonicalDeclContext (expansion->getDeclContext ());
2381
- MacroExpansionDiscriminatorKey key{dc};
2381
+ MacroExpansionDiscriminatorKey key{
2382
+ dc,
2383
+ expansion->getMacroName ().getBaseName ().getIdentifier ()
2384
+ };
2382
2385
auto &discriminatorSet = MacroExpansionDiscriminators[key];
2383
2386
unsigned discriminator = expansion->getDiscriminator ();
2384
2387
@@ -2398,7 +2401,10 @@ class Verifier : public ASTWalker {
2398
2401
2399
2402
void verifyChecked (MacroExpansionDecl *expansion) {
2400
2403
auto dc = getCanonicalDeclContext (expansion->getDeclContext ());
2401
- MacroExpansionDiscriminatorKey key{dc};
2404
+ MacroExpansionDiscriminatorKey key{
2405
+ dc,
2406
+ expansion->getMacro ().getBaseName ().getIdentifier ()
2407
+ };
2402
2408
auto &discriminatorSet = MacroExpansionDiscriminators[key];
2403
2409
unsigned discriminator = expansion->getDiscriminator ();
2404
2410
0 commit comments