summaryrefslogtreecommitdiff
path: root/tests/scanner/foo.c
diff options
context:
space:
mode:
authorDan Winship <danw@gnome.org>2012-05-26 20:19:39 -0400
committerDan Winship <danw@gnome.org>2012-05-26 20:23:52 -0400
commit44cf78baf6496835abbf3c092895c2a46a2d4ef0 (patch)
tree48893535ca6ae33d3d989e53b382196b2c3d30f3 /tests/scanner/foo.c
parent6e25b3849692cd9afcfbb4152e7e8e213fd37917 (diff)
downloadgobject-introspection-44cf78baf6496835abbf3c092895c2a46a2d4ef0.tar.gz
scanner: allow for functions that look like constructors but aren't
If the scanner found a function with _new in its name, but not prefixed by the name of a known type, it would assume that the function was a constructor, and then complain that it couldn't figure out what it was a constructor for, and mark it introspectable=0. Instead, just assume that the function is not actually a constructor in that case (unless it's explicitly tagged as such). https://bugzilla.gnome.org/show_bug.cgi?id=676815
Diffstat (limited to 'tests/scanner/foo.c')
-rw-r--r--tests/scanner/foo.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/tests/scanner/foo.c b/tests/scanner/foo.c
index fb20c7a6..f8cc350b 100644
--- a/tests/scanner/foo.c
+++ b/tests/scanner/foo.c
@@ -782,3 +782,17 @@ foo_object_append_new_stack_layer (FooObject *obj, int x)
{
return NULL;
}
+
+/**
+ * foo_not_a_constructor_new:
+ *
+ * This should be scanned as a top-level function, and shouldn't cause
+ * a "Can't find matching type for constructor" warning.
+ *
+ * Returns: (transfer none):
+ */
+FooObject *
+foo_not_a_constructor_new (void)
+{
+ return NULL;
+}