mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-05-23 21:10:29 +02:00
Add 'scm_to_uintptr_t' and 'scm_from_uintptr_t'.
* libguile/numbers.h (scm_to_uintptr_t, scm_from_uintptr_t): New macros. * doc/ref/api-data.texi (Integers): Document them. * NEWS: Mention it.
This commit is contained in:
parent
2456089116
commit
79bac3bf31
3 changed files with 17 additions and 1 deletions
2
NEWS
2
NEWS
|
@ -13,6 +13,8 @@ Changes in 2.0.13 (since 2.0.12):
|
||||||
|
|
||||||
See "File System" in the manual, for more.
|
See "File System" in the manual, for more.
|
||||||
|
|
||||||
|
** New 'scm_to_uintptr_t' and 'scm_from_uintptr_t' C functions
|
||||||
|
|
||||||
* Bug fixes
|
* Bug fixes
|
||||||
|
|
||||||
** 'mkdir' procedure no longer calls umask(2) (<http://bugs.gnu.org/24659>)
|
** 'mkdir' procedure no longer calls umask(2) (<http://bugs.gnu.org/24659>)
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
@c -*-texinfo-*-
|
@c -*-texinfo-*-
|
||||||
@c This is part of the GNU Guile Reference Manual.
|
@c This is part of the GNU Guile Reference Manual.
|
||||||
@c Copyright (C) 1996, 1997, 2000-2004, 2006-2015
|
@c Copyright (C) 1996, 1997, 2000-2004, 2006-2016
|
||||||
@c Free Software Foundation, Inc.
|
@c Free Software Foundation, Inc.
|
||||||
@c See the file guile.texi for copying conditions.
|
@c See the file guile.texi for copying conditions.
|
||||||
|
|
||||||
|
@ -434,6 +434,7 @@ function will always succeed and will always return an exact number.
|
||||||
@deftypefnx {C Function} {unsigned long long} scm_to_ulong_long (SCM x)
|
@deftypefnx {C Function} {unsigned long long} scm_to_ulong_long (SCM x)
|
||||||
@deftypefnx {C Function} size_t scm_to_size_t (SCM x)
|
@deftypefnx {C Function} size_t scm_to_size_t (SCM x)
|
||||||
@deftypefnx {C Function} ssize_t scm_to_ssize_t (SCM x)
|
@deftypefnx {C Function} ssize_t scm_to_ssize_t (SCM x)
|
||||||
|
@deftypefnx {C Function} scm_t_uintptr scm_to_uintptr_t (SCM x)
|
||||||
@deftypefnx {C Function} scm_t_ptrdiff scm_to_ptrdiff_t (SCM x)
|
@deftypefnx {C Function} scm_t_ptrdiff scm_to_ptrdiff_t (SCM x)
|
||||||
@deftypefnx {C Function} scm_t_int8 scm_to_int8 (SCM x)
|
@deftypefnx {C Function} scm_t_int8 scm_to_int8 (SCM x)
|
||||||
@deftypefnx {C Function} scm_t_uint8 scm_to_uint8 (SCM x)
|
@deftypefnx {C Function} scm_t_uint8 scm_to_uint8 (SCM x)
|
||||||
|
@ -468,6 +469,7 @@ the corresponding types are.
|
||||||
@deftypefnx {C Function} SCM scm_from_ulong_long (unsigned long long x)
|
@deftypefnx {C Function} SCM scm_from_ulong_long (unsigned long long x)
|
||||||
@deftypefnx {C Function} SCM scm_from_size_t (size_t x)
|
@deftypefnx {C Function} SCM scm_from_size_t (size_t x)
|
||||||
@deftypefnx {C Function} SCM scm_from_ssize_t (ssize_t x)
|
@deftypefnx {C Function} SCM scm_from_ssize_t (ssize_t x)
|
||||||
|
@deftypefnx {C Function} SCM scm_from_uintptr_t (uintptr_t x)
|
||||||
@deftypefnx {C Function} SCM scm_from_ptrdiff_t (scm_t_ptrdiff x)
|
@deftypefnx {C Function} SCM scm_from_ptrdiff_t (scm_t_ptrdiff x)
|
||||||
@deftypefnx {C Function} SCM scm_from_int8 (scm_t_int8 x)
|
@deftypefnx {C Function} SCM scm_from_int8 (scm_t_int8 x)
|
||||||
@deftypefnx {C Function} SCM scm_from_uint8 (scm_t_uint8 x)
|
@deftypefnx {C Function} SCM scm_from_uint8 (scm_t_uint8 x)
|
||||||
|
|
|
@ -528,6 +528,18 @@ SCM_API SCM scm_from_mpz (mpz_t rop);
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if SCM_SIZEOF_UINTPTR_T == 4
|
||||||
|
#define scm_to_uintptr_t scm_to_uint32
|
||||||
|
#define scm_from_uintptr_t scm_from_uint32
|
||||||
|
#else
|
||||||
|
#if SCM_SIZEOF_UINTPTR_T == 8
|
||||||
|
#define scm_to_uintptr_t scm_to_uint64
|
||||||
|
#define scm_from_uintptr_t scm_from_uint64
|
||||||
|
#else
|
||||||
|
#error sizeof(scm_t_uintptr) is not 4 or 8.
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
#if SCM_SIZEOF_SCM_T_PTRDIFF == 4
|
#if SCM_SIZEOF_SCM_T_PTRDIFF == 4
|
||||||
#define scm_to_ptrdiff_t scm_to_int32
|
#define scm_to_ptrdiff_t scm_to_int32
|
||||||
#define scm_from_ptrdiff_t scm_from_int32
|
#define scm_from_ptrdiff_t scm_from_int32
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue