  *
  * Grammar
  *
- *   file      ::= component category ifdef* (decls | methods | prologue | epilogue | test)*
+ *   file      ::= component category ifdef* prefix? (decls | methods | prologue | epilogue | test)*
  *   component ::= SOL "%%component" ident EOL
  *   category  ::= SOL "%%category" ident EOL
  *   ifdef     ::= SOL ( "%%ifdef" | "%%ifndef" ) ident EOL
+ *   prefix    ::= SOL "%%prefix" EOL text
  *   decls     ::= SOL "%%decls" EOL text
  *   methods   ::= SOL "%%methods" EOL text
  *   prologue  ::= SOL "%%prologue" EOL text

		var category = null;
		var ifdefs = [];
		var ifndefs = [];
		var decls = [];
		var methods = [];
		var prologue = null;

			s.push(st.ifndef_text);
		s.push("namespace avmplus {");

		for ( var i=0 ; i < st.prefix.length ; i++ )
			s.push(st.prefix[i]);

		s.push("class " + classname + " : public Selftest {");
        s.push("public:");
		s.push(classname + "(AvmCore* core);");
