| Index: tests/compiler/dart2js/closure/data/captured_variable.dart
|
| diff --git a/tests/compiler/dart2js/closure/data/captured_variable.dart b/tests/compiler/dart2js/closure/data/captured_variable.dart
|
| index e47acc53fea826d74068c5e1042190abe55bf5c8..7546c25148ba87d50285758a3bf4452bd15608c5 100644
|
| --- a/tests/compiler/dart2js/closure/data/captured_variable.dart
|
| +++ b/tests/compiler/dart2js/closure/data/captured_variable.dart
|
| @@ -2,12 +2,24 @@
|
| // for details. All rights reserved. Use of this source code is governed by a
|
| // BSD-style license that can be found in the LICENSE file.
|
|
|
| +/*readParameterInAnonymousClosure:*/
|
| +readParameterInAnonymousClosure(/**/ parameter) {
|
| + return /*captured=[parameter],free=[parameter]*/ () => parameter;
|
| +}
|
| +
|
| /*readParameterInClosure:*/
|
| readParameterInClosure(/**/ parameter) {
|
| /*captured=[parameter],free=[parameter]*/ func() => parameter;
|
| return func;
|
| }
|
|
|
| +/*writeParameterInAnonymousClosure:boxed=[parameter],captured=[parameter],requiresBox*/
|
| +writeParameterInAnonymousClosure(/*boxed*/ parameter) {
|
| + return /*boxed=[parameter],captured=[parameter],free=[box,parameter]*/ () {
|
| + parameter = 42;
|
| + };
|
| +}
|
| +
|
| /*writeParameterInClosure:boxed=[parameter],captured=[parameter],requiresBox*/
|
| writeParameterInClosure(/*boxed*/ parameter) {
|
| /*boxed=[parameter],captured=[parameter],free=[box,parameter]*/ func() {
|
| @@ -17,6 +29,12 @@ writeParameterInClosure(/*boxed*/ parameter) {
|
| return func;
|
| }
|
|
|
| +/*readLocalInAnonymousClosure:*/
|
| +readLocalInAnonymousClosure(/**/ parameter) {
|
| + var /**/ local = parameter;
|
| + return /*captured=[local],free=[local]*/ () => local;
|
| +}
|
| +
|
| /*readLocalInClosure:*/
|
| readLocalInClosure(/**/ parameter) {
|
| var /**/ local = parameter;
|
| @@ -24,6 +42,15 @@ readLocalInClosure(/**/ parameter) {
|
| return func;
|
| }
|
|
|
| +/*writeLocalInAnonymousClosure:boxed=[local],captured=[local],requiresBox*/
|
| +writeLocalInAnonymousClosure(/**/ parameter) {
|
| + // ignore: UNUSED_LOCAL_VARIABLE
|
| + var /*boxed*/ local = parameter;
|
| + return /*boxed=[local],captured=[local],free=[box,local]*/ () {
|
| + local = 42;
|
| + };
|
| +}
|
| +
|
| /*writeLocalInClosure:boxed=[local],captured=[local],requiresBox*/
|
| writeLocalInClosure(/**/ parameter) {
|
| // ignore: UNUSED_LOCAL_VARIABLE
|
| @@ -36,8 +63,12 @@ writeLocalInClosure(/**/ parameter) {
|
| }
|
|
|
| main() {
|
| + readParameterInAnonymousClosure(null);
|
| readParameterInClosure(null);
|
| + writeParameterInAnonymousClosure(null);
|
| writeParameterInClosure(null);
|
| + readLocalInAnonymousClosure(null);
|
| readLocalInClosure(null);
|
| + writeLocalInAnonymousClosure(null);
|
| writeLocalInClosure(null);
|
| }
|
|
|