Return-Path: Delivered-To: apmail-stdcxx-issues-archive@locus.apache.org Received: (qmail 31556 invoked from network); 27 Mar 2008 07:37:43 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 27 Mar 2008 07:37:43 -0000 Received: (qmail 19708 invoked by uid 500); 27 Mar 2008 07:37:42 -0000 Delivered-To: apmail-stdcxx-issues-archive@stdcxx.apache.org Received: (qmail 19687 invoked by uid 500); 27 Mar 2008 07:37:42 -0000 Mailing-List: contact issues-help@stdcxx.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@stdcxx.apache.org Delivered-To: mailing list issues@stdcxx.apache.org Received: (qmail 19678 invoked by uid 99); 27 Mar 2008 07:37:42 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 27 Mar 2008 00:37:42 -0700 X-ASF-Spam-Status: No, hits=-1999.8 required=10.0 tests=ALL_TRUSTED,WHOIS_MYPRIVREG X-Spam-Check-By: apache.org Received: from [140.211.11.140] (HELO brutus.apache.org) (140.211.11.140) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 27 Mar 2008 07:37:02 +0000 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id 6C464234C09E for ; Thu, 27 Mar 2008 00:35:24 -0700 (PDT) Message-ID: <2133870470.1206603324429.JavaMail.jira@brutus> Date: Thu, 27 Mar 2008 00:35:24 -0700 (PDT) From: "Travis Vitek (JIRA)" To: issues@stdcxx.apache.org Subject: [jira] Commented: (STDCXX-643) std::exception declaration incompatible with implementation provided by runtime library on AIX MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/STDCXX-643?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12582535#action_12582535 ] Travis Vitek commented on STDCXX-643: ------------------------------------- I've already suggested that we try to determine, at configuration time, the size and layout of the exception classes so that we can emulate them. If we don't go that far, we should at least add something that will check that the sizes match up and force the library to not compile if they don't. Something like this... {noformat} // looking for runtime library exceptions #include #include #include template void run_test (const char* s) { printf ("#define %-18s %u\n", s, sizeof (T)); } int main () { #define TEST(s,t) run_test(#s) TEST (_RWSTD_EXCEPTION_SIZE , std::exception); TEST (_RWSTD_BAD_ALLOC_SIZE , std::bad_alloc); TEST (_RWSTD_BAD_CAST_SIZE , std::bad_cast); TEST (_RWSTD_BAD_EXCDEPTION_SIZE, std::bad_exception); TEST (_RWSTD_BAD_TYPEID_SIZE , std::bad_typeid); return 0; } {noformat} Then we would put something like this near the top of exception.cpp {noformat} _RWSTD_NAMESPACE (__rw) { static void __rw_exception_compile_asserts () { #define TEST(s,t) _RWSTD_COMPILE_ASSERT (s == sizeof (t)) TEST (_RWSTD_EXCEPTION_SIZE , std::exception); TEST (_RWSTD_BAD_ALLOC_SIZE , std::bad_alloc); TEST (_RWSTD_BAD_CAST_SIZE , std::bad_cast); TEST (_RWSTD_BAD_EXCDEPTION_SIZE, std::bad_exception); TEST (_RWSTD_BAD_TYPEID_SIZE , std::bad_typeid); #undef TEST } } // namespace rw {noformat} > std::exception declaration incompatible with implementation provided by runtime library on AIX > ---------------------------------------------------------------------------------------------- > > Key: STDCXX-643 > URL: https://issues.apache.org/jira/browse/STDCXX-643 > Project: C++ Standard Library > Issue Type: Bug > Components: 19. Diagnostics > Affects Versions: 4.2.0 > Environment: AIX > Reporter: Travis Vitek > Fix For: 5.0 > > > A description of the problem is available here. > http://www.nabble.com/19.exceptions.mt.cpp-fails-on-AIX-tf4738595.html > Essentially we need to add a const char* member to std::exception for AIX. Unfortunately the fix is a binary incompatible with previous versions of stdcxx. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.