mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-06-19 02:00:26 +02:00
* tags.h (SCM_ECONSP, SCM_NECONSP): More corrections of
pointer-arithmetic induced by the SCM_PACK/UNPACK change.
This commit is contained in:
parent
998308d305
commit
8f9da2f9e9
1 changed files with 12 additions and 8 deletions
|
@ -291,14 +291,18 @@ typedef void * SCM;
|
||||||
/* SCM_ECONSP should be used instead of SCM_CONSP at places where GLOCS
|
/* SCM_ECONSP should be used instead of SCM_CONSP at places where GLOCS
|
||||||
* can be expected to occur.
|
* can be expected to occur.
|
||||||
*/
|
*/
|
||||||
#define SCM_ECONSP(x) (SCM_NIMP (x) \
|
#define SCM_ECONSP(x) \
|
||||||
&& (SCM_SLOPPY_CONSP (x) \
|
(SCM_NIMP (x) \
|
||||||
|| (SCM_TYP3 (x) == 1 \
|
&& (SCM_SLOPPY_CONSP (x) \
|
||||||
&& SCM_CDR (SCM_CAR (x) - 1) != 0)))
|
|| (SCM_TYP3 (x) == 1 \
|
||||||
#define SCM_NECONSP(x) (SCM_IMP (x) \
|
&& (SCM_CDR ((SCM) SCM_STRUCT_VTABLE_DATA (x)) \
|
||||||
|| (SCM_SLOPPY_NCONSP (x) \
|
!= (SCM) 0))))
|
||||||
&& (SCM_TYP3 (x) != 1 \
|
#define SCM_NECONSP(x) \
|
||||||
|| SCM_CDR (SCM_CAR (x) - 1) == 0)))
|
(SCM_IMP (x) \
|
||||||
|
|| (SCM_SLOPPY_NCONSP (x) \
|
||||||
|
&& (SCM_TYP3 (x) != 1 \
|
||||||
|
|| (SCM_CDR ((SCM) SCM_STRUCT_VTABLE_DATA (x)) \
|
||||||
|
== (SCM) 0))))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue