| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* module/ice-9/psyntax.scm (@): Return top-wrap instead of the wrap
applied to the '@' form, so that the symbol will be interpreted as a
top-level identifier and never refer to any lexical variable.
(@@): Change the syntax used to support R6RS 'library' forms to:
(@@ @@ (mod ...) body). Change the behavior of the documented
(@@ (mod ...) id) form to be the same as that of @, except for the use
of 'private' instead of 'public' in the psyntax mod: use syntax->datum
on the identifier, and return top-wrap instead of the wrap applied to
the '@@' form.
This fixes <http://bugs.gnu.org/10756> reported by Ludovic Courtès.
* module/ice-9/psyntax-pp.scm: Regenerate.
* module/ice-9/r6rs-libraries.scm (library): Use '@@ @@' syntax instead
of the older '@@' syntax.
* test-suite/tests/syncase.test (changes to expansion environment): Use
'@@ @@' syntax.
* module/Makefile.am: Add explicit dependencies for boot-9.go on the
files that it includes: quasisyntax.scm and r6rs-libraries.scm.
|
|
|
|
|
|
|
|
| |
* libguile/struct.h:
* libguile/struct.c (scm_make_vtable_vtable): Deprecate, as you can
handle most of the use cases with make-vtable, and we don't want to
promote the creation of new roots to the type hierarchy.
(scm_i_make_vtable_vtable): The internal replacement.
|
|
|
|
|
| |
* module/srfi/srfi-35.scm (%condition-type-vtable): Use make-vtable
instead of make-vtable-vtable.
|
|
|
|
|
| |
* module/ice-9/boot-9.scm (record-type-vtable): Simplify to use
make-vtable instead of make-vtable-vtable.
|
|
|
|
|
| |
* libguile/struct.c (scm_init_struct): Export standard-vtable-fields to
Scheme.
|
|
|
|
|
| |
* libguile/struct.c (scm_init_struct): Export <standard-vtable> to
Scheme.
|
|
|
|
|
| |
* libguile/print.c (scm_init_print): Simplify creation of print-state
vtable.
|
|
|
|
|
|
|
|
| |
* libguile/deprecated.c:
* libguile/deprecated.h:
* libguile/struct.c:
* libguile/struct.h:
* doc/ref/api-compound.texi: Deprecate struct-vtable-tag.
|
|
|
|
|
| |
* test-suite/tests/web-uri.test: Disable some tests if we don't have
inet-pton.
|
|
|
|
| |
* configure.ac: Add --match pattern so we only get v2.0.x tagx.
|
|
|
|
|
| |
* build-aux/git-version-gen (Options): Add --match argument.
(v_from_git): Remove path without --match.
|
|
|
|
| |
* build-aux/git-version-gen: Import from gnulib.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* module/web/uri.scm (ipv6-regexp): IPv6 numeric addresses do not have
brackets. It's only in URIs that they have them.
(ipv6-host-pat, authority-regexp, parse-authority): Refactor ipv6
detection to fix a bug with |, and to extract IPv6 hosts from their
brackets. This way we can pass the uri-host directly to inet-pton.
(uri->string): If the host contains a `:', assume it is ipv6 and add
brackets.
* test-suite/tests/web-uri.test ("build-uri"): Adapt tests to assume
that the address returned by uri-host and passed to build-uri #:host
does not have brackets.
|
|
|
|
|
|
|
| |
* module/web/uri.scm (valid-host?): Support dotted-quad notation
in IPv6 addresses.
(parse-authority): Support IPv6 literals.
* test-suite/tests/web-uri.test: Add and fix tests.
|
|
|
|
|
|
|
| |
* module/web/uri.scm (valid-host?): Fix regexp to support
domain names starting with numbers.
* test-suite/tests/web-uri.scm: Add tests for above and
IP literals.
|
|
|
|
|
| |
* doc/ref/web.texi (HTTP Headers): Fix typo in example. Fixes
http://bugs.gnu.org/10890.
|
|
|
|
|
|
|
|
|
|
|
| |
* module/ice-9/session.scm (procedure-arguments): Arrange to interpret
numbers in the "req" and "opt" positions of an 'arglist as N arguments
with unknown name.
* module/ice-9/eval.scm (primitive-eval): Set 'arglist on "complex"
procedures. Fixes http://bugs.gnu.org/10922.
* test-suite/tests/session.test ("procedure-arguments"): Add a test.
|
|
|
|
|
|
|
| |
* configure.ac: Add a check for fchmod.
* libguile/filesys.c (scm_chmod): Guard the fchmod case with
HAVE_FCHMOD.
|
|
|
|
|
| |
* libguile/filesys.c (mkdir): Remove alias, as gnulib handles this for
us.
|
|
|
|
|
| |
* libguile/expand.c (VOID_, CONST_): Add trailing underscores to avoid
name conflicts on MinGW.
|
|
|
|
|
| |
* libguile/deprecation.c: Remove a vsnprintf alias for mingw, now that
gnulib handles it correctly.
|
|
|
|
|
|
| |
* libguile/gen-scmconfig.c: The GNU libc manual says that struct
timespec is defined in time.h. So, just include both sys/time.h and
time.h, if they are available.
|
|
|
|
|
|
|
| |
* module/language/glil/compile-assembly.scm (dump-constants): Only use
the `vector' instruction for vectors whose length can fit in 16 bits.
Fixes http://bugs.gnu.org/11087.
|
|
|
|
|
|
| |
* module/language/tree-il/fix-letrec.scm: Use effects.scm for effects
analysis, instead of primitives.scm.
(simple-expression?, partition-vars): Adapt.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* module/language/tree-il/peval.scm (<operand>): Instead of having a
`residualize?' field, have it be a use count.
(peval): Adapt to <operand> change. Add function to kill uses of an
operand. Use it in the <prompt> inliner. Add another kind of
degenerate prompt to elide. We should really switch to CPS though, as
that will allow us to contify more aggressively.
* test-suite/tests/peval.test ("partial evaluation"): Adapt (while #t
#t) test, which was sensitive to how far the recursive inlining got.
Add a test for the degenerate prompt elision.
|
|
|
|
|
|
|
|
|
| |
* module/language/tree-il/effects.scm (make-effects-analyzer): Be more
precise regarding the effects of the so-called
effect+exception-free-primitives: now we check their arities.
* test-suite/tests/cse.test ("cse"): Add a test that we don't
elide (cons 1 2 3) in effect context.
|
|
|
|
|
|
|
| |
* module/language/tree-il/peval.scm (peval): Inline applications where
we know the contents of the tail.
* test-suite/tests/peval.test ("partial evaluation"): Add tests.
|
|
|
|
|
|
|
| |
* module/language/ecmascript/compile-tree-il.scm (current-return-tag):
(with-return-prompt, comp): Compile `return' as an abort instead of a
primcall to `return'. Fixes beta-reduction by the optimizer -- it
doesn't make sense for `return' to move from one function to another!
|
|
|
|
|
| |
* module/oop/goops/dispatch.scm (compute-dispatch-procedure): Set source
language to Scheme, not (current-language).
|
|
|
|
| |
* NEWS: Add scm_c_nvalues.
|
|
|
|
|
|
|
|
|
|
| |
* libguile/values.h:
* libguile/values.c (scm_c_nvalues): New function.
* doc/ref/api-control.texi (Multiple Values): Add docs for scm_c_values
and scm_c_nvalues.
Fixes http://bugs.gnu.org/11764.
|
|
|
|
|
| |
* doc/ref/api-foreign.texi: Add documentation for scm_to_pointer and
scm_from_pointer.
|
|
|
|
| |
* NEWS: Update.
|
|
|
|
|
| |
* module/ice-9/psyntax.scm: Remove commented-out definitions of `do' and
`case'.
|
|
|
|
| |
* doc/ref/vm.texi (Trampoline Instructions): Remove docs for smob-call.
|
|
|
|
| |
* doc/ref/web.texi (URIs): Fix a typo/thinko.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes <http://bugs.gnu.org/10938>.
Based on a patch by Stefan Israelsson Tampe <stefan.itampe@gmail.com>.
* module/ice-9/session.scm (procedure-arguments): When the 'arglist
property is available, emit the `allow-other-keys?' pair. Use
`match-lambda'.
* test-suite/tests/session.test ("procedure-arguments")["aok? is
preserved"]: New test.
|
|
|
|
|
| |
* test-suite/tests/session.test ("procedure-arguments"): New test
prefix.
|
| |
|
|
|
|
|
|
|
|
| |
Fixes <http://bugs.gnu.org/11500>.
Reported by Kevin J. Fletcher <dev@kjfletch.co.uk>.
* libguile/bdw-gc.h (GC_PTR)[(defined GC_VERSION_MAJOR)
&& (GC_VERSION_MAJOR >= 7)]: Remove.
|
|
|
|
|
|
|
| |
* libguile/finalizers.c, libguile/foreign.c, libguile/guardians.c,
libguile/hashtab.c, libguile/numbers.c, libguile/ports.c,
libguile/smob.c, libguile/struct.c, libguile/vectors.c,
libguile/weaks.c: Use `void *' instead of `GC_PTR'.
|
|
|
|
|
|
|
| |
Fixed <http://bugs.gnu.org/11611>.
* doc/ref/api-procedures.texi (Procedure Properties): Remove reference
to `closure?'. Suggested by David Jaquay <djaquay@gmail.com>.
|
|
|
|
|
|
|
| |
* module/language/tree-il/primitives.scm (*interesting-primitive-names*):
(*effect-free-primitives*): Add string->number, number->string,
integer->char, and char->integer to allow for constant folding and
better effects analysis.
|
|
|
|
|
| |
* module/ice-9/command-line.scm (version-etc): Update copyright year to
2012.
|
|
|
|
|
|
|
|
| |
* module/language/tree-il/cse.scm (cse): When trying to fold
conditionals, only look at entries in the database that were added in
test context.
* test-suite/tests/cse.test ("cse"): Add a test case.
|
|
|
|
|
|
|
|
|
| |
* module/ice-9/ftw.scm (scandir): Run the select? procedure on all
items, including subdirs and the `.' and `..' entries. Pass it the
basename of the file in question instead of the full name.
* test-suite/tests/ftw.test ("scandir"): Adapt expectation for the .test
selector. Add test for a selector that rejects everything.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Partly addresses <http://bugs.gnu.org/11197>.
* libguile/strports.c (scm_mkstrport): Call `scm_port_non_buffer', set
Z's cell type and stream, and release `scm_i_port_table_mutex' early.
Reacquire `scm_i_port_table_mutex' once BUF, C_BUF, and STR_LEN are
initialized.
* test-suite/tests/ports.test ("string ports")["encoding failure leads
to exception"]: New test.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Partly addresses <http://bugs.gnu.org/11197>.
Reported by Klaus Stehle <klaus.stehle@uni-tuebingen.de>.
* module/srfi/srfi-6.scm (open-input-string, open-output-string): New
procedures.
* test-suite/tests/srfi-6.test ("open-input-string")["read-char,
Unicode"]: New test.
("open-output-string")["λ"]: New test.
|