Open dours opened 2 years ago
Hello, @dours! Thank you for your message. Can you tell me how you run the polystat?
Hello @mnj2kk, I run java -jar ~/Downloads/polystat.jar eo --in test.eo --include division-by-zero
with the .jar from the polystat-cli project (latest on Aug 3)
@mnj2kk BTW, this minimized version still fails
+package org.eolang
+alias goto org.eolang.goto
+alias stdout org.eolang.io.stdout
+alias sprintf org.eolang.txt.sprintf
+alias cage org.eolang.cage
+junit
[unused] > test
100.div 0 > @
[val] > pybool
memory val > value
fakeclasses.pyBoolClass > x__class__
[x] > eq
pybool (x.value.eq value) > @
[x] > and
pybool (value.and (x.value)) > @
[t f] > if
value.if t f > @
value > @
[] > newUID
memory 12 > cur
[unused] > apply
seq > @
cur.write (cur.plus (1))
(pyint cur)
[x] > mkCopy
x' > copy
copy.< > @
[res] > return
res > result
[] > x__class__
(pyint 3) > x__id__
[] > fakeclasses
[xid] > fakeclass
newUID.apply 0 > xidnormal
pyint xid > x__id__
[x] > eq
pybool (xid.eq (x.xid)) > @
fakeclass 5 > pyBoolClass
fakeclass 6 > pyIntClass
[val] > pyint
memory val > value
fakeclasses.pyIntClass > x__class__
[x] > eq
pybool (value.eq (x.value)) > @
[] > apply
[stackUp] > @
cage 0 > tmp
cage 0 > toReturn
cage 0 > assertMe
cage 0 > xtest
seq > @
stdout "div\n"
write.
xtest
[]
[xxNotCopied] > apply
[stackUp] > @
stackUp.forward (return 0)
cage 0 > tmp
cage 0 > toReturn
xxNotCopied' > xx
cage 0 > e0
seq > @
stdout "xtest\n"
xx.<
stackUp.forward (return toReturn)
123
tmp.write (goto ((((xtest)).apply).@))
(tmp.x__class__.x__id__.neq (return.x__class__.x__id__)).if (stackUp.forward tmp) 0
(assertMe).write (tmp.result)
toReturn.write ((assertMe))
stackUp.forward (return toReturn)
This one does not
+package org.eolang
+alias goto org.eolang.goto
+alias stdout org.eolang.io.stdout
+alias sprintf org.eolang.txt.sprintf
+alias cage org.eolang.cage
+junit
[unused] > test
100.div 0 > @
[val] > pybool
memory val > value
fakeclasses.pyBoolClass > x__class__
[x] > eq
pybool (x.value.eq value) > @
[x] > and
pybool (value.and (x.value)) > @
[t f] > if
value.if t f > @
value > @
[] > newUID
memory 12 > cur
[unused] > apply
seq > @
cur.write (cur.plus (1))
(pyint cur)
[x] > mkCopy
x' > copy
copy.< > @
[res] > return
res > result
[] > x__class__
(pyint 3) > x__id__
[] > fakeclasses
[xid] > fakeclass
newUID.apply 0 > xidnormal
pyint xid > x__id__
[x] > eq
pybool (xid.eq (x.xid)) > @
fakeclass 5 > pyBoolClass
fakeclass 6 > pyIntClass
[val] > pyint
memory val > value
fakeclasses.pyIntClass > x__class__
[x] > eq
pybool (value.eq (x.value)) > @
[] > apply
[stackUp] > @
cage 0 > tmp
cage 0 > toReturn
cage 0 > assertMe
cage 0 > xtest
seq > @
tmp.write (return (pyint (100.div 0)))
(tmp.x__class__.x__id__.neq (return.x__class__.x__id__)).if (stackUp.forward tmp) 0
(e0).write (tmp.result)
((e0).<)
toReturn.write ((e0))
stackUp.forward (return toReturn)
Also, the following version does not report any errors, though it clearly has a division by zero:
+package org.eolang
[] > test
100.div 0 > @
I run it with java -jar ~/Downloads/polystat.jar eo --in test.eo --sarif
Can you link to latest version (3 aug)? @dours
@mnj2kk Sorry, I meant july 01, https://github.com/polystat/polystat-cli/releases/download/v0.1.12/polystat.jar . I downloaded it on the 3rd of aug.
@dours, i have different error on my m1 mac & win10, whats your system and java version?
Hello, @mnj2kk, it is ubuntu 20 inside a virtualbox with 8G of memory, java is 14.0.1 . Maybe you have a different memory limit for the java machine (it can be set as an option to java
afaik).
The example is below. It is a part of the runtime support library for the py2eo translator. By the way, it may be reasonable for you to skip checking the support library, but I don't know of any mechanism for me to explain your analyzer which files are actually the support library.