public inbox for gcc-prs@sourceware.org
help / color / mirror / Atom feed
* libstdc++/1605: exception::what() declares no exception list
@ 2001-04-01  0:00 wolfgang.bangerth
  0 siblings, 0 replies; 2+ messages in thread
From: wolfgang.bangerth @ 2001-04-01  0:00 UTC (permalink / raw)
  To: gcc-gnats

>Number:         1605
>Category:       libstdc++
>Synopsis:       exception::what() declares no exception list
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Wed Jan 10 05:26:00 PST 2001
>Closed-Date:
>Last-Modified:
>Originator:     Wolfgang Bangerth
>Release:        unknown-1.0
>Organization:
>Environment:
all
>Description:
The C++ Dec96 working paper (sec. 18.6.1), Stroustrup, and
some other compilers declare
    virtual const char* what() const throw();
in class exception, while gcc does
    virtual const char* what() const;
>How-To-Repeat:

>Fix:
*** gcc/libstdc++-v3/libsupc++/exception        Wed Oct 11 01:43:26 2000
--- gcc/libstdc++-v3/libsupc++/exception.1      Wed Jan 10 14:23:34 2001
***************
*** 1,5 ****
  // Exception Handling support header for -*- C++ -*-
! // Copyright (C) 1995, 1996, 1997, 1998, 2000 Free Software Foundation
  
  // This file is part of GNU CC.
  //
--- 1,5 ----
  // Exception Handling support header for -*- C++ -*-
! // Copyright (C) 1995, 1996, 1997, 1998, 2000, 2001 Free Software Foundation
  
  // This file is part of GNU CC.
  //
***************
*** 40,46 ****
  public:
    exception () { }
    virtual ~exception () { }
