canAssignTo -> isSubtype
there's no real reason for this method to exist

R=dimvar
DELTA=415  (0 added, 11 deleted, 404 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=5872


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@2349 b0f006be-c8cd-11de-a2e8-8d36a3108c74
Externs for Maps API v3.11.1.

R=lukem
DELTA=5691  (5689 added, 0 deleted, 2 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=5873


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@2350 b0f006be-c8cd-11de-a2e8-8d36a3108c74
externs/es5.js: Fix the return type of Object.seal and Object.freeze.

These methods return {!Object}, the object that was passed in.

See https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Object/freeze.

R=johnlenz
DELTA=9  (3 added, 0 deleted, 6 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=5878


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@2351 b0f006be-c8cd-11de-a2e8-8d36a3108c74
Introduce a type relationship visitor, and a "can cast" relationship.

R=nicksantos
DELTA=387  (387 added, 0 deleted, 0 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=5879


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@2352 b0f006be-c8cd-11de-a2e8-8d36a3108c74
Remove trailing whitespace produced by warnings whitelist generator.

R=johnlenz
DELTA=1  (0 added, 0 deleted, 1 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=5880


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@2353 b0f006be-c8cd-11de-a2e8-8d36a3108c74
Angular's $location.path returns $location when called with a string parameter.

R=wesalvaro
DELTA=2  (0 added, 0 deleted, 2 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=5881


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@2354 b0f006be-c8cd-11de-a2e8-8d36a3108c74
Some corrections to the "canCastTo" relationship. Add some basic tests
but the bulk of the tests remain in TypeCheckTest.

R=nicksantos
DELTA=106  (94 added, 5 deleted, 7 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=5882


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@2355 b0f006be-c8cd-11de-a2e8-8d36a3108c74
Add latest chrome speech api to javascript externs.

R=nicksantos
DELTA=190  (188 added, 0 deleted, 2 changed)

Revision created by MOE tool push_codebase.
MOE_MIGRATION=5883


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@2356 b0f006be-c8cd-11de-a2e8-8d36a3108c74
making EventListener an interface to be compliant with
http://www.w3.org/TR/DOM-Level-2-Events/events.html#Events-EventListener

R=nicksantos,lukem,arnt
DELTA=2  (0 added, 0 deleted, 2 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=5884


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@2357 b0f006be-c8cd-11de-a2e8-8d36a3108c74
Emit an error if the output is the same as the input.
Fixes issue 867

R=johnlenz
DELTA=25  (25 added, 0 deleted, 0 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=5907


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@2358 b0f006be-c8cd-11de-a2e8-8d36a3108c74
AngularJS: Fix for $cacheFactory. As it was, it couldn't be used as a @param definition.

R=dnadasi,wesalvaro


Revision created by MOE tool push_codebase.
MOE_MIGRATION=5908


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@2359 b0f006be-c8cd-11de-a2e8-8d36a3108c74
No code changes!
This is just some proofreading of the comments as I read some of the
source files. Let me know if I butchered anything.

R=acleung
DELTA=25  (0 added, 1 deleted, 24 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=5909


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@2360 b0f006be-c8cd-11de-a2e8-8d36a3108c74
Proposal: change how we represent property sets on objects.
I went down this rabbit-hole to experiment with a few different things:
- Separating property bookkeeping from type relation bookkeeping.
- Use the same property-store for "new Foo()" and "Foo.prototype".
I don't think that maintaining separate property maps for these two
types actually buys us anything, and it's inconsistent with how they're
used in practice.
- Use the same property-store for "Foo.<Bar>" and "Foo.<Baz>"
I actually like how this ended up--it's a lot easier to see how properties
are inherited. But I'm curious what others think.

R=johnlenz,dimvar
DELTA=507  (347 added, 143 deleted, 17 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=5910


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@2361 b0f006be-c8cd-11de-a2e8-8d36a3108c74
When inferring the template type for a varargs template parameter,
collect the types of the following parameters as well. This improves
the handling of Array.prototype.push and similiar functions.

R=nicksantos
DELTA=25  (24 added, 0 deleted, 1 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=5911


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@2362 b0f006be-c8cd-11de-a2e8-8d36a3108c74
Fix bugs around NoResolvedType type relations

R=johnlenz
DELTA=44  (34 added, 5 deleted, 5 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=5915


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@2363 b0f006be-c8cd-11de-a2e8-8d36a3108c74
Change the event type of chrome.input.ime.onKeyEvent, and add chrome.input.ime.keyEventHandled.

To support asynchronous event, chrome.input.ime.onKeyEvent will be accept opt_extraInfo parameter.
https://codereview.chromium.org/11299270/
In chrome_extensions.js chrome.input.ime.onKeyEvent is defined as ChromeEvent.
But ChromeEvent.prototype.addListener accepts only one parameter.
So this cl defines ChromeInputImeOnKeyEventEvent like WebRequestOnErrorOccurredEvent.

R=hsumita,zork,ewa
DELTA=42  (41 added, 0 deleted, 1 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=5916


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@2364 b0f006be-c8cd-11de-a2e8-8d36a3108c74
Remove some redundancy from RecordType.

R=dimvar
DELTA=31  (0 added, 21 deleted, 10 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=5917


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@2365 b0f006be-c8cd-11de-a2e8-8d36a3108c74
Introduce typedef IDBKeyType for valid key types, to better reflect the spec at http://www.w3.org/TR/IndexedDB/#key-construct. Subsequent CLs will use this typedef more broadly in this externs file and in closure.

R=nicksantos
DELTA=10  (9 added, 0 deleted, 1 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=5924


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@2366 b0f006be-c8cd-11de-a2e8-8d36a3108c74
Don't remove "var" statement from pruned cases.

Peephole optimizations remove the false cases from switch statements,
as well as all remaining statements coming after the true cases.
If any of those cases contain "var" definitions, however, the var definitions
must be preserved.

R=dimvar,johnlenz
DELTA=16  (12 added, 2 deleted, 2 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=5925


git-svn-id: http://closure-compiler.googlecode.com/svn/trunk@2367 b0f006be-c8cd-11de-a2e8-8d36a3108c74
AngularJS: Added $http.Response typedef and cleaned up the HttpPromise and Promise parameters.

R=dnadasi,wesalvaro
DELTA=31  (19 added, 0 deleted, 12 changed)


Revision created by MOE tool push_codebase.
MOE_MIGRATION=5926


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