glib-init: statically assert that we have 8-bit bytes

configure.ac assumes this.

Bug: https://bugzilla.gnome.org/show_bug.cgi?id=730932
This commit is contained in:
Simon McVittie 2014-07-20 12:41:57 +01:00
parent 7269d75321
commit 9060a85193
2 changed files with 4 additions and 0 deletions

View File

@ -2812,6 +2812,7 @@ _______EOF
### this should always be true in a modern C/C++ compiler
### and is statically asserted by glib-init.c
cat >>$outfile <<_______EOF
typedef signed char gint8;
typedef unsigned char guint8;

View File

@ -35,6 +35,9 @@
/* This seems as good a place as any to make static assertions about platform
* assumptions we make throughout GLib. */
/* We do not support 36-bit bytes or other historical curiosities. */
G_STATIC_ASSERT (CHAR_BIT == 8);
/* We assume that data pointers are the same size as function pointers... */
G_STATIC_ASSERT (sizeof (gpointer) == sizeof (GFunc));
G_STATIC_ASSERT (_g_alignof (gpointer) == _g_alignof (GFunc));