| Index: sdk/lib/_internal/compiler/implementation/resolution/members.dart
|
| diff --git a/sdk/lib/_internal/compiler/implementation/resolution/members.dart b/sdk/lib/_internal/compiler/implementation/resolution/members.dart
|
| index af629c483ecf84a7f98210b320a8563f2f0e752a..2a951ecb53c1f4b76163c59cc2344b51ac183c76 100644
|
| --- a/sdk/lib/_internal/compiler/implementation/resolution/members.dart
|
| +++ b/sdk/lib/_internal/compiler/implementation/resolution/members.dart
|
| @@ -326,8 +326,14 @@ class ResolverTask extends CompilerTask {
|
| Link<Element> originParameters,
|
| Link<Element> patchParameters) {
|
| while (!originParameters.isEmpty) {
|
| - Element originParameter = originParameters.head;
|
| - Element patchParameter = patchParameters.head;
|
| + VariableElementX originParameter = originParameters.head;
|
| + VariableElementX patchParameter = patchParameters.head;
|
| + assert(invariant(originParameter, originParameter.origin == null));
|
| + assert(invariant(originParameter, originParameter.patch == null));
|
| + originParameter.patch = patchParameter;
|
| + assert(invariant(patchParameter, patchParameter.origin == null));
|
| + assert(invariant(patchParameter, patchParameter.patch == null));
|
| + patchParameter.origin = originParameter;
|
| // Hack: Use unparser to test parameter equality. This only works because
|
| // we are restricting patch uses and the approach cannot be used
|
| // elsewhere.
|
|
|