aboutsummaryrefslogtreecommitdiff
path: root/module/c/cpp-util.scm
diff options
context:
space:
mode:
authorHugo Hörnquist <hugo@lysator.liu.se>2022-07-20 16:25:35 +0200
committerHugo Hörnquist <hugo@lysator.liu.se>2022-07-21 14:27:23 +0200
commit37dc6cc5ab804da964f22787561d030898115809 (patch)
treeb8d0acd2fcc8f0c2c51b2d76a4d1e5d942143a2b /module/c/cpp-util.scm
parentCleanup in lex2 test. (diff)
downloadcalp-37dc6cc5ab804da964f22787561d030898115809.tar.gz
calp-37dc6cc5ab804da964f22787561d030898115809.tar.xz
Acknowledge string prefixes.
Diffstat (limited to 'module/c/cpp-util.scm')
-rw-r--r--module/c/cpp-util.scm10
1 files changed, 6 insertions, 4 deletions
diff --git a/module/c/cpp-util.scm b/module/c/cpp-util.scm
index 633c5a0c..9674317b 100644
--- a/module/c/cpp-util.scm
+++ b/module/c/cpp-util.scm
@@ -117,12 +117,14 @@
((null? (cdr tokens)) tokens)
((string-token? (car tokens))
(lambda (a . _) a)
- => (lambda parts-a
+ => (lambda (prefix-a . parts-a)
(cond ((string-token? (cadr tokens))
(lambda (a . _) a)
- => (lambda parts-b (merge-string-literals
- (cons (make-string-literal (append parts-a parts-b))
- (cddr tokens)))))
+ => (lambda (prefix-b . parts-b)
+ (merge-string-literals
+ ;; TODO check validity of prefixes
+ (cons (make-string-literal (cons prefix-a (append parts-a parts-b)))
+ (cddr tokens)))))
(else (cons (car tokens)
(merge-string-literals (cdr tokens)))))))
(else (cons (car tokens) (merge-string-literals (cdr tokens))))))