147 | Minimal.Letpair (t1,t2,e1,e2,pos) => 148 let 149 val te1 = checkExp e1 vtable ftable 150 151 val te2 = case te1 of 152 Minimal.Tpair(typ1,typ2)=> typ1 153 |_ => raise Error ("Arguments to pair are wrong",pos) 154 155 val te4 = case te1 of 156 Minimal.Tpair(typ1,typ2)=> typ2 157 |_ => raise Error ("Arguments to pair are wrong",pos) 158 159 val te3 = checkExp e2 ((t1,te2)::(t2,te4)::vtable) ftable 160 161 in 162 if t1 <> t2 then te3 else raise Error ("Arguments to pair are wrong",pos) 163 end