File: 225_typeinfOrder.sml

package info (click to toggle)
smlsharp 4.1.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 123,732 kB
  • sloc: ansic: 16,725; sh: 4,347; makefile: 2,191; java: 742; haskell: 493; ruby: 305; cpp: 284; pascal: 256; ml: 255; lisp: 141; asm: 97; sql: 74
file content (43 lines) | stat: -rw-r--r-- 1,388 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
fn x => (x 1; x true);
fn x => let val {a=x,b=y} = {a = x 1, b = x = x} in (x,y) end;
fn x => let val y = 1 in x 1; x = x  end;
fn x => {a = x 1, b = x = x};
fn x => let val _ = x 1 and _ = x = x in 1 end;
fn x => let val rec f = fn () => x 1 and g = fn () => x = x in 1 end;
(* 2012-7-27 ohori:
  The inference should be done from left to right so 
  that the error should be reported at x true. 

(interactive):1.10-1.12 Error:
  (type inference 007) operator and operand don't agree
  operator domain: bool
  operand: 'F::{int,
                SMLSharp.IntInf.int,
                ('D::{int, int option}, 'E) SMLSharp.SQL.value}

(interactive):2.34-2.34 Error:
  (type inference 008) operator is not a function: ''C

(interactive):3.26-3.26 Error:
  (type inference 008) operator is not a function: ''Q

# (interactive):1.14-1.14 Error:
  (type inference 008) operator is not a function: ''C

(interactive):2.21-2.25 Error:
  (type inference 019) operator and operand don't agree
  operator domain: ''Q * ''Q
  operand: ('P::{int,
                 SMLSharp.IntInf.int,
                 ('K::{int, int option}, 'L) SMLSharp.SQL.value}
              -> 'O)
           * ('P::{int,
                   SMLSharp.IntInf.int,
                   ('K::{int, int option}, 'L) SMLSharp.SQL.value}
                -> 'O)

*)

(* 2012-7-27 ohori:
Fixed by 4348:f2e56be3bf3a - 4358:eea5c794057b.
*)