// Copyright (c) 2018, 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. // https://github.com/flutter/flutter/issues/25041 // This test may produce a compile time exception from stack overflow during // enum initialization or succeed in enum initialization depending on exactly // how much stack is left and used by the compiler. It should never crash nor // produce a runtime exception. enum Fruit { apple, banana } getFruit() => Fruit.apple; recurse() { try { recurse(); } catch (e, st) { print("$e ${getFruit()}"); } } main() { try { recurse(); } on StackOverflowError catch (e) { // Swallow. } }