summaryrefslogtreecommitdiff
path: root/libstdc++-v3
diff options
context:
space:
mode:
authorbkoz <bkoz@138bc75d-0d04-0410-961f-82ee72b054a4>2007-05-11 16:05:57 +0000
committerbkoz <bkoz@138bc75d-0d04-0410-961f-82ee72b054a4>2007-05-11 16:05:57 +0000
commitd107f37af105e690ccc27609ac1e7ed760b289e9 (patch)
tree4aaa89fca6241f650b729323cec27a532bf9f7dd /libstdc++-v3
parent932d10555fb933b6a3fb861c415fd5e9dfa57298 (diff)
downloadgcc-d107f37af105e690ccc27609ac1e7ed760b289e9.tar.gz
2007-05-11 Benjamin Kosnik <bkoz@redhat.com>
* include/std/stdexcept: Remove extra spacing. * testsuite/19_diagnostics/stdexceptions.cc: Break into... * testsuite/19_diagnostics/bad_exception: ...this. Populate. * testsuite/19_diagnostics/logic_error: ... this. * testsuite/19_diagnostics/logic_error/what-1.cc: ...this. * testsuite/19_diagnostics/logic_error/what-2.cc: ...this. * testsuite/19_diagnostics/runtime_error: ...this. * testsuite/19_diagnostics/runtime_error/what-1.cc: ...this. * testsuite/19_diagnostics/runtime_error/what-2.cc: ...this. * testsuite/19_diagnostics/runtime_error/what-3.cc: ...this. * testsuite/19_diagnostics/23591_thread-1.c: Move... * testsuite/19_diagnostics/bad_exception/23591_thread-1.c: ...here. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@124621 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libstdc++-v3')
-rw-r--r--libstdc++-v3/ChangeLog16
-rw-r--r--libstdc++-v3/include/std/stdexcept20
-rw-r--r--libstdc++-v3/testsuite/19_diagnostics/bad_exception/23591_thread-1.c (renamed from libstdc++-v3/testsuite/19_diagnostics/23591_thread-1.c)0
-rw-r--r--libstdc++-v3/testsuite/19_diagnostics/logic_error/what-1.cc57
-rw-r--r--libstdc++-v3/testsuite/19_diagnostics/logic_error/what-2.cc49
-rw-r--r--libstdc++-v3/testsuite/19_diagnostics/runtime_error/what-1.cc57
-rw-r--r--libstdc++-v3/testsuite/19_diagnostics/runtime_error/what-2.cc49
-rw-r--r--libstdc++-v3/testsuite/19_diagnostics/runtime_error/what-3.cc (renamed from libstdc++-v3/testsuite/19_diagnostics/stdexceptions.cc)50
8 files changed, 239 insertions, 59 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 3dd555b4a1e..11f587a7952 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,19 @@
+2007-05-11 Benjamin Kosnik <bkoz@redhat.com>
+
+ * include/std/stdexcept: Remove extra spacing.
+
+ * testsuite/19_diagnostics/stdexceptions.cc: Break into...
+ * testsuite/19_diagnostics/bad_exception: ...this. Populate.
+ * testsuite/19_diagnostics/logic_error: ... this.
+ * testsuite/19_diagnostics/logic_error/what-1.cc: ...this.
+ * testsuite/19_diagnostics/logic_error/what-2.cc: ...this.
+ * testsuite/19_diagnostics/runtime_error: ...this.
+ * testsuite/19_diagnostics/runtime_error/what-1.cc: ...this.
+ * testsuite/19_diagnostics/runtime_error/what-2.cc: ...this.
+ * testsuite/19_diagnostics/runtime_error/what-3.cc: ...this.
+ * testsuite/19_diagnostics/23591_thread-1.c: Move...
+ * testsuite/19_diagnostics/bad_exception/23591_thread-1.c: ...here.
+
2007-05-10 Paolo Carlini <pcarlini@suse.de>
* 27_io/objects/wchar_t/11.cc: Include <cstring>.
diff --git a/libstdc++-v3/include/std/stdexcept b/libstdc++-v3/include/std/stdexcept
index d246428f4de..e47adb38989 100644
--- a/libstdc++-v3/include/std/stdexcept
+++ b/libstdc++-v3/include/std/stdexcept
@@ -1,6 +1,6 @@
// Standard exception classes -*- C++ -*-
-// Copyright (C) 2001, 2002, 2005 Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002, 2005, 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -57,7 +57,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
public:
/** Takes a character string describing the error. */
explicit
- logic_error(const string& __arg);
+ logic_error(const string& __arg);
virtual
~logic_error() throw();
@@ -73,14 +73,14 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
class domain_error : public logic_error
{
public:
- explicit domain_error(const string& __arg);
+ explicit domain_error(const string& __arg);
};
/** Thrown to report invalid arguments to functions. */
class invalid_argument : public logic_error
{
public:
- explicit invalid_argument(const string& __arg);
+ explicit invalid_argument(const string& __arg);
};
/** Thrown when an object is constructed that would exceed its maximum
@@ -88,7 +88,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
class length_error : public logic_error
{
public:
- explicit length_error(const string& __arg);
+ explicit length_error(const string& __arg);
};
/** This represents an argument whose value is not within the expected
@@ -96,7 +96,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
class out_of_range : public logic_error
{
public:
- explicit out_of_range(const string& __arg);
+ explicit out_of_range(const string& __arg);
};
/** Runtime errors represent problems outside the scope of a program;
@@ -111,7 +111,7 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
public:
/** Takes a character string describing the error. */
explicit
- runtime_error(const string& __arg);
+ runtime_error(const string& __arg);
virtual
~runtime_error() throw();
@@ -126,21 +126,21 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
class range_error : public runtime_error
{
public:
- explicit range_error(const string& __arg);
+ explicit range_error(const string& __arg);
};
/** Thrown to indicate arithmetic overflow. */
class overflow_error : public runtime_error
{
public:
- explicit overflow_error(const string& __arg);
+ explicit overflow_error(const string& __arg);
};
/** Thrown to indicate arithmetic underflow. */
class underflow_error : public runtime_error
{
public:
- explicit underflow_error(const string& __arg);
+ explicit underflow_error(const string& __arg);
};
_GLIBCXX_END_NAMESPACE
diff --git a/libstdc++-v3/testsuite/19_diagnostics/23591_thread-1.c b/libstdc++-v3/testsuite/19_diagnostics/bad_exception/23591_thread-1.c
index 8c953eaed0e..8c953eaed0e 100644
--- a/libstdc++-v3/testsuite/19_diagnostics/23591_thread-1.c
+++ b/libstdc++-v3/testsuite/19_diagnostics/bad_exception/23591_thread-1.c
diff --git a/libstdc++-v3/testsuite/19_diagnostics/logic_error/what-1.cc b/libstdc++-v3/testsuite/19_diagnostics/logic_error/what-1.cc
new file mode 100644
index 00000000000..f8245ecb628
--- /dev/null
+++ b/libstdc++-v3/testsuite/19_diagnostics/logic_error/what-1.cc
@@ -0,0 +1,57 @@
+// 2001-02-26 Benjamin Kosnik <bkoz@redhat.com>
+
+// Copyright (C) 2001, 2002, 2007 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+// USA.
+
+// 19.1 Exception classes
+
+#include <string>
+#include <stdexcept>
+#include <testsuite_hooks.h>
+
+// libstdc++/1972
+void test01()
+{
+ bool test __attribute__((unused)) = true;
+ std::string s("lack of sunlight, no water error");
+
+ // 1
+ std::logic_error obj1 = std::logic_error(s);
+
+ // 2
+ std::logic_error obj2(s);
+
+ VERIFY( std::strcmp(obj1.what(), s.data()) == 0 );
+ VERIFY( std::strcmp(obj2.what(), s.data()) == 0 );
+}
+
+void test02()
+{
+ bool test __attribute__((unused)) = true;
+ std::string s("lack of sunlight error");
+ std::domain_error x(s);
+
+ VERIFY( std::strcmp(x.what(), s.data()) == 0 );
+}
+
+int main(void)
+{
+ test01();
+ test02();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/19_diagnostics/logic_error/what-2.cc b/libstdc++-v3/testsuite/19_diagnostics/logic_error/what-2.cc
new file mode 100644
index 00000000000..7b8077b1000
--- /dev/null
+++ b/libstdc++-v3/testsuite/19_diagnostics/logic_error/what-2.cc
@@ -0,0 +1,49 @@
+// 2001-02-26 Benjamin Kosnik <bkoz@redhat.com>
+
+// Copyright (C) 2001, 2002, 2007 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+// USA.
+
+// 19.1 Exception classes
+
+#include <string>
+#include <stdexcept>
+#include <testsuite_hooks.h>
+
+// libstdc++/2089
+class fuzzy_logic : public std::logic_error
+{
+public:
+ fuzzy_logic() : std::logic_error("whoa") { }
+};
+
+void test03()
+{
+ bool test __attribute__((unused)) = true;
+ try
+ { throw fuzzy_logic(); }
+ catch(const fuzzy_logic& obj)
+ { VERIFY( std::strcmp("whoa", obj.what()) == 0 ); }
+ catch(...)
+ { VERIFY( false ); }
+}
+
+int main(void)
+{
+ test03();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/19_diagnostics/runtime_error/what-1.cc b/libstdc++-v3/testsuite/19_diagnostics/runtime_error/what-1.cc
new file mode 100644
index 00000000000..64fd201b7a2
--- /dev/null
+++ b/libstdc++-v3/testsuite/19_diagnostics/runtime_error/what-1.cc
@@ -0,0 +1,57 @@
+// 2001-02-26 Benjamin Kosnik <bkoz@redhat.com>
+
+// Copyright (C) 2001, 2002, 2007 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+// USA.
+
+// 19.1 Exception classes
+
+#include <string>
+#include <stdexcept>
+#include <testsuite_hooks.h>
+
+// libstdc++/1972
+void test01()
+{
+ bool test __attribute__((unused)) = true;
+ std::string s("lack of sunlight, no water error");
+
+ // 1
+ std::runtime_error obj1 = std::runtime_error(s);
+
+ // 2
+ std::runtime_error obj2(s);
+
+ VERIFY( std::strcmp(obj1.what(), s.data()) == 0 );
+ VERIFY( std::strcmp(obj2.what(), s.data()) == 0 );
+}
+
+void test02()
+{
+ bool test __attribute__((unused)) = true;
+ std::string s("lack of sunlight error");
+ std::range_error x(s);
+
+ VERIFY( std::strcmp(x.what(), s.data()) == 0 );
+}
+
+int main(void)
+{
+ test01();
+ test02();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/19_diagnostics/runtime_error/what-2.cc b/libstdc++-v3/testsuite/19_diagnostics/runtime_error/what-2.cc
new file mode 100644
index 00000000000..49c56e2d5c4
--- /dev/null
+++ b/libstdc++-v3/testsuite/19_diagnostics/runtime_error/what-2.cc
@@ -0,0 +1,49 @@
+// 2001-02-26 Benjamin Kosnik <bkoz@redhat.com>
+
+// Copyright (C) 2001, 2002, 2007 Free Software Foundation, Inc.
+//
+// This file is part of the GNU ISO C++ Library. This library is free
+// software; you can redistribute it and/or modify it under the
+// terms of the GNU General Public License as published by the
+// Free Software Foundation; either version 2, or (at your option)
+// any later version.
+
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+
+// You should have received a copy of the GNU General Public License along
+// with this library; see the file COPYING. If not, write to the Free
+// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
+// USA.
+
+// 19.1 Exception classes
+
+#include <string>
+#include <stdexcept>
+#include <testsuite_hooks.h>
+
+// libstdc++/2089
+class fuzzy_logic : public std::runtime_error
+{
+public:
+ fuzzy_logic() : std::runtime_error("whoa") { }
+};
+
+void test03()
+{
+ bool test __attribute__((unused)) = true;
+ try
+ { throw fuzzy_logic(); }
+ catch(const fuzzy_logic& obj)
+ { VERIFY( std::strcmp("whoa", obj.what()) == 0 ); }
+ catch(...)
+ { VERIFY( false ); }
+}
+
+int main(void)
+{
+ test03();
+ return 0;
+}
diff --git a/libstdc++-v3/testsuite/19_diagnostics/stdexceptions.cc b/libstdc++-v3/testsuite/19_diagnostics/runtime_error/what-3.cc
index ee82b7f199e..31560877fd4 100644
--- a/libstdc++-v3/testsuite/19_diagnostics/stdexceptions.cc
+++ b/libstdc++-v3/testsuite/19_diagnostics/runtime_error/what-3.cc
@@ -1,7 +1,6 @@
// 2001-02-26 Benjamin Kosnik <bkoz@redhat.com>
-// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007
-// Free Software Foundation, Inc.
+// Copyright (C) 2001, 2002 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@@ -22,52 +21,9 @@
// 19.1 Exception classes
#include <string>
-#include <cstring>
#include <stdexcept>
#include <testsuite_hooks.h>
-// libstdc++/1972
-void test01()
-{
- bool test __attribute__((unused)) = true;
- std::string s("lack of sunlight, no water error");
-
- // 1
- std::logic_error obj = std::logic_error(s);
-
- // 2
- // std::logic_error obj((std::string)strlit);
-
- VERIFY( std::strcmp(obj.what(), s.data()) == 0 );
-}
-
-void test02()
-{
- bool test __attribute__((unused)) = true;
- std::string s("lack of sunlight error");
- std::domain_error x(s);
-
- VERIFY( std::strcmp(x.what(), s.data()) == 0 );
-}
-
-// libstdc++/2089
-class fuzzy_logic : public std::logic_error
-{
-public:
- fuzzy_logic() : std::logic_error("whoa") { }
-};
-
-void test03()
-{
- bool test __attribute__((unused)) = true;
- try
- { throw fuzzy_logic(); }
- catch(const fuzzy_logic& obj)
- { VERIFY( std::strcmp("whoa", obj.what()) == 0 ); }
- catch(...)
- { VERIFY( false ); }
-}
-
// test copy ctors and assignment operators
// libstdc++/1972
// via Greg Bumgardner <bumgard@roguewave.com>
@@ -107,10 +63,6 @@ void test04()
int main(void)
{
- test01();
- test02();
- test03();
test04();
-
return 0;
}