- /* Copyright (C) 1996,1998,2000,2001,2004,2005, 2006, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
-/* Copyright (C) 1996,1998,2000,2001,2004,2005, 2006, 2008, 2009, 2010, 2012 Free Software Foundation, Inc.
++/* Copyright (C) 1996,1998,2000,2001,2004,2005, 2006, 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public License
static SCM class_vm_cont;
static SCM class_bytevector;
static SCM class_uvec;
+ static SCM class_array;
+ static SCM class_bitvector;
static SCM vtable_class_map = SCM_BOOL_F;
-static scm_i_pthread_mutex_t vtable_class_map_lock = SCM_I_PTHREAD_MUTEX_INITIALIZER;
/* Port classes. Allocate 3 times the maximum number of port types so that
input ports, output ports, and in/out ports can be stored at different
case scm_tc7_bytevector:
scm_i_print_bytevector (exp, port, pstate);
break;
- if (SCM_IS_WHVEC (exp))
- scm_puts ("#wh(", port);
- else
- scm_puts ("#w(", port);
+ case scm_tc7_bitvector:
+ scm_i_print_bitvector (exp, port, pstate);
+ break;
+ case scm_tc7_wvect:
+ ENTER_NESTED_DATA (pstate, exp, circref);
++ scm_puts_unlocked ("#w(", port);
+ goto common_vector_printer;
case scm_tc7_vector:
ENTER_NESTED_DATA (pstate, exp, circref);
- scm_puts ("#(", port);
+ scm_puts_unlocked ("#(", port);
common_vector_printer:
{
register long i;
#ifndef SCM_TAGS_H
#define SCM_TAGS_H
- /* Copyright (C) 1995,1996,1997,1998,1999,2000,2001,2002,2003,2004,2008,2009,2010,2011
-/* Copyright (C) 1995,1996,1997,1998,1999,2000,2001,2002,2003,2004,2008,2009,2010,2012
++/* Copyright (C) 1995,1996,1997,1998,1999,2000,2001,2002,2003,2004,2008,2009,2010,2011,2012
* Free Software Foundation, Inc.
*
* This library is free software; you can redistribute it and/or
#define scm_tc7_with_fluids 63
#define scm_tc7_unused_19 69
#define scm_tc7_program 79
-#define scm_tc7_array 85
-#define scm_tc7_bitvector 87
-#define scm_tc7_unused_20 93
-#define scm_tc7_unused_11 95
+#define scm_tc7_weak_set 85
+#define scm_tc7_weak_table 87
- #define scm_tc7_unused_20 93
- #define scm_tc7_unused_11 95
++#define scm_tc7_array 93
++#define scm_tc7_bitvector 95
#define scm_tc7_unused_12 101
#define scm_tc7_unused_18 103
#define scm_tc7_unused_13 109
- /* Copyright (C) 1999,2000,2001,2003,2004, 2006, 2008, 2010, 2011 Free Software Foundation, Inc.
-/* Copyright (C) 1999, 2000, 2001, 2003, 2004, 2006, 2008, 2010,
++/* Copyright (C) 1999, 2000, 2001, 2003, 2004, 2006, 2008, 2010, 2011
+ * 2012 Free Software Foundation, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public License
(with-latin1-locale body ...)
(begin body ...)))))
+(define char-code-limit 256)
+
+ ;; Since `regexp-quote' uses string ports, and since it is used below
+ ;; with non-ASCII characters, these ports must be Unicode-capable.
+ (define-syntax with-unicode
+ (syntax-rules ()
+ ((_ exp)
+ (with-fluids ((%default-port-encoding "UTF-8"))
+ exp))))
+
(with-test-prefix "regexp-quote"
(pass-if-exception "no args" exception:wrong-num-args