Add support for prefer line break at end of file. This allows us to insert code
between files without affecting the source maps or deobfuscation.

This solution shifts an existing line break if it is near eof, which may result
in a line longer than the normal line length advisory limit. The only
alternative to that is to miss many eofs, which can impact the ability to place
interstitial code, or to place a break at the end of every file, which leads to
a hugely excessive number of breaks.

We could probably do better if we tracked line length across file boundaries
which we currently do not.

R=acleung,johnlenz
DELTA=149  (128 added, 0 deleted, 21 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4172


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@1762 b0f006be-c8cd-11de-a2e8-8d36a3108c74

Replace / with File.separator
Fixes issue 656
Contributed by Ben McCann

Revision created by MOE tool push_codebase.

R=malteubl
DELTA=7  (3 added, 0 deleted, 4 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4173


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@1766 b0f006be-c8cd-11de-a2e8-8d36a3108c74

fix a copy/paste error
fixes issue 650
contributed by Ben McCann

R=malteubl
DELTA=3  (1 added, 0 deleted, 2 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4178


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@1767 b0f006be-c8cd-11de-a2e8-8d36a3108c74

Normalize the file name prefix if it doesn't end with /
Makes some things public
fixes issue 651
fixes issue 652

Contributed by Ben McCann

R=malteubl
DELTA=24  (11 added, 6 deleted, 7 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4179


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@1768 b0f006be-c8cd-11de-a2e8-8d36a3108c74

It doesn't make sense for a subclass method to require arguments that aren't required by the superclass method.

fixes issue 634

R=acleung
DELTA=149  (93 added, 16 deleted, 40 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4184


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@1769 b0f006be-c8cd-11de-a2e8-8d36a3108c74

Added progress reporting capability to JSCompiler. For now
it only takes into account parsing and check passes which
are the pieces that we care about.

R=nicksantos
DELTA=95  (90 added, 0 deleted, 5 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4192


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@1770 b0f006be-c8cd-11de-a2e8-8d36a3108c74

fix a minor type parsing bug
Add some tests to ensure that you can use unknown variable argument
lists to silence warnings

R=acleung
DELTA=83  (83 added, 0 deleted, 0 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4193


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@1771 b0f006be-c8cd-11de-a2e8-8d36a3108c74

Inline some methods to save stack space, particularly
for expressions with loads of COMMAs

R=acleung
DELTA=77  (41 added, 17 deleted, 19 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4194


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@1772 b0f006be-c8cd-11de-a2e8-8d36a3108c74

output the module config even in the degenerate case

R=laszlocsomor
DELTA=56  (42 added, 1 deleted, 13 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4209


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@1773 b0f006be-c8cd-11de-a2e8-8d36a3108c74

Add support for @suppress {undefinedNames}.

R=nicksantos
DELTA=23  (22 added, 0 deleted, 1 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4210


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@1774 b0f006be-c8cd-11de-a2e8-8d36a3108c74

Negative zero is a special case, and needs to be handled
differently to prevent it from getting confused with decrement
fixes issue 657

R=johnlenz
DELTA=9  (7 added, 0 deleted, 2 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4211


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@1775 b0f006be-c8cd-11de-a2e8-8d36a3108c74

Fix a bug where ToNumber(-Infinity) would replace itself
with -Infinity, and go into an infinite loop

R=acleung
DELTA=12  (9 added, 0 deleted, 3 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4213


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@1776 b0f006be-c8cd-11de-a2e8-8d36a3108c74

slight tweak to arity checking:
if the subclass method doesn't need all the arguments
of the superclass method, then don't require them

R=johnlenz
DELTA=73  (62 added, 7 deleted, 4 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4217


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@1777 b0f006be-c8cd-11de-a2e8-8d36a3108c74

Adds variable arguments to jQuery Proxy function.
This eliminates compilation warnings for correct usage of the function.

R=nicksantos,johnlenz


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4218


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@1778 b0f006be-c8cd-11de-a2e8-8d36a3108c74

Loosen up interface checks

R=johnlenz
DELTA=28  (25 added, 2 deleted, 1 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4219


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@1779 b0f006be-c8cd-11de-a2e8-8d36a3108c74

moved JSCompiler dependencies to open source

R=nicksantos
DELTA=502  (265 added, 231 deleted, 6 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4220


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@1780 b0f006be-c8cd-11de-a2e8-8d36a3108c74

Add externs for window.performance.memory.

See http://blog.chromium.org/2011/05/chrome-developer-tools-put-javascript.html

R=adeboor
DELTA=10  (10 added, 0 deleted, 0 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4229


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@1781 b0f006be-c8cd-11de-a2e8-8d36a3108c74

Updating externs head.
Adding 3.8 externs.

R=sraub
DELTA=5252  (4838 added, 235 deleted, 179 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4230


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@1782 b0f006be-c8cd-11de-a2e8-8d36a3108c74

Automated g4 rollback.

*** Reason for rollback ***

It broke stuff.

*** Original change description ***

Updating externs head.
Adding 3.8 externs.


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4231


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@1783 b0f006be-c8cd-11de-a2e8-8d36a3108c74

Prevent unsupport JavaScript variants that Rhino can parse from
crashing the compiler in "ide mode".
Fixes issue 663

R=nicksantos
DELTA=42  (41 added, 0 deleted, 1 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=4239


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@1786 b0f006be-c8cd-11de-a2e8-8d36a3108c74