// Copyright (c) 2015, 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.

/// Values used only for debugging type inference.
library compiler.src.inferrer.debug;

const bool VERBOSE = false;
const bool PRINT_SUMMARY = false;
const bool ANOMALY_WARN = false;
bool PRINT_GRAPH = false;
bool PRINT_GRAPH_ALL_NODES = false; // Include useless nodes?
