1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-01 20:30:28 +02:00
Commit graph

16114 commits

Author SHA1 Message Date
Ludovic Courtès
7e0ee59c60 Store the `git-version-gen' patch.
* gnulib-local/build-aux/git-version-gen.diff: New file.
* Makefile.am (EXTRA_DIST): Add it.
2012-07-07 11:10:49 +02:00
Ludovic Courtès
ad4eb036dc Work around `gl_CANONICALIZE_LGPL' bug when cross-compiling to GNU/Hurd.
* gnulib-local/m4/canonicalize.m4.diff: New file.
* Makefile.am (EXTRA_DIST): Add it.
2012-07-07 01:52:45 +02:00
Ludovic Courtès
015b708795 Work around `gl_CANONICALIZE_LGPL' bug when cross-compiling.
* gnulib-local/m4/canonicalize.m4.diff: New file.
* Makefile.am (EXTRA_DIST): Add it.
2012-07-07 01:36:08 +02:00
Ludovic Courtès
407d13dddc Add missing `m4/clock_time.m4'. 2012-07-07 00:20:20 +02:00
Ludovic Courtès
235c280489 Use `clock-time' directly from Gnulib, but with a local patch.
This is equivalent to the previous situation, but more easily
maintainable.

* acinclude.m4 (gl_CLOCK_TIME): Remove.

* configure.ac: Remove explicit use of `gl_CLOCK_TIME'.

* m4/gnulib-cache.m4 (gl_MODULES): Add `clock-time'.

* gnulib-local/m4/clock_time.m4.diff: New file.
* Makefile.am (EXTRA_DIST): Add it.
2012-07-06 23:56:05 +02:00
Ludovic Courtès
005de2e827 Update Gnulib to v0.0-7509-g98a2286.
* Makefile.am (EXTRA_DIST): Add `m4/gnulib-cache.m4'.
* build-aux/git-version-gen: Keep unchanged.
2012-07-06 23:25:57 +02:00
Andy Wingo
32299e49e8 add http/1.1 transfer codings to the NEWS
* doc/ref/web.texi (Transfer Codings): Add a note about modules.
* NEWS: Add NEWS for transfer codings.
2012-07-06 22:24:25 +02:00
Ian Price
64ead01db7 Document and export `declare-opaque-header!'
* module/web/http.scm (declare-opaque-header!): Add docstring. New export.
* doc/ref/web.texi (HTTP): Add documentation.
2012-07-06 22:18:13 +02:00
Ian Price
312e79f8d5 Add HTTP Chunked Encoding support to web modules.
* doc/ref/web.texi(Transfer Codings): New subsection for transfer codings.
* module/web/http.scm(make-chunked-input-port,
  make-chunked-output-port): New procedures.
* module/web/response.scm (read-response-body): Handle chunked responses.
* test-suite/tests/web-response.test: Add test.
* test-suite/tests/web-http.test: Add tests.

afd
2012-07-06 22:18:12 +02:00
Mark H Weaver
8210c8538a Fix @ and @@ to not capture lexicals; new @@ @@ form for R6RS libraries
* 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.
2012-07-06 20:12:50 +02:00
Andy Wingo
a38da400d7 Merge remote-tracking branch 'origin/stable-2.0'
This anticipates deprecation of make-vtable-vtable in stable-2.0, which
hasn't happened yet.

Conflicts:
	libguile/deprecated.c
	libguile/deprecated.h
	libguile/print.c
	libguile/struct.c
2012-07-06 19:28:06 +02:00
Andy Wingo
5f8d67ad09 simplify %condition-type-vtable
* module/srfi/srfi-35.scm (%condition-type-vtable): Use make-vtable
  instead of make-vtable-vtable.
2012-07-06 18:32:14 +02:00
Andy Wingo
581bd72a7d record-type-vtable is not a new root of the vtable hierarchy
* module/ice-9/boot-9.scm (record-type-vtable): Simplify to use
  make-vtable instead of make-vtable-vtable.
2012-07-06 18:32:14 +02:00
Andy Wingo
2921f53760 Scheme standard-vtable-fields binding
* libguile/struct.c (scm_init_struct): Export standard-vtable-fields to
  Scheme.
2012-07-06 18:32:14 +02:00
Andy Wingo
0bb1353a6b add Scheme binding for scm_standard_vtable_vtable
* libguile/struct.c (scm_init_struct): Export <standard-vtable> to
  Scheme.
2012-07-06 18:32:14 +02:00
Andy Wingo
66b1dbf649 simplify scm_init_print
* libguile/print.c (scm_init_print): Simplify creation of print-state
  vtable.
2012-07-06 18:32:14 +02:00
Andy Wingo
d192791373 deprecate struct-vtable-tag
* libguile/deprecated.c:
* libguile/deprecated.h:
* libguile/struct.c:
* libguile/struct.h:
* doc/ref/api-compound.texi: Deprecate struct-vtable-tag.
2012-07-06 18:12:59 +02:00
Andy Wingo
5d312f3c2c disable some uri tests if --disable-networking
* test-suite/tests/web-uri.test: Disable some tests if we don't have
  inet-pton.
2012-07-06 17:45:23 +02:00
Andy Wingo
2aed2667fc Merge remote-tracking branch 'origin/stable-2.0'
Conflicts:
	libguile/expand.c
	libguile/hashtab.c
	libguile/ports.c
	libguile/vectors.c
	libguile/weaks.c
	module/language/ecmascript/compile-tree-il.scm
	module/language/tree-il/effects.scm
	module/language/tree-il/fix-letrec.scm
	module/language/tree-il/peval.scm
	test-suite/tests/peval.test
2012-07-06 16:52:54 +02:00
Andy Wingo
24dd9f6fe1 add --match pattern to git-version-gen
* configure.ac: Add --match pattern so we only get v2.0.x tagx.
2012-07-06 16:13:57 +02:00
Andy Wingo
ded42750d6 git-version-gen: add --match argument
* build-aux/git-version-gen (Options): Add --match argument.
  (v_from_git): Remove path without --match.
2012-07-06 16:08:25 +02:00
Andy Wingo
826ce16e29 update git-version-gen from gnulib
* build-aux/git-version-gen: Import from gnulib.
2012-07-06 15:17:07 +02:00
Daniel Krueger
e1fb0e811b fixed repl command ,describe to also handle syntax 2012-07-06 14:35:10 +02:00
Dagobert Michelsen
5e33d0aa37 Add alignment for Sun Studio 12 2012-07-06 13:22:27 +02:00
Andy Wingo
3fabb2d2be more uri-related ipv6 fixes
* 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.
2012-07-06 13:13:19 +02:00
Daniel Hartwig
81e7210f14 enhance IPv6 support
* 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.
2012-07-06 12:33:41 +02:00
Daniel Hartwig
274e2eecf1 support URIs with domain names starting with numbers
* 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.
2012-07-06 12:33:16 +02:00
Andy Wingo
d540a1d648 fix typo in web.texi
* doc/ref/web.texi (HTTP Headers): Fix typo in example.  Fixes
  http://bugs.gnu.org/10890.
2012-07-06 12:23:39 +02:00
Andy Wingo
fc835b1b14 better procedure-arguments for interpreted procs with opt, rest, kwargs
* 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.
2012-07-06 12:19:12 +02:00
Andy Wingo
5558cdaa30 add check for fchmod
* configure.ac: Add a check for fchmod.

* libguile/filesys.c (scm_chmod): Guard the fchmod case with
  HAVE_FCHMOD.
2012-07-06 11:01:51 +02:00
Andy Wingo
fc30e14ffe remove mkdir alias in filesys.c for mingw
* libguile/filesys.c (mkdir): Remove alias, as gnulib handles this for
  us.
2012-07-06 10:56:02 +02:00
Andy Wingo
baeb727bcf fix warnings in mingw in expand.c
* libguile/expand.c (VOID_, CONST_): Add trailing underscores to avoid
  name conflicts on MinGW.
2012-07-06 10:50:31 +02:00
Andy Wingo
eca586b489 fix warning about vsnprintf on mingw
* libguile/deprecation.c: Remove a vsnprintf alias for mingw, now that
  gnulib handles it correctly.
2012-07-06 10:43:29 +02:00
Andy Wingo
3b6e619824 be sure to include time.h for struct timespec
* 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.
2012-07-06 10:43:02 +02:00
Andy Wingo
13e3d3d95d fix `vector' instruction emission for big vectors
* 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.
2012-07-05 23:26:38 +02:00
Andy Wingo
b8a5606b10 fix-letrec uses effects.scm for effects analysis
* module/language/tree-il/fix-letrec.scm: Use effects.scm for effects
  analysis, instead of primitives.scm.
  (simple-expression?, partition-vars): Adapt.
