| Index: runtime/vm/parser.cc
|
| diff --git a/runtime/vm/parser.cc b/runtime/vm/parser.cc
|
| index 2cd3f23ae79e3464dc6c9c25a9e0431202d70b1c..e4a7c0bcc7923e0925d7e612d25b37cdd781ccea 100644
|
| --- a/runtime/vm/parser.cc
|
| +++ b/runtime/vm/parser.cc
|
| @@ -4243,7 +4243,7 @@ void Parser::ParseTypeParameters(const Class& cls) {
|
| AbstractType& type_parameter_bound = Type::Handle();
|
| do {
|
| ConsumeToken();
|
| - SkipMetadata();
|
| + const intptr_t metadata_pos = SkipMetadata();
|
| const intptr_t type_parameter_pos = TokenPos();
|
| String& type_parameter_name =
|
| *ExpectUserDefinedTypeIdentifier("type parameter expected");
|
| @@ -4272,6 +4272,9 @@ void Parser::ParseTypeParameters(const Class& cls) {
|
| type_parameter_bound,
|
| type_parameter_pos);
|
| type_parameters_array.Add(type_parameter);
|
| + if (metadata_pos >= 0) {
|
| + library_.AddTypeParameterMetadata(type_parameter, metadata_pos);
|
| + }
|
| index++;
|
| } while (CurrentToken() == Token::kCOMMA);
|
| Token::Kind token = CurrentToken();
|
|
|