As done previously for the ternary command, check that a file contains
the min or max if pattern before applying the minif and maxif rules.
Signed-off-by: Julia Lawall <Julia.Lawall@inria.fr>
...>
}
-@rmaxif depends on !patch@
+@maxif_candidate@
+expression x, y;
+expression max_val;
+binary operator cmp = {>, >=};
+@@
+
+if ((x) cmp (y)) {
+ max_val = (x);
+} else {
+ max_val = (y);
+}
+
+@rmaxif depends on !patch && maxif_candidate@
identifier func;
expression x, y;
expression max_val;
...>
}
-@rminif depends on !patch@
+@minif_candidate@
+expression x, y;
+expression min_val;
+binary operator cmp = {<, <=};
+@@
+
+if ((x) cmp (y)) {
+ min_val = (x);
+} else {
+ min_val = (y);
+}
+
+@rminif depends on !patch && minif_candidate@
identifier func;
expression x, y;
expression min_val;
...>
}
-@pmaxif depends on patch@
+@pmaxif depends on patch && maxif_candidate@
identifier func;
expression x, y;
expression max_val;
...>
}
-@pminif depends on patch@
+@pminif depends on patch && maxif_candidate@
identifier func;
expression x, y;
expression min_val;