Skip to content

Commit

Permalink
Merge pull request #8363 from tautschnig/temporaries-minimal-scope
Browse files Browse the repository at this point in the history
GOTO conversion: create temporaries with minimal scope
  • Loading branch information
tautschnig authored Jul 22, 2024
2 parents 6c2d7cc + cb2e20c commit 3208438
Show file tree
Hide file tree
Showing 58 changed files with 613 additions and 327 deletions.
5 changes: 3 additions & 2 deletions regression/cbmc-cover/location14/test.desc
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,9 @@ main.c
^\[main.coverage.1\] file main.c line 8 function main block 1.*: SATISFIED$
^\[main.coverage.2\] file main.c line 12 function main block 2.*: FAILED$
^\[main.coverage.3\] file main.c line 12 function main block 3.*: FAILED$
^\[main.coverage.4\] file main.c line 13 function main block 4.*: SATISFIED$
^\[main.coverage.4\] file main.c line 12 function main block 4.*: FAILED$
^\[main.coverage.5\] file main.c line 13 function main block 5.*: SATISFIED$
^\[foo.coverage.1\] file main.c line 3 function foo block 1.*: FAILED$
^\*\* 2 of 5 covered \(40.0%\)
^\*\* 2 of 6 covered \(33.3%\)
--
^warning: ignoring
3 changes: 1 addition & 2 deletions regression/contracts/loop_contracts_do_while/test.desc
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
KNOWNBUG
CORE
main.c
--apply-loop-contracts
^EXIT=0$
Expand All @@ -7,4 +7,3 @@ main.c
--
--
This test checks that loop contracts work correctly on do/while loops.
Fails because contracts are not yet supported on do while loops.
2 changes: 1 addition & 1 deletion regression/cprover/safety/use_after_free1.desc
Original file line number Diff line number Diff line change
Expand Up @@ -4,5 +4,5 @@ use_after_free1.c
^EXIT=0$
^SIGNAL=0$
^\(\d+\) ∀ ς : state . S11\(ς\) ⇒ S12\(ς\[❝main::\$tmp::return_value_malloc❞:=allocate\(ς, 4\)\]\)$
^\(\d+\) ∀ ς : state . S15\(ς\) ⇒ S16\(deallocate_state\(ς, cast\(ς\(❝main::1::p❞\), empty\*\)\)\)$
^\(\d+\) ∀ ς : state . S16\(ς\) ⇒ S17\(deallocate_state\(ς, cast\(ς\(❝main::1::p❞\), empty\*\)\)\)$
--
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ main-always.c
--no-standard-checks --variable-sensitivity --vsd-values constants --show
^EXIT=0$
^SIGNAL=0$
^main::1::i .* TOP @ \[17, 19\]
^main::1::p .* TOP @ \[3, 8, 14\]
^main::1::i .* TOP @ \[23, 25\]
^main::1::p .* TOP @ \[3, 9, 18\]
--
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ main-always.c
--no-standard-checks --variable-sensitivity --vsd-values intervals --show
^EXIT=0$
^SIGNAL=0$
^main::1::i .* \[5, 5\] @ \[17\]
^main::1::p .* \[0, A\] @ \[3, 8, 14\]
^main::1::i .* \[5, 5\] @ \[23\]
^main::1::p .* \[0, A\] @ \[3, 9, 18\]
--
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ main-always.c
--no-standard-checks --variable-sensitivity --vsd-values set-of-constants --show
^EXIT=0$
^SIGNAL=0$
^main::1::i .* value-set-begin: 5 :value-set-end @ \[17\]
^main::1::p .* value-set-begin: 0, 5, 10 :value-set-end @ \[3, 8, 14\]
^main::1::i .* value-set-begin: 5 :value-set-end @ \[23\]
^main::1::p .* value-set-begin: 0, 5, 10 :value-set-end @ \[3, 9, 18\]
--
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ main-indeterminate.c
--no-standard-checks --variable-sensitivity --vsd-values constants --show
^EXIT=0$
^SIGNAL=0$
^main::1::i .* TOP @ \[17, 19\]
^main::1::p .* TOP @ \[3, 8, 14\]
^main::1::i .* TOP @ \[23, 25\]
^main::1::p .* TOP @ \[3, 9, 18\]
--
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ main-indeterminate.c
--no-standard-checks --variable-sensitivity --vsd-values intervals --show
^EXIT=0$
^SIGNAL=0$
^main::1::i .* \[FFFFFFFB, 5\] @ \[17, 19\]
^main::1::p .* \[0, A\] @ \[3, 8, 14\]
^main::1::i .* \[FFFFFFFB, 5\] @ \[23, 25\]
^main::1::p .* \[0, A\] @ \[3, 9, 18\]
--
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ main-indeterminate.c
--no-standard-checks --variable-sensitivity --vsd-values set-of-constants --show
^EXIT=0$
^SIGNAL=0$
^main::1::i .* value-set-begin: 5, -5 :value-set-end @ \[17, 19\]
^main::1::p .* value-set-begin: 0, 5, 10 :value-set-end @ \[3, 8, 14\]
^main::1::i .* value-set-begin: 5, -5 :value-set-end @ \[23, 25\]
^main::1::p .* value-set-begin: 0, 5, 10 :value-set-end @ \[3, 9, 18\]
--
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ main-never.c
--no-standard-checks --variable-sensitivity --vsd-values constants --show
^EXIT=0$
^SIGNAL=0$
^main::1::i .* TOP @ \[17, 19\]
^main::1::p .* TOP @ \[3, 8, 14\]
^main::1::i .* TOP @ \[23, 25\]
^main::1::p .* TOP @ \[3, 9, 18\]
--
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ main-never.c
--no-standard-checks --variable-sensitivity --vsd-values intervals --show
^EXIT=0$
^SIGNAL=0$
^main::1::i .* \[FFFFFFFB, FFFFFFFB\] @ \[19\]
^main::1::p .* \[0, A\] @ \[3, 8, 14\]
^main::1::i .* \[FFFFFFFB, FFFFFFFB\] @ \[25\]
^main::1::p .* \[0, A\] @ \[3, 9, 18\]
--
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ main-never.c
--no-standard-checks --variable-sensitivity --vsd-values set-of-constants --show
^EXIT=0$
^SIGNAL=0$
^main::1::i .* value-set-begin: -5 :value-set-end @ \[19\]
^main::1::p .* value-set-begin: 0, 5, 10 :value-set-end @ \[3, 8, 14\]
^main::1::i .* value-set-begin: -5 :value-set-end @ \[25\]
^main::1::p .* value-set-begin: 0, 5, 10 :value-set-end @ \[3, 9, 18\]
--
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ main-always.c
--no-standard-checks --variable-sensitivity --vsd-values constants --show
^EXIT=0$
^SIGNAL=0$
^main::1::i .* TOP @ \[17, 19\]
^main::1::p .* TOP @ \[3, 8, 14\]
^main::1::i .* TOP @ \[23, 25\]
^main::1::p .* TOP @ \[3, 9, 18\]
--
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ main-always.c
--no-standard-checks --variable-sensitivity --vsd-values intervals --show
^EXIT=0$
^SIGNAL=0$
^main::1::i .* \[5, 5\] @ \[17\]
^main::1::p .* \[0, A\] @ \[3, 8, 14\]
^main::1::i .* \[5, 5\] @ \[23\]
^main::1::p .* \[0, A\] @ \[3, 9, 18\]
--
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ main-always.c
--no-standard-checks --variable-sensitivity --vsd-values set-of-constants --show
^EXIT=0$
^SIGNAL=0$
^main::1::i .* value-set-begin: 5 :value-set-end @ \[17\]
^main::1::p .* value-set-begin: 0, 5, 10 :value-set-end @ \[3, 8, 14\]
^main::1::i .* value-set-begin: 5 :value-set-end @ \[23\]
^main::1::p .* value-set-begin: 0, 5, 10 :value-set-end @ \[3, 9, 18\]
--
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ main-indeterminate.c
--no-standard-checks --variable-sensitivity --vsd-values constants --show
^EXIT=0$
^SIGNAL=0$
^main::1::i .* TOP @ \[17, 19\]
^main::1::p .* TOP @ \[3, 8, 14\]
^main::1::i .* TOP @ \[23, 25\]
^main::1::p .* TOP @ \[3, 9, 18\]
--
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ main-indeterminate.c
--no-standard-checks --variable-sensitivity --vsd-values intervals --show
^EXIT=0$
^SIGNAL=0$
^main::1::i .* \[FFFFFFFB, 5\] @ \[17, 19\]
^main::1::p .* \[0, A\] @ \[3, 8, 14\]
^main::1::i .* \[FFFFFFFB, 5\] @ \[23, 25\]
^main::1::p .* \[0, A\] @ \[3, 9, 18\]
--
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ main-indeterminate.c
--no-standard-checks --variable-sensitivity --vsd-values set-of-constants --show
^EXIT=0$
^SIGNAL=0$
^main::1::i .* value-set-begin: 5, -5 :value-set-end @ \[17, 19\]
^main::1::p .* value-set-begin: 0, 5, 10 :value-set-end @ \[3, 8, 14\]
^main::1::i .* value-set-begin: 5, -5 :value-set-end @ \[23, 25\]
^main::1::p .* value-set-begin: 0, 5, 10 :value-set-end @ \[3, 9, 18\]
--
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ main-never.c
--no-standard-checks --variable-sensitivity --vsd-values constants --show
^EXIT=0$
^SIGNAL=0$
^main::1::i .* TOP @ \[17, 19\]
^main::1::p .* TOP @ \[3, 8, 14\]
^main::1::i .* TOP @ \[23, 25\]
^main::1::p .* TOP @ \[3, 9, 18\]
--
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ main-never.c
--no-standard-checks --variable-sensitivity --vsd-values intervals --show
^EXIT=0$
^SIGNAL=0$
^main::1::i .* \[FFFFFFFB, FFFFFFFB\] @ \[19\]
^main::1::p .* \[0, A\] @ \[3, 8, 14\]
^main::1::i .* \[FFFFFFFB, FFFFFFFB\] @ \[25\]
^main::1::p .* \[0, A\] @ \[3, 9, 18\]
--
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ main-never.c
--no-standard-checks --variable-sensitivity --vsd-values set-of-constants --show
^EXIT=0$
^SIGNAL=0$
^main::1::i .* value-set-begin: -5 :value-set-end @ \[19\]
^main::1::p .* value-set-begin: 0, 5, 10 :value-set-end @ \[3, 8, 14\]
^main::1::i .* value-set-begin: -5 :value-set-end @ \[25\]
^main::1::p .* value-set-begin: 0, 5, 10 :value-set-end @ \[3, 9, 18\]
--
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ main-always.c
--no-standard-checks --variable-sensitivity --vsd-values constants --show
^EXIT=0$
^SIGNAL=0$
^main::1::i .* TOP @ \[17, 19\]
^main::1::p .* TOP @ \[3, 8, 14\]
^main::1::i .* TOP @ \[23, 25\]
^main::1::p .* TOP @ \[3, 9, 18\]
--
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ main-always.c
--no-standard-checks --variable-sensitivity --vsd-values intervals --show
^EXIT=0$
^SIGNAL=0$
^main::1::i .* \[5, 5\] @ \[17\]
^main::1::p .* \[0, A\] @ \[3, 8, 14\]
^main::1::i .* \[5, 5\] @ \[23\]
^main::1::p .* \[0, A\] @ \[3, 9, 18\]
--
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ main-always.c
--no-standard-checks --variable-sensitivity --vsd-values set-of-constants --show
^EXIT=0$
^SIGNAL=0$
^main::1::i .* value-set-begin: 5 :value-set-end @ \[17\]
^main::1::p .* value-set-begin: 0, 5, 10 :value-set-end @ \[3, 8, 14\]
^main::1::i .* value-set-begin: 5 :value-set-end @ \[23\]
^main::1::p .* value-set-begin: 0, 5, 10 :value-set-end @ \[3, 9, 18\]
--
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ main-indeterminate.c
--no-standard-checks --variable-sensitivity --vsd-values constants --show
^EXIT=0$
^SIGNAL=0$
^main::1::i .* TOP @ \[17, 19\]
^main::1::p .* TOP @ \[3, 8, 14\]
^main::1::i .* TOP @ \[23, 25\]
^main::1::p .* TOP @ \[3, 9, 18\]
--
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ main-indeterminate.c
--no-standard-checks --variable-sensitivity --vsd-values intervals --show
^EXIT=0$
^SIGNAL=0$
^main::1::i .* \[FFFFFFFB, 5\] @ \[17, 19\]
^main::1::p .* \[0, A\] @ \[3, 8, 14\]
^main::1::i .* \[FFFFFFFB, 5\] @ \[23, 25\]
^main::1::p .* \[0, A\] @ \[3, 9, 18\]
--
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ main-indeterminate.c
--no-standard-checks --variable-sensitivity --vsd-values set-of-constants --show
^EXIT=0$
^SIGNAL=0$
^main::1::i .* value-set-begin: 5, -5 :value-set-end @ \[17, 19\]
^main::1::p .* value-set-begin: 0, 5, 10 :value-set-end @ \[3, 8, 14\]
^main::1::i .* value-set-begin: 5, -5 :value-set-end @ \[23, 25\]
^main::1::p .* value-set-begin: 0, 5, 10 :value-set-end @ \[3, 9, 18\]
--
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ main-never.c
--no-standard-checks --variable-sensitivity --vsd-values constants --show
^EXIT=0$
^SIGNAL=0$
^main::1::i .* TOP @ \[17, 19\]
^main::1::p .* TOP @ \[3, 8, 14\]
^main::1::i .* TOP @ \[23, 25\]
^main::1::p .* TOP @ \[3, 9, 18\]
--
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ main-never.c
--no-standard-checks --variable-sensitivity --vsd-values intervals --show
^EXIT=0$
^SIGNAL=0$
^main::1::i .* \[FFFFFFFB, FFFFFFFB\] @ \[19\]
^main::1::p .* \[0, A\] @ \[3, 8, 14\]
^main::1::i .* \[FFFFFFFB, FFFFFFFB\] @ \[25\]
^main::1::p .* \[0, A\] @ \[3, 9, 18\]
--
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ main-never.c
--no-standard-checks --variable-sensitivity --vsd-values set-of-constants --show
^EXIT=0$
^SIGNAL=0$
^main::1::i .* value-set-begin: -5 :value-set-end @ \[19\]
^main::1::p .* value-set-begin: 0, 5, 10 :value-set-end @ \[3, 8, 14\]
^main::1::i .* value-set-begin: -5 :value-set-end @ \[25\]
^main::1::p .* value-set-begin: 0, 5, 10 :value-set-end @ \[3, 9, 18\]
--
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ main-always.c
--no-standard-checks --variable-sensitivity --vsd-values constants --show
^EXIT=0$
^SIGNAL=0$
^main::1::i .* TOP @ \[17, 19\]
^main::1::p .* TOP @ \[3, 8, 14\]
^main::1::i .* TOP @ \[23, 25\]
^main::1::p .* TOP @ \[3, 9, 18\]
--
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ main-always.c
--no-standard-checks --variable-sensitivity --vsd-values intervals --show
^EXIT=0$
^SIGNAL=0$
^main::1::i .* \[5, 5\] @ \[17\]
^main::1::p .* \[0, A\] @ \[3, 8, 14\]
^main::1::i .* \[5, 5\] @ \[23\]
^main::1::p .* \[0, A\] @ \[3, 9, 18\]
--
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ main-always.c
--no-standard-checks --variable-sensitivity --vsd-values set-of-constants --show
^EXIT=0$
^SIGNAL=0$
^main::1::i .* value-set-begin: 5 :value-set-end @ \[17\]
^main::1::p .* value-set-begin: 0, 5, 10 :value-set-end @ \[3, 8, 14\]
^main::1::i .* value-set-begin: 5 :value-set-end @ \[23\]
^main::1::p .* value-set-begin: 0, 5, 10 :value-set-end @ \[3, 9, 18\]
--
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ main-indeterminate.c
--no-standard-checks --variable-sensitivity --vsd-values constants --show
^EXIT=0$
^SIGNAL=0$
^main::1::i .* TOP @ \[17, 19\]
^main::1::p .* TOP @ \[3, 8, 14\]
^main::1::i .* TOP @ \[23, 25\]
^main::1::p .* TOP @ \[3, 9, 18\]
--
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ main-indeterminate.c
--no-standard-checks --variable-sensitivity --vsd-values intervals --show
^EXIT=0$
^SIGNAL=0$
^main::1::i .* \[FFFFFFFB, 5\] @ \[17, 19\]
^main::1::p .* \[0, A\] @ \[3, 8, 14\]
^main::1::i .* \[FFFFFFFB, 5\] @ \[23, 25\]
^main::1::p .* \[0, A\] @ \[3, 9, 18\]
--
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ main-indeterminate.c
--no-standard-checks --variable-sensitivity --vsd-values set-of-constants --show
^EXIT=0$
^SIGNAL=0$
^main::1::i .* value-set-begin: 5, -5 :value-set-end @ \[17, 19\]
^main::1::p .* value-set-begin: 0, 5, 10 :value-set-end @ \[3, 8, 14\]
^main::1::i .* value-set-begin: 5, -5 :value-set-end @ \[23, 25\]
^main::1::p .* value-set-begin: 0, 5, 10 :value-set-end @ \[3, 9, 18\]
--
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ main-never.c
--no-standard-checks --variable-sensitivity --vsd-values constants --show
^EXIT=0$
^SIGNAL=0$
^main::1::i .* TOP @ \[17, 19\]
^main::1::p .* TOP @ \[3, 8, 14\]
^main::1::i .* TOP @ \[23, 25\]
^main::1::p .* TOP @ \[3, 9, 18\]
--
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ main-never.c
--no-standard-checks --variable-sensitivity --vsd-values intervals --show
^EXIT=0$
^SIGNAL=0$
^main::1::i .* \[FFFFFFFB, FFFFFFFB\] @ \[19\]
^main::1::p .* \[0, A\] @ \[3, 8, 14\]
^main::1::i .* \[FFFFFFFB, FFFFFFFB\] @ \[25\]
^main::1::p .* \[0, A\] @ \[3, 9, 18\]
--
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ main-never.c
--no-standard-checks --variable-sensitivity --vsd-values set-of-constants --show
^EXIT=0$
^SIGNAL=0$
^main::1::i .* value-set-begin: -5 :value-set-end @ \[19\]
^main::1::p .* value-set-begin: 0, 5, 10 :value-set-end @ \[3, 8, 14\]
^main::1::i .* value-set-begin: -5 :value-set-end @ \[25\]
^main::1::p .* value-set-begin: 0, 5, 10 :value-set-end @ \[3, 9, 18\]
--
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,6 @@ CORE
main.c
--ensure-one-backedge-per-target --show-lexical-loops
^3 is head of \{ 3, 4, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26 \(backedge\) \}$
^16 is head of \{ 16, 17, 22, 23, 24, 25 \(backedge\) \}$
^17 is head of \{ 17, 18, 22, 23, 24, 25 \(backedge\) \}$
^EXIT=0$
^SIGNAL=0$
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
CORE
main.c
--show-lexical-loops
^16 is head of \{ 16, 17, 22, 23, 24, 25 \(backedge\) \}$
^17 is head of \{ 17, 18, 22, 23, 24, 25 \(backedge\) \}$
Note not all loops were in lexical loop form
^EXIT=0$
^SIGNAL=0$
2 changes: 1 addition & 1 deletion regression/goto-instrument/region-analysis-14/test.desc
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ test.c
--show-sese-regions
^Function contains 2 single-entry, single-exit regions:$
^Region starting at \(2, [0-9]+\) .*::x := 0 ends at \(5, [0-9]+\) SKIP$
^Region starting at \(0, [0-9]+\) IF .*5.* THEN GOTO 2 ends at \(9, [0-9]+\) 3: SKIP$
^Region starting at \(0, [0-9]+\) IF .*5.* THEN GOTO 2 ends at \(10, [0-9]+\) 3: SKIP$
^EXIT=0$
^SIGNAL=0$
4 changes: 2 additions & 2 deletions regression/goto-instrument/region-analysis-15/test.desc
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ CORE
test.c
--show-sese-regions
^Function contains 2 single-entry, single-exit regions:$
^Region starting at \(2, [0-9]+\) .*::x := 0 ends at \(8, [0-9]+\) 2: SKIP$
^Region starting at \(0, [0-9]+\) IF .*5.* THEN GOTO 3 ends at \(12, [0-9]+\) 4: SKIP$
^Region starting at \(2, [0-9]+\) .*::x := 0 ends at \(9, [0-9]+\) 2: SKIP$
^Region starting at \(0, [0-9]+\) IF .*5.* THEN GOTO 3 ends at \(13, [0-9]+\) 4: SKIP$
^EXIT=0$
^SIGNAL=0$
2 changes: 1 addition & 1 deletion regression/goto-instrument/region-analysis-16/test.desc
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ test.c
--show-sese-regions
^Function contains 3 single-entry, single-exit regions:$
^Region starting at \(3, [0-9]+\) 1: IF .*7.* THEN GOTO 2 ends at \(8, [0-9]+\) 3: IF .*::x < 10 THEN GOTO 1$
^Region starting at \(0, [0-9]+\) IF .*5.* THEN GOTO 4 ends at \(13, [0-9]+\) 5: SKIP$
^Region starting at \(0, [0-9]+\) IF .*5.* THEN GOTO 4 ends at \(14, [0-9]+\) 5: SKIP$
^Region starting at \(2, [0-9]+\) .*::x := 0 ends at \(9, [0-9]+\) SKIP$
^EXIT=0$
^SIGNAL=0$
Loading

0 comments on commit 3208438

Please sign in to comment.