File: 023_exn.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 (33 lines) | stat: -rw-r--r-- 822 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
exception Failure
val x = (Failure, 999);
val y = #1 x;

(*
2011-08-16 ohori

This cases a BUG exception in StaticanAlysis, probably due to 
imcomplete datatypecompilation. 

datatypecompilation done
Unification fails (3)
exn(t10)              <=== original exn type
{1: boxed(t12)}^{L1}  <=== result of exn type

[BUG] StaticAnalysis:TLSELECT: unification fail
    raised at: ../staticanalysis/main/StaticAnalysis.sml:314.29-314.61
   handled at: ../toplevel2/main/Top.sml:828.37
		main/SimpleMain.sml:269.53

It seems that exn record should be casted to exn type. The other possibility
of compiling exn type may not work since exn terms have two different record
structures depending whether they have arguments or not. 

*)

(*
2011-08-16 katsu

Fixed by changeset ea44bbeb3115.
The cast to "exn" type was missing.

*)