aboutsummaryrefslogtreecommitdiff
path: root/tests/test/cpp
diff options
context:
space:
mode:
authorHugo Hörnquist <hugo@lysator.liu.se>2022-07-11 22:47:58 +0200
committerHugo Hörnquist <hugo@lysator.liu.se>2022-07-11 22:47:58 +0200
commiteeccf193ff6313abedede827f3096b84428762eb (patch)
tree8d3852cd6d35f2ed12d6073ba83a3f320532112f /tests/test/cpp
parentRemove usage of zipper. (diff)
downloadcalp-eeccf193ff6313abedede827f3096b84428762eb.tar.gz
calp-eeccf193ff6313abedede827f3096b84428762eb.tar.xz
Remove linear update environment procedures.
Diffstat (limited to 'tests/test/cpp')
-rw-r--r--tests/test/cpp/cpp-environment.scm6
-rw-r--r--tests/test/cpp/preprocessor2.scm16
2 files changed, 18 insertions, 4 deletions
diff --git a/tests/test/cpp/cpp-environment.scm b/tests/test/cpp/cpp-environment.scm
index df4736fb..1b24676f 100644
--- a/tests/test/cpp/cpp-environment.scm
+++ b/tests/test/cpp/cpp-environment.scm
@@ -28,7 +28,7 @@
(let ((e (make-environment)))
- (let ((e* (add-identifier!
+ (let ((e* (add-identifier
e "key"
(object-like-macro
identifier: "key"
@@ -36,9 +36,7 @@
(let ((result (get-identifier e* "key")))
(test-assert (macro? result))
(test-equal (lex "value")
- (macro-body result))))
- ;; (get-identifier e "key") here is undefined
- )
+ (macro-body result)))))
(let ((e (make-environment)))
(let ((result (get-identifier e "key")))
diff --git a/tests/test/cpp/preprocessor2.scm b/tests/test/cpp/preprocessor2.scm
index 4f0918ff..01c46dff 100644
--- a/tests/test/cpp/preprocessor2.scm
+++ b/tests/test/cpp/preprocessor2.scm
@@ -738,6 +738,22 @@ wf(x, y)
")))
+(test-equal "Usage before #define"
+ (lex "X")
+ (run "X
+
+#define X 100"))
+
+(test-equal "#undef"
+ (append (lex "X") (lex "10") (lex "X"))
+ (run "
+X
+#define X 10
+X
+#undef X
+X
+")
+ )
;; #undef
;; #error