2010-06-21 12:11:06 +02:00
|
|
|
(* pour debugger
|
|
|
|
directory parsing global analysis dataflow sequential sigali simulation translation main
|
|
|
|
set arguments -I ../test/good -v ../test/good/t2.ept *)
|
|
|
|
|
|
|
|
type t
|
|
|
|
|
|
|
|
type r2
|
|
|
|
|
|
|
|
(*node hh(x: int) returns ()
|
|
|
|
var y, z: int;
|
|
|
|
let
|
|
|
|
y = pre z + 1;
|
|
|
|
z = 0 -> y;
|
|
|
|
tel
|
|
|
|
|
|
|
|
node jj() returns ()
|
|
|
|
var last k: int;
|
|
|
|
let
|
|
|
|
automaton
|
|
|
|
state S1
|
|
|
|
do k = 1
|
|
|
|
until k = 0 then S2
|
|
|
|
state S2
|
|
|
|
do k = last k + 1 until k = 1 then S2
|
|
|
|
end
|
|
|
|
tel
|
|
|
|
*)
|
|
|
|
|
|
|
|
node g(x: bool) returns (o: bool)
|
|
|
|
let
|
|
|
|
o = T1.f(x)
|
|
|
|
tel
|
|
|
|
|
|
|
|
node hhh() returns ()
|
2011-02-07 14:24:17 +01:00
|
|
|
var last o2 : int = 0;
|
2010-06-21 12:11:06 +02:00
|
|
|
let
|
|
|
|
automaton
|
|
|
|
state S1
|
|
|
|
var r: int;
|
2011-02-07 14:24:17 +01:00
|
|
|
do o2 = 1; r = 2
|
|
|
|
unless last o2 = 0 then S1
|
2010-06-21 12:11:06 +02:00
|
|
|
end
|
|
|
|
tel
|
|
|
|
|
|
|
|
node hh(x,z,m:int) returns (o:int)
|
|
|
|
var last k:int = 1;
|
|
|
|
last w: int = 0;
|
|
|
|
let
|
|
|
|
automaton
|
|
|
|
state S1
|
|
|
|
var r:int;
|
2011-05-23 14:04:11 +02:00
|
|
|
do
|
2010-06-21 12:11:06 +02:00
|
|
|
k = m + 2;
|
|
|
|
r = k + 3;
|
|
|
|
w = 1 + 2;
|
|
|
|
until (1 = 0) then S2
|
|
|
|
| (1 = 2) then S1
|
|
|
|
unless (2 = last k) then S1
|
|
|
|
state S2
|
|
|
|
do
|
|
|
|
k = 2;
|
2011-05-23 14:04:11 +02:00
|
|
|
until (1 = 0) then S2
|
2010-06-21 12:11:06 +02:00
|
|
|
end;(*
|
|
|
|
present
|
|
|
|
| (x = 0) do o = pre o + 2
|
|
|
|
| (x = 2) do o = 4
|
|
|
|
default do o = 2
|
|
|
|
end *) o = 1
|
|
|
|
tel
|