[Bug c++/20420] Incorrectly Accepts double declarations

2006-09-12 Thread andrew dot stubbs at st dot com
--- Comment #6 from andrew dot stubbs at st dot com 2006-09-12 07:44 --- Subject: Re: Incorrectly Accepts double declarations bangerth at dealii dot org wrote: > No, that code is definitely legal and unobjectionable. Just as having two > extern declarations of the same varia

[Bug c++/29043] Constructor for POD type with const member without member initializer accepted

2006-09-13 Thread andrew dot stubbs at st dot com
--- Comment #2 from andrew dot stubbs at st dot com 2006-09-13 09:23 --- (In reply to comment #1) > As you've written it, class C doesn't have any non-static members. Struct > C::s > hasn't been declared as a member object of C. const int i is a member o

[Bug c++/29131] New: Bad name lookup for templates

2006-09-18 Thread andrew dot stubbs at st dot com
Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: andrew dot stubbs at st dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29131

[Bug c++/29136] New: using declaration misinterpreted in classes

2006-09-19 Thread andrew dot stubbs at st dot com
Product: gcc Version: 4.1.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: andrew dot stubbs at st dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29136

[Bug c++/29138] New: access declarations don't work for classes

2006-09-19 Thread andrew dot stubbs at st dot com
nu dot org ReportedBy: andrew dot stubbs at st dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29138

[Bug c++/29143] New: address-of overloaded function does not work in function call

2006-09-19 Thread andrew dot stubbs at st dot com
ty: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: andrew dot stubbs at st dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29143

[Bug c++/29148] New: can't subtract 'volatile char *' from 'const char *'

2006-09-20 Thread andrew dot stubbs at st dot com
rity: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: andrew dot stubbs at st dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29148

[Bug c++/29165] New: dependent name resolution finds static functions

2006-09-21 Thread andrew dot stubbs at st dot com
tatic functions Product: gcc Version: 4.1.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: andrew dot stubbs at st dot com http://gcc.gnu.org/bug

[Bug target/33431] [SH4] performance regression between 3.4.6 and 4.x

2007-09-17 Thread andrew dot stubbs at st dot com
--- Comment #5 from andrew dot stubbs at st dot com 2007-09-17 10:30 --- Subject: Re: New: [SH4] performance regression between 3.4.6 and 4.x nbkolchin at gmail dot com wrote: > Our target hardware has SH7750 processor running in little endian mode under > RTEMS. Unfortu

[Bug c++/31988] new operator should not permit default first parameter

2007-09-28 Thread andrew dot stubbs at st dot com
--- Comment #3 from andrew dot stubbs at st dot com 2007-09-28 16:00 --- I'm not a GCC expert, but that patch looks like it will silently change the behaviour of the compiler when -pedantic is not given. I would suggest that the first parameter should either be a regular, non-ped

[Bug c++/31988] new operator should not permit default first parameter

2007-09-28 Thread andrew dot stubbs at st dot com
--- Comment #6 from andrew dot stubbs at st dot com 2007-09-28 16:28 --- (In reply to comment #4) > When -pedantic is not given (the default) a pedwarn is an hard error. A > pedwarn > becomes a warning when -permissive is passes (and the code is thus accepted as > an exte

[Bug c++/20427] New: 'new int [2] ()' not default initialized

2005-03-11 Thread andrew dot stubbs at st dot com
uot;, i, i[0], i[1]); return 0; } -- Summary: 'new int [2] ()' not default initialized Product: gcc Version: 3.4.3 Status: UNCONFIRMED Severity: normal Priority: P2 Component: c++ AssignedTo: unassigned at

[Bug c++/20427] 'new int [2] ()' not default initialized

2005-03-11 Thread andrew dot stubbs at st dot com
-- What|Removed |Added Known to fail||3.4.3 Known to work||3.2.2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20427

[Bug c++/31952] New: parameters may be redeclared in a function try-block

2007-05-16 Thread andrew dot stubbs at st dot com
ormal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: andrew dot stubbs at st dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31952

[Bug c++/31956] New: names declared in a condition may be redeclared

2007-05-16 Thread andrew dot stubbs at st dot com
288 -- Summary: names declared in a condition may be redeclared Product: gcc Version: 4.1.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org Repo

[Bug c++/31952] parameters may be redeclared in a function try-block

2007-05-17 Thread andrew dot stubbs at st dot com
--- Comment #2 from andrew dot stubbs at st dot com 2007-05-17 15:34 --- Another example perhaps? void foo() { try { } catch (void *e) { void *e; // invalid } } The C++ standard, clause 3.3.2 paragraph 3, states that catch exception-declarations may not be

[Bug c++/2288] Variable declared in for-loop-header is in wrong scope

2007-05-17 Thread andrew dot stubbs at st dot com
--- Comment #7 from andrew dot stubbs at st dot com 2007-05-17 16:37 --- Another example that might be of interest if anybody eventually tries to fix this: void foo () { for (int i = 0; int i = 0; i++) ; } -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=2288

[Bug c++/31986] conversion-type-id should match in both contexts

2007-05-18 Thread andrew dot stubbs at st dot com
--- Comment #1 from andrew dot stubbs at st dot com 2007-05-18 14:54 --- EDG version 3.8 gives the warning: t.cpp", line 15: warning: ambiguous class member reference -- type "T" (declared at line 14) used in preference to type "C::T&

[Bug c++/31986] New: conversion-type-id should match in both contexts

2007-05-18 Thread andrew dot stubbs at st dot com
x27; is significant here. -- Summary: conversion-type-id should match in both contexts Product: gcc Version: 4.1.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot

[Bug c++/31988] New: new operator should not permit default first parameter

2007-05-18 Thread andrew dot stubbs at st dot com
: andrew dot stubbs at st dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31988

[Bug c++/32019] New: Condition operator ?: and ambiguous convertions

2007-05-21 Thread andrew dot stubbs at st dot com
us: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: andrew dot stubbs at st dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32019

[Bug c++/32039] New: Using declaration accepts non-visible members from base classes

2007-05-22 Thread andrew dot stubbs at st dot com
classes Product: gcc Version: 4.1.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: andrew dot stubbs at st dot com http://gcc.gnu.org/bugzilla

[Bug c++/32042] New: linkage confused with scope?

2007-05-22 Thread andrew dot stubbs at st dot com
scope? Product: gcc Version: 4.1.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: andrew dot stubbs at st dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32042

[Bug c++/32053] New: Anonymous union members' names should be distinct within enclosing scope

2007-05-23 Thread andrew dot stubbs at st dot com
iority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: andrew dot stubbs at st dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32053

[Bug c++/32054] New: Storage classes on anonymous unions in classes

2007-05-23 Thread andrew dot stubbs at st dot com
: 4.1.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: andrew dot stubbs at st dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32054

[Bug c++/32056] New: Storage classes on template parameters

2007-05-23 Thread andrew dot stubbs at st dot com
++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: andrew dot stubbs at st dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32056

[Bug c++/32066] New: member/type lookup doesn't work properly with templates

2007-05-24 Thread andrew dot stubbs at st dot com
IRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: andrew dot stubbs at st dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32066

[Bug c++/32071] New: Partial explicit specialization template parameters not checked

2007-05-24 Thread andrew dot stubbs at st dot com
Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: andrew dot stubbs at st dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32071

[Bug c++/24664] Template instantiation generating an array of voids doesn't fail

2007-05-24 Thread andrew dot stubbs at st dot com
--- Comment #2 from andrew dot stubbs at st dot com 2007-05-24 15:27 --- You can create an array of functions. Also prohibited by clause 14.8.2/2. template int f(T[5]); typedef void (fn)(); int K = f(0); At least it doesn't seem to accept reference types ... -- andrew dot s

[Bug c++/32080] New: Can goto a function try-block

2007-05-25 Thread andrew dot stubbs at st dot com
dBy: andrew dot stubbs at st dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32080

[Bug c++/32081] New: Conflicting exception specifications not rejected in template specialization

2007-05-25 Thread andrew dot stubbs at st dot com
ent: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: andrew dot stubbs at st dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32081

[Bug c++/32081] Conflicting exception specifications not rejected in template specialization

2007-05-25 Thread andrew dot stubbs at st dot com
--- Comment #1 from andrew dot stubbs at st dot com 2007-05-25 11:21 --- This problem may also be observed in explicit instantiation: template void foo (T) throw (int) { } template void foo (short) throw (short); There are also similar issues with declarations of pointers to

[Bug c++/32085] New: "warning: deleting void* is undefined" sometimes bogus

2007-05-25 Thread andrew dot stubbs at st dot com
rning: deleting void* is undefined" sometimes bogus Product: gcc Version: 4.1.1 Status: UNCONFIRMED Severity: enhancement Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: andrew dot st

[Bug c++/32085] "warning: deleting void* is undefined" sometimes bogus

