1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-29 22:40:34 +02:00

* pairs.h (SCM_SETAND_CAR, SCM_SETAND_CDR, SCM_SETOR_CAR,

SCM_SETOR_CDR): Corrected SCM_ASSCM/WORD fixes.
This commit is contained in:
Mikael Djurfeldt 2000-03-11 23:38:33 +00:00
parent d266d03a0b
commit 293bb454ed

View file

@ -2,7 +2,7 @@
#ifndef PAIRSH #ifndef PAIRSH
#define PAIRSH #define PAIRSH
/* Copyright (C) 1995,1996 Free Software Foundation, Inc. /* Copyright (C) 1995,1996, 2000 Free Software Foundation, Inc.
* *
* This program is free software; you can redistribute it and/or modify * This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by * it under the terms of the GNU General Public License as published by
@ -111,10 +111,14 @@ typedef SCM huge *SCMPTR;
#define SCM_CARLOC(x) (&SCM_CAR (x)) #define SCM_CARLOC(x) (&SCM_CAR (x))
#define SCM_CDRLOC(x) (&SCM_CDR (x)) #define SCM_CDRLOC(x) (&SCM_CDR (x))
#define SCM_SETAND_CAR(x, y) (SCM_CARW (x) &= (y)) #define SCM_SETAND_CAR(x, y)\
#define SCM_SETAND_CDR(x, y) (SCM_ASWORD (SCM_CDR (x)) &= (y)) (SCM_CAR (x) = SCM_ASSCM (SCM_ASWORD (SCM_CAR (x)) & (y)))
#define SCM_SETOR_CAR(x, y) (SCM_CARW (x) |= (y)) #define SCM_SETAND_CDR(x, y)\
#define SCM_SETOR_CDR(x, y) (SCM_ASWORD (SCM_CDR (x)) |= (y)) (SCM_CDR (x) = SCM_ASSCM (SCM_ASWORD (SCM_CDR (x)) & (y)))
#define SCM_SETOR_CAR(x, y)\
(SCM_CAR (x) = SCM_ASSCM (SCM_ASWORD (SCM_CAR (x)) | (y)))
#define SCM_SETOR_CDR(x, y)\
(SCM_CDR (x) = SCM_ASSCM (SCM_ASWORD (SCM_CDR (x)) | (y)))
#define SCM_CAAR(OBJ) SCM_CAR (SCM_CAR (OBJ)) #define SCM_CAAR(OBJ) SCM_CAR (SCM_CAR (OBJ))
#define SCM_CDAR(OBJ) SCM_CDR (SCM_CAR (OBJ)) #define SCM_CDAR(OBJ) SCM_CDR (SCM_CAR (OBJ))