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:
Dan Winship
2013-10-19 13:03:58 -04:00
parent 7f5b2901cf
commit 6e4a7fca43
16 changed files with 80 additions and 286 deletions

View File

@@ -639,7 +639,7 @@ compact_buffer (GBufferedInputStream *stream)
current_size = priv->end - priv->pos;
g_memmove (priv->buffer, priv->buffer + priv->pos, current_size);
memmove (priv->buffer, priv->buffer + priv->pos, current_size);
priv->pos = 0;
priv->end = current_size;

View File

@@ -431,7 +431,7 @@ flush_buffer (GBufferedOutputStream *stream,
count = priv->pos - bytes_written;
if (count > 0)
g_memmove (priv->buffer, priv->buffer + bytes_written, count);
memmove (priv->buffer, priv->buffer + bytes_written, count);
priv->pos -= bytes_written;