2007-05-25 Thread andrew dot stubbs at st dot com
--- Comment #2 from andrew dot stubbs at st dot com 2007-05-25 16:16 --- I'm confused. It might be the case that there is a type for which this warning is valid - I don't know C++ well enough to confirm or deny that - but in *this* example, and perhaps others like it, the

[Bug c++/32085] "warning: deleting void* is undefined" sometimes bogus

2007-05-29 Thread andrew dot stubbs at st dot com
--- Comment #4 from andrew dot stubbs at st dot com 2007-05-29 10:57 --- Well, obviously I'll let people who really understand the details of this decide whether it can be solved. However, on the principle that warnings which one can safely ignore, but cannot silence, are at

[Bug c++/32085] "warning: deleting void* is undefined" sometimes bogus

2007-05-29 Thread andrew dot stubbs at st dot com
--- Comment #6 from andrew dot stubbs at st dot com 2007-05-29 11:18 --- It's a cut down example to demonstrate the problem, not real world code. I do ignore warnings in code that does exactly what I want it to do, provided that I understand them. -- http://gcc.gnu.org/bug

[Bug c++/32085] "warning: deleting void* is undefined" sometimes bogus

2007-05-30 Thread andrew dot stubbs at st dot com
--- Comment #9 from andrew dot stubbs at st dot com 2007-05-30 08:51 --- OK, I see what you are getting at now. The delete is defined (by the code), but the warning concerns the destructor also. Anyway, as you say, the warning can be silenced by casting to char*. -- andrew dot

[Bug c++/23885] incorrect template two-stage name-lookup

2007-05-31 Thread andrew dot stubbs at st dot com
--- Comment #7 from andrew dot stubbs at st dot com 2007-05-31 09:49 --- See here: http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_defects.html#197 It would appear that only koenig lookup is done for functions defined after the template declaration. As the Intel statement says, koenig

[Bug c++/16635] g++ instantiates templates at the wrong place

2007-05-31 Thread andrew dot stubbs at st dot com
--- Comment #10 from andrew dot stubbs at st dot com 2007-05-31 10:57 --- Here's another issue in this area. Is it the same, or a separate bug? This code is adapted from the example in DR197. #include struct C1 {}; struct C2 : C1 { }; C1 c1; C2 c2; void f(C1); tem

[Bug c++/32165] New: Calling main allowed at O3 and Os

2007-05-31 Thread andrew dot stubbs at st dot com
gcc dot gnu dot org ReportedBy: andrew dot stubbs at st dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32165

[Bug c/32324] unsigned long long operator << and integer literals

2007-06-13 Thread andrew dot stubbs at st dot com
--- Comment #2 from andrew dot stubbs at st dot com 2007-06-13 18:00 --- As it happens, I encountered your real problem quite recently. :) "(int)(1<<31)" is undefined (C99 standard 6.5.7/4). This modified version gives the same result both ways: int main (){ unsi

[Bug c++/32053] Anonymous union members' names should be distinct within enclosing scope

2007-10-31 Thread andrew dot stubbs at st dot com
--- Comment #1 from andrew dot stubbs at st dot com 2007-10-31 16:15 --- This bug appears to be no longer present in GCC 4.2.1. -- andrew dot stubbs at st dot com changed: What|Removed |Added

[Bug c++/33975] New: [4.1/4.2/4.3 Regression] Incomplete types may be derefenced

2007-11-01 Thread andrew dot stubbs at st dot com
derefenced Product: gcc Version: 4.3.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: andrew dot stubbs at st dot com http://gcc.gnu.org

[Bug c++/31952] parameters may be redeclared in a function try-block

2007-11-01 Thread andrew dot stubbs at st dot com
--- Comment #4 from andrew dot stubbs at st dot com 2007-11-01 18:15 --- It gets worse :( The following example used to be detected by GCC 4.1.1, but is now permitted by GCC 4.1.2, 4.2.1, 4.2.2, and 4.3-20071026, and hence is a regression. int foo (int bar) try { return 0; } catch

[Bug c++/33984] New: [4.2/4.3 Regression] bit-fields, references and overloads

2007-11-02 Thread andrew dot stubbs at st dot com
dTo: unassigned at gcc dot gnu dot org ReportedBy: andrew dot stubbs at st dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33984

[Bug c++/28986] Failure to diagnose overflow in constant expression

2007-01-02 Thread andrew dot stubbs at st dot com
--- Comment #6 from andrew dot stubbs at st dot com 2007-01-02 14:04 --- (In reply to comment #5) > Why is this "accepts-invalid"? Shouldn't it be "diagnostic" instead? I am > trying to understand what is the expected output here: a warning or a pedantic