| Index: tool/input_sdk/lib/async/async_error.dart
|
| diff --git a/tool/input_sdk/lib/async/async_error.dart b/tool/input_sdk/lib/async/async_error.dart
|
| index 2f3419e164fe023f4e844adfd3c0a9ec64bb420a..53788859fc979d9be086a5ee7c2c21f726bebfce 100644
|
| --- a/tool/input_sdk/lib/async/async_error.dart
|
| +++ b/tool/input_sdk/lib/async/async_error.dart
|
| @@ -16,11 +16,21 @@ _invokeErrorHandler(Function errorHandler,
|
|
|
| Function _registerErrorHandler/*<R>*/(Function errorHandler, Zone zone) {
|
| if (errorHandler is ZoneBinaryCallback) {
|
| - return zone.registerBinaryCallback/*<R, dynamic, StackTrace>*/(
|
| - errorHandler as dynamic/*=ZoneBinaryCallback<R, dynamic, StackTrace>*/);
|
| + // TODO(leafp): These are commented out, because the async libraries
|
| + // pass a (...) -> void into this function which fails whenever R
|
| + // is something interesting. This needs to be sorted out in the main
|
| + // SDK as to what the intent is here: if this is really supposed to
|
| + // return an R, then the function that gets passed in is wrong. If not,
|
| + // then this code doesn't need to track the return type at all.
|
| + // return zone.registerBinaryCallback/*<R, dynamic, StackTrace>*/(
|
| + // errorHandler as dynamic/*=ZoneBinaryCallback<R, dynamic, StackTrace>*/);
|
| + return zone.registerBinaryCallback/*<dynamic, dynamic, StackTrace>*/(
|
| + errorHandler as dynamic/*=ZoneBinaryCallback<dynamic, dynamic, StackTrace>*/);
|
| } else {
|
| - return zone.registerUnaryCallback/*<R, dynamic>*/(
|
| - errorHandler as dynamic/*=ZoneUnaryCallback<R, dynamic>*/);
|
| + // return zone.registerUnaryCallback/*<R, dynamic>*/(
|
| + // errorHandler as dynamic/*=ZoneUnaryCallback<R, dynamic>*/);
|
| + return zone.registerUnaryCallback/*<dynamic, dynamic>*/(
|
| + errorHandler as dynamic/*=ZoneUnaryCallback<dynamic, dynamic>*/);
|
| }
|
| }
|
|
|
|
|