1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-24 12:20:20 +02:00
guile/libguile
Mark H Weaver 9ec1573d2b Don't call scm_lock_mutex and scm_unlock_mutex via pointer of wrong type
* libguile/threads.c (lock_mutex_return_void, unlock_mutex_return_void):
  New static functions that simply call scm_lock_mutex and
  scm_unlock_mutex, respectively, but return void instead of SCM.

  (scm_dynwind_lock_mutex): Pass unlock_mutex_return_void to
  scm_dynwind_unwind_handler_with_scm, and lock_mutex_return_void to
  scm_dynwind_rewind_handler_with_scm.  Previously, we passed
  scm_unlock_mutex and scm_lock_mutex (which return SCM), but the
  scm_dynwind_* functions expect pointers to functions which return
  void.  When SCM is of type union, this changes the calling conventions
  of the functions on some platforms (e.g. GCC 4.5.2 and 4.5.3 on x86).
2011-05-22 15:45:28 -04:00
..
.gitignore libguile gitignore 2010-09-12 23:39:52 +02:00
__scm.h remove SCM_EXIT_SUCCESS and SCM_EXIT_FAILURE definitions 2011-05-15 15:34:16 +02:00
_scm.h rename scm_async_click() to scm_async_tick(); privatize SCM_ASYNC_TICK 2011-05-15 15:34:16 +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 code that causes warnings on gcc 4.6 2011-03-17 12:39:53 +01:00
arrays.h Fix the visibility of a few of internal symbols. 2010-05-28 17:02:13 +02:00
async.c rename scm_async_click() to scm_async_tick(); privatize SCM_ASYNC_TICK 2011-05-15 15:34:16 +02:00
async.h rename scm_async_click() to scm_async_tick(); privatize SCM_ASYNC_TICK 2011-05-15 15:34:16 +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 typos in the manual bits generated from source comments. 2011-02-09 22:28:49 +00: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 remove SCM_I_SIZE limits defines 2011-05-15 15:34:15 +02:00
bytevectors.h bytevectors have internal parent field 2011-05-07 14:57:15 +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 move SCM_FLUSH_REGISTER_WINDOWS to continuations.c 2011-05-15 15:34:15 +02:00
continuations.h continuations return multiple values on the stack 2010-02-08 22:59:25 +01:00
control.c more care regarding SCM_PACK and SCM_UNPACK 2011-05-13 15:28:08 +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 remove #define STACK_CHECKING from __scm.h. 2011-05-15 15:34:15 +02:00
debug.h remove all deprecated code 2011-05-12 14:01:26 +02:00
deprecated.c merge strictness branch from 2.0 2011-05-13 15:45:43 +02:00
deprecated.h scm_wta_* procedures replace SCM_WTA_* macros 2011-05-15 15:34:16 +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 scm_wta_* procedures replace SCM_WTA_* macros 2011-05-15 15:34:16 +02: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 SCM_ASSERT to error.h 2011-05-15 15:34:16 +02:00
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 remove all deprecated code 2011-05-12 14:01:26 +02:00
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 threadsafety in deprecation, extensions 2010-08-28 12:15:53 -07:00
extensions.h
feature.c remove mention of cheap continuations 2011-05-15 15:34:15 +02:00
feature.h
filesys.c Compile more file system related procedures when `--disable-posix'. 2011-04-25 22:52: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 scm_is_eq for SCM vals, not == or != 2011-05-13 13:49:32 +02:00
fluids.h rename make-undefined-fluid to make-unbound-fluid 2010-12-17 13:10:03 +01:00
foreign.c Merge remote-tracking branch 'origin/stable-2.0' 2011-05-09 00:13:04 +02:00
foreign.h string->pointer and pointer->string have optional encoding arg 2011-04-01 13:31:26 +02:00
fports.c Allow compilation with `--disable-posix'. 2011-04-15 00:09:16 +02:00
fports.h
frames.c more care regarding SCM_PACK and SCM_UNPACK 2011-05-13 15:28:08 +02:00
frames.h more care regarding SCM_PACK and SCM_UNPACK 2011-05-13 15:28:08 +02:00
gc-malloc.c remove all deprecated code 2011-05-12 14:01:26 +02:00
gc.c measure time spent in gc 2011-05-04 20:19:52 +02:00
gc.h remove all deprecated code 2011-05-12 14:01:26 +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 remove mention of GUILE_DEBUG_FREELIST 2011-05-15 15:34:15 +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 scm_wta_* procedures replace SCM_WTA_* macros 2011-05-15 15:34:16 +02:00
goops.h scm_wta_* procedures replace SCM_WTA_* macros 2011-05-15 15:34:16 +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 weak_bucket_assoc tweak 2011-05-13 15:31:02 +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 i18n error return type fix 2011-05-13 15:33:48 +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 remove #define STACK_CHECKING from __scm.h. 2011-05-15 15:34:15 +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 PTR2SCM and SCM2PTR in inline.h 2011-05-13 15:31:15 +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 Use a linker version script for libguile. 2009-08-09 23:40:11 +02:00
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 scm_is_false instead of == SCM_BOOL_F; also is_null, is_true, etc 2011-05-13 15:28:41 +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 build support for detecting clock_gettime, with -lrt if needed 2011-05-04 20:19:11 +02:00
mallocs.c Merge branch 'master' into boehm-demers-weiser-gc 2009-08-18 00:06:45 +02:00
mallocs.h
memmove.c
memoize.c more care regarding SCM_PACK and SCM_UNPACK 2011-05-13 15:28:08 +02:00
memoize.h remove scm_memoizer_p and scm_memoizer declarations 2010-05-27 11:34:48 +02:00
mkstemp.c
modules.c more care regarding SCM_PACK and SCM_UNPACK 2011-05-13 15:28:08 +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 scm_wta_* procedures replace SCM_WTA_* macros 2011-05-15 15:34:16 +02:00
numbers.h Fix the R6RS exact-integer-sqrt and import into core guile 2011-04-09 16:11:49 -04:00
objcodes.c bytevectors have internal parent field 2011-05-07 14:57:15 +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 merge strictness branch from 2.0 2011-05-13 15:45:43 +02:00
ports.h remove all deprecated code 2011-05-12 14:01:26 +02:00
posix.c scm_is_false instead of == SCM_BOOL_F; also is_null, is_true, etc 2011-05-13 15:28:41 +02:00
posix.h Move {total,current}-processor-count' outside of posix.c'. 2011-04-25 22:41:58 +02:00
print.c scm_wta_* procedures replace SCM_WTA_* macros 2011-05-15 15:34:16 +02:00
print.h Factorize and optimize `write' for strings and characters. 2010-09-14 16:11:19 +02:00
private-gc.h Remove deprecated variables/macros from the GC headers. 2009-08-28 21:02:42 +02:00
private-options.h implement r6rs hungry escaped EOL 2011-01-21 09:24:32 +01:00
procprop.c remove all deprecated code 2011-05-12 14:01:26 +02:00
procprop.h remove all deprecated code 2011-05-12 14:01:26 +02:00
procs.c scm_wta_* procedures replace SCM_WTA_* macros 2011-05-15 15:34:16 +02: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 merge strictness branch from 2.0 2011-05-13 15:45:43 +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 merge strictness branch from 2.0 2011-05-13 15:45:43 +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 Add Unicode strings and symbols 2009-08-08 02:35:00 -07:00
rw.h
scmconfig.h.top
scmsigs.c remove a bunch of needless scm_permanent_object calls 2009-12-05 11:32:50 +01:00
scmsigs.h
script.c Update Gnulib to v0.0-5158-g7d06b32; remove strcase' and version-etc-fsf'. 2011-04-25 23:59:37 +02:00
script.h
simpos.c simpos tweak 2010-11-19 15:22:43 +01:00
simpos.h
smob.c objcode type is an enumeration, not flags 2011-01-27 13:08:01 +01:00
smob.h Add `scm_t_subr' typedef (fix bug #23681). 2011-02-13 14:50:05 +01:00
snarf.h fix static allocation with debug_typing_strictness==2 2011-05-13 13:48:07 +02:00
socket.c merge strictness branch from 2.0 2011-05-13 15:45:43 +02:00
socket.h
sort.c remove libguile/lang.h, deprecate %nil (in favor of #nil) 2010-04-09 14:26:31 +02:00
sort.h
srcprop.c scm_is_false instead of == SCM_BOOL_F; also is_null, is_true, etc 2011-05-13 15:28:41 +02:00
srcprop.h deprecate scm_whash API 2011-05-01 20:55:50 +02:00
srfi-1.c map and for-each in scheme 2011-05-05 23:07:37 +02:00
srfi-1.h map and for-each in scheme 2011-05-05 23:07:37 +02:00
srfi-4.c bytevectors have internal parent field 2011-05-07 14:57:15 +02:00
srfi-4.h remove all deprecated code 2011-05-12 14:01:26 +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 remove #define STACK_CHECKING from __scm.h. 2011-05-15 15:34:15 +02:00
stackchk.h remove #define STACK_CHECKING from __scm.h. 2011-05-15 15:34:15 +02:00
stacks.c scm_is_eq for SCM vals, not == or != 2011-05-13 13:49:32 +02:00
stacks.h replace frame implementation with VM frames 2009-12-03 14:42:51 +01:00
stime.c scm_c_get_internal_run_time is more precise 2011-05-04 20:19:11 +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 remove all deprecated code 2011-05-12 14:01:26 +02:00
strings.h remove all deprecated code 2011-05-12 14:01:26 +02: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 Slightly optimize `gensym'. 2011-03-06 23:05:00 +01:00
symbols.h add scm_from_{latin1,utf8}_symbol{n,} 2011-01-07 09:18:36 -08:00
tags.h SCM is either a union or scm_t_bits 2011-05-15 15:34:15 +02:00
threads.c Don't call scm_lock_mutex and scm_unlock_mutex via pointer of wrong type 2011-05-22 15:45:28 -04:00
threads.h remove SCM_THREAD_SWITCHING_CODE 2011-05-15 15:34:16 +02:00
throw.c use of EXIT_SUCCESS and EXIT_FAILURE 2011-05-15 15:34:16 +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 scm_wta_* procedures replace SCM_WTA_* macros 2011-05-15 15:34:16 +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 more care regarding SCM_PACK and SCM_UNPACK 2011-05-13 15:28:08 +02:00
vm-engine.h scm_is_eq for SCM vals, not == or != 2011-05-13 13:49: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 merge strictness branch from 2.0 2011-05-13 15:45:43 +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-dirent.c
win32-dirent.h
win32-socket.c Cast the input to isalpha et al to integer 2009-08-28 21:19:05 -07:00
win32-socket.h
win32-uname.c
win32-uname.h