//  (C) Copyright Gennadiy Rozental 2006-2008.
//  Distributed under the Boost Software License, Version 1.0.
//  (See accompanying file LICENSE_1_0.txt or copy at 
//  http://www.boost.org/LICENSE_1_0.txt)

//  See http://www.boost.org/libs/test for the library home page.
//
//  File        : $RCSfile$
//
//  Version     : $Revision$
//
//  Description : user's config for Boost.Test debugging support
// ***************************************************************************

#ifndef BOOST_TEST_DEBUG_CONFIG_HPP_112006GER
#define BOOST_TEST_DEBUG_CONFIG_HPP_112006GER

// ';' separated list of supported debuggers
// #define BOOST_TEST_DBG_LIST gdb;dbx

// maximum size of /proc/pid/stat file
// #define BOOST_TEST_STAT_LINE_MAX

#endif
