Make the g_test_add macro work with gcc 4.3

2008-02-10  Matthias Clasen <mclasen@redhat.com>

        * glib/gtestutils.h: Make the g_test_add macro work with
        gcc 4.3

        * tests/gobject/paramspec-test.c: Adapt to recent changes in
        GParamGType initialization.


svn path=/trunk/; revision=6500
This commit is contained in:
Matthias Clasen 2008-02-11 18:28:42 +00:00 committed by Matthias Clasen
parent 92aaf63ec0
commit f5542c90e3
3 changed files with 17 additions and 6 deletions

View File

@ -1,3 +1,11 @@
2008-02-10 Matthias Clasen <mclasen@redhat.com>
* glib/gtestutils.h: Make the g_test_add macro work with
gcc 4.3
* tests/gobject/paramspec-test.c: Adapt to recent changes in
GParamGType initialization.
2008-02-10 Matthias Clasen <mclasen@redhat.com> 2008-02-10 Matthias Clasen <mclasen@redhat.com>
* glib/gtestutils.c: Fix a typo in the docs. * glib/gtestutils.c: Fix a typo in the docs.

View File

@ -90,14 +90,17 @@ void g_test_add_data_func (const char *testpath,
void (*test_func) (gconstpointer)); void (*test_func) (gconstpointer));
/* hook up a test with fixture under test path */ /* hook up a test with fixture under test path */
#define g_test_add(testpath, Fixture, tdata, fsetup, ftest, fteardown) \ #define g_test_add(testpath, Fixture, tdata, fsetup, ftest, fteardown) \
((void (*) (const char*, \ G_STMT_START { \
void (*add_vtable) (const char*, \
gsize, \ gsize, \
gconstpointer, \ gconstpointer, \
void (*) (Fixture*, gconstpointer), \ void (*) (Fixture*, gconstpointer), \
void (*) (Fixture*, gconstpointer), \ void (*) (Fixture*, gconstpointer), \
void (*) (Fixture*, gconstpointer))) \ void (*) (Fixture*, gconstpointer)) = (void (*) (const gchar *, gsize, gconstpointer, void (*) (Fixture*, gconstpointer), void (*) (Fixture*, gconstpointer), void (*) (Fixture*, gconstpointer))) g_test_add_vtable; \
(void*) g_test_add_vtable) \ add_vtable \
(testpath, sizeof (Fixture), tdata, fsetup, ftest, fteardown) (testpath, sizeof (Fixture), tdata, fsetup, ftest, fteardown); \
} G_STMT_END
/* add test messages to the test report */ /* add test messages to the test report */
void g_test_message (const char *format, void g_test_message (const char *format,
...) G_GNUC_PRINTF (1, 2); ...) G_GNUC_PRINTF (1, 2);

View File

@ -193,13 +193,13 @@ test_param_spec_gtype (void)
G_TYPE_PARAM, G_PARAM_READWRITE); G_TYPE_PARAM, G_PARAM_READWRITE);
g_value_init (&value, G_TYPE_GTYPE); g_value_init (&value, G_TYPE_GTYPE);
g_value_set_gtype (&value, G_TYPE_NONE); g_value_set_gtype (&value, G_TYPE_PARAM);
g_assert (g_param_value_defaults (pspec, &value)); g_assert (g_param_value_defaults (pspec, &value));
g_value_set_gtype (&value, G_TYPE_INT); g_value_set_gtype (&value, G_TYPE_INT);
modified = g_param_value_validate (pspec, &value); modified = g_param_value_validate (pspec, &value);
g_assert (modified && g_value_get_gtype (&value) == G_TYPE_NONE); g_assert (modified && g_value_get_gtype (&value) == G_TYPE_PARAM);
g_value_set_gtype (&value, G_TYPE_PARAM_INT); g_value_set_gtype (&value, G_TYPE_PARAM_INT);
modified = g_param_value_validate (pspec, &value); modified = g_param_value_validate (pspec, &value);