aboutsummaryrefslogtreecommitdiff
path: root/tests/i/operator-kinds/program.cps
diff options
context:
space:
mode:
Diffstat (limited to 'tests/i/operator-kinds/program.cps')
-rw-r--r--tests/i/operator-kinds/program.cps70
1 files changed, 70 insertions, 0 deletions
diff --git a/tests/i/operator-kinds/program.cps b/tests/i/operator-kinds/program.cps
new file mode 100644
index 0000000..b66fa0e
--- /dev/null
+++ b/tests/i/operator-kinds/program.cps
@@ -0,0 +1,70 @@
+TYPE Choice = (First, Second)
+OVERLOAD FUNCTION OPERATOR +(lhs : Choice, rhs : Choice) RETURNS INTEGER
+RETURN 101
+ENDFUNCTION
+OVERLOAD FUNCTION OPERATOR -(lhs : Choice, rhs : Choice) RETURNS INTEGER
+RETURN 102
+ENDFUNCTION
+OVERLOAD FUNCTION OPERATOR *(lhs : Choice, rhs : Choice) RETURNS INTEGER
+RETURN 103
+ENDFUNCTION
+OVERLOAD FUNCTION OPERATOR /(lhs : Choice, rhs : Choice) RETURNS INTEGER
+RETURN 104
+ENDFUNCTION
+OVERLOAD FUNCTION OPERATOR DIV(lhs : Choice, rhs : Choice) RETURNS INTEGER
+RETURN 105
+ENDFUNCTION
+OVERLOAD FUNCTION OPERATOR MOD(lhs : Choice, rhs : Choice) RETURNS INTEGER
+RETURN 106
+ENDFUNCTION
+OVERLOAD FUNCTION OPERATOR &(lhs : Choice, rhs : Choice) RETURNS INTEGER
+RETURN 107
+ENDFUNCTION
+OVERLOAD FUNCTION OPERATOR =(lhs : Choice, rhs : Choice) RETURNS INTEGER
+RETURN 108
+ENDFUNCTION
+OVERLOAD FUNCTION OPERATOR <>(lhs : Choice, rhs : Choice) RETURNS INTEGER
+RETURN 109
+ENDFUNCTION
+OVERLOAD FUNCTION OPERATOR <(lhs : Choice, rhs : Choice) RETURNS INTEGER
+RETURN 110
+ENDFUNCTION
+OVERLOAD FUNCTION OPERATOR <=(lhs : Choice, rhs : Choice) RETURNS INTEGER
+RETURN 111
+ENDFUNCTION
+OVERLOAD FUNCTION OPERATOR >(lhs : Choice, rhs : Choice) RETURNS INTEGER
+RETURN 112
+ENDFUNCTION
+OVERLOAD FUNCTION OPERATOR >=(lhs : Choice, rhs : Choice) RETURNS INTEGER
+RETURN 113
+ENDFUNCTION
+OVERLOAD FUNCTION OPERATOR AND(lhs : Choice, rhs : Choice) RETURNS INTEGER
+RETURN 114
+ENDFUNCTION
+OVERLOAD FUNCTION OPERATOR OR(lhs : Choice, rhs : Choice) RETURNS INTEGER
+RETURN 115
+ENDFUNCTION
+OVERLOAD FUNCTION OPERATOR-(value : Choice) RETURNS INTEGER
+RETURN 116
+ENDFUNCTION
+OVERLOAD FUNCTION OPERATOR NOT(value : Choice) RETURNS INTEGER
+RETURN 117
+ENDFUNCTION
+OUTPUT First + Second
+OUTPUT First - Second
+OUTPUT First * Second
+OUTPUT First / Second
+OUTPUT First DIV Second
+OUTPUT First MOD Second
+OUTPUT First & Second
+OUTPUT First = Second
+OUTPUT First <> Second
+OUTPUT First < Second
+OUTPUT First <= Second
+OUTPUT First > Second
+OUTPUT First >= Second
+OUTPUT First AND Second
+OUTPUT First OR Second
+OUTPUT -First
+OUTPUT NOT Second
+OUTPUT OPERATOR AND(First, Second)