1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-10 14:00:21 +02:00
guile/libguile
Ludovic Courtès 46d80cae08 FFI: Hold a weak reference to the CIF made by `procedure->pointer'.
* libguile/foreign.c (scm_procedure_to_pointer): Keep a weak reference
  to CIF so that it is not reclaimed before POINTER.  Before that it
  could be reclaimed and typically reused to store the CIF of another
  procedure with the same arity, leading to obscure wrong-type-arg
  errors.
2011-11-16 23:53:58 +01: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 fix a couple of leaks 2011-08-18 12:53:28 +02: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 scm_is_false instead of == SCM_BOOL_F; also is_null, is_true, etc 2011-05-13 15:28:41 +02: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 remove a bunch of needless scm_permanent_object calls 2009-12-05 11:32:50 +01:00
feature.h
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 fix initial values of reallocated fluids 2011-06-16 19:39:58 +02:00
fluids.h rename make-undefined-fluid to make-unbound-fluid 2010-12-17 13:10:03 +01:00
foreign.c FFI: Hold a weak reference to the CIF made by `procedure->pointer'. 2011-11-16 23:53:58 +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 Fix compilation with `--enable-debug-malloc'. 2011-10-22 13:29:09 +02:00
gc.c fix scm_i_tag_name 2011-07-28 17:52:29 +02:00
gc.h Fix the visibility of a few of internal symbols. 2010-05-28 17:02:13 +02: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 Reinstate backward-compatible `scm_array_p ()'. 2009-09-24 00:06:54 +02:00
generalized-vectors.c scm_is_eq for SCM vals, not == or != 2011-05-13 13:49:32 +02: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
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 Initialize `get_internal_run_time' before it is used. 2011-10-22 13:25:11 +02: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 avoid duplicate stats when searching for files in a path 2011-08-03 12:43:29 +02: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 add a site dir to %load-compiled-path 2011-07-21 10:36:13 +02:00
mallocs.c
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 New functions scm_is_exact and scm_is_inexact 2011-10-09 20:54:37 -07:00
numbers.h New functions scm_is_exact and scm_is_inexact 2011-10-09 20:54:37 -07:00
objcodes.c fix a couple of leaks 2011-08-18 12:53:28 +02:00
objcodes.h for mmap objcodes, store the fd in the third word, as a scheme int 2011-01-27 13:11:02 +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 fix bugs in primitive-poll 2010-12-13 20:25:36 +01:00
poll.h add (ice-9 poll), a poll wrapper 2010-12-03 15:16:37 +01:00
ports.c ports.c uninitialized static SCM values are #f, not 0 2011-05-13 15:31:09 +02:00
ports.h ports.c safely accesses the port weak hash table 2011-02-10 23:16:52 +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 more care regarding SCM_PACK and SCM_UNPACK 2011-05-13 15:28:08 +02: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 implement r6rs hungry escaped EOL 2011-01-21 09:24:32 +01:00
procprop.c better debuggability for interpreted procedures 2011-11-15 23:36:07 +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 fix reading of #||||# 2011-10-05 20:41:15 +02: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 fix a leak on startup from script.c 2011-07-29 09:10:37 +02:00
script.h
simpos.c simpos tweak 2010-11-19 15:22:43 +01:00
simpos.h
smob.c safely access the trampoline weak map 2011-05-24 21:09:24 +02: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 Add char-set debugging function 2009-09-03 08:29:45 -07:00
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 fix scm_to_latin1_stringn for substrings 2011-09-10 11:38:25 -07:00
strings.h Make VM string literals immutable. 2011-03-20 23:34:42 +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 Revert "Fix lock ordering in fat_mutex_lock' to match that of do_thread_exit'." 2011-07-01 22:46:32 +02:00
threads.h fix initial values of reallocated fluids 2011-06-16 19:39:58 +02: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 fix bitvectors after the array handle refactoring 2009-09-18 16:27:32 +02:00
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 more care regarding SCM_PACK and SCM_UNPACK 2011-05-13 15:28:08 +02:00
vm-i-system.c more care regarding SCM_PACK and SCM_UNPACK 2011-05-13 15:28:08 +02:00
vm.c fix a couple of leaks 2011-08-18 12:53:28 +02: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