You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Sep 7, 2023. It is now read-only.
After adding some instrumentation to print out the NNRC module during compilation, one can see that the code looks correct:
NNRC Module:
FUNCTION: org.accordproject.inlinetest.h
#brand[org.accordproject.inlinetest.Response]([ x :
let $vp1 := 0.000000 in $vp1 ]
[+]
[ y :
let $vp1 := 10.000000
in
let $vp2 := 12.000000
in $vp1 F+ $vp2 ])
Which means the issue is in the Qcert JavaScript code generation.
Besides the fix that was implemented for the shadowing bug a few months ago, we are now using a completely new JavaScript backend which produces properly JavaScript blocks with a proof that it handles scoping properly. (See PR #732)
I'm considering this issue finally resolved and closing the issue.
For the JavaScript target, when using operators, the compiler produces JavaScript code with erroneous variable shadowing.
This can be seen on the following unit test.
inlinetest.zip
To test:
Note that on test2, using a let binding you get the correct result:
The text was updated successfully, but these errors were encountered: