]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
Do not warn when internal member is unused with --internal-header
authorJürg Billeter <j@bitron.ch>
Sun, 21 Mar 2010 11:09:17 +0000 (12:09 +0100)
committerJürg Billeter <j@bitron.ch>
Sun, 21 Mar 2010 11:09:17 +0000 (12:09 +0100)
Fixes bug 613035.

vala/valaflowanalyzer.vala

index a90e157508cb0be0d92ba797a182179057467519..96bf759502dcfb41bd44d9afabbcd81236581b04 100644 (file)
@@ -131,7 +131,11 @@ public class Vala.FlowAnalyzer : CodeVisitor {
 
        public override void visit_field (Field f) {
                if (f.is_internal_symbol () && !f.used) {
-                       Report.warning (f.source_reference, "field `%s' never used".printf (f.get_full_name ()));
+                       if (!f.is_private_symbol () && context.internal_header_filename != null) {
+                               // do not warn if internal member may be used outside this compilation unit
+                       } else {
+                               Report.warning (f.source_reference, "field `%s' never used".printf (f.get_full_name ()));
+                       }
                }
        }
 
@@ -158,7 +162,11 @@ public class Vala.FlowAnalyzer : CodeVisitor {
                if (m.is_internal_symbol () && !m.used && !m.entry_point
                    && !m.overrides && (m.base_interface_method == null || m.base_interface_method == m)
                    && !(m is CreationMethod)) {
-                       Report.warning (m.source_reference, "method `%s' never used".printf (m.get_full_name ()));
+                       if (!m.is_private_symbol () && context.internal_header_filename != null) {
+                               // do not warn if internal member may be used outside this compilation unit
+                       } else {
+                               Report.warning (m.source_reference, "method `%s' never used".printf (m.get_full_name ()));
+                       }
                }
 
                if (m.body == null) {