summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJürg Billeter <j@bitron.ch>2012-08-06 14:32:06 +0200
committerJürg Billeter <j@bitron.ch>2012-08-06 14:36:22 +0200
commit333806694d68646636b060755924ab0f30e3e898 (patch)
tree46da8f9db78963ee6e1b93064cb4309c631cab67
parent01d20d5e6eb94f8635bd067830021c38c5f054a1 (diff)
downloadvala-333806694d68646636b060755924ab0f30e3e898.tar.gz
Warn when accessing static members with an instance reference
Fixes bug 661034.
-rw-r--r--vala/valamemberaccess.vala6
1 files changed, 5 insertions, 1 deletions
diff --git a/vala/valamemberaccess.vala b/vala/valamemberaccess.vala
index f8d581afa..8b480e1f7 100644
--- a/vala/valamemberaccess.vala
+++ b/vala/valamemberaccess.vala
@@ -1,6 +1,6 @@
/* valamemberaccess.vala
*
- * Copyright (C) 2006-2011 Jürg Billeter
+ * Copyright (C) 2006-2012 Jürg Billeter
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
@@ -771,6 +771,10 @@ public class Vala.MemberAccess : Expression {
check_lvalue_access ();
}
+ if (!instance && !klass && may_access_instance_members && inner != null) {
+ Report.warning (source_reference, "Access to static member `%s' with an instance reference".printf (symbol_reference.get_full_name ()));
+ }
+
if (context.experimental_non_null && instance && inner.value_type.nullable &&
!(inner.value_type is PointerType) && !(inner.value_type is GenericType)) {
Report.error (source_reference, "Access to instance member `%s' from nullable reference denied".printf (symbol_reference.get_full_name ()));