1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-11 22:31:12 +02:00
guile/libguile
Mark H Weaver a7e392c1ff Make scm_nullstr mutable
* libguile/strings.c (scm_init_strings): Make scm_nullstr mutable.  It
  is still usable as a common object, because of course it contains no
  characters to mutate anyway.  It is returned by several procedures
  that are specified to return mutable strings, and string mutators
  raise errors when passed an immutable string, even if it is the null
  string.
2012-01-07 04:46:46 -05:00
..
.gitignore libguile gitignore 2010-09-12 23:39:52 +02:00
__scm.h avoid tls gets when handling interrupts in the vm 2011-05-06 00:17:35 +02:00
_scm.h write-objcode uses target-endianness, target-word-size 2011-05-31 11:18:29 +02:00
alist.c remove libguile/lang.h, deprecate %nil (in favor of #nil) 2010-04-09 14:26:31 +02:00
alist.h
arbiters.c fix arbiter compilation with the generic codepath 2009-12-09 10:21:31 +01:00
arbiters.h
array-handle.c remove a bunch of needless scm_permanent_object calls 2009-12-05 11:32:50 +01:00
array-handle.h Remove extra comma after `SCM_ARRAY_ELEMENT_TYPE_LAST'. 2011-03-03 00:13:30 +01:00
array-map.c Change `scm_ramapc' prototype to avoid empty declarators (bug #23681). 2011-02-13 14:47:33 +01:00
array-map.h Change `scm_ramapc' prototype to avoid empty declarators (bug #23681). 2011-02-13 14:47:33 +01:00
arrays.c fix write beyond array end in arrays.c 2011-07-28 19:04:38 +02:00
arrays.h Fix the visibility of a few of internal symbols. 2010-05-28 17:02:13 +02:00
async.c async.c refactor 2011-05-13 13:48:07 +02:00
async.h Arrange so that `SCM_I_CURRENT_THREAD' is not accessed outside of libguile. 2009-10-09 14:10:03 +02:00
backtrace.c fix code that causes warnings on gcc 4.6 2011-03-17 12:39:53 +01:00
backtrace.h print-exception gets a c binding 2011-02-11 13:13:26 +01:00
bdw-gc.h threading / with_guile refactor to use more GC_stack_base 2011-03-25 13:01:51 +01:00
bitvectors.c fix bit-set*! bug (!) 2011-11-10 22:30:02 +01:00
bitvectors.h
boolean.c allow iflags to be constant expressions with typing-strictness==2 2011-05-13 13:48:07 +02:00
boolean.h remove "discouraged" infrastructure 2010-08-08 14:15:47 +02:00
bytevectors.c Allow overlapping regions to be passed to `bytevector-copy!'. 2011-11-20 01:10:58 +01:00
bytevectors.h fix a couple of leaks 2011-08-18 12:53:28 +02:00
c-tokenize.lex remove spurious declarations in c-tokenize.lex 2010-03-26 13:22:10 +01:00
ChangeLog-1996-1999
ChangeLog-2000
ChangeLog-2008
ChangeLog-scm
ChangeLog-srfi move srfi-1 and srfi-60 C impl to libguile, without public C api 2010-09-12 23:29:11 +02:00
ChangeLog-threads
chars.c fix typos in the manual bits generated from source comments. 2011-02-09 22:28:49 +00:00
chars.h Support for Unicode general categories 2009-12-24 11:55:47 -05:00
continuations.c scm_is_eq for SCM vals, not == or != 2011-05-13 13:49:32 +02:00
continuations.h continuations return multiple values on the stack 2010-02-08 22:59:25 +01:00
control.c fix list validation bug in @abort 2011-07-28 18:17:45 +02:00
control.h fix prompt and abort with the boot evaluator 2011-03-29 17:41:31 +02:00
conv-integer.i.c
conv-uinteger.i.c Remove references to undefined macros. 2009-11-17 23:42:22 +01:00
cpp-E.syms Update cpp-E.syms' and cpp-SIG.syms'. 2010-10-15 15:56:03 +02:00
cpp-SIG.syms Update cpp-E.syms' and cpp-SIG.syms'. 2010-10-15 15:56:03 +02:00
debug-malloc.c
debug-malloc.h
debug.c allow iflags to be constant expressions with typing-strictness==2 2011-05-13 13:48:07 +02:00
debug.h remove evaluator-traps-interface 2010-09-24 18:44:21 +02:00
deprecated.c Fix compilation of `deprecated.c' with SCM_DEBUG_TYPING_STRICTNESS=2. 2011-10-22 16:48:46 +02:00
deprecated.h deprecate scm_immutable_{double_,}cell 2011-05-26 12:34:30 +02:00
deprecation.c warnings written to warning port 2011-12-05 18:11:24 +01:00
deprecation.h
dynl.c More descriptive error for dynamic-pointer 2011-03-31 12:34:47 +02:00
dynl.h Simplify the (system foreign) API. 2010-07-26 19:38:52 +02:00
dynwind.c deprecate scm_internal_dynamic_wind 2011-05-13 13:49:30 +02:00
dynwind.h deprecate scm_internal_dynamic_wind 2011-05-13 13:49:30 +02:00
eq.c Slight optimization for scm_equal_p 2011-02-14 20:32:01 +01:00
eq.h remove "discouraged" infrastructure 2010-08-08 14:15:47 +02:00
error.c interrupted syscalls run asyncs before throwing syserror 2010-10-10 11:25:50 +02:00
error.h
eval.c scm_is_false instead of == SCM_BOOL_F; also is_null, is_true, etc 2011-05-13 15:28:41 +02:00
eval.h add scm_call_{5,6} 2011-03-08 21:02:36 +01:00
evalext.c map and for-each in scheme 2011-05-05 23:07:37 +02:00
evalext.h
expand.c psyntax, primitive expander, and memoizer support for letrec* 2010-06-17 13:43:26 +02:00
expand.h scm_is_eq for SCM vals, not == or != 2011-05-13 13:49:32 +02:00
extensions.c fix --disable-modules build 2011-06-30 12:26:31 +02:00
extensions.h
feature.c Arrange to convert command-line arguments from the right encoding. 2011-12-15 01:31:23 +01:00
feature.h Arrange to convert command-line arguments from the right encoding. 2011-12-15 01:31:23 +01:00
filesys.c Fix `open' mode bits on GNU/Hurd. 2011-07-13 00:02:00 +02:00
filesys.h filesystem trickery to scm_i_relativize_path in filesys.c; bugfix. 2010-04-19 16:39:11 +02:00
fluids.c optional default-value arg to make-fluid 2011-11-23 12:53:38 +01:00
fluids.h optional default-value arg to make-fluid 2011-11-23 12:53:38 +01:00
foreign.c FFI: Properly unpack small integer return values in closure call. 2011-12-19 01:11:56 +01:00
foreign.h string->pointer and pointer->string have optional encoding arg 2011-04-01 13:31:26 +02:00
fports.c Default to using poll(2) in `fport_input_waiting'. 2011-10-15 16:27:18 +02:00
fports.h
frames.c more care regarding SCM_PACK and SCM_UNPACK 2011-05-13 15:28:08 +02:00
frames.h slight frames.h refactor 2011-10-19 11:55:27 +02:00
gc-malloc.c stdlib.h, not malloc.h 2011-12-22 09:54:24 -05:00
gc.c stdlib.h, not malloc.h 2011-12-22 09:54:24 -05:00
gc.h attempt to handle steady-state mallocations better 2011-11-29 21:36:31 +01:00
gdb_interface.h
gdbint.c Let `scm_mkstrport' allocate buffers on the caller's behalf. 2011-03-06 23:05:00 +01:00
gdbint.h
gen-scmconfig.c check for iconveh values at configure-time 2011-04-28 22:39:20 +02:00
gen-scmconfig.h.in check for iconveh values at configure-time 2011-04-28 22:39:20 +02:00
generalized-arrays.c add docs and tests for array->list 2010-04-07 21:04:37 +02:00
generalized-arrays.h
generalized-vectors.c fix generalized-vector-{ref,set!} for slices 2011-12-22 17:03:04 -05:00
generalized-vectors.h
gettext.c
gettext.h
goops.c fix segfault in goops if class fields are redefined 2011-10-21 00:22:50 +02:00
goops.h deprecate scm_struct_table 2011-05-01 23:01:14 +02:00
gsubr.c objcode type is an enumeration, not flags 2011-01-27 13:08:01 +01:00
gsubr.h Add `scm_t_subr' typedef (fix bug #23681). 2011-02-13 14:50:05 +01:00
guardians.c scm_is_false instead of == SCM_BOOL_F; also is_null, is_true, etc 2011-05-13 15:28:41 +02:00
guardians.h
guile-func-name-check Revert "[build] Rewrite guile-func-name-check in Scheme, adding features." 2010-08-27 13:05:23 -07:00
guile-snarf-docs.in Revert "[build] Rewrite guile-func-name-check in Scheme, adding features." 2010-08-27 13:05:23 -07:00
guile-snarf.awk.in
guile-snarf.in fix guile-snarf 2011-03-20 10:22:44 +01:00
guile.c install gmp memory functions that let libgc know about allocations 2011-12-02 11:57:25 +01:00
hash.c allow iflags to be constant expressions with typing-strictness==2 2011-05-13 13:48:07 +02:00
hash.h add hash functions for locale, latin1, and utf8 strings 2011-01-07 09:18:36 -08:00
hashtab.c fix read beyond end of hashtable size array in hashtab.c 2011-07-28 19:07:53 +02:00
hashtab.h add scm_hash_fn_get_handle_by_hash 2011-01-07 09:18:37 -08:00
hooks.c add scm_call_n, scm_c_run_hookn 2009-12-21 21:06:27 +01:00
hooks.h add scm_call_n, scm_c_run_hookn 2009-12-21 21:06:27 +01:00
i18n.c fix scm_gc_strdup invocation 2011-08-29 22:20:39 +02:00
i18n.h Improved support for Unicode title case in Guile's string and character APIs. 2009-12-22 00:19:56 -05:00
ieee-754.h
init.c Arrange to convert command-line arguments from the right encoding. 2011-12-15 01:31:23 +01:00
init.h threading / with_guile refactor to use more GC_stack_base 2011-03-25 13:01:51 +01:00
inline.c
inline.h remove scm_newcell_count, scm_newcell2_count 2011-05-26 15:58:42 +02:00
instructions.c instructions.c: threadsafe static var 2011-02-10 23:16:51 +01:00
instructions.h
ioext.c
ioext.h
iselect.h
keywords.c Add scm_from_latin1_keyword and scm_from_utf8_keyword 2011-03-09 01:14:43 -05:00
keywords.h Add scm_from_latin1_keyword and scm_from_utf8_keyword 2011-03-09 01:14:43 -05:00
libgettext.h
libguile.map
list.c more care regarding SCM_PACK and SCM_UNPACK 2011-05-13 15:28:08 +02:00
list.h factor copy-tree and cons-source out of eval.[ch] 2009-12-01 21:00:26 +01:00
load.c warnings written to warning port 2011-12-05 18:11:24 +01:00
load.h autocompile -> auto-compile 2011-02-13 15:06:11 +01:00
locale-categories.h
macros.c more care regarding SCM_PACK and SCM_UNPACK 2011-05-13 15:28:08 +02:00
macros.h clean up macros.[ch] 2010-01-05 15:33:46 +01:00
Makefile.am Placate a number of `syntax-check' verifications. 2012-01-05 23:38:10 +01:00
mallocs.c stdlib.h, not malloc.h 2011-12-22 09:54:24 -05:00
mallocs.h
memmove.c
memoize.c memoize: booleanify the rest arg 2011-11-16 13:33:52 +01:00
memoize.h remove scm_memoizer_p and scm_memoizer declarations 2010-05-27 11:34:48 +02:00
mkstemp.c
modules.c fix invocation of duplicate handlers for merge-generics 2011-07-07 13:02:45 +02:00
modules.h add scm_c_public_ref et al 2011-03-08 20:50:21 +01:00
net_db.c compile-time assertion in net_db uses constant expressions 2011-05-13 15:31:13 +02:00
net_db.h Add `getaddrinfo' and related procedures. 2010-02-14 20:56:47 +01:00
null-threads.c
null-threads.h Assorted `syntax-check' fixes. 2010-08-27 18:59:42 +02:00
numbers.c fix `free' of mpz_to_str 2011-12-02 19:18:05 +01:00
numbers.h install gmp memory functions that let libgc know about allocations 2011-12-02 11:57:25 +01:00
objcodes.c don't leak file descriptors when mmaping objcode 2012-01-07 02:07:09 +01:00
objcodes.h Add missing implicit SCM_API' for scm_c_make_objcode_slice'. 2011-11-22 00:22:46 +01:00
objprop.c fix scm_object_property_set_x for handles and weak tables 2011-05-01 23:01:09 +02:00
objprop.h
options.c (foo-options 'full) displays options doc in correct order 2010-10-01 10:07:47 +02:00
options.h
pairs.c allow iflags to be constant expressions with typing-strictness==2 2011-05-13 13:48:07 +02:00
pairs.h remove "discouraged" infrastructure 2010-08-08 14:15:47 +02:00
poll.c ice-9/poll: verify sizeof(struct pollfd) 2011-12-04 22:45:03 +01:00
poll.h add (ice-9 poll), a poll wrapper 2010-12-03 15:16:37 +01:00
ports.c current-input-port et al are srfi-39 parameters 2011-12-10 21:37:19 +01:00
ports.h add current-warning-port 2011-12-05 18:07:06 +01:00
posix.c fix scm_tmpfile leak 2011-08-17 23:54:58 +02:00
posix.h Move {total,current}-processor-count' outside of posix.c'. 2011-04-25 22:41:58 +02:00
print.c new print option escape-newlines, defaults to #t 2011-12-04 22:37:27 +01:00
print.h Factorize and optimize `write' for strings and characters. 2010-09-14 16:11:19 +02:00
private-gc.h
private-options.h new print option escape-newlines, defaults to #t 2011-12-04 22:37:27 +01:00
procprop.c Fix erroneous check in `set-procedure-properties!'. 2012-01-05 22:52:36 +01:00
procprop.h better debuggability for interpreted procedures 2011-11-15 23:36:07 +01:00
procs.c fix scm_setter 2011-03-08 20:53:17 +01:00
procs.h move subr implementation details to gsubr.[ch] 2010-01-05 16:15:14 +01:00
programs.c use scm_from_latin1_symboln for string literals and load-symbol 2011-01-07 09:18:41 -08:00
programs.h add program-sources-pre-retire to core and define frame-next-source 2010-10-08 12:31:56 +02:00
promises.c more care regarding SCM_PACK and SCM_UNPACK 2011-05-13 15:28:08 +02:00
promises.h promises are in their own file now 2009-12-01 21:00:26 +01:00
pthread-threads.h pthread-threads.h: only redirect to GC_pthread_sigmask if it is present 2011-04-03 22:03:56 +02:00
quicksort.i.c remove uses of trampolines within guile itself 2009-12-01 21:00:25 +01:00
r6rs-ports.c fix a couple of leaks 2011-08-18 12:53:28 +02:00
r6rs-ports.h Add get-string-n' and get-string-n!' for R6RS ports 2011-03-13 22:39:14 +01:00
random.c fix typos in the manual bits generated from source comments. 2011-02-09 22:28:49 +00:00
random.h Fix the range of `random' on 64-bit platforms 2010-08-01 21:53:29 +02:00
rdelim.c Fix buffer overflow in `read-line'. 2011-01-27 00:15:58 +01:00
rdelim.h
read.c use new scm_make_fluid_with_default 2011-11-23 12:54:09 +01:00
read.h Have `scm_scan_for_encoding ()' use GC-managed memory. 2009-11-14 16:59:25 +01:00
regex-posix.c multibyte regex error handling fix 2011-01-07 09:18:36 -08:00
regex-posix.h
remaining-docs-needed
root.c fix typos in the manual bits generated from source comments. 2011-02-09 22:28:49 +00:00
root.h decruftify scm_sys_protects 2009-12-05 12:38:43 +01:00
run-test
rw.c
rw.h
scmconfig.h.top
scmsigs.c O_CLOEXEC usage 2011-06-16 19:47:26 +02:00
scmsigs.h
script.c Arrange to convert command-line arguments from the right encoding. 2011-12-15 01:31:23 +01:00
script.h Arrange to convert command-line arguments from the right encoding. 2011-12-15 01:31:23 +01:00
simpos.c simpos tweak 2010-11-19 15:22:43 +01:00
simpos.h
smob.c stdlib.h, not malloc.h 2011-12-22 09:54:24 -05:00
smob.h Add `scm_t_subr' typedef (fix bug #23681). 2011-02-13 14:50:05 +01:00
snarf.h Remove extraneous semicolon from `SCM_STATIC_SUBR_OBJVECT' to prevent ISO C90 warning. 2011-09-19 22:02:49 +02:00
socket.c scm_is_false instead of == SCM_BOOL_F; also is_null, is_true, etc 2011-05-13 15:28:41 +02:00
socket.h
sort.c Fix likely crash in `stable-sort!' 2011-06-09 22:11:02 +02:00
sort.h
srcprop.c threadsafe access to source properties weak hash table 2011-05-24 22:46:09 +02:00
srcprop.h read + source properties simplification 2011-05-24 22:41:11 +02:00
srfi-1.c fix take-right and drop-right for improper lists 2011-08-12 23:26:15 +02:00
srfi-1.h fix take-right and drop-right for improper lists 2011-08-12 23:26:15 +02:00
srfi-4.c remove SCM_HAVE_T_INT64, SCM_HAVE_T_UINT64 2010-07-26 15:00:49 +02:00
srfi-4.h remove SCM_HAVE_T_INT64, SCM_HAVE_T_UINT64 2010-07-26 15:00:49 +02:00
srfi-13.c Make VM string literals immutable. 2011-03-20 23:34:42 +01:00
srfi-13.h fix string-filter and string-delete argument order 2010-11-19 17:08:36 +01:00
srfi-14.c Make VM string literals immutable. 2011-03-20 23:34:42 +01:00
srfi-14.h
srfi-14.i.c Update charsets to Unicode 6.0.0 2010-10-14 18:21:28 -07:00
srfi-60.c move srfi-1 and srfi-60 C impl to libguile, without public C api 2010-09-12 23:29:11 +02:00
srfi-60.h move srfi-1 and srfi-60 C impl to libguile, without public C api 2010-09-12 23:29:11 +02:00
stackchk.c scm_report_stack_overflow eventually resets scm_stack_checking_enabled_p 2010-10-01 16:36:34 +02:00
stackchk.h c stack overflow checked for, once more 2010-10-01 16:47:39 +02:00
stacks.c simplify narrow_stack. 2011-07-29 09:17:47 +02:00
stacks.h replace frame implementation with VM frames 2009-12-03 14:42:51 +01:00
stime.c clocktime freebsd portability 2011-05-20 17:41:06 +02:00
stime.h scm_c_get_internal_run_time is more precise 2011-05-04 20:19:11 +02:00
strerror.c
strings.c Make scm_nullstr mutable 2012-01-07 04:46:46 -05:00
strings.h Placate a number of `syntax-check' verifications. 2012-01-05 23:38:10 +01:00
strorder.c provide missing prototypes 2010-01-07 23:49:15 +01:00
strorder.h
strports.c Make VM string literals immutable. 2011-03-20 23:34:42 +01:00
strports.h Have string ports honor `%default-port-encoding'. 2010-01-07 11:10:35 +01:00
struct.c deprecate scm_struct_table 2011-05-01 23:01:14 +02:00
struct.h deprecate scm_struct_table 2011-05-01 23:01:14 +02:00
symbols.c really threadsafe access to symbol table 2011-05-23 22:24:27 +02:00
symbols.h add scm_from_{latin1,utf8}_symbol{n,} 2011-01-07 09:18:36 -08:00
tags.h allow iflags to be constant expressions with typing-strictness==2 2011-05-13 13:48:07 +02:00
threads.c Placate a number of `syntax-check' verifications. 2012-01-05 23:38:10 +01:00
threads.h optional default-value arg to make-fluid 2011-11-23 12:53:38 +01:00
throw.c fix prompt and abort with the boot evaluator 2011-03-29 17:41:31 +02:00
throw.h deprecate the-last-stack 2010-06-19 13:43:33 +02:00
trees.c remove libguile/lang.h, deprecate %nil (in favor of #nil) 2010-04-09 14:26:31 +02:00
trees.h factor copy-tree and cons-source out of eval.[ch] 2009-12-01 21:00:26 +01:00
unidata_to_charset.pl copyright dates 2010-04-03 06:46:23 -07:00
uniform.c fix typos in the manual bits generated from source comments. 2011-02-09 22:28:49 +00:00
uniform.h
validate.h SCM_VALIDATE_SMOB uses SCM_SMOB_PREDICATE 2009-12-08 23:13:20 +01:00
values.c tweak to internal scm_i_extract_values_2 2011-02-14 20:39:31 +01:00
values.h Added internal C function to extract from values object 2011-02-14 20:29:54 +01:00
variable.c scm_is_eq for SCM vals, not == or != 2011-05-13 13:49:32 +02:00
variable.h variable-unset! 2010-12-07 13:21:01 +01:00
vectors.c correct use of SCM2PTR in SCM_I_REGISTER_DISAPPEARING_LINK forms 2011-05-13 15:29:26 +02:00
vectors.h fix vector-ref and vector-set opcodes for weak vectors 2010-04-01 09:05:59 +02:00
version.c version.h has SCM_EFFECTIVE_VERSION; effective-version uses that 2010-03-16 21:20:29 +01:00
version.h.in [build] Create libguile/version.h using the configure script. 2010-08-18 19:48:12 +02:00
vm-engine.c VM: Keep jump table address in a register. 2011-07-06 12:50:32 +02:00
vm-engine.h VM: Keep jump table address in a register. 2011-07-06 12:50:32 +02:00
vm-expand.h
vm-i-loader.c VM tweaks 2011-05-05 14:04:23 +02:00
vm-i-scheme.c Use alignof_type' instead of alignof'. 2011-12-14 23:46:16 +01:00
vm-i-system.c optional default-value arg to make-fluid 2011-11-23 12:53:38 +01:00
vm.c Complete cross-compilation support. 2011-11-22 00:22:46 +01:00
vm.h Fix prototype of `scm_the_vm'. 2011-02-13 14:45:47 +01:00
vports.c Fix the `put-bytevector' tests. 2010-09-03 16:23:02 +02:00
vports.h
weaks.c correct use of SCM2PTR in SCM_I_REGISTER_DISAPPEARING_LINK forms 2011-05-13 15:29:26 +02:00
weaks.h more care regarding SCM_PACK and SCM_UNPACK 2011-05-13 15:28:08 +02:00
win32-socket.c
win32-socket.h
win32-uname.c
win32-uname.h