From 227e6e82bd04cb695294cbeeed863b45d62c4d66 Mon Sep 17 00:00:00 2001 From: cxxxr Date: Tue, 7 Nov 2023 00:08:02 +0900 Subject: [PATCH] add walker test --- contrib/walker/tests.lisp | 1684 +++++++++++++++++++++++++++++++++++++ micros.asd | 7 + 2 files changed, 1691 insertions(+) create mode 100644 contrib/walker/tests.lisp diff --git a/contrib/walker/tests.lisp b/contrib/walker/tests.lisp new file mode 100644 index 0000000..a8b870d --- /dev/null +++ b/contrib/walker/tests.lisp @@ -0,0 +1,1684 @@ +(defpackage #:micros/walker/tests + (:use #:cl #:rove)) +(in-package #:micros/walker/tests) + +(defvar *test-cases* + '(((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (BLOCK FOO + (RETURN-FROM FOO 10) + (BLOCK FOO (RETURN-FROM FOO 20) (RETURN-FROM FOO 30)) + (RETURN-FROM FOO 40)) + (1)) + ((1 4) (1 2) (1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS FOO NIL) NIL) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS FOO NIL) NIL) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS FOO NIL) NIL) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (BLOCK FOO + (RETURN-FROM FOO 10) + (BLOCK FOO (RETURN-FROM FOO 20) (RETURN-FROM FOO 30)) + (RETURN-FROM FOO 40)) + (1)) + ((1 4) (1 2) (1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (BLOCK FOO + (RETURN-FROM FOO 10) + (BLOCK FOO (RETURN-FROM FOO 20) (RETURN-FROM FOO 30)) + (RETURN-FROM FOO 40)) + (1 2)) + ((1 4) (1 2) (1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (BLOCK FOO + (RETURN-FROM FOO 10) + (BLOCK FOO (RETURN-FROM FOO 20) (RETURN-FROM FOO 30)) + (RETURN-FROM FOO 40)) + (1 3)) + ((1 3 3) (1 2 3) (1 3))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (BLOCK FOO + (RETURN-FROM FOO 10) + (BLOCK FOO (RETURN-FROM FOO 20) (RETURN-FROM FOO 30)) + (RETURN-FROM FOO 40)) + (1 2 3)) + ((1 3 3) (1 2 3) (1 3))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (BLOCK FOO + (RETURN-FROM FOO 10) + (BLOCK FOO (RETURN-FROM FOO 20) (RETURN-FROM FOO 30)) + (RETURN-FROM FOO 40)) + (1 3 3)) + ((1 3 3) (1 2 3) (1 3))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (BLOCK FOO + (RETURN-FROM FOO 10) + (BLOCK FOO (RETURN-FROM FOO 20) (RETURN-FROM FOO 30)) + (RETURN-FROM FOO 40)) + (1 4)) + ((1 4) (1 2) (1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET* ((A 0) (B A)) + (LET* ((A A) (B A)) + A) + A) + (0 0 1)) + ((3) (1 0 1 2) (1 1 1) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET* ((A 0) (B A)) + (LET* ((A A) (B A)) + A) + A) + (0 1 1)) + ((0 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET* ((A 0) (B A)) + (LET* ((A A) (B A)) + A) + A) + (1 1 1)) + ((3) (1 0 1 2) (1 1 1) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET* ((A 0) (B A)) + (LET* ((A A) (B A)) + A) + A) + (0 0 1 2)) + ((2 2) (1 1 1 2) (0 0 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET* ((A 0) (B A)) + (LET* ((A A) (B A)) + A) + A) + (1 0 1 2)) + ((3) (1 0 1 2) (1 1 1) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET* ((A 0) (B A)) + (LET* ((A A) (B A)) + A) + A) + (0 1 1 2)) + ((0 1 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET* ((A 0) (B A)) + (LET* ((A A) (B A)) + A) + A) + (1 1 1 2)) + ((2 2) (1 1 1 2) (0 0 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET* ((A 0) (B A)) + (LET* ((A A) (B A)) + A) + A) + (2 2)) + ((2 2) (1 1 1 2) (0 0 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET* ((A 0) (B A)) + (LET* ((A A) (B A)) + A) + A) + (3)) + ((3) (1 0 1 2) (1 1 1) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 1)) + (LET ((B A)) + A + B)) + (0 0 1)) + ((2 2) (1 0 1 2) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 1)) + (LET ((B A)) + A + B)) + (0 0 1 2)) + ((3 2) (0 0 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 1)) + (LET ((B A)) + A + B)) + (1 0 1 2)) + ((2 2) (1 0 1 2) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 1)) + (LET ((B A)) + A + B)) + (2 2)) + ((2 2) (1 0 1 2) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 1)) + (LET ((B A)) + A + B)) + (3 2)) + ((3 2) (0 0 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (0 0 1)) + ((1 7) (3 6) (1 6) (1 5) (4 4) (1 4) (4 3) (2 3) (1 2) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (0 1 1)) + ((2 2 7) (2 6) (2 5) (3 4) (2 4) (3 3) (2 2) (0 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (1 2)) + ((1 7) (3 6) (1 6) (1 5) (4 4) (1 4) (4 3) (2 3) (1 2) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (2 2)) + ((2 2 7) (2 6) (2 5) (3 4) (2 4) (3 3) (2 2) (0 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (2 2)) + ((2 2 7) (2 6) (2 5) (3 4) (2 4) (3 3) (2 2) (0 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (2 3)) + ((1 7) (3 6) (1 6) (1 5) (4 4) (1 4) (4 3) (2 3) (1 2) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (3 3)) + ((2 2 7) (2 6) (2 5) (3 4) (2 4) (3 3) (2 2) (0 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (4 3)) + ((1 7) (3 6) (1 6) (1 5) (4 4) (1 4) (4 3) (2 3) (1 2) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (1 4)) + ((1 7) (3 6) (1 6) (1 5) (4 4) (1 4) (4 3) (2 3) (1 2) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (2 4)) + ((2 2 7) (2 6) (2 5) (3 4) (2 4) (3 3) (2 2) (0 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (3 4)) + ((2 2 7) (2 6) (2 5) (3 4) (2 4) (3 3) (2 2) (0 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (4 4)) + ((1 7) (3 6) (1 6) (1 5) (4 4) (1 4) (4 3) (2 3) (1 2) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (1 5)) + ((1 7) (3 6) (1 6) (1 5) (4 4) (1 4) (4 3) (2 3) (1 2) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (2 5)) + ((2 2 7) (2 6) (2 5) (3 4) (2 4) (3 3) (2 2) (0 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (1 6)) + ((1 7) (3 6) (1 6) (1 5) (4 4) (1 4) (4 3) (2 3) (1 2) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (2 6)) + ((2 2 7) (2 6) (2 5) (3 4) (2 4) (3 3) (2 2) (0 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (3 6)) + ((1 7) (3 6) (1 6) (1 5) (4 4) (1 4) (4 3) (2 3) (1 2) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (1 7)) + ((1 7) (3 6) (1 6) (1 5) (4 4) (1 4) (4 3) (2 3) (1 2) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (2 2 7)) + ((2 2 7) (2 6) (2 5) (3 4) (2 4) (3 3) (2 2) (0 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (3 7)) + NIL) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS (LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) (0 1)) + ((2) (1 5 1) (0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS (LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) (1 1)) + ((1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS (LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) (2 1)) + ((2 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS (LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) (3 1)) + ((3 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS (LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) (0 5 1)) + ((3) (0 5 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS (LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) (1 5 1)) + ((2) (1 5 1) (0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS (LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) (6 1)) + ((4) (6 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS (LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) (0 8 1)) + ((5) (0 8 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS (LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) (2)) + ((2) (1 5 1) (0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS (LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) (3)) + ((3) (0 5 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS (LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) (4)) + ((4) (6 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS (LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) (5)) + ((5) (0 8 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS #'(LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) + (0 1 1)) + ((2 1) (1 5 1 1) (0 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS #'(LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) + (1 1 1)) + ((1 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS #'(LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) + (2 1 1)) + ((2 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS #'(LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) + (3 1 1)) + ((3 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS #'(LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) + (0 5 1 1)) + ((3 1) (0 5 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS #'(LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) + (1 5 1 1)) + ((2 1) (1 5 1 1) (0 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS #'(LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) + (6 1 1)) + ((4 1) (6 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS #'(LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) + (0 8 1 1)) + ((5 1) (0 8 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS #'(LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) (2 1)) + ((2 1) (1 5 1 1) (0 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS #'(LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) (3 1)) + ((3 1) (0 5 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS #'(LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) (4 1)) + ((4 1) (6 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS #'(LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) (5 1)) + ((5 1) (0 8 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (FLET ((F () + )) + (FLET ((F (&OPTIONAL (X 1)) + X + #'F + (F X))) + (F X) + #'F)) + (0 0 1)) + ((0 4 0 1 2) (3 0 1 2) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (FLET ((F () + )) + (FLET ((F (&OPTIONAL (X 1)) + X + #'F + (F X))) + (F X) + #'F)) + (1 1 2)) + NIL) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (FLET ((F () + )) + (FLET ((F (&OPTIONAL (X 1)) + X + #'F + (F X))) + (F X) + #'F)) + (0 0 1 2)) + ((3 2) (0 2 2) (0 0 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (FLET ((F () + )) + (FLET ((F (&OPTIONAL (X 1)) + X + #'F + (F X))) + (F X) + #'F)) + (0 1 1 0 1 2)) + ((1 4 0 1 2) (2 0 1 2) (0 1 1 0 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (FLET ((F () + )) + (FLET ((F (&OPTIONAL (X 1)) + X + #'F + (F X))) + (F X) + #'F)) + (2 0 1 2)) + ((1 4 0 1 2) (2 0 1 2) (0 1 1 0 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (FLET ((F () + )) + (FLET ((F (&OPTIONAL (X 1)) + X + #'F + (F X))) + (F X) + #'F)) + (4 0 1 2)) + NIL) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (FLET ((F () + )) + (FLET ((F (&OPTIONAL (X 1)) + X + #'F + (F X))) + (F X) + #'F)) + (3 0 1 2)) + ((0 4 0 1 2) (3 0 1 2) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (FLET ((F () + )) + (FLET ((F (&OPTIONAL (X 1)) + X + #'F + (F X))) + (F X) + #'F)) + (0 4 0 1 2)) + ((0 4 0 1 2) (3 0 1 2) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (FLET ((F () + )) + (FLET ((F (&OPTIONAL (X 1)) + X + #'F + (F X))) + (F X) + #'F)) + (1 4 0 1 2)) + ((1 4 0 1 2) (2 0 1 2) (0 1 1 0 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (FLET ((F () + )) + (FLET ((F (&OPTIONAL (X 1)) + X + #'F + (F X))) + (F X) + #'F)) + (0 2 2)) + ((3 2) (0 2 2) (0 0 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (FLET ((F () + )) + (FLET ((F (&OPTIONAL (X 1)) + X + #'F + (F X))) + (F X) + #'F)) + (1 2 2)) + NIL) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (FLET ((F () + )) + (FLET ((F (&OPTIONAL (X 1)) + X + #'F + (F X))) + (F X) + #'F)) + (1 2 2)) + NIL) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (FLET ((F () + )) + (FLET ((F (&OPTIONAL (X 1)) + X + #'F + (F X))) + (F X) + #'F)) + (3 2)) + ((3 2) (0 2 2) (0 0 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LABELS ((F () + (F))) + (LABELS ((F (&OPTIONAL (X 1)) + X + (F X))) + #'F)) + (0 0 1)) + ((0 2 0 1) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LABELS ((F () + (F))) + (LABELS ((F (&OPTIONAL (X 1)) + X + (F X))) + #'F)) + (0 2 0 1)) + ((0 2 0 1) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LABELS ((F () + (F))) + (LABELS ((F (&OPTIONAL (X 1)) + X + (F X))) + #'F)) + (0 0 1 2)) + ((2 2) (0 3 0 1 2) (0 0 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LABELS ((F () + (F))) + (LABELS ((F (&OPTIONAL (X 1)) + X + (F X))) + #'F)) + (0 1 1 0 1 2)) + ((1 3 0 1 2) (2 0 1 2) (0 1 1 0 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LABELS ((F () + (F))) + (LABELS ((F (&OPTIONAL (X 1)) + X + (F X))) + #'F)) + (2 0 1 2)) + ((1 3 0 1 2) (2 0 1 2) (0 1 1 0 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LABELS ((F () + (F))) + (LABELS ((F (&OPTIONAL (X 1)) + X + (F X))) + #'F)) + (0 3 0 1 2)) + ((2 2) (0 3 0 1 2) (0 0 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LABELS ((F () + (F))) + (LABELS ((F (&OPTIONAL (X 1)) + X + (F X))) + #'F)) + (1 3 0 1 2)) + ((1 3 0 1 2) (2 0 1 2) (0 1 1 0 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LABELS ((F () + (F))) + (LABELS ((F (&OPTIONAL (X 1)) + X + (F X))) + #'F)) + (2 2)) + ((2 2) (0 3 0 1 2) (0 0 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LABELS ((F (X &KEY (Y X)) + (G X)) + (G (Y) + (F Y))) + (G 10)) + (0 0 1)) + ((0 2 1 1) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LABELS ((F (X &KEY (Y X)) + (G X)) + (G (Y) + (F Y))) + (G 10)) + (0 1 0 1)) + ((1 2 0 1) (1 2 1 0 1) (0 1 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LABELS ((F (X &KEY (Y X)) + (G X)) + (G (Y) + (F Y))) + (G 10)) + (0 2 1 0 1)) + ((0 2 1 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LABELS ((F (X &KEY (Y X)) + (G X)) + (G (Y) + (F Y))) + (G 10)) + (1 2 1 0 1)) + ((1 2 0 1) (1 2 1 0 1) (0 1 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LABELS ((F (X &KEY (Y X)) + (G X)) + (G (Y) + (F Y))) + (G 10)) + (0 2 0 1)) + ((0 2) (0 1 1) (0 2 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LABELS ((F (X &KEY (Y X)) + (G X)) + (G (Y) + (F Y))) + (G 10)) + (1 2 0 1)) + ((1 2 0 1) (1 2 1 0 1) (0 1 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LABELS ((F (X &KEY (Y X)) + (G X)) + (G (Y) + (F Y))) + (G 10)) + (0 1 1)) + ((0 2) (0 1 1) (0 2 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LABELS ((F (X &KEY (Y X)) + (G X)) + (G (Y) + (F Y))) + (G 10)) + (0 1 1 1)) + ((1 2 1 1) (0 1 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LABELS ((F (X &KEY (Y X)) + (G X)) + (G (Y) + (F Y))) + (G 10)) + (0 2 1 1)) + ((0 2 1 1) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LABELS ((F (X &KEY (Y X)) + (G X)) + (G (Y) + (F Y))) + (G 10)) + (1 2 1 1)) + ((1 2 1 1) (0 1 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LABELS ((F (X &KEY (Y X)) + (G X)) + (G (Y) + (F Y))) + (G 10)) + (0 2)) + ((0 2) (0 1 1) (0 2 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0)) + (DO ((X 1 (1+ X))) + ((= 10 X)) + A + (LET ((A 1)) + A) + B + C)) + (0 0 1)) + ((3 2) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0)) + (DO ((X 1 (1+ X))) + ((= 10 X)) + A + (LET ((A 1)) + A) + B + C)) + (0 0 1 2)) + NIL) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0)) + (DO ((X 1 (1+ X))) + ((= 10 X)) + A + (LET ((A 1)) + A) + B + C)) + (3 2)) + ((3 2) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0)) + (DO ((X 1 (1+ X))) + ((= 10 X)) + A + (LET ((A 1)) + A) + B + C)) + (0 1 4 2)) + NIL) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0)) + (DO ((X 1 (1+ X))) + ((= 10 X)) + A + (LET ((A 1)) + A) + B + C)) + (0 0 1 4 2)) + ((2 4 2) (0 0 1 4 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0)) + (DO ((X 1 (1+ X))) + ((= 10 X)) + A + (LET ((A 1)) + A) + B + C)) + (2 4 2)) + ((2 4 2) (0 0 1 4 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0)) + (DO ((X 1 (1+ X))) + ((= 10 X)) + A + (LET ((A 1)) + A) + B + C)) + (5 2)) + NIL) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0)) + (DO ((X 1 (1+ X))) + ((= 10 X)) + A + (LET ((A 1)) + A) + B + C)) + (6 2)) + NIL) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0)) + (WITH-HOGE NIL A B C)) + (0 0 1)) + ((2 2) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (EVAL-WHEN (:COMPILE-TOPLEVEL :LOAD-TOPLEVEL :EXECUTE) + (LET ((A 0)) + A)) + (0 0 1 2)) + ((2 2) (0 0 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (EVAL-WHEN (:COMPILE-TOPLEVEL :LOAD-TOPLEVEL :EXECUTE) + (LET ((A 0)) + A)) + (2 2)) + ((2 2) (0 0 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (BLOCK FOO + (RETURN-FROM FOO 10) + (BLOCK FOO (RETURN-FROM FOO 20) (RETURN-FROM FOO 30)) + (RETURN-FROM FOO 40)) + (1)) + ((1 4) (1 2) (1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (EVAL-WHEN (:COMPILE-TOPLEVEL :LOAD-TOPLEVEL :EXECUTE) + (LET ((A 0)) + A)) + (2 2)) + ((2 2) (0 0 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (EVAL-WHEN (:COMPILE-TOPLEVEL :LOAD-TOPLEVEL :EXECUTE) + (LET ((A 0)) + A)) + (0 0 1 2)) + ((2 2) (0 0 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0)) + (WITH-HOGE NIL A B C)) + (0 0 1)) + ((2 2) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0)) + (DO ((X 1 (1+ X))) + ((= 10 X)) + A + (LET ((A 1)) + A) + B + C)) + (6 2)) + NIL) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0)) + (DO ((X 1 (1+ X))) + ((= 10 X)) + A + (LET ((A 1)) + A) + B + C)) + (5 2)) + NIL) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0)) + (DO ((X 1 (1+ X))) + ((= 10 X)) + A + (LET ((A 1)) + A) + B + C)) + (2 4 2)) + ((2 4 2) (0 0 1 4 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0)) + (DO ((X 1 (1+ X))) + ((= 10 X)) + A + (LET ((A 1)) + A) + B + C)) + (0 0 1 4 2)) + ((2 4 2) (0 0 1 4 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0)) + (DO ((X 1 (1+ X))) + ((= 10 X)) + A + (LET ((A 1)) + A) + B + C)) + (0 1 4 2)) + NIL) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0)) + (DO ((X 1 (1+ X))) + ((= 10 X)) + A + (LET ((A 1)) + A) + B + C)) + (3 2)) + ((3 2) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0)) + (DO ((X 1 (1+ X))) + ((= 10 X)) + A + (LET ((A 1)) + A) + B + C)) + (0 0 1 2)) + NIL) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0)) + (DO ((X 1 (1+ X))) + ((= 10 X)) + A + (LET ((A 1)) + A) + B + C)) + (0 0 1)) + ((3 2) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LABELS ((F (X &KEY (Y X)) + (G X)) + (G (Y) + (F Y))) + (G 10)) + (0 2)) + ((0 2) (0 1 1) (0 2 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LABELS ((F (X &KEY (Y X)) + (G X)) + (G (Y) + (F Y))) + (G 10)) + (1 2 1 1)) + ((1 2 1 1) (0 1 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LABELS ((F (X &KEY (Y X)) + (G X)) + (G (Y) + (F Y))) + (G 10)) + (0 2 1 1)) + ((0 2 1 1) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LABELS ((F (X &KEY (Y X)) + (G X)) + (G (Y) + (F Y))) + (G 10)) + (0 1 1 1)) + ((1 2 1 1) (0 1 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LABELS ((F (X &KEY (Y X)) + (G X)) + (G (Y) + (F Y))) + (G 10)) + (0 1 1)) + ((0 2) (0 1 1) (0 2 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LABELS ((F (X &KEY (Y X)) + (G X)) + (G (Y) + (F Y))) + (G 10)) + (1 2 0 1)) + ((1 2 0 1) (1 2 1 0 1) (0 1 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LABELS ((F (X &KEY (Y X)) + (G X)) + (G (Y) + (F Y))) + (G 10)) + (0 2 0 1)) + ((0 2) (0 1 1) (0 2 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LABELS ((F (X &KEY (Y X)) + (G X)) + (G (Y) + (F Y))) + (G 10)) + (1 2 1 0 1)) + ((1 2 0 1) (1 2 1 0 1) (0 1 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LABELS ((F (X &KEY (Y X)) + (G X)) + (G (Y) + (F Y))) + (G 10)) + (0 2 1 0 1)) + ((0 2 1 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LABELS ((F (X &KEY (Y X)) + (G X)) + (G (Y) + (F Y))) + (G 10)) + (0 1 0 1)) + ((1 2 0 1) (1 2 1 0 1) (0 1 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LABELS ((F (X &KEY (Y X)) + (G X)) + (G (Y) + (F Y))) + (G 10)) + (0 0 1)) + ((0 2 1 1) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LABELS ((F () + (F))) + (LABELS ((F (&OPTIONAL (X 1)) + X + (F X))) + #'F)) + (2 2)) + ((2 2) (0 3 0 1 2) (0 0 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LABELS ((F () + (F))) + (LABELS ((F (&OPTIONAL (X 1)) + X + (F X))) + #'F)) + (1 3 0 1 2)) + ((1 3 0 1 2) (2 0 1 2) (0 1 1 0 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LABELS ((F () + (F))) + (LABELS ((F (&OPTIONAL (X 1)) + X + (F X))) + #'F)) + (0 3 0 1 2)) + ((2 2) (0 3 0 1 2) (0 0 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LABELS ((F () + (F))) + (LABELS ((F (&OPTIONAL (X 1)) + X + (F X))) + #'F)) + (2 0 1 2)) + ((1 3 0 1 2) (2 0 1 2) (0 1 1 0 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LABELS ((F () + (F))) + (LABELS ((F (&OPTIONAL (X 1)) + X + (F X))) + #'F)) + (0 1 1 0 1 2)) + ((1 3 0 1 2) (2 0 1 2) (0 1 1 0 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LABELS ((F () + (F))) + (LABELS ((F (&OPTIONAL (X 1)) + X + (F X))) + #'F)) + (0 0 1 2)) + ((2 2) (0 3 0 1 2) (0 0 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LABELS ((F () + (F))) + (LABELS ((F (&OPTIONAL (X 1)) + X + (F X))) + #'F)) + (0 2 0 1)) + ((0 2 0 1) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LABELS ((F () + (F))) + (LABELS ((F (&OPTIONAL (X 1)) + X + (F X))) + #'F)) + (0 0 1)) + ((0 2 0 1) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (FLET ((F () + )) + (FLET ((F (&OPTIONAL (X 1)) + X + #'F + (F X))) + (F X) + #'F)) + (3 2)) + ((3 2) (0 2 2) (0 0 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (FLET ((F () + )) + (FLET ((F (&OPTIONAL (X 1)) + X + #'F + (F X))) + (F X) + #'F)) + (1 2 2)) + NIL) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (FLET ((F () + )) + (FLET ((F (&OPTIONAL (X 1)) + X + #'F + (F X))) + (F X) + #'F)) + (1 2 2)) + NIL) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (FLET ((F () + )) + (FLET ((F (&OPTIONAL (X 1)) + X + #'F + (F X))) + (F X) + #'F)) + (0 2 2)) + ((3 2) (0 2 2) (0 0 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (FLET ((F () + )) + (FLET ((F (&OPTIONAL (X 1)) + X + #'F + (F X))) + (F X) + #'F)) + (1 4 0 1 2)) + ((1 4 0 1 2) (2 0 1 2) (0 1 1 0 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (FLET ((F () + )) + (FLET ((F (&OPTIONAL (X 1)) + X + #'F + (F X))) + (F X) + #'F)) + (0 4 0 1 2)) + ((0 4 0 1 2) (3 0 1 2) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (FLET ((F () + )) + (FLET ((F (&OPTIONAL (X 1)) + X + #'F + (F X))) + (F X) + #'F)) + (3 0 1 2)) + ((0 4 0 1 2) (3 0 1 2) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (FLET ((F () + )) + (FLET ((F (&OPTIONAL (X 1)) + X + #'F + (F X))) + (F X) + #'F)) + (4 0 1 2)) + NIL) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (FLET ((F () + )) + (FLET ((F (&OPTIONAL (X 1)) + X + #'F + (F X))) + (F X) + #'F)) + (2 0 1 2)) + ((1 4 0 1 2) (2 0 1 2) (0 1 1 0 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (FLET ((F () + )) + (FLET ((F (&OPTIONAL (X 1)) + X + #'F + (F X))) + (F X) + #'F)) + (0 1 1 0 1 2)) + ((1 4 0 1 2) (2 0 1 2) (0 1 1 0 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (FLET ((F () + )) + (FLET ((F (&OPTIONAL (X 1)) + X + #'F + (F X))) + (F X) + #'F)) + (0 0 1 2)) + ((3 2) (0 2 2) (0 0 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (FLET ((F () + )) + (FLET ((F (&OPTIONAL (X 1)) + X + #'F + (F X))) + (F X) + #'F)) + (1 1 2)) + NIL) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (FLET ((F () + )) + (FLET ((F (&OPTIONAL (X 1)) + X + #'F + (F X))) + (F X) + #'F)) + (0 0 1)) + ((0 4 0 1 2) (3 0 1 2) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS #'(LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) (5 1)) + ((5 1) (0 8 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS #'(LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) (4 1)) + ((4 1) (6 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS #'(LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) (3 1)) + ((3 1) (0 5 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS #'(LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) (2 1)) + ((2 1) (1 5 1 1) (0 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS #'(LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) + (0 8 1 1)) + ((5 1) (0 8 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS #'(LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) + (6 1 1)) + ((4 1) (6 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS #'(LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) + (1 5 1 1)) + ((2 1) (1 5 1 1) (0 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS #'(LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) + (0 5 1 1)) + ((3 1) (0 5 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS #'(LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) + (3 1 1)) + ((3 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS #'(LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) + (2 1 1)) + ((2 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS #'(LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) + (1 1 1)) + ((1 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS #'(LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) + (0 1 1)) + ((2 1) (1 5 1 1) (0 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS (LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) (5)) + ((5) (0 8 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS (LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) (4)) + ((4) (6 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS (LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) (3)) + ((3) (0 5 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS (LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) (2)) + ((2) (1 5 1) (0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS (LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) (0 8 1)) + ((5) (0 8 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS (LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) (6 1)) + ((4) (6 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS (LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) (1 5 1)) + ((2) (1 5 1) (0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS (LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) (0 5 1)) + ((3) (0 5 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS (LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) (3 1)) + ((3 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS (LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) (2 1)) + ((2 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS (LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) (1 1)) + ((1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS (LAMBDA (X A B C &KEY (Y X) Z &AUX (FOO 10)) X Y Z FOO) (0 1)) + ((2) (1 5 1) (0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (3 7)) + NIL) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (2 2 7)) + ((2 2 7) (2 6) (2 5) (3 4) (2 4) (3 3) (2 2) (0 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (1 7)) + ((1 7) (3 6) (1 6) (1 5) (4 4) (1 4) (4 3) (2 3) (1 2) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (3 6)) + ((1 7) (3 6) (1 6) (1 5) (4 4) (1 4) (4 3) (2 3) (1 2) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (2 6)) + ((2 2 7) (2 6) (2 5) (3 4) (2 4) (3 3) (2 2) (0 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (1 6)) + ((1 7) (3 6) (1 6) (1 5) (4 4) (1 4) (4 3) (2 3) (1 2) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (2 5)) + ((2 2 7) (2 6) (2 5) (3 4) (2 4) (3 3) (2 2) (0 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (1 5)) + ((1 7) (3 6) (1 6) (1 5) (4 4) (1 4) (4 3) (2 3) (1 2) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (4 4)) + ((1 7) (3 6) (1 6) (1 5) (4 4) (1 4) (4 3) (2 3) (1 2) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (3 4)) + ((2 2 7) (2 6) (2 5) (3 4) (2 4) (3 3) (2 2) (0 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (2 4)) + ((2 2 7) (2 6) (2 5) (3 4) (2 4) (3 3) (2 2) (0 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (1 4)) + ((1 7) (3 6) (1 6) (1 5) (4 4) (1 4) (4 3) (2 3) (1 2) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (4 3)) + ((1 7) (3 6) (1 6) (1 5) (4 4) (1 4) (4 3) (2 3) (1 2) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (3 3)) + ((2 2 7) (2 6) (2 5) (3 4) (2 4) (3 3) (2 2) (0 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (2 3)) + ((1 7) (3 6) (1 6) (1 5) (4 4) (1 4) (4 3) (2 3) (1 2) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (2 2)) + ((2 2 7) (2 6) (2 5) (3 4) (2 4) (3 3) (2 2) (0 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (2 2)) + ((2 2 7) (2 6) (2 5) (3 4) (2 4) (3 3) (2 2) (0 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (1 2)) + ((1 7) (3 6) (1 6) (1 5) (4 4) (1 4) (4 3) (2 3) (1 2) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (0 1 1)) + ((2 2 7) (2 6) (2 5) (3 4) (2 4) (3 3) (2 2) (0 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 0) (B 1)) + (LOAD-TIME-VALUE A B) + (MULTIPLE-VALUE-CALL 'F A B A) + (SETQ A B + B A) + (PROGN A B) + (MULTIPLE-VALUE-PROG1 A B A) + (UNWIND-PROTECT A (THE INTEGER B) C)) + (0 0 1)) + ((1 7) (3 6) (1 6) (1 5) (4 4) (1 4) (4 3) (2 3) (1 2) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 1)) + (LET ((B A)) + A + B)) + (3 2)) + ((3 2) (0 0 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 1)) + (LET ((B A)) + A + B)) + (2 2)) + ((2 2) (1 0 1 2) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 1)) + (LET ((B A)) + A + B)) + (1 0 1 2)) + ((2 2) (1 0 1 2) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 1)) + (LET ((B A)) + A + B)) + (0 0 1 2)) + ((3 2) (0 0 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET ((A 1)) + (LET ((B A)) + A + B)) + (0 0 1)) + ((2 2) (1 0 1 2) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET* ((A 0) (B A)) + (LET* ((A A) (B A)) + A) + A) + (3)) + ((3) (1 0 1 2) (1 1 1) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET* ((A 0) (B A)) + (LET* ((A A) (B A)) + A) + A) + (2 2)) + ((2 2) (1 1 1 2) (0 0 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET* ((A 0) (B A)) + (LET* ((A A) (B A)) + A) + A) + (1 1 1 2)) + ((2 2) (1 1 1 2) (0 0 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET* ((A 0) (B A)) + (LET* ((A A) (B A)) + A) + A) + (0 1 1 2)) + ((0 1 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET* ((A 0) (B A)) + (LET* ((A A) (B A)) + A) + A) + (1 0 1 2)) + ((3) (1 0 1 2) (1 1 1) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET* ((A 0) (B A)) + (LET* ((A A) (B A)) + A) + A) + (0 0 1 2)) + ((2 2) (1 1 1 2) (0 0 1 2))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET* ((A 0) (B A)) + (LET* ((A A) (B A)) + A) + A) + (1 1 1)) + ((3) (1 0 1 2) (1 1 1) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET* ((A 0) (B A)) + (LET* ((A A) (B A)) + A) + A) + (0 1 1)) + ((0 1 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (LET* ((A 0) (B A)) + (LET* ((A A) (B A)) + A) + A) + (0 0 1)) + ((3) (1 0 1 2) (1 1 1) (0 0 1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (BLOCK FOO + (RETURN-FROM FOO 10) + (BLOCK FOO (RETURN-FROM FOO 20) (RETURN-FROM FOO 30)) + (RETURN-FROM FOO 40)) + (1 4)) + ((1 4) (1 2) (1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (BLOCK FOO + (RETURN-FROM FOO 10) + (BLOCK FOO (RETURN-FROM FOO 20) (RETURN-FROM FOO 30)) + (RETURN-FROM FOO 40)) + (1 3 3)) + ((1 3 3) (1 2 3) (1 3))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (BLOCK FOO + (RETURN-FROM FOO 10) + (BLOCK FOO (RETURN-FROM FOO 20) (RETURN-FROM FOO 30)) + (RETURN-FROM FOO 40)) + (1 2 3)) + ((1 3 3) (1 2 3) (1 3))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (BLOCK FOO + (RETURN-FROM FOO 10) + (BLOCK FOO (RETURN-FROM FOO 20) (RETURN-FROM FOO 30)) + (RETURN-FROM FOO 40)) + (1 3)) + ((1 3 3) (1 2 3) (1 3))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (BLOCK FOO + (RETURN-FROM FOO 10) + (BLOCK FOO (RETURN-FROM FOO 20) (RETURN-FROM FOO 30)) + (RETURN-FROM FOO 40)) + (1 2)) + ((1 4) (1 2) (1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (BLOCK FOO + (RETURN-FROM FOO 10) + (BLOCK FOO (RETURN-FROM FOO 20) (RETURN-FROM FOO 30)) + (RETURN-FROM FOO 40)) + (1)) + ((1 4) (1 2) (1))) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS FOO NIL) NIL) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS FOO NIL) NIL) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS FOO NIL) NIL) + ((MICROS/WALKER:COLLECT-HIGHLIGHT-PATHS + (BLOCK FOO + (RETURN-FROM FOO 10) + (BLOCK FOO (RETURN-FROM FOO 20) (RETURN-FROM FOO 30)) + (RETURN-FROM FOO 40)) + (1)) + ((1 4) (1 2) (1))))) + +(deftest random + (loop :for (act-form expected) :in *test-cases* + :do (ok (equal expected (apply (first act-form) (rest act-form)))))) diff --git a/micros.asd b/micros.asd index a61e70b..3665fe5 100644 --- a/micros.asd +++ b/micros.asd @@ -51,3 +51,10 @@ (:module "walker" :components ((:file "walker"))))) (:file "lsp-api"))) + +(defsystem "micros/tests" + :depends-on ("rove" "micros") + :serial t + :components ((:module "contrib" + :components ((:module "walker" + :components ((:file "tests")))))))