fixed some mess with symbols/scope

- all symbols now have a `thedef` property which is a SymbolDef object,
  instead of the `uniq` that we had before (pointing to the first occurrence
  of the name as declaration).

- for undeclared symbols we still create a SymbolDef object in the toplevel
  scope but mark it "undeclared"

- we can now call figure_out_scope after squeezing, which is useful in order
  not to mangle names that were dropped by the squeezer
This commit is contained in:
Mihai Bazon
2012-09-11 15:42:28 +03:00
parent da407d46c6
commit 8e82d8d94c
6 changed files with 204 additions and 150 deletions

View File

@@ -73,6 +73,7 @@ UglifyJS.base54.sort();
files.forEach(do_file_3);
if (ARGS.v) {
sys.error("BASE54 digits: " + UglifyJS.base54.get());
//sys.error("Frequency: " + sys.inspect(UglifyJS.base54.freq()));
}
output = output.get();