]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
method: Print encountered type if return types mismatch
authorTimm Bäder <mail@baedert.org>
Sat, 5 Nov 2016 13:02:16 +0000 (14:02 +0100)
committerTimm Bäder <mail@baedert.org>
Sat, 5 Nov 2016 20:15:48 +0000 (21:15 +0100)
If a class overrides a method of a base type, print both the encountered
return type and the return type expected by the base class.

https://bugzilla.gnome.org/show_bug.cgi?id=769501

vala/valamethod.vala

index ec35e00b5c1b87f0b2cac19ede5aba8200946b53..8f8c6391c55dd2fe9018a3a4173d93106a2480c6 100644 (file)
@@ -344,7 +344,7 @@ public class Vala.Method : Subroutine, Callable {
 
                var actual_base_type = base_method.return_type.get_actual_type (object_type, method_type_args, this);
                if (!return_type.equals (actual_base_type)) {
-                       invalid_match = "incompatible return type";
+                       invalid_match = "Base method expected return type `%s', but `%s' was provided".printf (actual_base_type.to_qualified_string (), return_type.to_qualified_string ());
                        return false;
                }