1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-07 18:30:25 +02:00
Commit graph

5014 commits

Author SHA1 Message Date
Marius Vollmer
ad3d5a65c8 *** empty log message *** 2005-02-27 23:52:04 +00:00
Marius Vollmer
1c80707c55 (scm_setsockopt): Handle IP_ADD_MEMBERSHIP and IP_DROP_MEMBERSHIP
options.  Also, reorganized the code a bit for cleanliness.  Thanks to
Greg Troxel!
2005-02-27 23:50:30 +00:00
Mikael Djurfeldt
73a90115e6 Bugfix: Include <libguile.h> outside of the extern "C"
block.
2005-02-27 00:04:56 +00:00
Marius Vollmer
5d2cb3abcf *** empty log message *** 2005-02-25 22:36:07 +00:00
Marius Vollmer
5b58246699 (scm_i_rehash): Remove elements from old bucket vector
so that no two weak alist vectors share a spine.
(scm_hash_fn_create_handle_x): Deal with a possible rehashing
during GC before inserting the new alist cell.
2005-02-25 22:35:26 +00:00
Marius Vollmer
c2f21af5f8 (scm_i_rehash): Remove elements from old bucket vector so that no two
weak alist vectors share a spine.
2005-02-25 21:22:44 +00:00
Marius Vollmer
838c4126f5 *** empty log message *** 2005-02-23 17:24:38 +00:00
Marius Vollmer
bc6580eb22 * hashtab.c (scm_i_rehash): Cope with the case that a GC modifies
the hashtable.
(scm_hash_fn_create_handle_x): Likewise.
* vectors.h (SCM_I_SET_WVECT_TYPE): New, for use in scm_i_rehash.
2005-02-23 17:24:19 +00:00
Kevin Ryde
7d92d3d0da Add a copyright year. 2005-02-14 23:15:08 +00:00
Kevin Ryde
a9ad484720 In scm_difference, amend comment about normbig. 2005-02-14 23:14:35 +00:00
Mikael Djurfeldt
29fed193d3 (prototype_to_type): Bugfix: Don't compare prototype to
the prototypical examples mentioned in the old reference manual.
Instead keep the old semantics of dispatching on type.  (Yes, this
is extremely ugly, but the whole point of keeping the deprecated
interface is not to break old code.)
2005-02-10 11:15:50 +00:00
Mikael Djurfeldt
9cc490600c (SCM_ARRAY_DIMS): Rename scm_i_attay_dims -->
scm_i_array_dims.
2005-02-08 18:58:37 +00:00
Kevin Ryde
8447f463ba *** empty log message *** 2005-01-27 23:04:05 +00:00
Kevin Ryde
788aca275f (scm_ash): Rewrite using shifts, much faster than
integer-expt and multiply/divide.  Inexacts and fractions no longer
supported (they happened to work before for left shifts, but not
right).  Don't really need inexacts and fractions, since ash is
documented as a "bitwise operation", and all the rest of those only
take exact integers.
2005-01-27 22:51:22 +00:00
Han-Wen Nienhuys
856fca7e70 * gc-card.c (scm_i_card_statistics): map structs, closures and
subrs to one tag.

* gc-card.c (scm_i_tag_name):  new function.
(scm_i_card_statistics): new function.
2005-01-27 22:50:09 +00:00
Han-Wen Nienhuys
73a4c24e41 * gc.c (s_scm_gc_live_object_stats): return alist, not hashtable.
(tag_table_to_type_alist): ignore unknown types.

* gc.c (s_scm_gc_live_object_stats): new GUILE callable: return
statistics on the number of live objects of each type.

* gc-card.c (scm_i_tag_name):  new function.
(scm_i_card_statistics): new function.
2005-01-27 22:44:43 +00:00
Han-Wen Nienhuys
8b378a5f48 *** empty log message *** 2005-01-27 22:20:13 +00:00
Han-Wen Nienhuys
1367aa5e91 * gc.c (s_scm_gc_live_object_stats): return alist, not hashtable.
* gc-segment.c (scm_i_all_segments_statistics): new function.
(scm_i_heap_segment_statistics): new function

* gc.c (s_scm_gc_live_object_stats): new GUILE callable: return
statistics on the number of live objects of each type.

