mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-04-30 11:50:28 +02:00
* eval.c (scm_copy_tree): Copy source properties if existent.
This commit is contained in:
parent
cb412265a7
commit
067affe319
1 changed files with 6 additions and 0 deletions
|
@ -3199,6 +3199,12 @@ scm_copy_tree (obj)
|
||||||
return obj;
|
return obj;
|
||||||
/* return scm_cons(scm_copy_tree(SCM_CAR(obj)), scm_copy_tree(SCM_CDR(obj))); */
|
/* return scm_cons(scm_copy_tree(SCM_CAR(obj)), scm_copy_tree(SCM_CDR(obj))); */
|
||||||
ans = tl = scm_cons (scm_copy_tree (SCM_CAR (obj)), SCM_UNSPECIFIED);
|
ans = tl = scm_cons (scm_copy_tree (SCM_CAR (obj)), SCM_UNSPECIFIED);
|
||||||
|
{
|
||||||
|
/* Copy source properties possibly associated with head pair. */
|
||||||
|
SCM p = scm_whash_lookup (scm_source_whash, obj);
|
||||||
|
if (SCM_NIMP (p))
|
||||||
|
scm_whash_insert (scm_source_whash, ans, p);
|
||||||
|
}
|
||||||
while (SCM_NIMP (obj = SCM_CDR (obj)) && SCM_CONSP (obj))
|
while (SCM_NIMP (obj = SCM_CDR (obj)) && SCM_CONSP (obj))
|
||||||
{
|
{
|
||||||
SCM_SETCDR (tl, scm_cons (scm_copy_tree (SCM_CAR (obj)),
|
SCM_SETCDR (tl, scm_cons (scm_copy_tree (SCM_CAR (obj)),
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue