# Copyright (c) 2017, the Dart project authors. Please see the AUTHORS file
# for details. All rights reserved. Use of this source code is governed by a
# BSD-style license that can be found in the LICENSE.md file.

main.dart.patch: |
  // Test that a lazy static is supported

  var normal;

  <<<< "v1"
  foo() {
    print(normal);
  }
  ==== ["v2","lazy"]
  var lazy = bar();

  foo() {
    print(lazy);
  }

  bar() {
    print('v2');
    return 'lazy';
  }

  >>>>
  main() {
    if (normal == null) {
      normal = 'v1';
    } else {
      normal = '';
    }
    foo();
  }
