| Index: src/compiler/typer.cc
|
| diff --git a/src/compiler/typer.cc b/src/compiler/typer.cc
|
| index cc4b4c2e9e3f1218bd05852b32bed5a1262c902b..fec4c3ae92f696345dc43994b5b64605736b3551 100644
|
| --- a/src/compiler/typer.cc
|
| +++ b/src/compiler/typer.cc
|
| @@ -94,6 +94,7 @@ class Typer::Visitor : public Reducer {
|
| JS_SIMPLE_UNOP_LIST(DECLARE_CASE)
|
| JS_OBJECT_OP_LIST(DECLARE_CASE)
|
| JS_CONTEXT_OP_LIST(DECLARE_CASE)
|
| + JS_CALL_OP_LIST(DECLARE_CASE)
|
| JS_OTHER_OP_LIST(DECLARE_CASE)
|
| #undef DECLARE_CASE
|
|
|
| @@ -160,6 +161,7 @@ class Typer::Visitor : public Reducer {
|
| JS_SIMPLE_UNOP_LIST(DECLARE_CASE)
|
| JS_OBJECT_OP_LIST(DECLARE_CASE)
|
| JS_CONTEXT_OP_LIST(DECLARE_CASE)
|
| + JS_CALL_OP_LIST(DECLARE_CASE)
|
| JS_OTHER_OP_LIST(DECLARE_CASE)
|
| #undef DECLARE_CASE
|
|
|
| @@ -1604,13 +1606,17 @@ Type* Typer::Visitor::JSCallTyper(Type* fun, Typer* t) {
|
| return Type::NonInternal();
|
| }
|
|
|
| +Type* Typer::Visitor::TypeJSCall(Node* node) {
|
| + // TODO(bmeurer): We could infer better types if we wouldn't ignore the
|
| + // argument types for the JSCallTyper above.
|
| + return TypeUnaryOp(node, JSCallTyper);
|
| +}
|
| +
|
| Type* Typer::Visitor::TypeJSCallForwardVarargs(Node* node) {
|
| return TypeUnaryOp(node, JSCallTyper);
|
| }
|
|
|
| -Type* Typer::Visitor::TypeJSCall(Node* node) {
|
| - // TODO(bmeurer): We could infer better types if we wouldn't ignore the
|
| - // argument types for the JSCallTyper above.
|
| +Type* Typer::Visitor::TypeJSCallVarargs(Node* node) {
|
| return TypeUnaryOp(node, JSCallTyper);
|
| }
|
|
|
|
|