2012-07-05 20:40:56 +02:00
Andy Wingo
997ed30070 simplify one kind of degenerate prompt
* 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.
2012-07-05 20:39:16 +02:00
Andy Wingo
37081d5d4b fix bugs in effects analysis of "effect+exception-free-primitives"
* 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.
2012-07-05 20:34:28 +02:00
Andy Wingo
3d2bcd2c35 optimize (apply foo 0 (list 1 2)) => (foo 0 1 2)
* 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.
2012-07-05 20:30:18 +02:00
Andy Wingo
c0cfa9ef07 compile ecmascript's `return' as an abort
* 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!
2012-07-05 11:06:29 +02:00
Andy Wingo
21b83fb795 fix goops compilation when current language is not scheme
* module/oop/goops/dispatch.scm (compute-dispatch-procedure): Set source
  language to Scheme, not (current-language).
2012-07-05 10:15:02 +02:00
Andy Wingo
8898f43cb2 add scm_c_nvalues to news
* NEWS: Add scm_c_nvalues.
2012-07-04 17:54:57 +02:00
Andy Wingo
e1c80e6b30 add scm_c_nvalues with docs; also, docs for scm_c_values
* 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.
2012-07-04 17:49:37 +02:00
Andy Wingo
467be245cb add scm_{to,from}_pointer docs
* doc/ref/api-foreign.texi: Add documentation for scm_to_pointer and
  scm_from_pointer.
2012-07-04 17:43:53 +02:00
Andy Wingo
d2e3579363 update NEWS
* NEWS: Update.
2012-07-02 23:02:20 +02:00
Andy Wingo
d0491c9a16 dead code elimination
* module/ice-9/psyntax.scm: Remove commented-out definitions of `do' and
  `case'.
2012-07-02 23:02:20 +02:00
Andy Wingo
b5f2625933 remove docs for smob-call instruction
* doc/ref/vm.texi (Trampoline Instructions): Remove docs for smob-call.
2012-07-02 23:02:20 +02:00
Andy Wingo
98aa6f5bde typo fix in web.texi
* doc/ref/web.texi (URIs): Fix a typo/thinko.
2012-07-02 23:02:20 +02:00
Ludovic Courtès
a8215aedad Have procedure-arguments' always return the allow-other-keys?' pair.
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.
2012-07-02 15:08:25 +02:00
Ludovic Courtès
bfdbea1f20 Add tests for `procedure-arguments'.
* test-suite/tests/session.test ("procedure-arguments"): New test
  prefix.
2012-07-02 15:02:10 +02:00