[Nice-commit] Nice/src/bossa/modules Package.java,1.91,1.92
Brought to you by:
bonniot
From: <bo...@us...> - 2003-06-22 09:52:00
|
Update of /cvsroot/nice/Nice/src/bossa/modules In directory sc8-pr-cvs1:/tmp/cvs-serv12418/src/bossa/modules Modified Files: Package.java Log Message: Generate bytecode instance constructors that omit the fields with default values, in addition to the ones listing all fields. Index: Package.java =================================================================== RCS file: /cvsroot/nice/Nice/src/bossa/modules/Package.java,v retrieving revision 1.91 retrieving revision 1.92 diff -C2 -d -r1.91 -r1.92 *** Package.java 14 Jun 2003 14:20:38 -0000 1.91 --- Package.java 22 Jun 2003 09:51:56 -0000 1.92 *************** *** 321,330 **** // An interface file does not have to be typecheked. // It is known to be type correct from previous compilation! ! if (!compiling()) ! return; ! ! compilation.progress(this, "typechecking"); ! ast.typechecking(); } --- 321,331 ---- // An interface file does not have to be typecheked. // It is known to be type correct from previous compilation! ! // We still call ast.typechecking, but with a value telling ! // that only bookeeping tasks are needed, and we don't advertise ! // this pass. ! if (compiling()) ! compilation.progress(this, "typechecking"); ! ast.typechecking(compiling()); } *************** *** 602,605 **** --- 603,614 ---- { thisPkg.addClass(classe); + + /* If a class need an outer frame (for instance if the constructor + defines an anonymous function), then use the dispatch class. + The implementation class would be inappropriate, since it is + not regenerated when importing a compiled package, while + classes and the dispatch class are. + */ + classe.outer = dispatchClass; } |