diff options
author | Andy Wingo <wingo@pobox.com> | 2021-02-20 20:19:34 +0100 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2021-02-20 20:19:34 +0100 |
commit | 2edf91d51c39891e7dcb2de7af3788597816124e (patch) | |
tree | bd32655bb99953ace0ac0a88bcaec6bb97617924 /libguile/syntax.h | |
parent | 064b394d5aaa750dc81ca9da5d07f7b0cf8064ea (diff) | |
download | guile-2edf91d51c39891e7dcb2de7af3788597816124e.tar.gz |
Syntax objects have "source" field
* libguile/syntax.c (scm_make_syntax): Add optional "source" argument.
Note that this function is internal.
(scm_syntax_source): New function, replacing definition in boot-9.scm.
* libguile/syntax.h: Add new declarations.
* module/ice-9/psyntax-pp.scm:
* module/ice-9/psyntax.scm (source-annotation): For syntax objects, the
source annotation comes direct from the syntax object.
* module/system/vm/assembler.scm (link-data, intern-constant): Write
5-word syntax objects.
Diffstat (limited to 'libguile/syntax.h')
-rw-r--r-- | libguile/syntax.h | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/libguile/syntax.h b/libguile/syntax.h index 16229f659..8a98c1db4 100644 --- a/libguile/syntax.h +++ b/libguile/syntax.h @@ -1,7 +1,7 @@ #ifndef SCM_SYNTAX_H #define SCM_SYNTAX_H -/* Copyright 2017-2018 +/* Copyright 2017-2018,2021 Free Software Foundation, Inc. This file is part of Guile. @@ -23,10 +23,11 @@ #include "libguile/scm.h" SCM_INTERNAL SCM scm_syntax_p (SCM obj); -SCM_INTERNAL SCM scm_make_syntax (SCM exp, SCM wrap, SCM module); +SCM_INTERNAL SCM scm_make_syntax (SCM exp, SCM wrap, SCM module, SCM source); SCM_INTERNAL SCM scm_syntax_expression (SCM obj); SCM_INTERNAL SCM scm_syntax_wrap (SCM obj); SCM_INTERNAL SCM scm_syntax_module (SCM obj); +SCM_INTERNAL SCM scm_syntax_source (SCM obj); SCM_INTERNAL void scm_i_syntax_print (SCM obj, SCM port, scm_print_state *pstate); |