c++/890

Nathan Sidwell nathan@codesourcery.com
Tue Nov 28 02:44:00 GMT 2000


Hi,
I'm opening this to the list for comments. Bug 890 concerns the use of
incomplete (and pointers/references to incomplete) types in exception
specifiers. That is disallowed by [15.4/1], and the CVS tree rejects
such useage. However gcc 2.95.2 does accept it.

David John Mills wrote: 
> Is there any chance it could be made an option?  All previous versions
> of gcc have accepted it and I have over 1000000 lines of code with
> very many instances to change if it is no longer accepted (including a
> lot of third party code which will become a management nightmare).

Should this error be downgraded to a warning in the presence of
-fpermissive?

On a language level it does seem strange that one can declare
	struct X;
	void foo (X);
provided X is complete at the definition and call sites, but not do
the same for exception specifications. There don't appear to be any defect
reports about this. Opinions?

nathan
-- 
Dr Nathan Sidwell   ::   http://www.codesourcery.com   ::   CodeSourcery LLC
         'But that's a lie.' - 'Yes it is. What's your point?'
nathan@codesourcery.com : http://www.cs.bris.ac.uk/~nathan/ : nathan@acm.org


More information about the Gcc mailing list