diff options
author | Hugo Hörnquist <hugo@lysator.liu.se> | 2020-07-20 03:59:10 +0200 |
---|---|---|
committer | Hugo Hörnquist <hugo@lysator.liu.se> | 2020-07-20 04:19:03 +0200 |
commit | 8a93b3ce695003d07c8d8e4c71153c0130372c4d (patch) | |
tree | 3e4a506c2a7af64374711d97acbfe3c81890d6ca /module/c/cpp.scm | |
parent | Split parse-cpp into multiple modules. (diff) | |
download | calp-8a93b3ce695003d07c8d8e4c71153c0130372c4d.tar.gz calp-8a93b3ce695003d07c8d8e4c71153c0130372c4d.tar.xz |
Cleanup for cpp.
Diffstat (limited to '')
-rw-r--r-- | module/c/cpp.scm | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/module/c/cpp.scm b/module/c/cpp.scm index 69e21d27..2fe842c8 100644 --- a/module/c/cpp.scm +++ b/module/c/cpp.scm @@ -114,7 +114,10 @@ (string-append "cpp -dM " header-file)) read-lines))) -(define-macro (include# header-file) +(define-macro (include# header-file . args) + + (define define-form (if (null? args) 'define (car args))) + (define lines (remove (compose private-c-symbol? car) (tokenize-header-file header-file))) @@ -131,7 +134,7 @@ (define graph (add-node graph* (cons '_POSIX_VDISABLE #f) '())) `(begin - ,@(map (lambda (pair) `(define ,(car pair) ,(cdr pair))) + ,@(map (lambda (pair) `(,define-form ,(car pair) ,(cdr pair))) (resolve-dependency-graph graph)))) |