Reviewers: ihab.awad,

Description:
http://code.google.com/p/google-caja/issues/detail?id=1110
    file x.js
    (function () {
        try {} catch (x) {}
    })();

    page.html
    <!doctype html><head></head><body>
    <script src="x.js"></script>
    <script>var x = 'boom';</script>
    </body></html>

    This generates the following error from cajole_html:
    [exec] ERROR: x.js:2+19 - 20: Declaration of x masks declaration at
    basic.html:10+5 - 6

    There is no error for
    <script>(function () { var x = 'boom'; })();</script>

Changed Scope to not prevent exception/var masking across function
scope boundaries.

Please review this at http://codereview.appspot.com/121059

Affected files:
  M     src/com/google/caja/parser/quasiliteral/Scope.java
  M     tests/com/google/caja/parser/quasiliteral/ScopeTest.java


Reply via email to