--- /dev/null
+package p {
+ public class C {
+ public function e() {
+ }
+ }
+ public class D extends C {
+ override function f() {
+ // illegal override: no f() in superclass
+ }
+ }
+}
--- /dev/null
+package {
+ public namespace ns1 = "http://www.namespace.com/"
+
+ public class Test {
+ public ns1 function name() {
+ // error: either namespace *or* public
+ }
+ }
+}
--- /dev/null
+package {
+
+ import flash.display.MovieClip
+
+ public class B extends C {
+ static var x:String = "error";
+
+ function f() {
+ /* the compiler should prefer the superclass x
+ over the static x */
+ return x;
+ }
+ }
+
+ public class C extends D {
+ }
+
+ public class D {
+ var x:String = "ok";
+ }
+
+
+ public class Main extends flash.display.MovieClip {
+ function Main() {
+ trace((new B()).f());
+ }
+ }
+
+}
from optparse import OptionParser
CMD_ARGS=[]
-#CMD = "./parser"
-CMD="as3compile"
+CMD = "./parser"
+#CMD="as3compile"
CMD_ARGS=["-o","abc.swf"]
def check(s):
self.runtime = 5 # allow more time if we're tagging this state
self.checknum=-1
+ self.checkfile=None
if len(args):
- self.checknum = int(args[0])
+ try:
+ self.checknum = int(args[0])
+ except ValueError:
+ self.checkfile = args[0]
@staticmethod
def load(filename):
fi.close()
def highlight(self, nr, filename):
+ if self.checkfile and filename==self.checkfile:
+ return 1
return self.checknum==nr
def skip_file(self, nr, filename):
if self.checknum>=0 and nr!=self.checknum:
return 1
+ if self.checkfile and filename!=self.checkfile:
+ return 1
if not self.all and self.milestone.get(filename,"new")!="ok":
return 1
if self.diff and self.filename2status(filename,"new")=="ok":