/* -*- C++ -*- */
/*************************************************************************
 * Copyright(c) 1995~2005  Masaharu Goto (cint@pcroot.cern.ch)
 *
 * For the licensing terms see the file COPYING
 *
 ************************************************************************/
#ifndef PREC_STL_STDEXCEPT
#define PREC_STL_STDEXCEPT
#pragma link off global PREC_STL_STDEXCEPT;

#include <_exception>
#include <_string>

//namespace std {

class logic_error : public exception {
 public:
  explicit logic_error(const string& what_arg);
};

class domain_error : public logic_error {
 public:
  explicit domain_error(const string& what_arg);
};

class invalid_argument : public logic_error {
 public:
  explicit invalid_argument(const string& what_arg);
};

class length_error : public logic_error {
 public:
  explicit length_error(const string& what_arg);
};

class out_of_range : public logic_error {
 public:
  explicit out_of_range(const string& what_arg);
};

class runtime_error : public logic_error {
 public:
  explicit runtime_error(const string& what_arg);
};

class range_error : public logic_error {
 public:
  explicit range_error(const string& what_arg);
};

class overflow_error : public logic_error {
 public:
  explicit overflow_error(const string& what_arg);
};

class underflow_error : public logic_error {
 public:
  explicit underflow_error(const string& what_arg);
};

//}

#endif