!   virtual const char* what () const;
  };
  
  class bad_exception : public exception {
--- 40,46 ----
  public:
    exception () { }
    virtual ~exception () { }
!   virtual const char* what () const throw ();
  };
  
  class bad_exception : public exception {
>Release-Note:
>Audit-Trail:
>Unformatted:
>From neil@gcc.gnu.org Sun Apr 01 00:00:00 2001
From: neil@gcc.gnu.org
To: nobody@gcc.gnu.org
Cc: gcc-prs@gcc.gnu.org
Subject: Re: c++/252
Date: Sun, 01 Apr 2001 00:00:00 -0000
Message-id: <20010113232601.24647.qmail@sourceware.cygnus.com>
X-SW-Source: 2001-q1/msg00266.html
Content-length: 2421

The following reply was made to PR c++/252; it has been noted by GNATS.

From: neil@gcc.gnu.org
To: doreille@imacpc34.epfl.ch, gcc-gnats@gcc.gnu.org,
  martin@loewis.home.cs.tu-berlin.de, nobody@gcc.gnu.org
Cc:  
Subject: Re: c++/252
Date: 13 Jan 2001 23:20:56 -0000

 Synopsis: member template partial specialisation
 
 State-Changed-From-To: analyzed->closed
 State-Changed-By: neil
 State-Changed-When: Sat Jan 13 15:20:56 2001
 State-Changed-Why:
     Fixed in CVS, which gives
     bash-2.04$ g++ -v /tmp/test.C
     Reading specs from /usr/local/lib/gcc-lib/i586-pc-linux-gnu/2.97/specs
     Configured with: ../configure --enable-threads=posix --enable-shared --disable-checking
     gcc version 2.97 20010113 (experimental)
      /usr/local/lib/gcc-lib/i586-pc-linux-gnu/2.97/cc1plus -v -D__GNUC__=2 -D__GNUC_MINOR__=97 -D__GNUC_PATCHLEVEL__=0 -D__ELF__ -Dunix -Dlinux -D__ELF__ -D__unix__ -D__linux__ -D__unix -D__linux -Asystem=posix -D__STDC_HOSTED__=1 -Acpu=i386 -Amachine=i386 -Di386 -D__i386 -D__i386__ -D__tune_i586__ -D__tune_pentium__ /tmp/test.C -D__GNUG__=2 -D__GXX_ABI_VERSION=100 -quiet -dumpbase test.C -version -fnew-abi -o /tmp/cczvWSGZ.s
     GNU CPP version 2.97 20010113 (experimental) (cpplib) (i386 Linux/ELF)
     GNU CPP version 2.97 20010113 (experimental) (cpplib) (i386 Linux/ELF)
     GNU C++ version 2.97 20010113 (experimental) (i586-pc-linux-gnu)
     	compiled by GNU C version 2.97 20010113 (experimental).
     #include "..." search starts here:
     #include <...> search starts here:
      /usr/local/include/g++-v3
      /usr/local/i586-pc-linux-gnu/include/g++-v3
      /usr/local/include
      /usr/local/lib/gcc-lib/i586-pc-linux-gnu/2.97/include
      /usr/local/i586-pc-linux-gnu/include
      /usr/include
     End of search list.
      as -V -Qy -o /tmp/ccvHdIA7.o /tmp/cczvWSGZ.s
     GNU assembler version 2.10.91 (i386-linux) using BFD version 2.10.1.0.2
      /usr/local/lib/gcc-lib/i586-pc-linux-gnu/2.97/collect2 -m elf_i386 -dynamic-linker /lib/ld-linux.so.2 /usr/lib/crt1.o /usr/lib/crti.o /usr/local/lib/gcc-lib/i586-pc-linux-gnu/2.97/crtbegin.o -L/usr/local/lib/gcc-lib/i586-pc-linux-gnu/2.97 -L/usr/local/lib/gcc-lib/i586-pc-linux-gnu/2.97/../../.. /tmp/ccvHdIA7.o -lstdc++ -lm -lgcc -lc -lgcc /usr/local/lib/gcc-lib/i586-pc-linux-gnu/2.97/crtend.o /usr/lib/crtn.o
     bash-2.04$ 
     
 
 http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view&pr=252&database=gcc
>From neil@gcc.gnu.org Sun Apr 01 00:00:00 2001
From: neil@gcc.gnu.org
To: nobody@gcc.gnu.org
Cc: gcc-prs@gcc.gnu.org
Subject: Re: c/1714
Date: Sun, 01 Apr 2001 00:00:00 -0000
Message-id: <20010223221601.26999.qmail@sourceware.cygnus.com>
X-SW-Source: 2001-q1/msg01644.html
Content-length: 674

The following reply was made to PR c/1714; it has been noted by GNATS.

From: neil@gcc.gnu.org
To: gcc-gnats@gcc.gnu.org, nobody@gcc.gnu.org,
  schmid@snake.iap.physik.tu-darmstadt.de
Cc:  
Subject: Re: c/1714
Date: 23 Feb 2001 22:09:37 -0000

 Synopsis: ice in process_init_element __attribute__(__aligned__)
 
 State-Changed-From-To: open->closed
 State-Changed-By: neil
 State-Changed-When: Fri Feb 23 14:09:37 2001
 State-Changed-Why:
     This appears to be yet another duplicate of 1705, and is
     fixed in 3.0 branch as far as I can tell.
     
     bash-2.04$ gcc -c test.c
     bash-2.04$ 
 
 http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view&pr=1714&database=gcc


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: libstdc++/1605: exception::what() declares no exception list
@ 2001-04-01  0:00 Benjamin Kosnik
  0 siblings, 0 replies; 2+ messages in thread
From: Benjamin Kosnik @ 2001-04-01  0:00 UTC (permalink / raw)
  To: nobody; +Cc: gcc-prs

The following reply was made to PR libstdc++/1605; it has been noted by GNATS.

From: Benjamin Kosnik <bkoz@redhat.com>
To: gcc-bugs@gcc.gnu.org, gcc-gnats@gcc.gnu.org
Cc:  
Subject: Re: libstdc++/1605: exception::what() declares no exception list
Date: Wed, 10 Jan 2001 22:01:27 -0800

 Thanks for pointing this out.
 
 Why stop with what()? Let's add all of the throw specs. 
 
 I've done some of this, but ran into a bit of trouble. I'll keep you posted:
 
 http://gcc.gnu.org/ml/gcc-bugs/2001-01/msg00297.html
 
 thanks,
 benjamin
>From schmid@snake.iap.physik.tu-darmstadt.de Sun Apr 01 00:00:00 2001
From: Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de>
To: gcc-gnats@gcc.gnu.org
Subject: c++/2384: Class that throws itself
Date: Sun, 01 Apr 2001 00:00:00 -0000
Message-id: <200103251731.TAA20428@snake.iap.physik.tu-darmstadt.de>
X-SW-Source: 2001-q1/msg02575.html
Content-length: 2450

>Number:         2384
>Category:       c++
>Synopsis:       Class that throws itself
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          rejects-legal
>Submitter-Id:   net
>Arrival-Date:   Sun Mar 25 08:36:01 PST 2001
>Closed-Date:
>Last-Modified:
>Originator:     Peter Schmid
>Release:        3.1 20010324 (experimental)
>Organization:
TU Darmstadt
>Environment:
System: Linux kiste 2.4.2 #34 Sun Feb 25 20:03:34 CET 2001 i686 unknown
Architecture: i686
SuSE 7.1
glibc 2.2
GNU ld version 2.11.90.0.1 (with BFD 2.11.90.0.1)
host: i686-pc-linux-gnu
build: i686-pc-linux-gnu
target: i686-pc-linux-gnu
configured with: ../gcc/configure --enable-shared --disable-nls --enable-threads=posix --enable-long-long --enable-languages=c,c++,f77,objc
>Description:
Recently I came across the following code te.C. G++ 2.95.2 accepts
the code but gcc 3 does not. Is this code legal?

>How-To-Repeat:
Source code te.C

class exception
{
public:
	bool flag; 
	void proc(void) throw(exception);	
};

Compiling te.C

g++ -v -c te.C -W -Wall
Reading specs from /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.1/specs
Configured with: ../gcc/configure --enable-shared --disable-nls --enable-threads=posix --enable-long-long --enable-languages=c,c++,f77,objc
gcc version 3.1 20010324 (experimental)
 /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.1/cc1plus -v -D__GNUC__=3 -D__GNUC_MINOR__=1 -D__GNUC_PATCHLEVEL__=0 -D__ELF__ -Dunix -Dlinux -D__ELF__ -D__unix__ -D__linux__ -D__unix -D__linux -Asystem=posix -D__STDC_HOSTED__=1 -W -Wall -Acpu=i386 -Amachine=i386 -Di386 -D__i386 -D__i386__ -D__tune_i686__ -D__tune_pentiumpro__ te.C -D__GNUG__=3 -D_GNU_SOURCE -D__EXCEPTIONS -D__GXX_ABI_VERSION=100 -quiet -dumpbase te.C -W -Wall -version -o /tmp/cc40hxwv.s
GNU CPP version 3.1 20010324 (experimental) (cpplib) (i386 Linux/ELF)
GNU C++ version 3.1 20010324 (experimental) (i686-pc-linux-gnu)
	compiled by GNU C version 3.1 20010324 (experimental).
#include "..." search starts here:
#include <...> search starts here:
 /usr/local/include/g++-v3
 /usr/local/include/g++-v3/i686-pc-linux-gnu
 /usr/local/include
 /usr/local/lib/gcc-lib/i686-pc-linux-gnu/3.1/include
 /usr/local/i686-pc-linux-gnu/include
 /usr/include
End of search list.
te.C:5: invalid use of undefined type `class exception'
te.C:2: forward declaration of `class exception'


>Fix:
	
>Release-Note:
>Audit-Trail:
>Unformatted:


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2001-04-01  0:00 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-04-01  0:00 libstdc++/1605: exception::what() declares no exception list wolfgang.bangerth
2001-04-01  0:00 Benjamin Kosnik

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).