]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
vala: Don't warn about deprecated symbols if installed_version is older
authorRico Tzschichholz <ricotz@ubuntu.com>
Fri, 5 May 2017 06:19:28 +0000 (08:19 +0200)
committerRico Tzschichholz <ricotz@ubuntu.com>
Tue, 9 May 2017 11:49:28 +0000 (13:49 +0200)
vala/valaversionattribute.vala

index 9c3df391fa63eddb80b134d5c49eef78b67886cd..4af5da27a34ca5570c5c80c2ee55f6393963efcb 100644 (file)
@@ -150,7 +150,9 @@ public class Vala.VersionAttribute {
 
                // deprecation:
                if (symbol.external_package && deprecated) {
-                       if (!CodeContext.get ().deprecated) {
+                       string? package_version = symbol.source_reference.file.installed_version;
+
+                       if (!CodeContext.get ().deprecated && (package_version == null || deprecated_since == null || VersionAttribute.cmp_versions (package_version, deprecated_since) >= 0)) {
                                Report.deprecated (source_ref, "%s %s%s".printf (symbol.get_full_name (), (deprecated_since == null) ? "is deprecated" : "has been deprecated since %s".printf (deprecated_since), (replacement == null) ? "" : ". Use %s".printf (replacement)));
                        }
                        result = true;