vala r1604 - in trunk: . vala
- From: jamiemcc svn gnome org
- To: svn-commits-list gnome org
- Subject: vala r1604 - in trunk: . vala
- Date: Tue, 17 Jun 2008 00:57:12 +0000 (UTC)
Author: jamiemcc
Date: Tue Jun 17 00:57:12 2008
New Revision: 1604
URL: http://svn.gnome.org/viewvc/vala?rev=1604&view=rev
Log:
2008-06-16 Jamie McCracken <jamiemcc gnome org>
* vala/valagenieparser.vala:
Report error when using invalid modifiers for methods and fields,
Modified:
trunk/ChangeLog
trunk/vala/valagenieparser.vala
Modified: trunk/vala/valagenieparser.vala
==============================================================================
--- trunk/vala/valagenieparser.vala (original)
+++ trunk/vala/valagenieparser.vala Tue Jun 17 00:57:12 2008
@@ -2313,11 +2313,15 @@
ns.add_delegate ((Delegate) sym);
} else if (sym is Method) {
var method = (Method) sym;
- method.binding = MemberBinding.STATIC;
+ if (method.binding == MemberBinding.INSTANCE) {
+ method.binding = MemberBinding.STATIC;
+ }
ns.add_method (method);
} else if (sym is Field) {
var field = (Field) sym;
- field.binding = MemberBinding.STATIC;
+ if (field.binding == MemberBinding.INSTANCE) {
+ field.binding = MemberBinding.STATIC;
+ }
ns.add_field (field);
} else if (sym is Constant) {
ns.add_constant ((Constant) sym);
@@ -2525,6 +2529,10 @@
var f = new Field (id, type, null, get_src_com (begin));
+ if (ModifierFlags.ABSTRACT in flags || ModifierFlags.VIRTUAL in flags || ModifierFlags.OVERRIDE in flags) {
+ Report.error (f.source_reference, "abstract, virtual, and override modifiers are not applicable to fields");
+ }
+
if (ModifierFlags.PRIVATE in flags) {
f.access = SymbolAccessibility.PRIVATE;
} else {
@@ -2537,7 +2545,6 @@
f.initializer = parse_expression ();
}
-
if (ModifierFlags.STATIC in flags) {
f.binding = MemberBinding.STATIC;
} else if (ModifierFlags.CLASS in flags) {
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]