Return-Path: Delivered-To: apmail-incubator-stdcxx-commits-archive@www.apache.org Received: (qmail 86062 invoked from network); 5 Jul 2007 21:28:29 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 5 Jul 2007 21:28:29 -0000 Received: (qmail 12663 invoked by uid 500); 5 Jul 2007 21:28:31 -0000 Delivered-To: apmail-incubator-stdcxx-commits-archive@incubator.apache.org Received: (qmail 12647 invoked by uid 500); 5 Jul 2007 21:28:31 -0000 Mailing-List: contact stdcxx-commits-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: stdcxx-dev@incubator.apache.org Delivered-To: mailing list stdcxx-commits@incubator.apache.org Received: (qmail 12636 invoked by uid 99); 5 Jul 2007 21:28:31 -0000 Received: from herse.apache.org (HELO herse.apache.org) (140.211.11.133) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 05 Jul 2007 14:28:31 -0700 X-ASF-Spam-Status: No, hits=-99.5 required=10.0 tests=ALL_TRUSTED,NO_REAL_NAME X-Spam-Check-By: apache.org Received: from [140.211.11.3] (HELO eris.apache.org) (140.211.11.3) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 05 Jul 2007 14:28:27 -0700 Received: by eris.apache.org (Postfix, from userid 65534) id 71E321A981D; Thu, 5 Jul 2007 14:28:07 -0700 (PDT) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r553643 - in /incubator/stdcxx/trunk: include/stdexcept src/domain_error.cpp src/range_error.cpp src/runtime_error.cpp Date: Thu, 05 Jul 2007 21:28:07 -0000 To: stdcxx-commits@incubator.apache.org From: sebor@apache.org X-Mailer: svnmailer-1.1.0 Message-Id: <20070705212807.71E321A981D@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: sebor Date: Thu Jul 5 14:28:06 2007 New Revision: 553643 URL: http://svn.apache.org/viewvc?view=rev&rev=553643 Log: 2007-07-05 Martin Sebor * stdexcept (range_error, domain_error, runtime_error): Declared virtual destructors instead of relying on the compiler to generate them automatically to avoid generating the class vtable in every translation unit that uses each of the classes. * range_error.cpp: Defined range_error destructor. * domain_error.cpp: Defined domain_error destructor. * runtime_error.cpp: Defined runtime_error destructor. Added: incubator/stdcxx/trunk/src/domain_error.cpp (with props) incubator/stdcxx/trunk/src/range_error.cpp (with props) incubator/stdcxx/trunk/src/runtime_error.cpp (with props) Modified: incubator/stdcxx/trunk/include/stdexcept Modified: incubator/stdcxx/trunk/include/stdexcept URL: http://svn.apache.org/viewvc/incubator/stdcxx/trunk/include/stdexcept?view=diff&rev=553643&r1=553642&r2=553643 ============================================================================== --- incubator/stdcxx/trunk/include/stdexcept (original) +++ incubator/stdcxx/trunk/include/stdexcept Thu Jul 5 14:28:06 2007 @@ -65,6 +65,8 @@ // extension _EXPLICIT domain_error (const char *__s = 0) : logic_error (__s) { } + + virtual ~domain_error () _THROWS (()); }; @@ -113,6 +115,8 @@ // extension _EXPLICIT runtime_error (const char *__s = 0) : _RW::__rw_exception (__s) { } + + virtual ~runtime_error () _THROWS (()); }; @@ -125,6 +129,8 @@ // extension _EXPLICIT range_error (const char *__s = 0) : runtime_error (__s) { } + + virtual ~range_error () _THROWS (()); }; Added: incubator/stdcxx/trunk/src/domain_error.cpp URL: http://svn.apache.org/viewvc/incubator/stdcxx/trunk/src/domain_error.cpp?view=auto&rev=553643 ============================================================================== --- incubator/stdcxx/trunk/src/domain_error.cpp (added) +++ incubator/stdcxx/trunk/src/domain_error.cpp Thu Jul 5 14:28:06 2007 @@ -0,0 +1,43 @@ +/*************************************************************************** + * + * domain_error.cpp - definitions of class domain_error members + * + * $Id$ + * + *************************************************************************** + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + * implied. See the License for the specific language governing + * permissions and limitations under the License. + * + **************************************************************************/ + +#define _RWSTD_LIB_SRC + +#include +#include + + +_RWSTD_NAMESPACE (std) { + +// outlined to avoid generating a vtable in each translation unit +// that uses the class +/* virtual */ domain_error:: +~domain_error () _THROWS (()) +{ + // no-op +} + +} // namespace std Propchange: incubator/stdcxx/trunk/src/domain_error.cpp ------------------------------------------------------------------------------ svn:eol-style = native Propchange: incubator/stdcxx/trunk/src/domain_error.cpp ------------------------------------------------------------------------------ svn:keywords = Id Added: incubator/stdcxx/trunk/src/range_error.cpp URL: http://svn.apache.org/viewvc/incubator/stdcxx/trunk/src/range_error.cpp?view=auto&rev=553643 ============================================================================== --- incubator/stdcxx/trunk/src/range_error.cpp (added) +++ incubator/stdcxx/trunk/src/range_error.cpp Thu Jul 5 14:28:06 2007 @@ -0,0 +1,43 @@ +/*************************************************************************** + * + * range_error.cpp - definitions of class range_error members + * + * $Id$ + * + *************************************************************************** + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + * implied. See the License for the specific language governing + * permissions and limitations under the License. + * + **************************************************************************/ + +#define _RWSTD_LIB_SRC + +#include +#include + + +_RWSTD_NAMESPACE (std) { + +// outlined to avoid generating a vtable in each translation unit +// that uses the class +/* virtual */ range_error:: +~range_error () _THROWS (()) +{ + // no-op +} + +} // namespace std Propchange: incubator/stdcxx/trunk/src/range_error.cpp ------------------------------------------------------------------------------ svn:eol-style = native Propchange: incubator/stdcxx/trunk/src/range_error.cpp ------------------------------------------------------------------------------ svn:keywords = Id Added: incubator/stdcxx/trunk/src/runtime_error.cpp URL: http://svn.apache.org/viewvc/incubator/stdcxx/trunk/src/runtime_error.cpp?view=auto&rev=553643 ============================================================================== --- incubator/stdcxx/trunk/src/runtime_error.cpp (added) +++ incubator/stdcxx/trunk/src/runtime_error.cpp Thu Jul 5 14:28:06 2007 @@ -0,0 +1,43 @@ +/*************************************************************************** + * + * runtime_error.cpp - definitions of class runtime_error members + * + * $Id$ + * + *************************************************************************** + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + * implied. See the License for the specific language governing + * permissions and limitations under the License. + * + **************************************************************************/ + +#define _RWSTD_LIB_SRC + +#include +#include + + +_RWSTD_NAMESPACE (std) { + +// outlined to avoid generating a vtable in each translation unit +// that uses the class +/* virtual */ runtime_error:: +~runtime_error () _THROWS (()) +{ + // no-op +} + +} // namespace std Propchange: incubator/stdcxx/trunk/src/runtime_error.cpp ------------------------------------------------------------------------------ svn:eol-style = native Propchange: incubator/stdcxx/trunk/src/runtime_error.cpp ------------------------------------------------------------------------------ svn:keywords = Id