From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 29092 invoked by alias); 12 Jul 2006 16:20:15 -0000 Received: (qmail 29082 invoked by uid 22791); 12 Jul 2006 16:20:14 -0000 X-Spam-Check-By: sourceware.org Received: from mail.visionpro.com (HELO chicken.machinevisionproducts.com) (63.91.95.13) by sourceware.org (qpsmtpd/0.31) with ESMTP; Wed, 12 Jul 2006 16:20:12 +0000 Content-class: urn:content-classes:message MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Subject: RE: gcc 4.0.2, Fedora C4 problem Date: Wed, 12 Jul 2006 16:20:00 -0000 Message-ID: <14CFC56C96D8554AA0B8969DB825FEA0012B3717@chicken.machinevisionproducts.com> From: "Brian D. McGrew" To: "Michael Gatford" , "gcc help" X-IsSubscribed: yes Mailing-List: contact gcc-help-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-help-owner@gcc.gnu.org X-SW-Source: 2006-07/txt/msg00148.txt.bz2 Hmmm, /usr/include/unistd.h defines crypt as char *crypt(const char *, const char *) __THROW __nonnull and chances are, the headers that your code in including are defining it as something else. It's highly likely that you've not defined some required tidbit on your compile line that's causing the pre-processor to go the wrong direction. Ie. Crypt is a pretty standard define on most Unix like OS's. So, there may be something in your code similar to #ifndef HAS_CRYPT char *crypt(const char *, const char *) throw(); #endif Which would indicate you're missing a compile time define.=20=20 :b! Brian D. McGrew { brian@visionpro.com || brian@doubledimension.com } -- > This is a test. This is only a test! Had this been an actual emergency, you would have been told to cancel this test and seek professional assistance! -----Original Message----- From: gcc-help-owner@gcc.gnu.org [mailto:gcc-help-owner@gcc.gnu.org] On Behalf Of Michael Gatford Sent: Wednesday, July 12, 2006 9:09 AM To: gcc help Subject: gcc 4.0.2, Fedora C4 problem Hi, I am getting the following error when compiling some code on a Fedora C4 box and gcc 4.0.2. I've done some googling but have no idea how to deal with the "throws=20 different exceptions" errors. Mike g++ -Wall -Wunused -Wno-uninitialized -Wno-return-type=20 -fno-strength-reduce -O2 -DUNIX -DLINUX -DMACHINE=3D\"Linux-libc6.1\" -w=20 -Dstrerror=3Dstrerror -I. -I/home2/dependencies/Semaphore/JFS/3.2/include -I/home2/dependencies/Semaphore/PowerQuery/1.5.22/include -c -o=20 Linux-libc6.1/FmUser.o FmUser.cxx /usr/include/unistd.h:1026: error: declaration of 'char* crypt(const=20 char*, const char*) throw ()' throws different exceptions crypt.h:104: error: than previous declaration 'char* crypt(const char*,=20 const char*)' /usr/include/unistd.h:1030: error: declaration of 'void encrypt(char*,=20 int) throw ()' throws different exceptions crypt.h:111: error: than previous declaration 'void encrypt(char*, int)' /usr/include/stdlib.h:917: error: declaration of 'void setkey(const=20 char*) throw ()' throws different exceptions crypt.h:107: error: than previous declaration 'void setkey(const char*)' FmUser.cxx: In member function 'char* FmUser::makeKey() const': FmUser.cxx:372: error: no matching function for call to=20 'transform(__gnu_cxx::__normal_iterator, std::allocator > >,=20 __gnu_cxx::__normal_iterator, std::allocator > >,=20 __gnu_cxx::__normal_iterator, std::allocator > >, )' gmake: *** [Linux-libc6.1/FmUser.o] Error 1