aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorbloodstalker <thabogre@gmail.com>2016-11-25 00:19:16 +0000
committerbloodstalker <thabogre@gmail.com>2016-11-25 00:19:16 +0000
commit07b9128d828f517f6bc669bec6aa800d0bd930ae (patch)
tree72139e1829bccdd529475c0e7b874fe4f55076a2
parentcleans the ast dump aswell (diff)
downloadmutator-07b9128d828f517f6bc669bec6aa800d0bd930ae.tar.gz
mutator-07b9128d828f517f6bc669bec6aa800d0bd930ae.zip
12.8
-rw-r--r--mutator-lvl0.cpp27
1 files changed, 26 insertions, 1 deletions
diff --git a/mutator-lvl0.cpp b/mutator-lvl0.cpp
index dbf262a..419b936 100644
--- a/mutator-lvl0.cpp
+++ b/mutator-lvl0.cpp
@@ -1058,6 +1058,28 @@ private:
Rewriter &Rewrite;
};
/**********************************************************************************************************************/
+class MCExpr128 : public MatchFinder::MatchCallback
+{
+public:
+ MCExpr128 (Rewriter &Rewrite) : Rewrite(Rewrite) {}
+
+ virtual void run(const MatchFinder::MatchResult &MR)
+ {
+ if (MR.Nodes.getNodeAs<clang::Expr>("mcexpr128lhs") != nullptr && MR.Nodes.getNodeAs<clang::Expr>("mcexpr128rhs") != nullptr)
+ {
+ const Expr* RHS = MR.Nodes.getNodeAs<clang::Expr>("mcexpr128rhs");
+ const Expr* LHS = MR.Nodes.getNodeAs<clang::Expr>("mcexpr128lhs");
+
+ SourceLocation SL = RHS->getLocStart();
+ SL = Devi::SourceLocationHasMacro(SL, Rewrite, "start");
+
+
+ }
+ }
+
+private:
+ Rewriter &Rewrite;
+};
/**********************************************************************************************************************/
/**********************************************************************************************************************/
/**********************************************************************************************************************/
@@ -1070,7 +1092,7 @@ public:
HandlerForMCFunction161(R), HandlerForFunction162(R), HandlerForFunction164(R), HandlerForFunction166(R), HandlerForFunction168(R), \
HandlerForFunction169(R), HandlerForPA171(R), HandlerForSU184(R), HandlerForType6465(R), HandlerForDCDF81(R), HandlerForDCDF82(R), \
HandlerForInit91(R), HandlerForInit92(R), HandlerForInit93(R), HandlerForExpr123(R), HandlerForExpr124(R), HandlerForExpr125(R), \
- HandlerForExpr126(R), HandlerForExpr127(R) {
+ HandlerForExpr126(R), HandlerForExpr127(R), HandlerForExpr128(R) {
/*forstmts whithout a compound statement.*/
Matcher.addMatcher(forStmt(unless(hasDescendant(compoundStmt()))).bind("mcfor"), &HandlerForCmpless);
@@ -1138,6 +1160,8 @@ public:
Matcher.addMatcher(binaryOperator(allOf(eachOf(hasOperatorName("<<"), hasOperatorName(">>"), hasOperatorName("~"), hasOperatorName("<<="), \
hasOperatorName(">>="), hasOperatorName("&"), hasOperatorName("&="), hasOperatorName("^"), hasOperatorName("^=")\
, hasOperatorName("|"), hasOperatorName("|=")), eachOf(hasLHS(expr().bind("mcexpr127rl")), hasRHS(expr().bind("mcexpr127rl"))))), &HandlerForExpr127);
+ Matcher.addMatcher(binaryOperator(allOf(eachOf(hasOperatorName(">>"), hasOperatorName(">>="), hasOperatorName("<<="), hasOperatorName("<<")), \
+ hasLHS(expr().bind("mcexpr128lhs")) , hasRHS(expr().bind("mcexpr128rhs")))), &HandlerForExpr128);
}
void HandleTranslationUnit(ASTContext &Context) override {
@@ -1173,6 +1197,7 @@ private:
MCExpr125 HandlerForExpr125;
MCExpr126 HandlerForExpr126;
MCExpr127 HandlerForExpr127;
+ MCExpr128 HandlerForExpr128;
MatchFinder Matcher;
};
/**********************************************************************************************************************/