| Index: sdk/lib/_internal/compiler/implementation/js_emitter/metadata_emitter.dart
|
| diff --git a/sdk/lib/_internal/compiler/implementation/js_emitter/metadata_emitter.dart b/sdk/lib/_internal/compiler/implementation/js_emitter/metadata_emitter.dart
|
| index f4597f3b9946389ee7dedb5a424331c19a09c13a..162272eb588f82408c3c81541c1ac5f95e90bd7f 100644
|
| --- a/sdk/lib/_internal/compiler/implementation/js_emitter/metadata_emitter.dart
|
| +++ b/sdk/lib/_internal/compiler/implementation/js_emitter/metadata_emitter.dart
|
| @@ -70,9 +70,14 @@ class MetadataEmitter extends CodeEmitterHelper {
|
| }
|
|
|
| int reifyType(DartType type) {
|
| - // TODO(ahe): Handle type variables correctly instead of using "#".
|
| - String representation = backend.rti.getTypeRepresentation(type, (_) {});
|
| - return addGlobalMetadata(representation.replaceAll('#', 'null'));
|
| + jsAst.Expression representation =
|
| + backend.rti.getTypeRepresentation(type, (variable) {
|
| + return js.toExpression(
|
| + task.typeVariableHandler.reifyTypeVariable(variable.element));
|
| + });
|
| +
|
| + return addGlobalMetadata(
|
| + jsAst.prettyPrint(representation, compiler).getText());
|
| }
|
|
|
| int reifyName(SourceString name) {
|
|
|