mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-08-24 01:48:53 +02:00
Require C90 compliance
Assume all supported platforms implement C90, and therefore they (correctly) implement atexit(), memmove(), setlocale(), strerror(), and vprintf(), and have <float.h> and <limits.h>. (Also remove the configure check testing that "do ... while (0)" works correctly; the non-do/while-based version of G_STMT_START and G_STMT_END was removed years ago, but the check remained. Also, remove some checks that configure.ac claimed were needed for libcharset, but aren't actually used.) Note that removing the g_memmove() function is not an ABI break even on systems where g_memmove() was previously not a macro, because it was never marked GLIB_AVAILABLE_IN_ALL or listed in glib.symbols, so it would have been glib-internal since 2004. https://bugzilla.gnome.org/show_bug.cgi?id=710519
This commit is contained in:
@@ -215,7 +215,7 @@ g_bsearch_array_grow (GBSearchArray *barray,
|
||||
else
|
||||
barray = (GBSearchArray *) g_realloc (barray, sizeof (GBSearchArray) + new_size);
|
||||
node = G_BSEARCH_ARRAY_NODES (barray) + index_ * bconfig->sizeof_node;
|
||||
g_memmove (node + bconfig->sizeof_node, node, (barray->n_nodes - index_) * bconfig->sizeof_node);
|
||||
memmove (node + bconfig->sizeof_node, node, (barray->n_nodes - index_) * bconfig->sizeof_node);
|
||||
barray->n_nodes += 1;
|
||||
return barray;
|
||||
}
|
||||
@@ -271,7 +271,7 @@ g_bsearch_array_remove (GBSearchArray *barray,
|
||||
|
||||
barray->n_nodes -= 1;
|
||||
node = G_BSEARCH_ARRAY_NODES (barray) + index_ * bconfig->sizeof_node;
|
||||
g_memmove (node, node + bconfig->sizeof_node, (barray->n_nodes - index_) * bconfig->sizeof_node);
|
||||
memmove (node, node + bconfig->sizeof_node, (barray->n_nodes - index_) * bconfig->sizeof_node);
|
||||
if (G_UNLIKELY (bconfig->flags & G_BSEARCH_ARRAY_AUTO_SHRINK))
|
||||
{
|
||||
guint new_size = barray->n_nodes * bconfig->sizeof_node;
|
||||
|
Reference in New Issue
Block a user