Age | Commit message (Collapse) | Author | Files | Lines |
|
On some linux cross-builds, Windows.h is windows.h. On MinGW
case is irrelevant.
* libguile/posix-w32.h: modified
|
|
* module/rnrs/base.scm (vector-map vector-for-each): Rewrite to not be
slow.
* NEWS: Update.
|
|
* NEWS: Add doc link.
* doc/ref/api-macros.texi (Syntax Transformer Helpers): Document
syntax-sourcev.
* module/system/syntax.scm: Re-export syntax-sourcev.
|
|
* NEWS: Update.
* doc/ref/api-macros.texi (Syntax Case): Update.
|
|
* NEWS: More words about mini-gmp.
|
|
* libguile/gen-scmconfig.c [!SCM_I_GSC_ENABLE_MINI_GMP]: define
SCM_ENABLE_MINI_GMP as zero, not undef
|
|
* NEWS: Update.
|
|
* libguile/numbers.c (scm_install_gmp_memory_functions): Default to 1
only if mini-gmp is enabled.
|
|
* libguile.h: Don't import anything GMP-related.
* libguile/numbers.h: Import GMP here instead. If we are using
mini-GMP, only import it when building Guile.
(scm_to_mpz, scm_from_mpz): Don't define when mini-gmp is enabled.
|
|
* configure.ac: Mention --enable-mini-gmp if GMP not found.
|
|
* module/ice-9/read.scm (%read): Fix reading #!!#.
* test-suite/tests/reader.test ("reading"): Add some test cases.
|
|
This makes it match the other species of unknown hash object error
when reading number with radix.
* module/ice-9/read.scm (read-sharp): modified
|
|
* module/ice-9/read.scm (read-number-and-radix): modified
|
|
* module/ice-9/read.scm (read-r6rs-hex-escape, read-fixed-hex-escape):
modified
|
|
* module/ice-9/read.scm (%read): Adjust how subexpressions are read to
error on EOF. Improve the error message.
* test-suite/tests/reader.test ("#;"): Adapt expectation.
|
|
* doc/ref/api-debug.texi (Source Properties): Fix wordo, and adapt
text.
|
|
* module/ice-9/read.scm (%read): Fix bad argument order to unread-char.
|
|
* NEWS: Update.
* doc/ref/guile-invoke.texi (Environment Variables): Add entry.
|
|
* NEWS: Update a bit.
* doc/ref/api-debug.texi (Source Properties): Mention read-syntax.
* doc/ref/api-evaluation.texi (Annotated Scheme Read): New section.
* doc/ref/api-macros.texi (Syntax Case): Update for source vectors.
|
|
* module/system/syntax.scm (print-syntax): Print source locations.
|
|
|
|
* module/ice-9/read.scm (%read): A fix to last night's fix, to make
srfi-105.test pass.
|
|
This suggests moving the conditional that determines if mini-gmp is used
into scmconfig.h.
* configure.ac: replace PKG_CHECK_MODULES for gmp with AC_LIB_HAVE_LINKFLAGS
Remove ENABLE_MINI_GMP define. Also don't run mpz_inits test for
--enable-mini-gmp.
* libguile/gen-scmconfig.c (main) [ENABLE_MINI_GMP]: replace ENABLE_MINI_GMP
with SCM_I_GSC_ENABLE_MINI_GMP
* libguile/bytevectors.c [ENABLE_MINI_GMP]: replace ENABLE_MINI_GMP
with SCM_ENABLE_MINI_GMP
* libguile/init.c [ENABLE_MINI_GMP]: replace ENABLE_MINI_GMP
with SCM_ENABLE_MINI_GMP
* libguile/numbers.c: include scm.h
[SCM_ENABLE_MINI_GMP]: provide mpz_inits and mpz_clears
[ENABLE_MINI_GMP]: prefer SCM_ENABLE_MINI_GMP to ENABLE_MINI_GMP
* libguile/numbers.h: include scm.h
* libguile/random.c [ENABLE_MINI_GMP]: replace ENABLE_MINI_GMP
with SCM_ENABLE_MINI_GMP
* libguile/socket.c [ENABLE_MINI_GMP]: replace ENABLE_MINI_GMP
with SCM_ENABLE_MINI_GMP
|
|
* module/ice-9/read.scm (%read): Fix a wee typo.
|
|
* module/ice-9/read.scm (%read): Fix parsing errors.
|
|
* module/ice-9/read.scm (%read): \U escape is 6 digits long.
|
|
* libguile/read.c (scm_read_sharp_extension): Remove.
(scm_read_sharp): Adapt.
|
|
* libguile/read.c: Use "return EXPR" instead of "return (EXPR)". Avoid
passing around line and column info, as we don't use it any more.
|
|
* libguile/read.c: Remove support for all non-default reader options.
Also remove support for source positions. The idea is that
primitive-read should just be a stripped-down, easy-to-understand reader
that is enough to bootstrap the C reader. Probably more refactoring
will follow.
|
|
* libguile/read.h:
* libguile/read.c (scm_primitive_read): New name for C reader.
(scm_read): Call current value of "read" variable.
(scm_init_read): Initialize "read" binding to "primitive-read".
Replaced later in boot-9.
|
|
* module/ice-9/read.scm (read-array): Return pair for dimension when len
is given; single number is lbnd for list->typed-array.
* test-suite/tests/arrays.test: More test cases for the reader.
|
|
Instead of defining a separate module, given that "read" calls are quite
all over the place, we're just going to replace the boot "read" binding
with read.scm. This way, we'll be able to remove support for reader
options in the boot reader, as it will only ever be used for a finite
set of files.
* NEWS: Update.
* module/Makefile.am (ice-9/boot-9.go): Depend on read.scm.
(SOURCES):
* am/bootstrap.am (SOURCES): Don't build a ice-9/read.go, as we include
it.
* module/ice-9/boot-9.scm (read-syntax): Define here, as "include" now
uses it.
(read-hash-procedures, read-hash-procedure, read-hash-extend): New
procedures. Will replace C variants.
(read, read-syntax): Include read.scm to define these.
* module/ice-9/psyntax-pp.scm (include): Regenerate.
* module/ice-9/psyntax.scm (include): Use read-syntax, so we get better
source information.
* module/ice-9/read.scm (let*-values): New local definition, to avoid
loading srfi-11.
(%read): Use list->typed-array instead of u8-list->bytevector.
* module/language/scheme/spec.scm: Remove (ice-9 read) import;
read-syntax is there in the boot environment
|
|
* test-suite/tests/srfi-105.test ("curly-infix"): For { EXPR }, allow
the source to be at the { rather than at EXPR.
|
|
* module/ice-9/read.scm (%read): Tweak "unterminated block constant"
error to be more compatible with C reader.
|
|
* module/ice-9/read.scm (%read): Call the inner reader, not the outer
reader.
|
|
* module/ice-9/read.scm (%read): Fix invocation of hash procedure.
|
|
* libguile/ports.c (peek_iconv_codepoint): If the input has no bytes,
there's little point in raising a decoding error here. Therefore remove
the needless iconv acquisition, harmonising with suspendable-ports.
* test-suite/tests/ports.test ("port-encoding"): Update test to include
some input so that the exception gets raised.
|
|
* module/ice-9/read.scm: We'll be loading this file early, so avoid
extraneous deps.
|
|
* configure.ac: add SCM_I_GSC_ENABLE_MINI_GMP var and rename
GUILE_MINI_GMP to ENABLE_MINI_GMP
* libguile/bytevectors (GUILE_MINI_GMP): rename to ENABLE_MINI_GMP
* libguile/gen-scmconfig.c: renamed GUILE_MINI_GMP to ENABLE_MINI_GMP.
rename GUILE_MINI_GMP to SCM_ENABLE_MINI_GMP
* libguile/gen-scmconfig.h: add SCM_I_GSC_ENABLE_MINI_GMP
* libguile/init.c [GUILE_MINI_GMP]: prefer ENABLE_MINI_GMP
* libguile/numbers.c [GUILE_MINI_GMP]: prefer ENABLE_MINI_GMP
* libguile/numbers.h: include scmconfig.h
rename GUILE_MINI_GMP to SCM_ENABLE_MINI_GMP
* libguile/random.c [GUILE_MINI_GMP]: prefer ENABLE_MINI_GMP
* libguile/socket.c [GUILE_MINI_GMP]: prefer ENABLE_MINI_GMP
* libguile.h [GUILE_MINI_GMP]: prefer SCM_ENABLE_MINI_GMP
|
|
* configure.ac: rework gmp library detection. Add new flag.
* libguile.h: modify gmp header inclusion
* libguile/Makefile.am: add mini-gmp.[ch] files
* libguile/bytevectors.c: add mini-gmp headers
* libguile/gen-scmconfig.c: new #include variable GUILE_MINI_GMP
* libguile/init.c: add mini-gmp header
* libguile/mini-gmp.c: new file
* libguile/mini-gmp.h: new file
* libguile/numbers.c: add fallback for missing mpz_get_d_2exp
* libguile/numbers.h: yse mini-gmp header
* libguile/random.c: use mini-gmp header
* libguile/socket.c: use mini-gmp header
|
|
* module/ice-9/read.scm: As stated.
* test-suite/tests/arrays.test: Test a fixed case.
|
|
* module/ice-9/read.scm (%read): Fix typo.
|
|
* NEWS: Start updating for new release.
|
|
* module/ice-9/read.scm (read): Fix annotate when positions are
disabled.
|
|
* module/ice-9/boot-9.scm: Add syntax-sourcev to hidden bindings.
|
|
* module/ice-9/read.scm (read-syntax): Switch to sourcev format.
|
|
* module/ice-9/psyntax.scm: Use the vector representation of source
properties internally. We have to convert to alists when going to
Tree-IL, but this will be in harmony with syntax objects once the reader
switches to vectors too.
* module/ice-9/psyntax-pp.scm: Regenerate.
|
|
* module/system/vm/assembler.scm (intern-constant, link-data): Write the
vector representation of source instead of the alist. Saves a lot of
heap size, object file size, and init time when serializing syntax
objects with source.
|
|
* libguile/syntax.c (sourcev_to_props, props_to_sourcev)
(scm_syntax_source, scm_syntax_sourcev): Add alternate source
representation for syntax objects.
|
|
* module/system/vm/assembler.scm (<asm>, make-assembler)
(intern-constant, emit-init-constants): Instead of loading a dependent
value each time it's needed in the relocation procedure, eagerly patch
values when they are created. Allows keeping values in registers, which
decreases code size.
|