1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-01 04:10:18 +02:00
guile/test-suite/tests
Andy Wingo bb0229b51d add with-fluids objects and primitive syntax
* libguile/tags.h (scm_tc7_with_fluids): Allocate a tc7 for
  "with-fluids" objects, which will only live on the dynamic stack (wind
  list), not in normal scheme-land.

* libguile/fluids.h (SCM_WITH_FLUIDS_P, SCM_WITH_FLUIDS_LEN)
  (SCM_WITH_FLUIDS_NTH_FLUID, SCM_WITH_FLUIDS_NTH_VAL)
  (SCM_WITH_FLUIDS_SET_NTH_VAL): Add some accessors.
* libguile/fluids.c (scm_i_make_with_fluids, scm_i_swap_with_fluids):
  New internal functions.
  (scm_c_with_fluids, scm_c_with_fluid): Push with-fluids objects on the
  dynwind list, not winders.

* libguile/dynwind.c (scm_i_dowinds): Add cases for winding and
  unwinding with-fluids objects.

* libguile/memoize.h (scm_sym_with_fluids, SCM_M_BEGIN): New public
  data.
* libguile/memoize.c (scm_m_with_fluids): Define with-fluids as a
  primitive syntax.
  (unmemoize): Add with-fluids case.

* libguile/eval.c (eval):
* module/ice-9/eval.scm (primitive-eval): Add with-fluids cases.

* test-suite/tests/fluids.test
  ("fluids not modified if nonfluid passed to with-fluids"): Enable a
  now-passing test.
