1: #line 490 "./lpsrc/flx_regress.pak"
2:
3:
4: open Long;
5:
6:
7: typedef y = ~(int+int);
8: val x : y = (1,2);
9:
10: print x.(0); print " "; print x.(1); endl;
11:
12: typedef ibl = typeof (1,1L);
13:
14:
15: typedef tt = typematch ibl with | _ * ?t as z => t * t * z endmatch;
16: var a:tt = (1L, 2L, (3,4L));
17:
18: print a.(0); print " "; print a.(1); print " ";
19: print a.(2).(0); print " "; print a.(2).(1); endl;
20:
21: typedef fun domainf (t:TYPE):TYPE => typematch t with | ?aa -> ?bb => aa endmatch;
22: typedef domains [t] = typematch t with | ?aa -> ?bb => aa endmatch;
23: typedef il = int -> long;
24: typedef ityf = domainf il;
25: typedef itys = domains [il];
26:
27: val one:itys = 1;
28: val two:ityf = 1;
29: print one; endl;
30: print two; endl;