summaryrefslogtreecommitdiffstats
path: root/stream.c
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2011-11-30 16:12:46 -0800
committerKaz Kylheku <kaz@kylheku.com>2011-11-30 16:12:46 -0800
commit3d6cbdfd5e29a48da30493d98e9653d5eebbd9f5 (patch)
tree15a00ed0a7299c15910b2d0bae4d2a2deae5dd20 /stream.c
parentc6d7aca5df641e419f5b74d14b463901d63fc1f2 (diff)
downloadtxr-3d6cbdfd5e29a48da30493d98e9653d5eebbd9f5.tar.gz
txr-3d6cbdfd5e29a48da30493d98e9653d5eebbd9f5.tar.bz2
txr-3d6cbdfd5e29a48da30493d98e9653d5eebbd9f5.zip
* lib.h (or2): Restore macro version of or2, because we need
the sequencing! Making it an inline function broke the tests. But we can't have multiple evaluation either, so it's going to use a temporary lexical variable. (uses_or2): Macro which declares the lexical variable needed by or2. * debug.c (debug): add uses_or2. * eval.c (eval_intrinsic, op_modplace): Likewise. * lib.c (lazy_str, lazy_str_force_upto, lazy_str_get_trailing_list): Likewise. * match.c (h_parallel, v_freeform, v_parallel, v_output): Likewise. * parser.y (unquotes_occur): Likewise. * stream.c (format): Likewise.
Diffstat (limited to 'stream.c')
-rw-r--r--stream.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/stream.c b/stream.c
index 395d9ab6..e337e523 100644
--- a/stream.c
+++ b/stream.c
@@ -1018,6 +1018,7 @@ val vformat_to_string(val fmtstr, va_list vl)
val format(val stream, val str, ...)
{
+ uses_or2;
val st = if3(stream == t,
std_output,
or2(stream, make_string_output_stream()));