mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-05-02 13:00:26 +02:00
Fix --without-threads and SCM_DEBUG_TYPING_STRICTNESS==2 builds.
* libguile/hashtab.c (scm_hashv_ref, scm_hashv_set_x, scm_hashv_remove_x, scm_hash_ref, scm_hash_set_x, scm_hash_remove_x): * libguile/strports.c (scm_mkstrport): * libguile/weak-vector.c (weak_vector_ref): Add missing SCM_UNPACK. * libguile/ports.c (lock_port, unlock_port): Cast MUTEX to the expected type.
This commit is contained in:
parent
5270bb5bdb
commit
789dd40b8b
4 changed files with 15 additions and 12 deletions
|
@ -1,5 +1,5 @@
|
|||
/* Copyright (C) 1995, 1996, 1998, 1999, 2000, 2001, 2003, 2004, 2006,
|
||||
* 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
|
||||
* 2008, 2009, 2010, 2011, 2012, 2013 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
|
||||
|
@ -524,7 +524,8 @@ SCM_DEFINE (scm_hashv_ref, "hashv-ref", 2, 1, 0,
|
|||
|
||||
if (SCM_WEAK_TABLE_P (table))
|
||||
return scm_c_weak_table_ref (table, scm_ihashv (key, -1),
|
||||
assv_predicate, SCM_PACK (key), dflt);
|
||||
assv_predicate,
|
||||
(void *) SCM_UNPACK (key), dflt);
|
||||
|
||||
return scm_hash_fn_ref (table, key, dflt,
|
||||
(scm_t_hash_fn) scm_ihashv,
|
||||
|
@ -544,7 +545,7 @@ SCM_DEFINE (scm_hashv_set_x, "hashv-set!", 3, 0, 0,
|
|||
if (SCM_WEAK_TABLE_P (table))
|
||||
{
|
||||
scm_c_weak_table_put_x (table, scm_ihashv (key, -1),
|
||||
assv_predicate, SCM_PACK (key),
|
||||
assv_predicate, (void *) SCM_UNPACK (key),
|
||||
key, val);
|
||||
return val;
|
||||
}
|
||||
|
@ -566,7 +567,7 @@ SCM_DEFINE (scm_hashv_remove_x, "hashv-remove!", 2, 0, 0,
|
|||
if (SCM_WEAK_TABLE_P (table))
|
||||
{
|
||||
scm_c_weak_table_remove_x (table, scm_ihashv (key, -1),
|
||||
assv_predicate, SCM_PACK (key));
|
||||
assv_predicate, (void *) SCM_UNPACK (key));
|
||||
/* See note in hashq-remove!. */
|
||||
return SCM_BOOL_F;
|
||||
}
|
||||
|
@ -630,7 +631,8 @@ SCM_DEFINE (scm_hash_ref, "hash-ref", 2, 1, 0,
|
|||
|
||||
if (SCM_WEAK_TABLE_P (table))
|
||||
return scm_c_weak_table_ref (table, scm_ihash (key, -1),
|
||||
assoc_predicate, SCM_PACK (key), dflt);
|
||||
assoc_predicate,
|
||||
(void *) SCM_UNPACK (key), dflt);
|
||||
|
||||
return scm_hash_fn_ref (table, key, dflt,
|
||||
(scm_t_hash_fn) scm_ihash,
|
||||
|
@ -651,7 +653,7 @@ SCM_DEFINE (scm_hash_set_x, "hash-set!", 3, 0, 0,
|
|||
if (SCM_WEAK_TABLE_P (table))
|
||||
{
|
||||
scm_c_weak_table_put_x (table, scm_ihash (key, -1),
|
||||
assoc_predicate, SCM_PACK (key),
|
||||
assoc_predicate, (void *) SCM_UNPACK (key),
|
||||
key, val);
|
||||
return val;
|
||||
}
|
||||
|
@ -674,7 +676,7 @@ SCM_DEFINE (scm_hash_remove_x, "hash-remove!", 2, 0, 0,
|
|||
if (SCM_WEAK_TABLE_P (table))
|
||||
{
|
||||
scm_c_weak_table_remove_x (table, scm_ihash (key, -1),
|
||||
assoc_predicate, SCM_PACK (key));
|
||||
assoc_predicate, (void *) SCM_UNPACK (key));
|
||||
/* See note in hashq-remove!. */
|
||||
return SCM_BOOL_F;
|
||||
}
|
||||
|
|
|
@ -1353,13 +1353,13 @@ SCM_DEFINE (scm_set_port_conversion_strategy_x, "set-port-conversion-strategy!",
|
|||
static void
|
||||
lock_port (void *mutex)
|
||||
{
|
||||
scm_i_pthread_mutex_lock (mutex);
|
||||
scm_i_pthread_mutex_lock ((scm_i_pthread_mutex_t *) mutex);
|
||||
}
|
||||
|
||||
static void
|
||||
unlock_port (void *mutex)
|
||||
{
|
||||
scm_i_pthread_mutex_unlock (mutex);
|
||||
scm_i_pthread_mutex_unlock ((scm_i_pthread_mutex_t *) mutex);
|
||||
}
|
||||
|
||||
void
|
||||
|
|
|
@ -297,7 +297,7 @@ scm_mkstrport (SCM pos, SCM str, long modes, const char *caller)
|
|||
z = scm_c_make_port_with_encoding (scm_tc16_strport, modes,
|
||||
"UTF-8",
|
||||
scm_i_default_port_conversion_handler (),
|
||||
(scm_t_bits)buf);
|
||||
SCM_UNPACK (buf));
|
||||
|
||||
pt = SCM_PTAB_ENTRY (z);
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
/* Copyright (C) 1995,1996,1998,2000,2001, 2003, 2006, 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
|
||||
/* Copyright (C) 1995, 1996, 1998, 2000, 2001, 2003, 2006, 2008, 2009,
|
||||
* 2010, 2011, 2012, 2013 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
|
||||
|
@ -129,7 +130,7 @@ weak_vector_ref (void *data)
|
|||
{
|
||||
struct weak_vector_ref_data *d = data;
|
||||
|
||||
return SCM_SIMPLE_VECTOR_REF (d->wv, d->k);
|
||||
return (void *) SCM_UNPACK (SCM_SIMPLE_VECTOR_REF (d->wv, d->k));
|
||||
}
|
||||
|
||||
SCM
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue