diff -r e1a6deaa6ebe -r b8f650a441a5 src/compiler/SemanticAnalysis.cpp --- a/src/compiler/SemanticAnalysis.cpp Sun Nov 18 15:00:08 2012 -0800 +++ b/src/compiler/SemanticAnalysis.cpp Sun Nov 18 15:24:30 2012 -0800 @@ -148,7 +148,10 @@ __ object(funobj); __ setglobal(sym); - __ public_(); + if (stmt->token() == TOK_PUBLIC) + __ public_(); + else + __ pop(); } Function * @@ -529,7 +532,7 @@ if ((hir = coerce(hir, lval->type(), Coerce_Assign)) == NULL) return; - hir_ = new (pool_) HStore(lval, hir); + hir_ = new (pool_) HStore(node->token(), lval, hir); } void