(root)/
gcc-13.2.0/
libstdc++-v3/
testsuite/
util/
testsuite_error.h
       1  // -*- C++ -*-
       2  // Error handling utils for the C++ library testsuite.
       3  //
       4  // Copyright (C) 2007-2023 Free Software Foundation, Inc.
       5  //
       6  // This file is part of the GNU ISO C++ Library.  This library is free
       7  // software; you can redistribute it and/or modify it under the
       8  // terms of the GNU General Public License as published by the
       9  // Free Software Foundation; either version 3, or (at your option)
      10  // any later version.
      11  //
      12  // This library is distributed in the hope that it will be useful,
      13  // but WITHOUT ANY WARRANTY; without even the implied warranty of
      14  // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
      15  // GNU General Public License for more details.
      16  //
      17  // You should have received a copy of the GNU General Public License along
      18  // with this library; see the file COPYING3.  If not see
      19  // <http://www.gnu.org/licenses/>.
      20  //
      21  
      22  #include <string>
      23  #include <testsuite_hooks.h>
      24  
      25  #ifndef _TESTSUITE_ERROR_H
      26  #define _TESTSUITE_ERROR_H 1
      27  
      28  namespace __gnu_test
      29  {
      30    struct test_category : public std::error_category
      31    {
      32      virtual const char*
      33      name() const noexcept
      34      {
      35        const char* s = "__gnu_test::test_category";
      36        return s;
      37      }
      38  
      39      virtual std::string
      40      message(int) const
      41      { return std::string("message to be determined"); }
      42    };
      43  
      44    struct test_derived_category : public test_category
      45    {
      46      virtual const char*
      47      name() const noexcept
      48      {
      49        const char* s = "__gnu_test::test_derived_category";
      50        return s;
      51      }
      52    };
      53  
      54  }
      55  #endif