drnim: tiny progress (#13882)
* drnim: tiny progress * refactoring complete * drnim: prove .ensures annotations * Moved code around to avoid code duplication * drnim: first implementation of the 'old' property * drnim: be precise about the assignment statement * first implementation of --assumeUnique * progress on forall/exists handling
This commit is contained in:
parent
04b6e9cf3e
commit
3a2697dd73
17 changed files with 755 additions and 259 deletions
|
|
@ -1,12 +1,15 @@
|
|||
discard """
|
||||
nimout: '''
|
||||
tsetlen_invalidates.nim(15, 12) Warning: cannot prove: 0 <= len(a) + -1; counter example: a.len -> 0 [IndexCheck]
|
||||
nimout: '''tsetlen_invalidates.nim(12, 10) Warning: BEGIN [User]
|
||||
tsetlen_invalidates.nim(18, 12) Warning: cannot prove: 0 <= len(a) + -1; counter example: a`1.len -> 0
|
||||
a.len -> 1 [IndexCheck]
|
||||
tsetlen_invalidates.nim(26, 10) Warning: END [User]
|
||||
'''
|
||||
cmd: "drnim $file"
|
||||
action: "compile"
|
||||
"""
|
||||
|
||||
{.push staticBoundChecks: defined(nimDrNim).}
|
||||
{.warning: "BEGIN".}
|
||||
|
||||
proc p() =
|
||||
var a = newSeq[int](3)
|
||||
|
|
@ -20,3 +23,4 @@ proc p() =
|
|||
{.pop.}
|
||||
|
||||
p()
|
||||
{.warning: "END".}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue