Lines Matching full:macros
605 std::vector<MacroAction> &Macros;
608 explicit MacroTracker(std::vector<MacroAction> &Macros) : Macros(Macros) { }
612 Macros.push_back(MacroAction(MD->getLocation(),
619 Macros.push_back(
627 Macros.push_back(MacroAction(MacroNameTok.getLocation(),
668 std::vector<MacroAction> Macros;
669 PP.addPPCallbacks(std::make_unique<MacroTracker>(Macros));
679 ASSERT_EQ(15U, Macros.size());
681 ASSERT_TRUE(Macros[0].isDefinition());
682 ASSERT_EQ("M", Macros[0].Name);
684 ASSERT_TRUE(Macros[1].isDefinition());
685 ASSERT_EQ("INC", Macros[1].Name);
687 ASSERT_FALSE(Macros[2].isDefinition());
688 ASSERT_EQ("M", Macros[2].Name);
690 ASSERT_TRUE(Macros[3].isExpansion());
691 ASSERT_EQ("INC", Macros[3].Name);
693 ASSERT_TRUE(Macros[4].isDefinition());
694 ASSERT_EQ("MACRO_IN_INCLUDE", Macros[4].Name);
696 ASSERT_TRUE(Macros[5].isDefinition());
697 ASSERT_FALSE(Macros[5].isUnDefinition());
698 ASSERT_EQ("MACRO_DEFINED", Macros[5].Name);
700 ASSERT_TRUE(Macros[6].isDefinition());
701 ASSERT_TRUE(Macros[6].isUnDefinition());
702 ASSERT_EQ("MACRO_DEFINED", Macros[6].Name);
704 ASSERT_FALSE(Macros[7].isDefinition());
705 ASSERT_TRUE(Macros[7].isUnDefinition());
706 ASSERT_EQ("MACRO_UNDEFINED", Macros[7].Name);
708 ASSERT_TRUE(Macros[8].isDefinition());
709 ASSERT_EQ("INC2", Macros[8].Name);
711 ASSERT_FALSE(Macros[9].isDefinition());
712 ASSERT_EQ("M", Macros[9].Name);
714 ASSERT_TRUE(Macros[10].isExpansion());
715 ASSERT_EQ("INC2", Macros[10].Name);
717 ASSERT_TRUE(Macros[11].isDefinition());
718 ASSERT_EQ("MACRO_IN_INCLUDE", Macros[11].Name);
722 EXPECT_TRUE(SourceMgr.isBeforeInTranslationUnit(Macros[3].Loc, Macros[4].Loc));
726 EXPECT_TRUE(SourceMgr.isBeforeInTranslationUnit(Macros[10].Loc, Macros[11].Loc));