]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
Report error when using conflicting method modifiers in Genie parser
authorJamie McCracken <jamiemcc gnome org>
Mon, 13 Apr 2009 21:57:03 +0000 (17:57 -0400)
committerJamie McCracken <jamiemcc gnome org>
Mon, 13 Apr 2009 21:57:03 +0000 (17:57 -0400)
vala/valagenieparser.vala

index cef9324e749d5cca74f7731f232fa9b5db62c90d..3bca60049f4d002cf52b853083a903d61251ab7d 100644 (file)
@@ -2663,6 +2663,11 @@ public class Vala.Genie.Parser : CodeVisitor {
                if (ModifierFlags.OVERRIDE in flags) {
                        method.overrides = true;
                }
+               if ((method.is_abstract && method.is_virtual)
+                   || (method.is_abstract && method.overrides)
+                   || (method.is_virtual && method.overrides)) {
+                       throw new ParseError.SYNTAX (get_error ("only one of `abstract', `virtual', or `override' may be specified"));
+               }
                if (ModifierFlags.INLINE in flags) {
                        method.is_inline = true;
                }