File: 274_O2StringSub.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 (29 lines) | stat: -rw-r--r-- 556 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
(*
print (Char.toString (String.sub("a",0)) ^ "\n")
(* 2014-01-25 ohori
-O2 オプション付きでコンパイルすると,String.subの結果
が#"\000"となるらしい.

[ohori@localhost tests]$ smlsharp -O2 274_O2StringSub.sml
[ohori@localhost tests]$ ./a.out 
  \^@
*)
*)

case SMLSharp_Builtin.String.sub ("a", 0) of
  #"a" => ()
| _ => raise Fail "BUG"

(*
2013-01-27 katsu

The above code must not raise any exception but it raises "BUG" if
the code is compiled with -O2 switch.
*)

(*
2013-01-28 katsu

fixed by changeset 70d27d6fcf83.

*)