1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-24 20:30:28 +02:00

Revert "SCM is either a union or scm_t_bits"

This reverts commit 80125469ef.

Conflicts:

	libguile/__scm.h
This commit is contained in:
Andy Wingo 2011-09-15 12:28:03 -07:00
parent 8b66aa8f54
commit 75917d6243
2 changed files with 63 additions and 18 deletions

View file

@ -273,6 +273,31 @@
#define SCM_DEBUG_REST_ARGUMENT SCM_DEBUG
#endif
/* The macro SCM_DEBUG_TYPING_STRICTNESS indicates what level of type checking
* shall be performed with respect to the use of the SCM datatype. The macro
* may be defined to one of the values 0, 1 and 2.
*
* A value of 0 means that there will be no compile time type checking, since
* the SCM datatype will be declared as an integral type. This setting should
* only be used on systems, where casting from integral types to pointers may
* lead to loss of bit information.
*
* A value of 1 means that there will an intermediate level of compile time
* type checking, since the SCM datatype will be declared as a pointer to an
* undefined struct. This setting is the default, since it does not cost
* anything in terms of performance or code size.
*
* A value of 2 provides a maximum level of compile time type checking since
* the SCM datatype will be declared as a struct. This setting should be used
* for _compile time_ type checking only, since the compiled result is likely
* to be quite inefficient. The right way to make use of this option is to do
* a 'make clean; make CFLAGS=-DSCM_DEBUG_TYPING_STRICTNESS=2', fix your
* errors, and then do 'make clean; make'.
*/
#ifndef SCM_DEBUG_TYPING_STRICTNESS
#define SCM_DEBUG_TYPING_STRICTNESS 1
#endif
/* {Feature Options}