* gc-card.c (scm_i_tag_name):  new function.
(scm_i_card_statistics): new function.
2005-01-27 22:19:49 +00:00
Marius Vollmer
76da80e788 Reverted changed from 2005/01/24 19:14:54, which was a commit to the
wrong branch.  Sorry.
2005-01-24 23:41:14 +00:00
Marius Vollmer
a54a94b397 Threading changes. 2005-01-24 19:14:54 +00:00
Kevin Ryde
3843f734d1 (scm_sigaction_for_thread): Use scm_to_long for
sa_handler, needs to be a long on 64-bit systems where int is only 32
bits.
2005-01-24 00:03:00 +00:00
Kevin Ryde
8b3747f9c6 (scm_i_init_rstate): Compare w to -1 not 0xffffffffUL, now
that it's an scm_t_int32.  Otherwise gcc 3.4 says it's always false on
a 64-bit system.
2005-01-23 23:58:43 +00:00
Kevin Ryde
333db3b87f *** empty log message *** 2005-01-23 22:10:12 +00:00
Kevin Ryde
0b91f1db7a (scm_flock): Update docstring from manual. 2005-01-23 22:09:14 +00:00
Kevin Ryde
41b74b7dbb (scm_setlocale): Force errno=EINVAL for an error, since
POSIX and C99 don't document errno being set.  Reported by Bruno
Haible.
2005-01-23 21:59:09 +00:00
Marius Vollmer
0eeb261138 *** empty log message *** 2005-01-20 15:58:06 +00:00
Marius Vollmer
6fccb8805c (obarray_enter, obarray_replace): Call SCM_HASHTABLE_INCREMENT when
adding a new entry.
2005-01-20 15:57:50 +00:00
Marius Vollmer
88f59e537d *** empty log message *** 2005-01-20 14:41:14 +00:00
Marius Vollmer
38c9cccb96 Include goops.h for the scm_class_of prototype. 2005-01-20 14:40:46 +00:00
Marius Vollmer
937770822e (hashtable_size, HASHTABLE_SIZE_N): Restrict hashtable sizes to be
smaller than the maximum lengths of vectors.
2005-01-20 14:39:49 +00:00
Marius Vollmer
219b286864 *** empty log message *** 2005-01-18 15:00:52 +00:00
Marius Vollmer
539d541073 * objects.h, objects.c, goops.c, goops.h (scm_class_boolean,
scm_class_char, scm_class_pair, scm_class_procedure,
scm_class_string, scm_class_symbol,
scm_class_procedure_with_setter, scm_class_primitive_generic,
scm_class_vector, scm_class_null, scm_class_real,
scm_class_complex, scm_class_integer, scm_class_fraction,
scm_class_unknown, scm_port_class, scm_smob_class,
scm_no_applicable_method, scm_class_of): Moved from objects to
goops since they are only useable once goops has been loaded.
(scm_classes_initialized): Removed.
(scm_class_of): Do not check it.
(create_standard_classes): Do not set it.
2005-01-18 14:58:39 +00:00
Marius Vollmer
9511876f49 Include "libguile/goops.h". 2005-01-18 13:59:04 +00:00
Marius Vollmer
50472546d5 *** empty log message *** 2005-01-17 18:54:58 +00:00
Marius Vollmer
526982f570 * objects.h, objects.c (scm_classes_initialized): New.
(scm_class_of): Signal error when scm_classes_initialized is zero.
* goops.c (create_standard_classes): Set scm_classes_initialized
to one.
2005-01-17 18:11:43 +00:00
Marius Vollmer
009c6b9c89 *** empty log message *** 2005-01-17 17:22:33 +00:00
Marius Vollmer
f160e70907 (scm_random_solid_sphere_x): Use scm_c_generalized_vector_length
instead of scm_uniform_vector_length.
2005-01-17 17:22:22 +00:00
Marius Vollmer
7719cbe989 *** empty log message *** 2005-01-16 17:21:28 +00:00
Marius Vollmer
436be13ae8 (scm_compile_shell_switches): Removed debugging output. 2005-01-16 17:20:36 +00:00
Kevin Ryde
1ec44fed86 *** empty log message *** 2005-01-15 00:04:54 +00:00
Kevin Ryde
6efaeb3567 (scm_random_solid_sphere_x): Update docstring from manual. 2005-01-15 00:03:53 +00:00
Kevin Ryde
ba6e7231e4 (scm_logtest, scm_logbit_p, scm_integer_expt): Update
docstrings from manual.
2005-01-15 00:01:40 +00:00
Marius Vollmer
0b5a0521d1 *** empty log message *** 2005-01-14 18:27:12 +00:00
Marius Vollmer
00c17d4526 (scm_take_u64vector,
scm_array_handle_u64_elements,
scm_array_handle_u64_writable_elements, scm_u64vector_elements,
scm_u64vector_writable_elements): Do not define when scm_t_uint64
is not available.
(scm_take_s64vector, scm_array_handle_s64_elements,
scm_array_handle_s64_writable_elements, scm_s64vector_elements,
scm_s64vector_writable_elements): Likewise for scm_t_int64.
(uvec_sizes, uvec_print, uvec_equalp): Use SCM bignums when
scm_t_int64/scm_t_uint64 are not available.
(uvec_mark): New, to mark the bignums.
(alloc_uvec): Initialize bignums.
(uvec_fast_ref): Return bignums directly.
(scm_uint64_min, scm_uint64_max, scm_int64_min, scm_int64_max,
assert_exact_integer): New.
(uvec_fast_set): Use them to validate the bignums.
(scm_init_srfi_4): Set mark function of smob when needed.
Initialize scm_uint64_min, scm_uint64_max, scm_int64_min,
scm_int64_max.
2005-01-14 18:19:13 +00:00
Marius Vollmer
55fcbb966b Don't check for definedness of SCM_HAVE_T_INT64, check
its value.
2005-01-14 18:01:31 +00:00
Marius Vollmer
6e4cd850f6 *** empty log message *** 2005-01-14 16:24:17 +00:00
Marius Vollmer
39e707a130 (sym_at, sym_atat, sym_main, all_symbols): New.
(scm_compile_shell_switches): Use them to recognize and convert
1.4 "-e" syntax.
2005-01-14 16:20:36 +00:00
Marius Vollmer
3b698afe02 *** empty log message *** 2005-01-12 11:11:45 +00:00
Marius Vollmer
fe78c51aa2 Turn all deprecated features that once were macros but are now
functions back into macros.
2005-01-12 11:10:02 +00:00
Marius Vollmer
49086691f6 *** empty log message *** 2005-01-11 17:45:14 +00:00