enable SEXP_USE_STRICT_TOPLEVEL_BINDINGS by default (issue #699)

This commit is contained in:
Alex Shinn 2021-04-19 10:27:46 +09:00
parent 8b3f5512e1
commit 42aab7905c

View file

@ -1,5 +1,5 @@
/* features.h -- general feature configuration */ /* features.h -- general feature configuration */
/* Copyright (c) 2009-2015 Alex Shinn. All rights reserved. */ /* Copyright (c) 2009-2021 Alex Shinn. All rights reserved. */
/* BSD-style license: http://synthcode.com/license.txt */ /* BSD-style license: http://synthcode.com/license.txt */
/* uncomment this to disable most features */ /* uncomment this to disable most features */
@ -173,6 +173,18 @@
/* Automatically disabled if you've disabled flonums. */ /* Automatically disabled if you've disabled flonums. */
/* #define SEXP_USE_MATH 0 */ /* #define SEXP_USE_MATH 0 */
/* uncomment this to enable lenient matching of top-level bindings */
/* Historically, to match behavior with some other Schemes and in */
/* hopes of making it easier to use macros and modules, Chibi allowed */
/* top-level bindings with the same underlying symbol name to match */
/* with identifier=?. In particular, there still isn't a good way */
/* to handle the case where auxiliary syntax conflicts with some other */
/* binding without renaming one or the other (though SRFI 206 helps). */
/* However, if people make use of this you can write Chibi programs */
/* which don't work portably in other implementations, which has been */
/* a source of confusion, so the default has reverted to strict R7RS. */
/* #define SEXP_USE_STRICT_TOPLEVEL_BINDINGS 0 */
/* uncomment this to disable warning about references to undefined variables */ /* uncomment this to disable warning about references to undefined variables */
/* This is something of a hack, but can be quite useful. */ /* This is something of a hack, but can be quite useful. */
/* It's very fast and doesn't involve any separate analysis */ /* It's very fast and doesn't involve any separate analysis */
@ -553,7 +565,7 @@
#endif #endif
#ifndef SEXP_USE_STRICT_TOPLEVEL_BINDINGS #ifndef SEXP_USE_STRICT_TOPLEVEL_BINDINGS
#define SEXP_USE_STRICT_TOPLEVEL_BINDINGS 0 #define SEXP_USE_STRICT_TOPLEVEL_BINDINGS 1
#endif #endif
#if SEXP_USE_STRICT_TOPLEVEL_BINDINGS #if SEXP_USE_STRICT_TOPLEVEL_BINDINGS