2010-02-18 22:15:43 +01:00
..
c-api *** empty log message *** 2003-04-07 01:58:47 +00:00
alist.test Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
and-let-star.test Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
arbiters.test Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
asm-to-bytecode.test Change `write-bytecode' to accept a bytevector. 2010-02-10 00:40:01 +01:00
bit-operations.test Enclose `bit-operations.test' in its own module. 2009-07-05 23:46:34 +02:00
brainfuck.test fix brainfuck for new tree-il, and add tests 2009-10-23 15:10:25 +02:00
bytevectors.test Fix segfault for `(uniform-array->bytevector (bitvector))'. 2009-10-15 23:24:19 +02:00
c-api.test Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
chars.test Move r6rs-hex-escape tests into reader.test 2010-01-12 21:27:30 -08:00
common-list.test Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
compiler.test Document the interaction of the "compilee" with the compiler's current module. 2009-10-15 21:29:42 +02:00
continuations.test remove debug frames 2009-12-03 11:03:39 +01:00
dynamic-scope.test define @bind using syntax-case 2009-08-20 18:52:50 +02:00
elisp-compiler.test Allow lexical binding of lambda arguments. 2009-08-01 13:00:27 +02:00
elisp-reader.test Support circular structures in elisp reader. 2009-08-27 18:49:29 +02:00
elisp.test remove (lang elisp), as it won't work with the new evaluator 2009-12-01 21:00:26 +01:00
encoding-escapes.test Use encoding-error' instead of misc-error' for string encoding errors. 2010-01-07 11:10:35 +01:00
encoding-iso88591.test Use encoding-error' instead of misc-error' for string encoding errors. 2010-01-07 11:10:35 +01:00
encoding-iso88597.test Use encoding-error' instead of misc-error' for string encoding errors. 2010-01-07 11:10:35 +01:00
encoding-utf8.test Use encoding-error' instead of misc-error' for string encoding errors. 2010-01-07 11:10:35 +01:00
eval.test new evaluator, y'all 2009-12-01 21:00:26 +01:00
exceptions.test Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
filesys.test Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
fluids.test add with-fluids objects and primitive syntax 2010-02-18 22:15:43 +01:00
format.test Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
fractions.test Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
ftw.test Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
gc.test Tweak the "unused modules are removed" test. 2009-12-11 23:27:47 +01:00
getopt-long.test Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
goops.test interpreted closures cons less. 2009-12-13 16:18:39 +01:00
guardians.test Merge branch 'master' into boehm-demers-weiser-gc 2009-08-18 00:06:45 +02:00
hash.test Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
hooks.test Enclose hooks tests in their own module. 2010-01-07 11:10:36 +01:00
i18n.test Improved support for Unicode title case in Guile's string and character APIs. 2009-12-22 00:19:56 -05:00
import.test Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
interp.test Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
keywords.test Fill code coverage holes in continuations.c and keywords.c 2009-11-04 00:00:09 +00:00
list.test Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
load.test Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
modules.test Allow fresh modules to be passed to `compile'. 2009-08-13 15:57:01 +02:00
multilingual.nottest Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
net-db.test Skip "wrong service name" `getaddrinfo' test on Darwin 9.2. 2010-02-16 20:57:13 +01:00
numbers.test remove rpsubrs 2009-12-04 13:05:00 +01:00
optargs.test fix bug bindings lexical vars within optargs initializers 2009-12-28 17:41:50 +01:00
options.test Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
pairs.test Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
poe.test Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
popen.test Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
ports.test Have string ports honor `%default-port-encoding'. 2010-01-07 11:10:35 +01:00
posix.test Fix use of utimensat(2). 2010-01-19 00:23:33 +01:00
print.test Use HORIZONTAL ELLIPSIS' when available in truncated-print'. 2010-01-08 10:57:32 +01:00
procprop.test programs have their own tc7 now 2009-08-20 18:52:51 +02:00
q.test Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
r4rs.test Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
r5rs_pitfall.test Remove deprecation warnings from the build 2009-09-17 01:18:14 +01:00
r6rs-ports.test Have string ports honor `%default-port-encoding'. 2010-01-07 11:10:35 +01:00
ramap.test implement transcendental sin, cos etc in c; deprecate $sin, $cos, etc 2009-12-03 15:27:35 +01:00
reader.test R6RS string escapes broken on string output 2010-01-23 09:21:46 -08:00
receive.test Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
records.test Tests for record types 2009-09-20 20:59:50 -07:00
regexp.test Modify regexp.test to work better with mac/darwin 2009-10-12 06:55:25 -07:00
signals.test Add define-module to signals.test 2009-10-01 21:56:49 +01:00
socket.test Make `sockets.test' more robust. 2010-01-19 18:49:06 +01:00
sort.test gut trampolines 2009-12-01 21:00:23 +01:00
srcprop.test no special treatment for memoized code in srcprop.c 2009-12-01 21:00:26 +01:00
srfi-1.test gut trampolines 2009-12-01 21:00:23 +01:00
srfi-4.test fix bug in generalized-vector->list 2010-01-03 12:37:07 +01:00
srfi-6.test Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
srfi-9.test Inline SRFI-9 constructors too. 2010-02-01 00:25:51 +01:00
srfi-10.test add quasisyntax 2009-11-14 17:25:12 +01:00
srfi-11.test Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
srfi-13.test Improved support for Unicode title case in Guile's string and character APIs. 2009-12-22 00:19:56 -05:00
srfi-14.test More srfi-14 char-set tests 2009-09-02 06:29:01 -07:00
srfi-17.test Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
srfi-18.test Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
srfi-19.test Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
srfi-26.test * tests/srfi-26.test: New. 2004-01-21 00:45:48 +00:00
srfi-31.test Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
srfi-34.test Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
srfi-35.test SRFI-35: Provide nice vtable names, to make GOOPS happier. 2009-10-25 22:57:29 +01:00
srfi-37.test Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
srfi-39.test Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
srfi-60.test Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
srfi-69.test Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
srfi-88.test Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
srfi-98.test Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
statprof.test add test suites 2009-12-21 00:01:50 +01:00
streams.test Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
strings.test Move r6rs-hex-escape tests into reader.test 2010-01-12 21:27:30 -08:00
structs.test Optimize struct initialization and accessors for the common case. 2010-01-23 16:21:13 +01:00
sxml.fold.test add test suites 2009-12-21 00:01:50 +01:00
sxml.ssax.test add test suites 2009-12-21 00:01:50 +01:00
sxml.transform.test add test suites 2009-12-21 00:01:50 +01:00
sxml.xpath.test add test suites 2009-12-21 00:01:50 +01:00
symbols.test Remove the distinction between inline/outline storage for stringbufs. 2009-09-01 02:02:43 +02:00
syncase.test psyntax's labels and marks now unique over a read/write boundary 2009-12-20 15:30:32 +01:00
syntax.test really boot primitive-eval from scheme. 2009-12-03 00:00:38 +01:00
texinfo.docbook.test add test suites 2009-12-21 00:01:50 +01:00
texinfo.serialize.test add test suites 2009-12-21 00:01:50 +01:00
texinfo.string-utils.test add test suites 2009-12-21 00:01:50 +01:00
texinfo.test add test suites 2009-12-21 00:01:50 +01:00
threads.test Fix bug #27450 ("Fat mutexes not GC'd until their owner dies"). 2009-09-15 23:05:24 +02:00
time.test Modify socket and time functions for wide strings 2009-08-23 09:29:45 -07:00
tree-il.test Evaluate the export' and re-export' forms at compile-time. 2010-01-11 18:31:02 +01:00
unif.test reimplement srfi-4 vectors on top of bytevectors 2010-01-07 22:06:56 +01:00
vectors.test More tests for strings 2009-09-20 20:59:44 -07:00
version.test Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
vlist.test Add `(ice-9 vlist)'. 2010-02-03 00:02:14 +01:00
weaks.test Make `weaks.test' slightly more robust. 2009-09-28 23:32:34 +02:00