I am using Windows O.S and in Cygwin i type: wish -f ispin.tcl
to open the ispin interface.
I open a file test.pml
which contains:
byte state = 2;
proctype A()
{ (state == 1) -> state = 3
}
proctype B()
{ state = state - 1
}
init
{ run A(); run B()
}
After that, I run it using the random way with seed = 123. The results are printed in output without problems:
0: proc - (:root:) creates proc 0 (:init:)
Starting A with pid 1
1: proc 0 (:init::1) creates proc 1 (A)
1: proc 0 (:init::1) test.pml:12 (state 1) [(run A())]
Starting B with pid 2
2: proc 0 (:init::1) creates proc 2 (B)
2: proc 0 (:init::1) test.pml:12 (state 2) [(run B())]
3: proc 2 (B:1) test.pml:8 (state 1) [state = (state-1)]
4: proc 1 (A:1) test.pml:4 (state 1) [((state==1))]
4: proc 2 (B:1) terminates
5: proc 1 (A:1) test.pml:4 (state 2) [state = 3]
5: proc 1 (A:1) terminates
5: proc 0 (:init::1) terminates
3 processes created
The problem appears when I try to verify this model. The result of the verification is:
verification result:
spin -a test.pml
gcc -DMEMLIM=1024 -O2 -DXUSAFE -DSAFETY -DNOCLAIM -w -o pan pan.c
./pan -m10000
Pid: 3952
spin: error, the version of spin that generated this pan.c assumed a different wordsize (4 iso 8)
How can I solve this? I searched on the internet but I couldn't find something to help me.