summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tests/methods/bug774060.vala26
1 files changed, 26 insertions, 0 deletions
diff --git a/tests/methods/bug774060.vala b/tests/methods/bug774060.vala
index 84ab9c665..fe025e50c 100644
--- a/tests/methods/bug774060.vala
+++ b/tests/methods/bug774060.vala
@@ -1,7 +1,33 @@
+class Foo : Object {
+ public unowned string format (string bar, int baz, [FormatArg] string format) {
+ return format;
+ }
+
+ [CCode (instance_pos = -1)]
+ public unowned string format_pos (string bar, int baz, [FormatArg] string format) {
+ return format;
+ }
+
+ [NoWrapper]
+ public virtual unowned string format_virtual (string bar, int baz, [FormatArg] string format) {
+ return format;
+ }
+
+ public static unowned string format_static (string foo, int baz, [FormatArg] string format) {
+ return format;
+ }
+}
+
unowned string format_wrapper ([FormatArg] string format) {
return format;
}
void main () {
print (format_wrapper ("%d"), 42);
+
+ var foo = new Foo ();
+ print (foo.format ("", 0, "%d"), 42);
+ print (foo.format_pos ("", 0, "%d"), 42);
+ print (foo.format_virtual ("", 0, "%d"), 42);
+ print (Foo.format_static ("", 0, "%d"), 42);
}