Skip to content

Commit 0c6be7d

Browse files
committed
added arithmetic if, i.e. if(test) labelNeg, labelZero, labelPos
1 parent a4b0ab7 commit 0c6be7d

File tree

1 file changed

+24
-0
lines changed

1 file changed

+24
-0
lines changed

src/fortran/ofp/XMLPrinter.java

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1762,6 +1762,30 @@ public void goto_stmt(Token label, Token goKeyword, Token toKeyword, Token targe
17621762
super.goto_stmt(label, goKeyword, toKeyword, target_label, eos);
17631763
}
17641764

1765+
public void arithmetic_if_stmt(Token label, Token ifKeyword, Token label1, Token label2, Token label3, Token eos) {
1766+
Element test = contextNode(-4);
1767+
Element ifNegative = contextNode(-3);
1768+
Element ifZero = contextNode(-2);
1769+
Element ifPositive = contextNode(-1);
1770+
contextOpen("arithmetic-if");
1771+
contextOpen("header");
1772+
moveHere(test);
1773+
contextClose();
1774+
contextOpen("body");
1775+
contextOpen("if-negative");
1776+
moveHere(ifNegative);
1777+
contextClose();
1778+
contextOpen("if-zero");
1779+
moveHere(ifZero);
1780+
contextClose();
1781+
contextOpen("if-positive");
1782+
moveHere(ifPositive);
1783+
contextClose();
1784+
contextClose();
1785+
super.arithmetic_if_stmt(label, ifKeyword, label1, label2, label3, eos);
1786+
contextClose();
1787+
}
1788+
17651789
public void continue_stmt(Token label, Token continueKeyword, Token eos) {
17661790
Element labelNode = contextNodesCount() > 0 ? contextNode(-1) : null;
17671791
labelNode = labelNode != null && labelNode.getTagName() == "label" ? labelNode : null;

0 commit comments

Comments
 (0)