summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tests/scanner/Makefile.am10
-rw-r--r--tests/scanner/annotation.c2
-rw-r--r--tests/scanner/annotation.h94
-rw-r--r--tests/scanner/barapp.c2
-rw-r--r--tests/scanner/barapp.h9
-rw-r--r--tests/scanner/drawable.c2
-rw-r--r--tests/scanner/drawable.h11
-rw-r--r--tests/scanner/foo.c2
-rw-r--r--tests/scanner/foo.h145
-rw-r--r--tests/scanner/gettype.c2
-rw-r--r--tests/scanner/gettype.h11
-rw-r--r--tests/scanner/gtkfrob.c2
-rw-r--r--tests/scanner/gtkfrob.h2
-rw-r--r--tests/scanner/regress.c2
-rw-r--r--tests/scanner/regress.h419
-rw-r--r--tests/scanner/sletter.c1
-rw-r--r--tests/scanner/sletter.h7
-rw-r--r--tests/scanner/typedefs.c2
-rw-r--r--tests/scanner/typedefs.h12
-rw-r--r--tests/scanner/utility.c2
-rw-r--r--tests/scanner/utility.h7
-rw-r--r--tests/scanner/warnlib.h7
22 files changed, 752 insertions, 1 deletions
diff --git a/tests/scanner/Makefile.am b/tests/scanner/Makefile.am
index 8b20141c..92ab12a3 100644
--- a/tests/scanner/Makefile.am
+++ b/tests/scanner/Makefile.am
@@ -20,8 +20,9 @@ EXTRA_LTLIBRARIES = \
$(NULL)
CLEANFILES += $(EXTRA_LTLIBRARIES)
+GI_SCANNER_CFLAGS = -I$(top_srcdir)/tests
AM_CPPFLAGS = -I$(top_srcdir)/girepository
-AM_CFLAGS = $(GIO_CFLAGS) $(GOBJECT_CFLAGS) $(GTHREAD_CFLAGS)
+AM_CFLAGS = $(GIO_CFLAGS) $(GOBJECT_CFLAGS) $(GTHREAD_CFLAGS) $(GI_HIDDEN_VISIBILITY_CFLAGS) $(GI_SCANNER_CFLAGS)
# -rpath needed to force libtool to build a shared library for a check_LTLIBRARIES
# target. See http://lists.gnu.org/archive/html/automake/2005-10/msg00107.html
AM_LDFLAGS = -rpath /unused -avoid-version
@@ -82,6 +83,7 @@ EXTRA_DIST = $(EXPECTEDGIRS)
SLetter-1.0.gir: $(top_builddir)/Gio-2.0.gir libsletter.la
SLetter_1_0_gir_LIBS = libsletter.la
+SLetter_1_0_gir_CFLAGS = $(GI_SCANNER_CFLAGS)
SLetter_1_0_gir_INCLUDES = Gio-2.0
SLetter_1_0_gir_FILES = $(libsletter_la_SOURCES)
SLetter_1_0_gir_SCANNERFLAGS = --identifier-prefix=S --c-include="sletter.h" --warn-error
@@ -100,6 +102,7 @@ GIRS += Regress-1.0.gir
WarnLib-1.0.gir: $(top_builddir)/Gio-2.0.gir libwarnlib.la
WarnLib_1_0_gir_LIBS = libwarnlib.la
+WarnLib_1_0_gir_CFLAGS = $(GI_SCANNER_CFLAGS)
WarnLib_1_0_gir_INCLUDES = Gio-2.0
WarnLib_1_0_gir_FILES = $(libwarnlib_la_SOURCES)
WarnLib_1_0_gir_SCANNERFLAGS = --c-include="warnlib.h" --symbol-prefix=warnlib_
@@ -108,6 +111,7 @@ GIRS += WarnLib-1.0.gir
Utility-1.0.gir: libutility.la
Utility_1_0_gir_PACKAGES = gobject-2.0
Utility_1_0_gir_LIBS = libutility.la
+Utility_1_0_gir_CFLAGS = $(GI_SCANNER_CFLAGS)
Utility_1_0_gir_INCLUDES = GObject-2.0
Utility_1_0_gir_FILES = $(libutility_la_SOURCES)
Utility_1_0_gir_SCANNERFLAGS = --c-include="utility.h" --warn-error
@@ -117,6 +121,7 @@ GIRS += Utility-1.0.gir
GtkFrob-1.0.gir: libgtkfrob.la
GtkFrob_1_0_gir_PACKAGES = gobject-2.0
GtkFrob_1_0_gir_LIBS = libgtkfrob.la
+GtkFrob_1_0_gir_CFLAGS = $(GI_SCANNER_CFLAGS)
GtkFrob_1_0_gir_INCLUDES = GObject-2.0
GtkFrob_1_0_gir_FILES = $(libgtkfrob_la_SOURCES)
GtkFrob_1_0_gir_SCANNERFLAGS = --identifier-prefix=Gtk --symbol-prefix=gtk_frob --warn-error
@@ -127,6 +132,7 @@ GIRS += GtkFrob-1.0.gir
GetType-1.0.gir: libgettype.la
GetType_1_0_gir_PACKAGES = gobject-2.0
GetType_1_0_gir_LIBS = libgettype.la
+GetType_1_0_gir_CFLAGS = $(GI_SCANNER_CFLAGS)
GetType_1_0_gir_INCLUDES = GObject-2.0
GetType_1_0_gir_FILES = $(libgettype_la_SOURCES)
GetType_1_0_gir_SCANNERFLAGS = --c-include="gettype.h" --identifier-prefix=GetType --symbol-prefix=gettype
@@ -135,6 +141,7 @@ GIRS += GetType-1.0.gir
Typedefs-1.0.gir: libtypedefs.la
Typedefs_1_0_gir_PACKAGES = gobject-2.0
Typedefs_1_0_gir_LIBS = libtypedefs.la
+Typedefs_1_0_gir_CFLAGS = $(GI_SCANNER_CFLAGS)
Typedefs_1_0_gir_INCLUDES = GObject-2.0
Typedefs_1_0_gir_FILES = $(libtypedefs_la_SOURCES)
Typedefs_1_0_gir_SCANNERFLAGS = --c-include="typedefs.h" --identifier-prefix=Typedefs --symbol-prefix=typedefs
@@ -151,6 +158,7 @@ barapp_LDFLAGS = -export-dynamic
Bar-1.0.gir: barapp
Bar_1_0_gir_PACKAGES = gobject-2.0
Bar_1_0_gir_PROGRAM = ./barapp
+Bar_1_0_gir_CFLAGS = $(GI_SCANNER_CFLAGS)
Bar_1_0_gir_INCLUDES = GObject-2.0
Bar_1_0_gir_FILES = $(barapp_SOURCES)
Bar_1_0_gir_SCANNERFLAGS = --accept-unprefixed
diff --git a/tests/scanner/annotation.c b/tests/scanner/annotation.c
index 30dc72ef..173db974 100644
--- a/tests/scanner/annotation.c
+++ b/tests/scanner/annotation.c
@@ -1,4 +1,6 @@
/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+#include "config.h"
+
#include "annotation.h"
char backslash_parsing_tester = '\\';
diff --git a/tests/scanner/annotation.h b/tests/scanner/annotation.h
index b0cbe42d..07894dfc 100644
--- a/tests/scanner/annotation.h
+++ b/tests/scanner/annotation.h
@@ -1,6 +1,8 @@
#ifndef __REGRESS_ANNOTATION_OBJECT_H__
#define __REGRESS_ANNOTATION_OBJECT_H__
+#include "gitestmacros.h"
+
#include <glib-object.h>
typedef enum /*< flags,prefix=ANN >*/
@@ -58,95 +60,177 @@ struct _RegressAnnotationObjectClass
GObjectClass parent_class;
};
+_GI_TEST_EXTERN
GType regress_annotation_object_get_type (void);
+_GI_TEST_EXTERN
gint regress_annotation_object_method (RegressAnnotationObject *object);
+
+_GI_TEST_EXTERN
gint regress_annotation_object_out (RegressAnnotationObject *object,
int *outarg);
+
+_GI_TEST_EXTERN
GObject* regress_annotation_object_create_object(RegressAnnotationObject *object);
+
+_GI_TEST_EXTERN
GObject* regress_annotation_object_allow_none (RegressAnnotationObject *object,
const gchar *somearg);
+
+_GI_TEST_EXTERN
GObject* regress_annotation_object_notrans (RegressAnnotationObject *object);
+
+_GI_TEST_EXTERN
gint regress_annotation_object_inout (RegressAnnotationObject *object,
int *inoutarg);
+
+_GI_TEST_EXTERN
gint regress_annotation_object_inout2 (RegressAnnotationObject *object,
int *inoutarg);
+
+_GI_TEST_EXTERN
gint regress_annotation_object_inout3 (RegressAnnotationObject *object,
int *inoutarg);
+
+_GI_TEST_EXTERN
gint regress_annotation_object_in (RegressAnnotationObject *object,
int *inarg);
+
+_GI_TEST_EXTERN
gint regress_annotation_object_calleeowns (RegressAnnotationObject *object,
GObject **toown);
+
+_GI_TEST_EXTERN
gint regress_annotation_object_calleesowns (RegressAnnotationObject *object,
GObject **toown1,
GObject **toown2);
+
+_GI_TEST_EXTERN
GList* regress_annotation_object_get_strings (RegressAnnotationObject *object);
+
+_GI_TEST_EXTERN
GHashTable*regress_annotation_object_get_hash (RegressAnnotationObject *object);
+
+_GI_TEST_EXTERN
void regress_annotation_object_with_voidp (RegressAnnotationObject *object,
void *data);
+
+_GI_TEST_EXTERN
GSList* regress_annotation_object_get_objects (RegressAnnotationObject *object);
+
+_GI_TEST_EXTERN
void regress_annotation_object_use_buffer (RegressAnnotationObject *object,
guchar *bytes);
+
+_GI_TEST_EXTERN
void regress_annotation_object_compute_sum (RegressAnnotationObject *object,
int *nums);
+
+_GI_TEST_EXTERN
void regress_annotation_object_compute_sum_n(RegressAnnotationObject *object,
int *nums,
int n_nums);
+
+_GI_TEST_EXTERN
void regress_annotation_object_compute_sum_nz(RegressAnnotationObject *object,
int *nums,
int n_nums);
+
+_GI_TEST_EXTERN
void regress_annotation_object_parse_args (RegressAnnotationObject *object,
int *argc,
char ***argv);
+
+_GI_TEST_EXTERN
gboolean regress_annotation_object_string_out (RegressAnnotationObject *object,
char **str_out);
+
+_GI_TEST_EXTERN
void regress_annotation_object_foreach (RegressAnnotationObject *object,
RegressAnnotationForeachFunc func,
gpointer user_data);
+
+_GI_TEST_EXTERN
void regress_annotation_object_set_data (RegressAnnotationObject *object,
const guchar *data,
gsize length);
+
+_GI_TEST_EXTERN
void regress_annotation_object_set_data2 (RegressAnnotationObject *object,
const gchar *data,
gsize length);
+
+_GI_TEST_EXTERN
void regress_annotation_object_set_data3 (RegressAnnotationObject *object,
gpointer data,
gsize length);
+
+_GI_TEST_EXTERN
GObject* regress_annotation_object_do_not_use (RegressAnnotationObject *object);
+
+_GI_TEST_EXTERN
void regress_annotation_object_watch (RegressAnnotationObject *object,
RegressAnnotationForeachFunc func,
gpointer user_data);
+
+_GI_TEST_EXTERN
void regress_annotation_object_watch_full (RegressAnnotationObject *object,
RegressAnnotationForeachFunc func,
gpointer user_data,
GDestroyNotify destroy);
+
+_GI_TEST_EXTERN
void regress_annotation_object_hidden_self (gpointer object);
+
+_GI_TEST_EXTERN
void regress_annotation_init (int *argc,
char ***argv);
+
+_GI_TEST_EXTERN
char ** regress_annotation_return_array (int *length);
+
+_GI_TEST_EXTERN
void regress_annotation_versioned (void);
+
+_GI_TEST_EXTERN
char ** regress_annotation_string_zero_terminated (void);
+
+_GI_TEST_EXTERN
void regress_annotation_string_zero_terminated_out (char ***out);
+
+_GI_TEST_EXTERN
void regress_annotation_string_array_length (guint n_properties, const gchar * const properties[]);
+
+_GI_TEST_EXTERN
void regress_annotation_object_extra_annos (RegressAnnotationObject *object);
+
+_GI_TEST_EXTERN
void regress_annotation_custom_destroy (RegressAnnotationCallback callback,
RegressAnnotationNotifyFunc destroy,
gpointer data);
+
+_GI_TEST_EXTERN
char * regress_annotation_get_source_file (void);
+
+_GI_TEST_EXTERN
void regress_annotation_set_source_file (const char *fname);
+
+_GI_TEST_EXTERN
gint regress_annotation_attribute_func (RegressAnnotationObject *object,
const gchar *data);
+
+_GI_TEST_EXTERN
void regress_annotation_invalid_regress_annotation (int foo);
/**
@@ -174,14 +258,24 @@ struct RegressAnnotationFields
gulong len;
};
+
+_GI_TEST_EXTERN
void regress_annotation_ptr_array (GPtrArray *array);
+
+_GI_TEST_EXTERN
GObject * regress_annotation_test_parsing_bug630862 (void);
+
+_GI_TEST_EXTERN
void regress_annotation_space_after_comment_bug631690 (void);
+
+_GI_TEST_EXTERN
gchar* regress_annotation_return_filename (void);
+
+_GI_TEST_EXTERN
GObject * regress_annotation_transfer_floating(void);
/* This one we can handle properly */
diff --git a/tests/scanner/barapp.c b/tests/scanner/barapp.c
index ed391204..6189531e 100644
--- a/tests/scanner/barapp.c
+++ b/tests/scanner/barapp.c
@@ -1,4 +1,6 @@
/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+#include "config.h"
+
#include "barapp.h"
#include <girepository.h>
diff --git a/tests/scanner/barapp.h b/tests/scanner/barapp.h
index 12c39a5f..8694ddbe 100644
--- a/tests/scanner/barapp.h
+++ b/tests/scanner/barapp.h
@@ -1,6 +1,8 @@
#include <glib-object.h>
+#include "gitestmacros.h"
+
#define BAR_TYPE_BAZ (bar_baz_get_type ())
#define BAR_BAZ(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), BAR_TYPE_BAZ, BarBaz))
#define BAR_IS_BAZ(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), BAR_TYPE_BAZ))
@@ -18,9 +20,14 @@ struct BarBazClass
GObjectClass parent_class;
};
+_GI_TEST_EXTERN
GType bar_baz_get_type (void) G_GNUC_CONST;
+
+_GI_TEST_EXTERN
void bar_app_func (void);
+
+_GI_TEST_EXTERN
void bar_app_func2 (int x, double y);
@@ -45,6 +52,8 @@ struct MutterWindowClass
GObjectClass parent_class;
};
+_GI_TEST_EXTERN
GType mutter_window_get_type (void) G_GNUC_CONST;
+_GI_TEST_EXTERN
void mutter_window_func (MutterWindow *window, guint v);
diff --git a/tests/scanner/drawable.c b/tests/scanner/drawable.c
index e378286b..9c58bfed 100644
--- a/tests/scanner/drawable.c
+++ b/tests/scanner/drawable.c
@@ -1,4 +1,6 @@
/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+#include "config.h"
+
#include "drawable.h"
G_DEFINE_ABSTRACT_TYPE (RegressTestInheritDrawable, regress_test_inherit_drawable, G_TYPE_OBJECT);
diff --git a/tests/scanner/drawable.h b/tests/scanner/drawable.h
index 58383589..adf08da2 100644
--- a/tests/scanner/drawable.h
+++ b/tests/scanner/drawable.h
@@ -3,6 +3,8 @@
#include <glib-object.h>
+#include "gitestmacros.h"
+
typedef struct _RegressTestInheritDrawable RegressTestInheritDrawable;
typedef struct _RegressTestInheritDrawableClass RegressTestInheritDrawableClass;
@@ -16,11 +18,20 @@ struct _RegressTestInheritDrawableClass
GObjectClass parent_class;
};
+_GI_TEST_EXTERN
GType regress_test_inherit_drawable_get_type (void) G_GNUC_CONST;
+
+_GI_TEST_EXTERN
void regress_test_inherit_drawable_do_foo (RegressTestInheritDrawable *drawable, int x);
+
+_GI_TEST_EXTERN
void regress_test_inherit_drawable_get_origin (RegressTestInheritDrawable *drawable, int *x, int *y);
+
+_GI_TEST_EXTERN
void regress_test_inherit_drawable_get_size (RegressTestInheritDrawable *drawable, guint *width, guint *height);
+
+_GI_TEST_EXTERN
void regress_test_inherit_drawable_do_foo_maybe_throw (RegressTestInheritDrawable *drawable, int x, GError **error);
typedef struct _RegressTestInheritPixmapObjectClass RegressTestInheritPixmapObjectClass;
diff --git a/tests/scanner/foo.c b/tests/scanner/foo.c
index 52b9054e..66b29845 100644
--- a/tests/scanner/foo.c
+++ b/tests/scanner/foo.c
@@ -1,3 +1,5 @@
+#include "config.h"
+
#include "foo.h"
/* A hidden type not exposed publicly, similar to GUPNP's XML wrapper
diff --git a/tests/scanner/foo.h b/tests/scanner/foo.h
index e097560e..02d9b7c8 100644
--- a/tests/scanner/foo.h
+++ b/tests/scanner/foo.h
@@ -3,6 +3,8 @@
#include <glib-object.h>
#include <gio/gio.h> /* GAsyncReadyCallback */
+
+#include "gitestmacros.h"
#include "utility.h"
#define REGRESS_FOO_SUCCESS_INT 0x1138
@@ -58,10 +60,16 @@ struct _RegressFooInterfaceIface
void (*do_regress_foo) (RegressFooInterface *self, int x);
};
+
+_GI_TEST_EXTERN
GType regress_foo_interface_get_type (void) G_GNUC_CONST;
+
+_GI_TEST_EXTERN
void regress_foo_interface_do_regress_foo (RegressFooInterface *iface, int x);
+
+_GI_TEST_EXTERN
void regress_foo_interface_static_method (int x);
struct _RegressFooSubInterfaceIface
@@ -79,9 +87,15 @@ struct _RegressFooSubInterfaceIface
void (*do_baz) (RegressFooSubInterface *self, GCallback callback, gpointer user_data);
};
+
+_GI_TEST_EXTERN
GType regress_foo_sub_interface_get_type (void) G_GNUC_CONST;
+
+_GI_TEST_EXTERN
void regress_foo_sub_interface_do_bar (RegressFooSubInterface *self);
+
+_GI_TEST_EXTERN
void regress_foo_sub_interface_do_baz (RegressFooSubInterface *self,
GCallback callback,
gpointer user_data);
@@ -106,35 +120,67 @@ struct _RegressFooObjectClass
GCallback _reserved[4];
};
+
+_GI_TEST_EXTERN
gint regress_foo_init (void);
+
+_GI_TEST_EXTERN
GType regress_foo_object_get_type (void) G_GNUC_CONST;
+
+_GI_TEST_EXTERN
RegressFooObject* regress_foo_object_new (void);
+
+_GI_TEST_EXTERN
UtilityObject* regress_foo_object_external_type (RegressFooObject *object);
+
+_GI_TEST_EXTERN
GObject* regress_foo_object_new_as_super (void);
+
+_GI_TEST_EXTERN
void regress_foo_object_various (RegressFooObject *object, void *data, GType some_type);
+
+_GI_TEST_EXTERN
void regress_foo_object_take_all (RegressFooObject *object, int x, ...);
typedef gpointer RegressFooObjectCookie;
+
+_GI_TEST_EXTERN
RegressFooObjectCookie regress_foo_object_new_cookie (RegressFooObject *object, const char *target);
+
+_GI_TEST_EXTERN
void regress_foo_object_is_it_time_yet (RegressFooObject *object, time_t time);
+
+_GI_TEST_EXTERN
const char * regress_foo_object_get_name (RegressFooObject *object);
+
+_GI_TEST_EXTERN
char * regress_foo_object_dup_name (RegressFooObject *object);
+
+_GI_TEST_EXTERN
void regress_foo_object_handle_glyph (RegressFooObject *object, UtilityGlyph glyph);
+
+_GI_TEST_EXTERN
gboolean regress_foo_object_virtual_method (RegressFooObject *object, int first_param);
+
+_GI_TEST_EXTERN
void regress_foo_object_read (RegressFooObject *object, int offset, int length);
+
+_GI_TEST_EXTERN
int regress_foo_object_static_meth (void);
+
+_GI_TEST_EXTERN
void regress_foo_object_skipped_method (RegressFooObject *object);
struct _RegressFooSubobject
@@ -147,17 +193,31 @@ struct _RegressFooSubobjectClass
RegressFooObjectClass parent_class;
};
+
+_GI_TEST_EXTERN
GType regress_foo_subobject_get_type (void) G_GNUC_CONST;
+
+_GI_TEST_EXTERN
RegressFooSubobject* regress_foo_subobject_new (void);
+
+_GI_TEST_EXTERN
RegressFooObject * regress_foo_object_get_default (void);
+
+_GI_TEST_EXTERN
GType regress_foo_buffer_get_type (void);
+
+_GI_TEST_EXTERN
void regress_foo_buffer_some_method (RegressFooBuffer *buffer);
+
+_GI_TEST_EXTERN
GType regress_foo_other_object_get_type (void) G_GNUC_CONST;
+
+_GI_TEST_EXTERN
RegressFooObject * regress_foo_not_a_constructor_new (void);
typedef enum
@@ -167,10 +227,16 @@ typedef enum
REGRESS_FOO_ENUM_DELTA
} RegressFooEnumType;
+
+_GI_TEST_EXTERN
GType regress_foo_enum_type_get_type (void);
+
+_GI_TEST_EXTERN
int regress_foo_enum_type_method (RegressFooEnumType regress_foo_enum);
+
+_GI_TEST_EXTERN
RegressFooEnumType regress_foo_enum_type_returnv (int x);
typedef enum
@@ -180,6 +246,8 @@ typedef enum
REGRESS_FOO_FLAGS_THIRD = 1 << 2
} RegressFooFlagsType;
+
+_GI_TEST_EXTERN
GType regress_foo_flags_type_get_type (void);
typedef enum
@@ -213,18 +281,34 @@ typedef enum
typedef struct _RegressFooBoxed RegressFooBoxed;
+
+_GI_TEST_EXTERN
GType regress_foo_boxed_get_type (void) G_GNUC_CONST;
+
+_GI_TEST_EXTERN
RegressFooBoxed* regress_foo_boxed_new (void);
+
+_GI_TEST_EXTERN
void regress_foo_boxed_method (RegressFooBoxed* boxed);
/* This one tests capitalization handling with respect to DBus */
typedef struct _RegressFooDBusData RegressFooDBusData;
+
+_GI_TEST_EXTERN
GType regress_foo_dbus_data_get_type (void) G_GNUC_CONST;
+
+_GI_TEST_EXTERN
void regress_foo_dbus_data_method (RegressFooDBusData* dbusdata);
/* FIXME: Scanner does not support this yet
+
+_GI_TEST_EXTERN
const char *REGRESS_FOO_CONSTANT_STR = "regress_foo-constant-str";
+
+_GI_TEST_EXTERN
const int REGRESS_FOO_CONSTANT_INT = 10;
+
+_GI_TEST_EXTERN
const float REGRESS_FOO_CONSTANT_FLOAT = 10;
*/
@@ -255,14 +339,20 @@ struct _RegressFooRectangle
gint height;
};
+
+_GI_TEST_EXTERN
void
regress_foo_method_external_references (UtilityObject *object,
UtilityEnumType e,
UtilityFlagType f,
UtilityStruct s);
+
+_GI_TEST_EXTERN
void regress_foo_rectangle_add(RegressFooRectangle *r1, const RegressFooRectangle *r2);
+
+_GI_TEST_EXTERN
RegressFooRectangle * regress_foo_rectangle_new (int x, int y, int width, int height);
@@ -301,10 +391,16 @@ struct _RegressFooBRect
double y;
};
+
+_GI_TEST_EXTERN
GType regress_foo_brect_get_type (void);
+
+_GI_TEST_EXTERN
RegressFooBRect *regress_foo_brect_new (double x, double y);
+
+_GI_TEST_EXTERN
void regress_foo_brect_add (RegressFooBRect *b1, RegressFooBRect *b2);
typedef union _RegressFooBUnion RegressFooBUnion;
@@ -338,36 +434,69 @@ struct _RegressFooThingWithArray
guchar *data;
} ;
+
+_GI_TEST_EXTERN
RegressFooBUnion *regress_foo_bunion_new (void);
+
+_GI_TEST_EXTERN
GType regress_foo_bunion_get_type (void);
+
+_GI_TEST_EXTERN
int regress_foo_bunion_get_contained_type (RegressFooBUnion *bunion);
+
+_GI_TEST_EXTERN
void regress_foo_test_unsigned_qualifier (unsigned int unsigned_param);
+
+_GI_TEST_EXTERN
void regress_foo_test_unsigned_type (unsigned unsigned_param);
+
+_GI_TEST_EXTERN
void regress_foo_test_string_array (char **array);
+
+_GI_TEST_EXTERN
void regress_foo_test_string_array_with_g (gchar **array);
+
+_GI_TEST_EXTERN
GArray *regress_foo_test_array (void);
+
+_GI_TEST_EXTERN
const char * regress_foo_test_const_char_retval (void);
+
+_GI_TEST_EXTERN
const RegressFooStruct * regress_foo_test_const_struct_retval (void);
+
+_GI_TEST_EXTERN
void regress_foo_test_const_char_param (const char * param);
+
+_GI_TEST_EXTERN
void regress_foo_test_const_struct_param (const RegressFooStruct * param);
typedef void (*RegressFooVarargsCallback) (const char * param, ...);
+
+_GI_TEST_EXTERN
void regress_foo_test_varargs_callback (gint i, RegressFooVarargsCallback callback);
+
+_GI_TEST_EXTERN
void regress_foo_test_varargs_callback2 (RegressFooVarargsCallback callback);
+
+_GI_TEST_EXTERN
void regress_foo_test_varargs_callback3 (RegressFooVarargsCallback callback,
RegressFooVarargsCallback callback2);
/* Make sure callbacks get the right scope by default */
+_GI_TEST_EXTERN
void regress_foo_async_ready_callback(GCancellable *cancellable,
GAsyncReadyCallback callback,
gpointer user_data);
+
+_GI_TEST_EXTERN
void regress_foo_destroy_notify_callback(RegressFooCallback callback,
gpointer data,
GDestroyNotify destroy);
@@ -377,8 +506,12 @@ typedef enum {
REGRESS_FOO_ERROR_BAD,
REGRESS_FOO_ERROR_UGLY
} RegressFooError;
+
+_GI_TEST_EXTERN
GType regress_foo_error_get_type (void);
+
+_GI_TEST_EXTERN
GQuark regress_foo_error_quark (void);
typedef enum
@@ -400,7 +533,11 @@ typedef enum
} RegressFooASingle;
/* Should be skipped */
+
+_GI_TEST_EXTERN
void regress_foo_some_variant (guint x, va_list args);
+
+_GI_TEST_EXTERN
void regress_foo_some_variant_ptr (guint x, va_list *args);
/**
@@ -424,14 +561,22 @@ struct _RegressFooForeignStruct
int regress_foo;
};
+
+_GI_TEST_EXTERN
RegressFooForeignStruct* regress_foo_foreign_struct_new (void);
+
+_GI_TEST_EXTERN
RegressFooForeignStruct* regress_foo_foreign_struct_copy (RegressFooForeignStruct *original);
/* This one should be a global, not a method on UtilityObject since
* it's a separate namespace.
*/
+
+_GI_TEST_EXTERN
void regress_foo_object_a_global_method (UtilityObject *obj);
+
+_GI_TEST_EXTERN
RegressFooOtherObject * regress_foo_object_append_new_stack_layer (RegressFooObject *obj, int x);
#endif /* __REGRESS_FOO_OBJECT_H__ */
diff --git a/tests/scanner/gettype.c b/tests/scanner/gettype.c
index a3c2d6be..fac94a4d 100644
--- a/tests/scanner/gettype.c
+++ b/tests/scanner/gettype.c
@@ -1,3 +1,5 @@
+#include "config.h"
+
#include "gettype.h"
G_DEFINE_TYPE (GetTypeObject, gettype_object, G_TYPE_OBJECT);
diff --git a/tests/scanner/gettype.h b/tests/scanner/gettype.h
index 755f091c..5adab579 100644
--- a/tests/scanner/gettype.h
+++ b/tests/scanner/gettype.h
@@ -3,6 +3,8 @@
#include <glib-object.h>
+#include "gitestmacros.h"
+
#define GETTYPE_TYPE_OBJECT (gettype_object_get_type ())
#define GETTYPE_OBJECT(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), GETTYPE_TYPE_OBJECT, GetTypeObject))
#define GETTYPE_IS_OBJECT(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), GETTYPE_TYPE_OBJECT))
@@ -19,11 +21,20 @@ struct _GetTypeObjectClass
GObjectClass parent_class;
};
+_GI_TEST_EXTERN
GType gettype_object_get_type (void) G_GNUC_CONST;
+
+_GI_TEST_EXTERN
GetTypeObject* gettype_object_new (void);
+
+_GI_TEST_EXTERN
GType gettype_object_nonmeta1_get_type (GetTypeObject *obj);
+
+_GI_TEST_EXTERN
gboolean gettype_object_nonmeta2_get_type (void);
+
+_GI_TEST_EXTERN
gboolean gettype_object_nonmeta_get_gtype (void);
#endif /* __GETTYPE_OBJECT_H__ */
diff --git a/tests/scanner/gtkfrob.c b/tests/scanner/gtkfrob.c
index d1c2312c..fa085613 100644
--- a/tests/scanner/gtkfrob.c
+++ b/tests/scanner/gtkfrob.c
@@ -1,4 +1,6 @@
/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+#include "config.h"
+
#include "gtkfrob.h"
void
diff --git a/tests/scanner/gtkfrob.h b/tests/scanner/gtkfrob.h
index 06a282d1..fb079748 100644
--- a/tests/scanner/gtkfrob.h
+++ b/tests/scanner/gtkfrob.h
@@ -3,9 +3,11 @@
#include <glib-object.h>
+#include "gitestmacros.h"
/* A global function */
+_GI_TEST_EXTERN
void gtk_frob_language_manager_get_default (void);
#endif /* __GTKFROB_H__ */
diff --git a/tests/scanner/regress.c b/tests/scanner/regress.c
index e60b8e17..48d9e931 100644
--- a/tests/scanner/regress.c
+++ b/tests/scanner/regress.c
@@ -1,4 +1,6 @@
/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+#include "config.h"
+
#include <string.h>
#include <stdlib.h>
#include <glib-object.h>
diff --git a/tests/scanner/regress.h b/tests/scanner/regress.h
index 3bbcb991..74a95b72 100644
--- a/tests/scanner/regress.h
+++ b/tests/scanner/regress.h
@@ -10,146 +10,344 @@
#include <string.h>
#include <stdlib.h>
+#include "gitestmacros.h"
+
+_GI_TEST_EXTERN
void regress_set_abort_on_error (gboolean abort_on_error);
/* basic types */
+_GI_TEST_EXTERN
gboolean regress_test_boolean (gboolean in);
+
+_GI_TEST_EXTERN
gboolean regress_test_boolean_true (gboolean in);
+
+_GI_TEST_EXTERN
gboolean regress_test_boolean_false (gboolean in);
+
+_GI_TEST_EXTERN
gint8 regress_test_int8 (gint8 in);
+
+_GI_TEST_EXTERN
guint8 regress_test_uint8 (guint8 in);
+
+_GI_TEST_EXTERN
gint16 regress_test_int16 (gint16 in);
+
+_GI_TEST_EXTERN
guint16 regress_test_uint16 (guint16 in);
+
+_GI_TEST_EXTERN
gint32 regress_test_int32 (gint32 in);
+
+_GI_TEST_EXTERN
guint32 regress_test_uint32 (guint32 in);
+
+_GI_TEST_EXTERN
gint64 regress_test_int64 (gint64 in);
+
+_GI_TEST_EXTERN
guint64 regress_test_uint64 (guint64 in);
+
+_GI_TEST_EXTERN
gshort regress_test_short (gshort in);
+
+_GI_TEST_EXTERN
gushort regress_test_ushort (gushort in);
+
+_GI_TEST_EXTERN
gint regress_test_int (gint in);
+
+_GI_TEST_EXTERN
guint regress_test_uint (guint in);
+
+_GI_TEST_EXTERN
glong regress_test_long (glong in);
+
+_GI_TEST_EXTERN
gulong regress_test_ulong (gulong in);
+
+_GI_TEST_EXTERN
gssize regress_test_ssize (gssize in);
+
+_GI_TEST_EXTERN
gsize regress_test_size (gsize in);
+
+_GI_TEST_EXTERN
gfloat regress_test_float (gfloat in);
+
+_GI_TEST_EXTERN
gdouble regress_test_double (gdouble in);
+
+_GI_TEST_EXTERN
gunichar regress_test_unichar (gunichar in);
+
+_GI_TEST_EXTERN
time_t regress_test_timet (time_t in);
+
+_GI_TEST_EXTERN
GType regress_test_gtype (GType in);
/* utf8 */
+_GI_TEST_EXTERN
const char *regress_test_utf8_const_return (void);
+
+_GI_TEST_EXTERN
char *regress_test_utf8_nonconst_return (void);
+
+_GI_TEST_EXTERN
void regress_test_utf8_const_in (const char *in);
+
+_GI_TEST_EXTERN
void regress_test_utf8_out (char **out);
+
+_GI_TEST_EXTERN
void regress_test_utf8_inout (char **inout);
+
+_GI_TEST_EXTERN
GSList *regress_test_filename_return (void);
+
+_GI_TEST_EXTERN
void regress_test_utf8_null_in (char *in);
+
+_GI_TEST_EXTERN
void regress_test_utf8_null_out (char **char_out);
/* in arguments after out arguments */
+_GI_TEST_EXTERN
void regress_test_int_out_utf8 (int *length, const char *in);
/* multiple output arguments */
+
+_GI_TEST_EXTERN
void regress_test_multi_double_args (gdouble in, gdouble *one, gdouble *two);
+
+_GI_TEST_EXTERN
void regress_test_utf8_out_out (char **out0, char **out1);
+
+_GI_TEST_EXTERN
char *regress_test_utf8_out_nonconst_return (char **out);
/* non-basic-types */
/* array */
+_GI_TEST_EXTERN
gboolean regress_test_strv_in (char **arr);
+
+_GI_TEST_EXTERN
int regress_test_array_int_in (int n_ints, int *ints);
+
+_GI_TEST_EXTERN
void regress_test_array_int_out (int *n_ints, int **ints);
+
+_GI_TEST_EXTERN
void regress_test_array_int_inout (int *n_ints, int **ints);
+
+_GI_TEST_EXTERN
int regress_test_array_gint8_in (int n_ints, gint8 *ints);
+
+_GI_TEST_EXTERN
int regress_test_array_gint16_in (int n_ints, gint16 *ints);
+
+_GI_TEST_EXTERN
gint32 regress_test_array_gint32_in (int n_ints, gint32 *ints);
+
+_GI_TEST_EXTERN
gint64 regress_test_array_gint64_in (int n_ints, gint64 *ints);
+
+_GI_TEST_EXTERN
char *regress_test_array_gtype_in (int n_types, GType *types);
+
+_GI_TEST_EXTERN
char **regress_test_strv_out_container (void);
+
+_GI_TEST_EXTERN
char **regress_test_strv_out (void);
+
+_GI_TEST_EXTERN
const char * const * regress_test_strv_out_c (void);
+
+_GI_TEST_EXTERN
void regress_test_strv_outarg (char ***retp);
+
+_GI_TEST_EXTERN
int regress_test_array_fixed_size_int_in (int *ints);
+
+_GI_TEST_EXTERN
void regress_test_array_fixed_size_int_out (int **ints);
+
+_GI_TEST_EXTERN
int *regress_test_array_fixed_size_int_return (void);
/* transfer tests */
+_GI_TEST_EXTERN
int *regress_test_array_int_full_out(int *len);
+
+_GI_TEST_EXTERN
int *regress_test_array_int_none_out(int *len);
+
+_GI_TEST_EXTERN
void regress_test_array_int_null_in (int *arr, int len);
+
+_GI_TEST_EXTERN
void regress_test_array_int_null_out (int **arr, int *len);
/* interface */
/* GList */
+_GI_TEST_EXTERN
const GList *regress_test_glist_nothing_return (void);
+
+_GI_TEST_EXTERN
GList *regress_test_glist_nothing_return2 (void);
+
+_GI_TEST_EXTERN
GList *regress_test_glist_container_return (void);
+
+_GI_TEST_EXTERN
GList *regress_test_glist_everything_return (void);
+
+_GI_TEST_EXTERN
void regress_test_glist_nothing_in (const GList *in);
+
+_GI_TEST_EXTERN
void regress_test_glist_nothing_in2 (GList *in);
+
+_GI_TEST_EXTERN
void regress_test_glist_null_in(GSList *in);
+
+_GI_TEST_EXTERN
void regress_test_glist_null_out(GSList **out_list);
/* GSList */
+_GI_TEST_EXTERN
const GSList *regress_test_gslist_nothing_return (void);
+
+_GI_TEST_EXTERN
GSList *regress_test_gslist_nothing_return2 (void);
+
+_GI_TEST_EXTERN
GSList *regress_test_gslist_container_return (void);
+
+_GI_TEST_EXTERN
GSList *regress_test_gslist_everything_return (void);
+
+_GI_TEST_EXTERN
void regress_test_gslist_nothing_in (const GSList *in);
+
+_GI_TEST_EXTERN
void regress_test_gslist_nothing_in2 (GSList *in);
+
+_GI_TEST_EXTERN
void regress_test_gslist_null_in(GSList *in);
+
+_GI_TEST_EXTERN
void regress_test_gslist_null_out(GSList **out_list);
/* GHashTable */
+_GI_TEST_EXTERN
const GHashTable *regress_test_ghash_null_return (void);
+
+_GI_TEST_EXTERN
const GHashTable *regress_test_ghash_nothing_return (void);
+
+_GI_TEST_EXTERN
GHashTable *regress_test_ghash_nothing_return2 (void);
+
+_GI_TEST_EXTERN
GHashTable *regress_test_ghash_gvalue_return (void);
+
+_GI_TEST_EXTERN
void regress_test_ghash_gvalue_in (GHashTable *hash);
+
+_GI_TEST_EXTERN
GHashTable *regress_test_ghash_container_return (void);
+
+_GI_TEST_EXTERN
GHashTable *regress_test_ghash_everything_return (void);
+
+_GI_TEST_EXTERN
void regress_test_ghash_null_in (const GHashTable *in);
+
+_GI_TEST_EXTERN
void regress_test_ghash_null_out (const GHashTable **out);
+
+_GI_TEST_EXTERN
void regress_test_ghash_nothing_in (const GHashTable *in);
+
+_GI_TEST_EXTERN
void regress_test_ghash_nothing_in2 (GHashTable *in);
+
+_GI_TEST_EXTERN
GHashTable *regress_test_ghash_nested_everything_return (void);
+
+_GI_TEST_EXTERN
GHashTable *regress_test_ghash_nested_everything_return2 (void);
/* GPtrArray */
+_GI_TEST_EXTERN
GPtrArray *regress_test_garray_container_return (void);
+
+_GI_TEST_EXTERN
GPtrArray *regress_test_garray_full_return (void);
/* error? */
/* closure */
+_GI_TEST_EXTERN
int regress_test_closure (GClosure *closure);
+
+_GI_TEST_EXTERN
int regress_test_closure_one_arg (GClosure *closure, int arg);
+
+_GI_TEST_EXTERN
GVariant *regress_test_closure_variant (GClosure *closure, GVariant* arg);
/* value */
+_GI_TEST_EXTERN
int regress_test_int_value_arg(const GValue *v);
+
+_GI_TEST_EXTERN
const GValue *regress_test_value_return(int i);
/* foreign structs */
#ifndef _GI_DISABLE_CAIRO
+_GI_TEST_EXTERN
cairo_t *regress_test_cairo_context_full_return (void);
+
+_GI_TEST_EXTERN
void regress_test_cairo_context_none_in (cairo_t *context);
+
+_GI_TEST_EXTERN
cairo_surface_t *regress_test_cairo_surface_none_return (void);
+
+_GI_TEST_EXTERN
cairo_surface_t *regress_test_cairo_surface_full_return (void);
+
+_GI_TEST_EXTERN
void regress_test_cairo_surface_none_in (cairo_surface_t *surface);
+
+_GI_TEST_EXTERN
void regress_test_cairo_surface_full_out (cairo_surface_t **surface);
#endif
/* versioning (deprecated, since, stability) */
+_GI_TEST_EXTERN
void regress_test_versioning (void);
+
+_GI_TEST_EXTERN
GVariant *regress_test_gvariant_i (void);
+
+_GI_TEST_EXTERN
GVariant *regress_test_gvariant_s (void);
+
+_GI_TEST_EXTERN
GVariant *regress_test_gvariant_asv (void);
+
+_GI_TEST_EXTERN
GVariant *regress_test_gvariant_v (void);
+
+_GI_TEST_EXTERN
GVariant *regress_test_gvariant_as (void);
/* enums / flags */
@@ -184,10 +382,15 @@ typedef enum
REGRESS_TEST_FLAG3 = 1 << 2,
} RegressTestFlags;
+_GI_TEST_EXTERN
GType regress_test_enum_get_type (void) G_GNUC_CONST;
#define REGRESS_TEST_TYPE_ENUM (regress_test_enum_get_type ())
+
+_GI_TEST_EXTERN
GType regress_test_enum_unsigned_get_type (void) G_GNUC_CONST;
#define REGRESS_TEST_TYPE_ENUM_UNSIGNED (regress_test_enum_unsigned_get_type ())
+
+_GI_TEST_EXTERN
GType regress_test_flags_get_type (void) G_GNUC_CONST;
#define REGRESS_TEST_TYPE_FLAGS (regress_test_flags_get_type ())
@@ -209,9 +412,14 @@ typedef enum
REGRESS_TEST_EVALUE3 = '0'
} RegressTestEnumNoGEnum;
+_GI_TEST_EXTERN
const gchar * regress_test_enum_param(RegressTestEnum e);
+
+_GI_TEST_EXTERN
const gchar * regress_test_unsigned_enum_param(RegressTestEnumUnsigned e);
+
+_GI_TEST_EXTERN
void regress_global_get_flags_out (RegressTestFlags *v);
/* error domains */
@@ -223,7 +431,10 @@ typedef enum
REGRESS_TEST_ERROR_CODE3 = 3
} RegressTestError;
+_GI_TEST_EXTERN
GType regress_test_error_get_type (void);
+
+_GI_TEST_EXTERN
GQuark regress_test_error_quark (void);
/* Test weird names, with and without
@@ -236,7 +447,10 @@ typedef enum
REGRESS_TEST_ABC_ERROR_CODE3 = 3
} RegressTestABCError;
+_GI_TEST_EXTERN
GType regress_test_abc_error_get_type (void);
+
+_GI_TEST_EXTERN
GQuark regress_test_abc_error_quark (void);
typedef enum
@@ -250,7 +464,10 @@ typedef enum
The difference is intentional, although it
is mainly meant for capitalization problems.
*/
+_GI_TEST_EXTERN
GType regress_test_unconventional_error_get_type (void);
+
+_GI_TEST_EXTERN
GQuark regress_test_unconventional_error_quark (void);
typedef enum
@@ -260,6 +477,7 @@ typedef enum
REGRESS_TEST_DEF_ERROR_CODE2 = 2
} RegressTestDEFError;
+_GI_TEST_EXTERN
GQuark regress_test_def_error_quark (void);
/* the scanner used to have problem
@@ -273,6 +491,7 @@ typedef enum
REGRESS_ATEST_ERROR_CODE2 = 2
} RegressATestError;
+_GI_TEST_EXTERN
GQuark regress_atest_error_quark (void);
@@ -305,8 +524,11 @@ struct _RegressTestStructA
RegressTestEnum some_enum;
};
+_GI_TEST_EXTERN
void regress_test_struct_a_clone (RegressTestStructA *a,
RegressTestStructA *a_out);
+
+_GI_TEST_EXTERN
void regress_test_struct_a_parse (RegressTestStructA *a_out, const gchar *string);
struct _RegressTestStructB
@@ -315,6 +537,7 @@ struct _RegressTestStructB
RegressTestStructA nested_a;
};
+_GI_TEST_EXTERN
void regress_test_struct_b_clone (RegressTestStructB *b,
RegressTestStructB *b_out);
@@ -386,10 +609,17 @@ struct _RegressTestSimpleBoxedA
};
/* Intentionally uses _get_gtype */
+_GI_TEST_EXTERN
GType regress_test_simple_boxed_a_get_gtype (void);
+
+_GI_TEST_EXTERN
RegressTestSimpleBoxedA *regress_test_simple_boxed_a_copy (RegressTestSimpleBoxedA *a);
+
+_GI_TEST_EXTERN
gboolean regress_test_simple_boxed_a_equals (RegressTestSimpleBoxedA *a,
RegressTestSimpleBoxedA *other_a);
+
+_GI_TEST_EXTERN
const RegressTestSimpleBoxedA *regress_test_simple_boxed_a_const_return (void);
@@ -399,7 +629,11 @@ struct _RegressTestSimpleBoxedB
RegressTestSimpleBoxedA nested_a;
};
+
+_GI_TEST_EXTERN
GType regress_test_simple_boxed_b_get_type (void);
+
+_GI_TEST_EXTERN
RegressTestSimpleBoxedB *regress_test_simple_boxed_b_copy (RegressTestSimpleBoxedB *b);
/* opaque boxed */
@@ -416,17 +650,34 @@ struct _RegressTestBoxed
RegressTestBoxedPrivate *priv;
};
+_GI_TEST_EXTERN
GType regress_test_boxed_get_type (void);
+
+_GI_TEST_EXTERN
RegressTestBoxed *regress_test_boxed_new (void);
+
+_GI_TEST_EXTERN
RegressTestBoxed *regress_test_boxed_new_alternative_constructor1 (int i);
+
+_GI_TEST_EXTERN
RegressTestBoxed *regress_test_boxed_new_alternative_constructor2 (int i, int j);
+
+_GI_TEST_EXTERN
RegressTestBoxed *regress_test_boxed_new_alternative_constructor3 (char *s);
+
+_GI_TEST_EXTERN
RegressTestBoxed *regress_test_boxed_copy (RegressTestBoxed *boxed);
+
+_GI_TEST_EXTERN
gboolean regress_test_boxed_equals (RegressTestBoxed *boxed,
RegressTestBoxed *other);
+
+_GI_TEST_EXTERN
void regress_test_boxeds_not_a_method (RegressTestBoxed *boxed);
+
+_GI_TEST_EXTERN
void regress_test_boxeds_not_a_static (void);
typedef struct _RegressTestBoxedB RegressTestBoxedB;
@@ -437,8 +688,14 @@ struct _RegressTestBoxedB
glong some_long;
};
+
+_GI_TEST_EXTERN
GType regress_test_boxed_b_get_type (void);
+
+_GI_TEST_EXTERN
RegressTestBoxedB *regress_test_boxed_b_new (gint8 some_int8, glong some_long);
+
+_GI_TEST_EXTERN
RegressTestBoxedB *regress_test_boxed_b_copy (RegressTestBoxedB *boxed);
typedef struct _RegressTestBoxedC RegressTestBoxedC;
@@ -449,17 +706,30 @@ struct _RegressTestBoxedC
guint another_thing;
};
+_GI_TEST_EXTERN
GType regress_test_boxed_c_get_type (void);
+
+_GI_TEST_EXTERN
RegressTestBoxedC *regress_test_boxed_c_new (void);
typedef struct _RegressTestBoxedD RegressTestBoxedD;
+
+_GI_TEST_EXTERN
GType regress_test_boxed_d_get_type (void);
+
+_GI_TEST_EXTERN
RegressTestBoxedD *regress_test_boxed_d_new (const char *a_string, int a_int);
+
+_GI_TEST_EXTERN
RegressTestBoxedD *regress_test_boxed_d_copy (RegressTestBoxedD *boxed);
+
+_GI_TEST_EXTERN
void regress_test_boxed_d_free (RegressTestBoxedD *boxed);
+
+_GI_TEST_EXTERN
int regress_test_boxed_d_get_magic (RegressTestBoxedD *boxed);
/* gobject */
@@ -517,22 +787,51 @@ struct _RegressTestObjClass
void (*_regress_reserved2) (void);
};
+_GI_TEST_EXTERN
GType regress_test_obj_get_type (void);
+
+_GI_TEST_EXTERN
RegressTestObj* regress_test_obj_new (RegressTestObj *obj);
+
+_GI_TEST_EXTERN
RegressTestObj* regress_constructor (void);
+
+_GI_TEST_EXTERN
RegressTestObj* regress_test_obj_new_from_file (const char *x, GError **error);
+
+_GI_TEST_EXTERN
void regress_test_obj_set_bare (RegressTestObj *obj, GObject *bare);
+
+_GI_TEST_EXTERN
void regress_test_obj_emit_sig_with_obj (RegressTestObj *obj);
+
+_GI_TEST_EXTERN
void regress_test_obj_emit_sig_with_foreign_struct (RegressTestObj *obj);
+
+_GI_TEST_EXTERN
void regress_test_obj_emit_sig_with_int64 (RegressTestObj *obj);
+
+_GI_TEST_EXTERN
void regress_test_obj_emit_sig_with_uint64 (RegressTestObj *obj);
+
+_GI_TEST_EXTERN
int regress_test_obj_instance_method (RegressTestObj *obj);
+
+_GI_TEST_EXTERN
void regress_test_obj_instance_method_full (RegressTestObj *obj);
+
+_GI_TEST_EXTERN
double regress_test_obj_static_method (int x);
+
+_GI_TEST_EXTERN
void regress_forced_method (RegressTestObj *obj);
+
+_GI_TEST_EXTERN
void regress_test_array_fixed_out_objects (RegressTestObj ***objs);
+
+_GI_TEST_EXTERN
void regress_test_obj_torture_signature_0 (RegressTestObj *obj,
int x,
double *y,
@@ -540,6 +839,8 @@ void regress_test_obj_torture_signature_0 (RegressTestObj *obj,
const char *foo,
int *q,
guint m);
+
+_GI_TEST_EXTERN
gboolean regress_test_obj_torture_signature_1 (RegressTestObj *obj,
int x,
double *y,
@@ -549,6 +850,8 @@ gboolean regress_test_obj_torture_signature_1 (RegressTestObj *obj,
guint m,
GError **error);
+
+_GI_TEST_EXTERN
gboolean regress_test_obj_skip_return_val (RegressTestObj *obj,
gint a,
gint *out_b,
@@ -559,10 +862,14 @@ gboolean regress_test_obj_skip_return_val (RegressTestObj *obj,
gint num2,
GError **error);
+
+_GI_TEST_EXTERN
gboolean regress_test_obj_skip_return_val_no_out (RegressTestObj *obj,
gint a,
GError **error);
+
+_GI_TEST_EXTERN
gboolean regress_test_obj_skip_param (RegressTestObj *obj,
gint a,
gint *out_b,
@@ -573,6 +880,8 @@ gboolean regress_test_obj_skip_param (RegressTestObj *obj,
gint num2,
GError **error);
+
+_GI_TEST_EXTERN
gboolean regress_test_obj_skip_out_param (RegressTestObj *obj,
gint a,
gint *out_b,
@@ -583,6 +892,8 @@ gboolean regress_test_obj_skip_out_param (RegressTestObj *obj,
gint num2,
GError **error);
+
+_GI_TEST_EXTERN
gboolean regress_test_obj_skip_inout_param (RegressTestObj *obj,
gint a,
gint *out_b,
@@ -594,9 +905,14 @@ gboolean regress_test_obj_skip_inout_param (RegressTestObj *obj,
GError **error);
/* virtual */
+_GI_TEST_EXTERN
int regress_test_obj_do_matrix (RegressTestObj *obj, const char *somestr);
+
+_GI_TEST_EXTERN
void regress_func_obj_null_in (RegressTestObj *obj);
+
+_GI_TEST_EXTERN
void regress_test_obj_null_out (RegressTestObj **obj);
/* inheritance */
@@ -618,9 +934,17 @@ struct _RegressTestSubObjClass
RegressTestObjClass parent_class;
};
+
+_GI_TEST_EXTERN
GType regress_test_sub_obj_get_type (void);
+
+_GI_TEST_EXTERN
RegressTestObj* regress_test_sub_obj_new (void);
+
+_GI_TEST_EXTERN
void regress_test_sub_obj_unset_bare (RegressTestSubObj *obj);
+
+_GI_TEST_EXTERN
int regress_test_sub_obj_instance_method (RegressTestSubObj *obj);
/* fundamental object */
@@ -656,13 +980,21 @@ struct _RegressTestFundamentalObjectClass {
RegressTestFundamentalObjectFinalizeFunction finalize;
};
+_GI_TEST_EXTERN
GType regress_test_fundamental_object_get_type (void);
+
+_GI_TEST_EXTERN
RegressTestFundamentalObject* regress_test_fundamental_object_ref (RegressTestFundamentalObject *fundamental_object);
+
+_GI_TEST_EXTERN
void regress_test_fundamental_object_unref (RegressTestFundamentalObject *fundamental_object);
#define REGRESS_TEST_VALUE_HOLDS_FUNDAMENTAL_OBJECT(value) (G_VALUE_HOLDS(value, REGRESS_TEST_TYPE_FUNDAMENTAL_OBJECT))
+_GI_TEST_EXTERN
void regress_test_value_set_fundamental_object (GValue *value, RegressTestFundamentalObject *fundamental_object);
+
+_GI_TEST_EXTERN
RegressTestFundamentalObject* regress_test_value_get_fundamental_object (const GValue *value);
typedef struct _RegressTestFundamentalSubObject RegressTestFundamentalSubObject;
@@ -678,8 +1010,12 @@ struct _RegressTestFundamentalSubObjectClass {
RegressTestFundamentalObjectClass fundamental_object_class;
};
+
+_GI_TEST_EXTERN
GType regress_test_fundamental_sub_object_get_type(void);
+
+_GI_TEST_EXTERN
RegressTestFundamentalSubObject *
regress_test_fundamental_sub_object_new (const char *data);
@@ -720,35 +1056,74 @@ typedef int (*RegressTestCallbackArray) (int *one, gsize one_length, const char*
*/
typedef void (* RegressTestCallbackArrayInOut) (int **ints, int *length);
+_GI_TEST_EXTERN
void regress_test_simple_callback (RegressTestSimpleCallback callback);
+
+_GI_TEST_EXTERN
int regress_test_callback (RegressTestCallback callback);
+
+_GI_TEST_EXTERN
int regress_test_multi_callback (RegressTestCallback callback);
+
+_GI_TEST_EXTERN
int regress_test_array_callback (RegressTestCallbackArray callback);
+
+_GI_TEST_EXTERN
int regress_test_array_inout_callback (RegressTestCallbackArrayInOut callback);
+
+_GI_TEST_EXTERN
int regress_test_callback_user_data (RegressTestCallbackUserData callback,
gpointer user_data);
+
+_GI_TEST_EXTERN
int regress_test_callback_destroy_notify (RegressTestCallbackUserData callback,
gpointer user_data,
GDestroyNotify notify);
+
+_GI_TEST_EXTERN
int regress_test_callback_destroy_notify_no_user_data (RegressTestCallbackUserData callback,
GDestroyNotify notify);
+
+_GI_TEST_EXTERN
int regress_test_callback_thaw_notifications (void);
+
+_GI_TEST_EXTERN
void regress_test_callback_async (RegressTestCallbackUserData callback, gpointer user_data);
+
+_GI_TEST_EXTERN
int regress_test_callback_thaw_async (void);
+
+_GI_TEST_EXTERN
void regress_test_async_ready_callback (GAsyncReadyCallback callback);
+
+_GI_TEST_EXTERN
void regress_test_obj_instance_method_callback (RegressTestObj *obj, RegressTestCallback callback);
+
+_GI_TEST_EXTERN
void regress_test_obj_static_method_callback (RegressTestCallback callback);
+
+_GI_TEST_EXTERN
RegressTestObj *regress_test_obj_new_callback (RegressTestCallbackUserData callback,
gpointer user_data,
GDestroyNotify notify);
+
+_GI_TEST_EXTERN
void regress_test_hash_table_callback (GHashTable *data, RegressTestCallbackHashtable callback);
+
+_GI_TEST_EXTERN
void regress_test_gerror_callback (RegressTestCallbackGError callback);
+
+_GI_TEST_EXTERN
void regress_test_null_gerror_callback (RegressTestCallbackGError callback);
+
+_GI_TEST_EXTERN
void regress_test_owned_gerror_callback (RegressTestCallbackOwnedGError callback);
+
+_GI_TEST_EXTERN
void regress_test_skip_unannotated_callback (RegressTestCallback callback);
typedef struct _RegressTestInterface RegressTestInterface;
@@ -765,6 +1140,7 @@ struct _RegressTestInterfaceIface {
GTypeInterface base_iface;
};
+_GI_TEST_EXTERN
GType regress_test_interface_get_type (void) G_GNUC_CONST;
/* gobject with non-standard prefix */
@@ -785,10 +1161,20 @@ typedef struct
GObjectClass parent_class;
} RegressTestWi8021xClass;
+
+_GI_TEST_EXTERN
GType regress_test_wi_802_1x_get_type (void);
+
+_GI_TEST_EXTERN
RegressTestWi8021x* regress_test_wi_802_1x_new (void);
+
+_GI_TEST_EXTERN
gboolean regress_test_wi_802_1x_get_testbool (RegressTestWi8021x *obj);
+
+_GI_TEST_EXTERN
void regress_test_wi_802_1x_set_testbool (RegressTestWi8021x *obj, gboolean v);
+
+_GI_TEST_EXTERN
int regress_test_wi_802_1x_static_method (int x);
/* floating gobject */
@@ -807,16 +1193,24 @@ typedef struct
GInitiallyUnownedClass parent_class;
} RegressTestFloatingClass;
+
+_GI_TEST_EXTERN
GType regress_test_floating_get_type (void);
+
+_GI_TEST_EXTERN
RegressTestFloating* regress_test_floating_new (void);
/* Function signature torture tests */
+
+_GI_TEST_EXTERN
void regress_test_torture_signature_0 (int x,
double *y,
int *z,
const char *foo,
int *q,
guint m);
+
+_GI_TEST_EXTERN
gboolean regress_test_torture_signature_1 (int x,
double *y,
int *z,
@@ -824,6 +1218,8 @@ gboolean regress_test_torture_signature_1 (int x,
int *q,
guint m,
GError **error);
+
+_GI_TEST_EXTERN
void regress_test_torture_signature_2 (int x,
RegressTestCallbackUserData callback,
gpointer user_data,
@@ -834,12 +1230,22 @@ void regress_test_torture_signature_2 (int x,
int *q,
guint m);
+
+_GI_TEST_EXTERN
GValue *regress_test_date_in_gvalue (void);
+
+_GI_TEST_EXTERN
GValue *regress_test_strv_in_gvalue (void);
+
+_GI_TEST_EXTERN
GObject * _regress_this_is_a_private_symbol (void);
+
+_GI_TEST_EXTERN
void regress_test_multiline_doc_comments (void);
+
+_GI_TEST_EXTERN
void regress_test_nested_parameter (int a);
/**
@@ -854,6 +1260,8 @@ typedef struct
double v;
} RegressSkippedStructure;
+
+_GI_TEST_EXTERN
void regress_random_function_with_skipped_structure (int x,
RegressSkippedStructure *foo,
double v);
@@ -881,6 +1289,8 @@ typedef RegressIntset RegressIntSet;
*/
typedef GPtrArray RegressPtrArrayAlias;
+
+_GI_TEST_EXTERN
void regress_introspectable_via_alias (RegressPtrArrayAlias *data);
/**
@@ -890,6 +1300,8 @@ void regress_introspectable_via_alias (RegressPtrArrayAlias *data);
*/
typedef va_list RegressVaListAlias;
+
+_GI_TEST_EXTERN
void regress_not_introspectable_via_alias (RegressVaListAlias ok);
/**
@@ -899,6 +1311,8 @@ void regress_not_introspectable_via_alias (RegressVaListAlias ok);
*/
typedef RegressTestBoxed RegressAliasedTestBoxed;
+
+_GI_TEST_EXTERN
void regress_aliased_caller_alloc (RegressAliasedTestBoxed *boxed);
/* private testing */
@@ -924,12 +1338,16 @@ typedef struct {
gint array[10];
} RegressTestStructFixedArray;
+
+_GI_TEST_EXTERN
void regress_test_struct_fixed_array_frob (RegressTestStructFixedArray *str);
typedef struct {
gchar name[32];
} RegressLikeXklConfigItem;
+
+_GI_TEST_EXTERN
void regress_like_xkl_config_item_set_name (RegressLikeXklConfigItem *self,
const char *name);
@@ -947,6 +1365,7 @@ void regress_like_xkl_config_item_set_name (RegressLikeXklConfigItem *self,
"POWERSHARE,PRODIGY,TLX,X400,GIF,CGM,WMF,BMP,MET,PMB,DIB,PICT,TIFF," \
"PDF,PS,JPEG,QTIME,MPEG,MPEG2,AVI,WAVE,AIFF,PCM,X509,PGP"
+_GI_TEST_EXTERN
void regress_has_parameter_named_attrs (int foo,
gpointer attributes);
diff --git a/tests/scanner/sletter.c b/tests/scanner/sletter.c
index a6e7bcca..8cb6db52 100644
--- a/tests/scanner/sletter.c
+++ b/tests/scanner/sletter.c
@@ -1,4 +1,5 @@
/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+#include "config.h"
#include "sletter.h"
diff --git a/tests/scanner/sletter.h b/tests/scanner/sletter.h
index 20797f6c..f6a146df 100644
--- a/tests/scanner/sletter.h
+++ b/tests/scanner/sletter.h
@@ -3,11 +3,14 @@
#include <gio/gio.h>
+#include "gitestmacros.h"
+
typedef struct {
double x;
double y;
} SPoint;
+_GI_TEST_EXTERN
void s_hello (void);
/* Like GSpawnError; not registered with GType */
@@ -17,6 +20,8 @@ typedef enum
S_SPAWN_ERROR_CODE2 = 2,
S_SPAWN_ERROR_CODE3 = 3
} SSpawnError;
+
+_GI_TEST_EXTERN
GQuark s_spawn_error_quark (void);
/* Like GDBusError but not registered with GType */
@@ -26,6 +31,8 @@ typedef enum
S_DBUS_ERROR_CODE2 = 2,
S_DBUS_ERROR_CODE3 = 3
} SDBusError;
+
+_GI_TEST_EXTERN
GQuark s_dbus_error_quark (void);
#endif
diff --git a/tests/scanner/typedefs.c b/tests/scanner/typedefs.c
index 7c1dea19..03614b64 100644
--- a/tests/scanner/typedefs.c
+++ b/tests/scanner/typedefs.c
@@ -1,3 +1,5 @@
+#include "config.h"
+
#include "typedefs.h"
static TypedefsBoxedWithTypedefBefore *
diff --git a/tests/scanner/typedefs.h b/tests/scanner/typedefs.h
index 2a5d8beb..7eaa73bb 100644
--- a/tests/scanner/typedefs.h
+++ b/tests/scanner/typedefs.h
@@ -3,6 +3,8 @@
#include <glib-object.h>
+#include "gitestmacros.h"
+
/*
* Tests for various orderings of typedef struct declarations.
*/
@@ -40,6 +42,8 @@ typedef struct _TypedefsBoxedWithTypedefBefore TypedefsBoxedWithTypedefBefore;
struct _TypedefsBoxedWithTypedefBefore {
int value;
};
+
+_GI_TEST_EXTERN
GType typedefs_boxed_with_typedef_before_get_type (void) G_GNUC_CONST;
@@ -48,6 +52,8 @@ struct _TypedefsBoxedWithTypedefAfter {
int value;
};
typedef struct _TypedefsBoxedWithTypedefAfter TypedefsBoxedWithTypedefAfter;
+
+_GI_TEST_EXTERN
GType typedefs_boxed_with_typedef_after_get_type (void) G_GNUC_CONST;
@@ -55,6 +61,8 @@ GType typedefs_boxed_with_typedef_after_get_type (void) G_GNUC_CONST;
typedef struct _TypedefsBoxedWithTagAndTypedef {
int value;
} TypedefsBoxedWithTagAndTypedef;
+
+_GI_TEST_EXTERN
GType typedefs_boxed_with_tag_and_typedef_get_type (void) G_GNUC_CONST;
@@ -62,11 +70,15 @@ GType typedefs_boxed_with_tag_and_typedef_get_type (void) G_GNUC_CONST;
typedef struct {
int value;
} TypedefsBoxedWithAnonymousTypedef;
+
+_GI_TEST_EXTERN
GType typedefs_boxed_with_anonymous_typedef_get_type (void) G_GNUC_CONST;
/* BUG: uses <record> instead of <glib:boxed> */
typedef struct _TypedefsBoxedWithHiddenStruct TypedefsBoxedWithHiddenStruct;
+
+_GI_TEST_EXTERN
GType typedefs_boxed_with_hidden_struct_get_type (void) G_GNUC_CONST;
diff --git a/tests/scanner/utility.c b/tests/scanner/utility.c
index fb1cf5a0..c5e48a4e 100644
--- a/tests/scanner/utility.c
+++ b/tests/scanner/utility.c
@@ -1,4 +1,6 @@
/* -*- mode: C; c-file-style: "gnu"; indent-tabs-mode: nil; -*- */
+#include "config.h"
+
#include "utility.h"
G_DEFINE_TYPE (UtilityObject, utility_object, G_TYPE_OBJECT);
diff --git a/tests/scanner/utility.h b/tests/scanner/utility.h
index 8dc6d549..ff1c3824 100644
--- a/tests/scanner/utility.h
+++ b/tests/scanner/utility.h
@@ -3,6 +3,8 @@
#include <glib-object.h>
+#include "gitestmacros.h"
+
#define UTILITY_TYPE_OBJECT (utility_object_get_type ())
#define UTILITY_OBJECT(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), UTILITY_TYPE_OBJECT, UtilityObject))
#define UTILITY_IS_OBJECT(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), UTILITY_TYPE_OBJECT))
@@ -53,7 +55,11 @@ typedef struct
typedef void (*UtilityFileFunc)(const char *path, gpointer user_data);
+
+_GI_TEST_EXTERN
GType utility_object_get_type (void) G_GNUC_CONST;
+
+_GI_TEST_EXTERN
void utility_object_watch_dir (UtilityObject *object,
const char *path,
UtilityFileFunc func,
@@ -90,6 +96,7 @@ typedef union
double real;
} UtilityUnion;
+_GI_TEST_EXTERN
void utility_dir_foreach (const char *path, UtilityFileFunc func, gpointer user_data);
#endif /* __UTILITY_H__ */
diff --git a/tests/scanner/warnlib.h b/tests/scanner/warnlib.h
index a4c28b47..546e8ea3 100644
--- a/tests/scanner/warnlib.h
+++ b/tests/scanner/warnlib.h
@@ -5,9 +5,13 @@
#include <gio/gio.h>
+#include "gitestmacros.h"
+
#define WARNLIB_UNPAIRED_ERROR (warnlib_unpaired_error_quark ())
+_GI_TEST_EXTERN
GQuark warnlib_unpaired_error_quark (void);
+_GI_TEST_EXTERN
gboolean warnlib_throw_unpaired (GError **error);
/* interface */
@@ -31,9 +35,12 @@ struct _WarnLibWhateverIface
void (*do_boo) (WarnLibWhatever *self, int x, gpointer y);
};
+_GI_TEST_EXTERN
void warnlib_whatever_do_moo (WarnLibWhatever *self, int, gpointer);
+_GI_TEST_EXTERN
void warnlib_whatever_do_boo (WarnLibWhatever *self, int, gpointer);
+_GI_TEST_EXTERN
GType warnlib_whatever_get_type (void) G_GNUC_CONST;
#endif