blob: a1f87af302521204419ac7ffab7bcc83a321885f [file] [log] [blame]
// Copyright (c) 2020, 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 file.
class Base {
int? value1;
int? value2;
int? fun() {
Base? a;
// if `a` is `null`, then `a?.value1` evaluates to `null`, so the RHS of the
// `??` will be evaluated. Therefore, we can't promote `a` to non-nullable in
// `a?.value2`.
final b = a?.value1 ?? a?.value2;
return b;