[Bug c++/29475] [4.0/4.1/4.2/4.3 Regression] incomplete template diagnostics.

2006-12-16 Thread simartin at gcc dot gnu dot org


--- Comment #5 from simartin at gcc dot gnu dot org  2006-12-16 08:51 
---
Subject: Bug 29475

Author: simartin
Date: Sat Dec 16 08:51:42 2006
New Revision: 119961

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=119961
Log:
2006-12-16  Simon Martin  [EMAIL PROTECTED]

PR c++/29475
* cp-tree.h (struct deferred_access_check): New structure to represent
a
deferred access check. It replaces the previous representation as a
tree.
(get_deferred_access_checks): Return a vector of struct
deferred_access_check instead of a tree list.
(perform_access_checks): Take a vector of struct deferred_access_check
instead of a tree list.
* semantics.c (struct deferred_access): Store the deferred access
checks
as a vector of struct deferred_access_check instead of a tree list.
(push_deferring_access_checks): Handle the change in struct
deferred_access.
(get_deferred_access_checks): Likewise.
(pop_to_parent_deferring_access_checks): Likewise.
(perform_or_defer_access_check): Likewise.
(perform_access_checks): Take a vector of struct deferred_access_check
instead of a tree list.
* parser.c (struct tree_check): New structure to store various data
associated with a CPP_NESTED_NAME_SPECIFIER or CPP_TEMPLATE_ID token.
(struct cp_token): Changed the value field to be a union with a pointer
to
a struct tree_check for CPP_NESTED_NAME_SPECIFIER or CPP_TEMPLATE_ID
tokens and a tree field for all other tokens.
(eof_token): Adjusted due to the change in struct cp_token.
(cp_lexer_get_preprocessor_token): Likewise.
(cp_lexer_purge_token): Likewise.
(cp_lexer_purge_tokens_after): Likewise.
(cp_lexer_print_token): Likewise.
(cp_parser_error): Likewise.
(cp_parser_identifier): Likewise.
(cp_parser_string_literal): Likewise.
(cp_parser_primary_expression): Likewise.
(cp_parser_unqualified_id): Likewise.
(cp_parser_parenthesized_expression_list): Likewise.
(cp_parser_storage_class_specifier_opt): Likewise.
(cp_parser_function_specifier_opt): Likewise.
(cp_parser_type_specifier): Likewise.
(cp_parser_simple_type_specifier): Likewise.
(cp_parser_initializer_list): Likewise.
(cp_parser_member_specification_opt): Likewise.
(cp_parser_attribute_list): Likewise.
(cp_parser_objc_expression): Likewise.
(cp_parser_objc_protocol_qualifiers): Likewise.
(cp_parser_objc_selector): Likewise.
(cp_parser_objc_declaration): Likewise.
(cp_parser_objc_statement): Likewise.
(cp_parser_omp_clause_name): Likewise.
(cp_parser_omp_clause_default): Likewise.
(cp_parser_omp_clause_schedule): Likewise.
(cp_parser_omp_parallel): Likewise.
(cp_parser_initial_pragma): Likewise.
(pragma_lex): Likewise.
(cp_parser_pre_parsed_nested_name_specifier): Likewise.
(cp_parser_nested_name_specifier_opt): Likewise.
Use cp_token::u::tree_check_value to save the token's value, the
associated deferred checks and its qualifying scope.
(cp_parser_template_id): Likewise.
(cp_parser_template_declaration_after_export): Adjusted the call to
get_deferred_access_checks.
(cp_parser_init_declarator): Take the access checks as a vector of
struct
deferred_access_check instead of a tree list.
(cp_parser_single_declaration): Likewise.
(cp_parser_perform_template_parameter_access_checks): Likewise.
(cp_parser_simple_declaration): Adjusted the call to
cp_parser_init_declarator.
(cp_parser_explicit_specialization): Adjusted the call to
cp_parser_single_declaration.

Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/cp-tree.h
trunk/gcc/cp/parser.c
trunk/gcc/cp/semantics.c


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29475



[Bug c++/29731] [4.0/4.1/4.2/4.3 regression] ICE with statement expression as template parameter

2006-12-31 Thread simartin at gcc dot gnu dot org


--- Comment #3 from simartin at gcc dot gnu dot org  2006-12-31 16:09 
---
Subject: Bug 29731

Author: simartin
Date: Sun Dec 31 16:09:07 2006
New Revision: 120299

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=120299
Log:
2006-12-31  Simon Martin  [EMAIL PROTECTED]

PR c++/29731
* parser.c (cp_parser_primary_expression): Return error_mark_node when
a statement-expression is found outside of a function body.

Added:
trunk/gcc/testsuite/g++.dg/parse/template22.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/parser.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29731



[Bug c++/29573] [4.0/4.1/4.2/4.3 regression] ICE after parse error in template argument

2007-01-11 Thread simartin at gcc dot gnu dot org


--- Comment #3 from simartin at gcc dot gnu dot org  2007-01-11 19:46 
---
Subject: Bug 29573

Author: simartin
Date: Thu Jan 11 19:46:03 2007
New Revision: 120683

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=120683
Log:
2007-01-11  Simon Martin  [EMAIL PROTECTED]

PR c++/29573
* tree.c (cp_tree_equal): Properly handle MODOP_EXPR trees.

Added:
trunk/gcc/testsuite/g++.dg/template/sizeof-template-argument.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/tree.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29573



[Bug c++/27492] [4.0/4.1/4.2/4.3 regression] ICE on invalid covariant return type

2007-01-12 Thread simartin at gcc dot gnu dot org


--- Comment #3 from simartin at gcc dot gnu dot org  2007-01-12 22:57 
---
I am testing a patch for this one.


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||simartin at gcc dot gnu dot
   ||org
 AssignedTo|unassigned at gcc dot gnu   |simartin at gcc dot gnu dot
   |dot org |org
 Status|NEW |ASSIGNED
   Last reconfirmed|2006-10-21 21:32:56 |2007-01-12 22:57:44
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27492



[Bug c++/27492] [4.0/4.1/4.2/4.3 regression] ICE on invalid covariant return type

2007-01-23 Thread simartin at gcc dot gnu dot org


--- Comment #5 from simartin at gcc dot gnu dot org  2007-01-23 22:34 
---
Subject: Bug 27492

Author: simartin
Date: Tue Jan 23 22:33:51 2007
New Revision: 121089

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=121089
Log:
2007-01-23  Simon Martin  [EMAIL PROTECTED]

PR c++/27492
* decl.c (duplicate_decls): Don't reset DECL_INVALID_OVERRIDER_P for
function decls.

Added:
trunk/gcc/testsuite/g++.dg/inherit/covariant15.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/decl.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27492



[Bug c++/27492] [4.0/4.1/4.2 regression] ICE on invalid covariant return type

2007-01-24 Thread simartin at gcc dot gnu dot org


--- Comment #6 from simartin at gcc dot gnu dot org  2007-01-24 18:43 
---
Fixed on the mainline


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

Summary|[4.0/4.1/4.2/4.3 regression]|[4.0/4.1/4.2 regression] ICE
   |ICE on invalid covariant|on invalid covariant return
   |return type |type


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27492



[Bug c++/29731] [4.0/4.1/4.2 regression] ICE with statement expression as template parameter

2007-02-02 Thread simartin at gcc dot gnu dot org


--- Comment #4 from simartin at gcc dot gnu dot org  2007-02-03 00:18 
---
Fixed on the mainline


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

Summary|[4.0/4.1/4.2/4.3 regression]|[4.0/4.1/4.2 regression] ICE
   |ICE with statement  |with statement expression as
   |expression as template  |template parameter
   |parameter   |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29731



[Bug c++/14622] type mismatch in explicit template instantiation not detected

2007-02-12 Thread simartin at gcc dot gnu dot org


--- Comment #3 from simartin at gcc dot gnu dot org  2007-02-12 22:17 
---
Subject: Bug 14622

Author: simartin
Date: Mon Feb 12 22:17:06 2007
New Revision: 121864

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=121864
Log:
PR c++/14622
* pt.c (do_decl_instantiation): Detect type mismatches in explicit
instantiations for variables.

Added:
trunk/gcc/testsuite/g++.dg/template/instantiate9.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/pt.c
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/g++.old-deja/g++.pt/instantiate12.C


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14622



[Bug c++/14622] type mismatch in explicit template instantiation not detected

2007-02-12 Thread simartin at gcc dot gnu dot org


--- Comment #4 from simartin at gcc dot gnu dot org  2007-02-12 22:25 
---
Fixed on the mainline.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14622



[Bug c++/29475] [4.0/4.1/4.2 Regression] incomplete template diagnostics.

2007-02-22 Thread simartin at gcc dot gnu dot org


--- Comment #8 from simartin at gcc dot gnu dot org  2007-02-22 19:58 
---
Subject: Bug 29475

Author: simartin
Date: Thu Feb 22 19:57:55 2007
New Revision: 122236

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=122236
Log:
2007-02-22  Simon Martin  [EMAIL PROTECTED]

PR c++/29475
* cp-tree.h (struct deferred_access_check): New structure to represent
a
deferred access check. It replaces the previous representation as a
tree.
(get_deferred_access_checks): Return a vector of struct
deferred_access_check instead of a tree list.
(perform_access_checks): Take a vector of struct deferred_access_check
instead of a tree list.
(enforce_access, perform_or_defer_access_check): Added an
extra argument that represents the declaration to use to print
potential error messages.
* semantics.c (struct deferred_access): Store the deferred access
checks
as a vector of struct deferred_access_check instead of a tree list.
(push_deferring_access_checks): Handle the change in struct
deferred_access.
(get_deferred_access_checks): Likewise.
(pop_to_parent_deferring_access_checks): Likewise.
(perform_or_defer_access_check): Likewise.
(perform_access_checks): Take a vector of struct deferred_access_check
instead of a tree list.
(finish_non_static_data_member, check_accessibility_of_qualified_id,
finish_id_expression): Adjusted the call to
perform_or_defer_access_check.
(pop_to_parent_deferring_access_checks, perform_access_checks,
perform_or_defer_access_check): Adjusted the call to enforce_access.
* parser.c (struct tree_check): New structure to store various data
associated with a CPP_NESTED_NAME_SPECIFIER or CPP_TEMPLATE_ID token.
(struct cp_token): Changed the value field to be a union with a pointer
to
a struct tree_check for CPP_NESTED_NAME_SPECIFIER or CPP_TEMPLATE_ID
tokens and a tree field for all other tokens.
(eof_token): Adjusted due to the change in struct cp_token.
(cp_lexer_get_preprocessor_token): Likewise.
(cp_lexer_purge_token): Likewise.
(cp_lexer_purge_tokens_after): Likewise.
(cp_lexer_print_token): Likewise.
(cp_parser_error): Likewise.
(cp_parser_identifier): Likewise.
(cp_parser_string_literal): Likewise.
(cp_parser_primary_expression): Likewise.
(cp_parser_unqualified_id): Likewise.
(cp_parser_parenthesized_expression_list): Likewise.
(cp_parser_storage_class_specifier_opt): Likewise.
(cp_parser_function_specifier_opt): Likewise.
(cp_parser_type_specifier): Likewise.
(cp_parser_simple_type_specifier): Likewise.
(cp_parser_initializer_list): Likewise.
(cp_parser_member_specification_opt): Likewise.
(cp_parser_attribute_list): Likewise.
(cp_parser_objc_expression): Likewise.
(cp_parser_objc_protocol_qualifiers): Likewise.
(cp_parser_objc_selector): Likewise.
(cp_parser_objc_declaration): Likewise.
(cp_parser_objc_statement): Likewise.
(cp_parser_omp_clause_name): Likewise.
(cp_parser_omp_clause_default): Likewise.
(cp_parser_omp_clause_schedule): Likewise.
(cp_parser_omp_parallel): Likewise.
(cp_parser_initial_pragma): Likewise.
(pragma_lex): Likewise.
(cp_parser_pre_parsed_nested_name_specifier): Likewise.
(cp_parser_nested_name_specifier_opt): Likewise.
Use cp_token::u::tree_check_value to save the token's value, the
associated deferred checks and its qualifying scope.
(cp_parser_template_id): Likewise.
(cp_parser_template_declaration_after_export): Adjusted the call to
get_deferred_access_checks.
(cp_parser_init_declarator): Take the access checks as a vector of
struct
deferred_access_check instead of a tree list.
(cp_parser_single_declaration): Likewise.
(cp_parser_perform_template_parameter_access_checks): Likewise.
(cp_parser_simple_declaration): Adjusted the call to
cp_parser_init_declarator.
(cp_parser_explicit_specialization): Adjusted the call to
cp_parser_single_declaration.
(cp_parser_template_id, cp_parser_pre_parsed_nested_name_specifier):
Adjusted the call to perform_or_defer_access_check.
* init.c (build_offset_ref): Adjusted the call to
perform_or_defer_access_check.
* class.c (alter_access, resolve_address_of_overloaded_function):
Likewise.
* decl.c (make_typename_type, make_unbound_class_template): Likewise.
* search.c (lookup_member): Likewise.
* friend.c (add_friend): Likewise.
* call.c (enforce_access): Use the new extra argument to build the
error message.
(build_op_delete_call): Adjusted the call

[Bug c++/29475] [4.0/4.1 Regression] incomplete template diagnostics.

2007-02-22 Thread simartin at gcc dot gnu dot org


--- Comment #9 from simartin at gcc dot gnu dot org  2007-02-22 20:09 
---
Fixed on 4.2 as well.

I will not apply it on 4.1 as requested by Mark here:
http://gcc.gnu.org/ml/gcc-patches/2007-02/msg01781.html


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

Summary|[4.0/4.1/4.2 Regression]|[4.0/4.1 Regression]
   |incomplete  template|incomplete  template
   |diagnostics.|diagnostics.


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29475



[Bug c++/28253] [4.0/4.1/4.2/4.3 regression] ICE with invalid covariant return

2007-03-02 Thread simartin at gcc dot gnu dot org


--- Comment #4 from simartin at gcc dot gnu dot org  2007-03-02 22:09 
---
Subject: Bug 28253

Author: simartin
Date: Fri Mar  2 22:09:20 2007
New Revision: 122490

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=122490
Log:
2007-03-02  Simon Martin  [EMAIL PROTECTED]

PR c++/28253
* class.c (update_vtable_entry_for_fn): Properly handle invalid
overriders
for thunks.

Added:
trunk/gcc/testsuite/g++.dg/inherit/covariant16.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/class.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28253



[Bug c++/28253] [4.0/4.1/4.2 regression] ICE with invalid covariant return

2007-03-02 Thread simartin at gcc dot gnu dot org


--- Comment #5 from simartin at gcc dot gnu dot org  2007-03-02 22:14 
---
Fixed on the mainline


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||simartin at gcc dot gnu dot
   ||org
Summary|[4.0/4.1/4.2/4.3 regression]|[4.0/4.1/4.2 regression] ICE
   |ICE with invalid covariant  |with invalid covariant
   |return  |return


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28253



[Bug c++/30895] [4.1/4.2/4.3 regression] ICE with complex values in template parameter

2007-03-04 Thread simartin at gcc dot gnu dot org


--- Comment #3 from simartin at gcc dot gnu dot org  2007-03-04 19:51 
---
Subject: Bug 30895

Author: simartin
Date: Sun Mar  4 19:50:54 2007
New Revision: 122532

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=122532
Log:
2007-03-04  Simon Martin  [EMAIL PROTECTED]

PR c++/30895
* tree.c (cp_tree_equal): Properly handle COMPLEX_CST trees.

Added:
trunk/gcc/testsuite/g++.dg/parse/template23.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/tree.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30895



[Bug c++/30895] [4.1/4.2/4.3 regression] ICE with complex values in template parameter

2007-03-05 Thread simartin at gcc dot gnu dot org


--- Comment #5 from simartin at gcc dot gnu dot org  2007-03-05 22:56 
---
Subject: Bug 30895

Author: simartin
Date: Mon Mar  5 22:55:58 2007
New Revision: 122578

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=122578
Log:
2007-03-05  Simon Martin  [EMAIL PROTECTED]

PR c++/30895
* tree.c (cp_tree_equal): Properly handle COMPLEX_CST trees.

Added:
branches/gcc-4_1-branch/gcc/testsuite/g++.dg/parse/template23.C
Modified:
branches/gcc-4_1-branch/gcc/cp/ChangeLog
branches/gcc-4_1-branch/gcc/cp/tree.c
branches/gcc-4_1-branch/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30895



[Bug c++/30895] [4.1/4.2/4.3 regression] ICE with complex values in template parameter

2007-03-05 Thread simartin at gcc dot gnu dot org


--- Comment #6 from simartin at gcc dot gnu dot org  2007-03-05 23:05 
---
Subject: Bug 30895

Author: simartin
Date: Mon Mar  5 23:05:29 2007
New Revision: 122579

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=122579
Log:
2007-03-05  Simon Martin  [EMAIL PROTECTED]

PR c++/30895
* tree.c (cp_tree_equal): Properly handle COMPLEX_CST trees.

Added:
branches/gcc-4_2-branch/gcc/testsuite/g++.dg/parse/template23.C
Modified:
branches/gcc-4_2-branch/gcc/cp/ChangeLog
branches/gcc-4_2-branch/gcc/cp/tree.c
branches/gcc-4_2-branch/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30895



[Bug c++/30895] [4.1/4.2/4.3 regression] ICE with complex values in template parameter

2007-03-09 Thread simartin at gcc dot gnu dot org


--- Comment #7 from simartin at gcc dot gnu dot org  2007-03-09 18:21 
---
Fixed in 4.1, 4.2 and 4.3.


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30895



[Bug c++/29077] Incorrect error message for destructor in wrong namespace

2007-03-28 Thread simartin at gcc dot gnu dot org


--- Comment #3 from simartin at gcc dot gnu dot org  2007-03-28 22:06 
---
Subject: Bug 29077

Author: simartin
Date: Wed Mar 28 22:06:01 2007
New Revision: 123312

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=123312
Log:
2007-03-28  Simon Martin  [EMAIL PROTECTED]

PR c++/29077
* decl.c (grokfndecl): Properly setup decl if it is a constructor or a
destructor.

Added:
trunk/gcc/testsuite/g++.dg/parse/constructor3.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/decl.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29077



[Bug c++/29077] Incorrect error message for destructor in wrong namespace

2007-03-28 Thread simartin at gcc dot gnu dot org


--- Comment #4 from simartin at gcc dot gnu dot org  2007-03-28 22:10 
---
Fixed on the mainline.


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||simartin at gcc dot gnu dot
   ||org
 AssignedTo|unassigned at gcc dot gnu   |simartin at gcc dot gnu dot
   |dot org |org
 Status|NEW |ASSIGNED
   Last reconfirmed|2006-09-14 01:38:33 |2007-03-28 22:10:36
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29077



[Bug c++/31517] [4.1/4.2/4.3 Regression] ICE on invalid initialization of static member of a template class

2007-04-17 Thread simartin at gcc dot gnu dot org


--- Comment #2 from simartin at gcc dot gnu dot org  2007-04-17 19:06 
---
Subject: Bug 31517

Author: simartin
Date: Tue Apr 17 19:05:53 2007
New Revision: 123923

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=123923
Log:
2007-04-17  Simon Martin  [EMAIL PROTECTED]

PR c++/31517
* pt.c (value_dependent_expression_p): Handle MODOP_EXPRs.

Added:
trunk/gcc/testsuite/g++.dg/template/init7.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/pt.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31517



[Bug c++/31517] [4.1/4.2/4.3 Regression] ICE on invalid initialization of static member of a template class

2007-04-17 Thread simartin at gcc dot gnu dot org


--- Comment #3 from simartin at gcc dot gnu dot org  2007-04-17 20:41 
---
Subject: Bug 31517

Author: simartin
Date: Tue Apr 17 20:41:12 2007
New Revision: 123925

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=123925
Log:
2007-04-17  Simon Martin  [EMAIL PROTECTED]

PR c++/31517
* pt.c (value_dependent_expression_p): Handle MODOP_EXPRs.

Added:
branches/gcc-4_2-branch/gcc/testsuite/g++.dg/template/init7.C
Modified:
branches/gcc-4_2-branch/gcc/cp/ChangeLog
branches/gcc-4_2-branch/gcc/cp/pt.c
branches/gcc-4_2-branch/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31517



[Bug c++/31517] [4.1/4.2/4.3 Regression] ICE on invalid initialization of static member of a template class

2007-04-17 Thread simartin at gcc dot gnu dot org


--- Comment #4 from simartin at gcc dot gnu dot org  2007-04-17 21:46 
---
Subject: Bug 31517

Author: simartin
Date: Tue Apr 17 21:46:29 2007
New Revision: 123931

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=123931
Log:
2007-04-17  Simon Martin  [EMAIL PROTECTED]

PR c++/31517
* pt.c (value_dependent_expression_p): Handle MODOP_EXPRs.

Added:
branches/gcc-4_1-branch/gcc/testsuite/g++.dg/template/init7.C
Modified:
branches/gcc-4_1-branch/gcc/cp/ChangeLog
branches/gcc-4_1-branch/gcc/cp/pt.c
branches/gcc-4_1-branch/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31517



[Bug c++/31517] [4.1/4.2/4.3 Regression] ICE on invalid initialization of static member of a template class

2007-04-17 Thread simartin at gcc dot gnu dot org


--- Comment #5 from simartin at gcc dot gnu dot org  2007-04-17 21:50 
---
Fixed on all active branches


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||simartin at gcc dot gnu dot
   ||org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31517



[Bug fortran/25923] [gfortran] garbled diagnostics with -O -Wuninitialized

2007-04-24 Thread simartin at gcc dot gnu dot org


--- Comment #5 from simartin at gcc dot gnu dot org  2007-04-24 21:52 
---
Subject: Bug 25923

Author: simartin
Date: Tue Apr 24 21:52:16 2007
New Revision: 124121

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=124121
Log:
2007-04-24  Simon Martin  [EMAIL PROTECTED]

PR diagnostic/25923
* tree-pass.h (TDF_DIAGNOSTIC): New dump control to specify that a
diagnostic message is being built.
* tree-pretty-print.c (dump_generic_node): Only write the formatted
text
into BUFFER's stream if we are not building a diagnostic message.
* toplev.c (default_tree_printer): Pass TDF_DIAGNOSTIC to
dump_generic_node.
* Makefile.in (toplev.o): Depend on tree-pass.h.

Added:
trunk/gcc/testsuite/gfortran.dg/pr25923.f90
Modified:
trunk/gcc/ChangeLog
trunk/gcc/Makefile.in
trunk/gcc/testsuite/ChangeLog
trunk/gcc/toplev.c
trunk/gcc/tree-pass.h
trunk/gcc/tree-pretty-print.c


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25923



[Bug middle-end/28216] [4.1/4.2/4.3 regression] mangled warning message

2007-04-26 Thread simartin at gcc dot gnu dot org


--- Comment #3 from simartin at gcc dot gnu dot org  2007-04-26 22:47 
---
This should be fixed on the mainline (see PR 25923). Would it be possible to
confirm that it is the case (I've checked the Fortran case, but not the Ada one
because I don't have it setup on my machine)?

Thanks in advance,
Simon


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||simartin at gcc dot gnu dot
   ||org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28216



[Bug tree-optimization/31847] [4.3 Regression] Printing to dump file broken

2007-05-07 Thread simartin at gcc dot gnu dot org


--- Comment #1 from simartin at gcc dot gnu dot org  2007-05-07 07:23 
---
Hello.

I've had a look at the code, and the PRE dump apparently directly calls
print_generic_expr (not via default_tree_printer) with TDF_DIAGNOSTIC in the
dump flags. I'm not sure how those flags are setup...

I think there is a problem in tree-dump.c (TDF_DIAGNOSTIC will be erroneously
passed in some dump flags), fixed by this patch:

Index: tree-dump.c
===
--- tree-dump.c (revision 124477)
+++ tree-dump.c (working copy)
@@ -803,7 +803,7 @@
   {stmtaddr, TDF_STMTADDR},
   {memsyms, TDF_MEMSYMS},
   {all, ~(TDF_RAW | TDF_SLIM | TDF_LINENO | TDF_TREE | TDF_RTL | TDF_IPA 
-   | TDF_STMTADDR | TDF_GRAPH)},
+   | TDF_STMTADDR | TDF_GRAPH | TDF_DIAGNOSTIC)},
   {NULL, 0}
 };


However, I'm not sure this will fix this issue, and I have not been able to
test it. Would you mind trying it? Thanks.

I'll look more closely on this issue this evening when I'm back from work.

Sorry for this breakage.
Simon


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31847



[Bug tree-optimization/31847] [4.3 Regression] Printing to dump file broken

2007-05-08 Thread simartin at gcc dot gnu dot org


--- Comment #3 from simartin at gcc dot gnu dot org  2007-05-08 16:34 
---
Subject: Bug 31847

Author: simartin
Date: Tue May  8 15:33:56 2007
New Revision: 124551

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=124551
Log:
2007-05-08  Simon Martin  [EMAIL PROTECTED]

PR 31847
* tree-dump.c (dump_options): Don't use TDF_DIAGNOSTIC in *-all tree
dumps.

Added:
trunk/gcc/testsuite/gcc.dg/pr31847.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/testsuite/ChangeLog
trunk/gcc/tree-dump.c


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31847



[Bug tree-optimization/31847] [4.3 Regression] Printing to dump file broken

2007-05-08 Thread simartin at gcc dot gnu dot org


--- Comment #4 from simartin at gcc dot gnu dot org  2007-05-08 16:47 
---
This should be fixed (see
http://gcc.gnu.org/ml/gcc-patches/2007-05/msg00527.html for an explanation of
the patch).


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |simartin at gcc dot gnu dot
   |dot org |org
 Status|UNCONFIRMED |ASSIGNED
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2007-05-08 16:47:37
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31847



[Bug preprocessor/20077] [4.0/4.1/4.2/4.3 Regression] GCC accepts macro definitions that fail a constraint

2007-05-23 Thread simartin at gcc dot gnu dot org


--- Comment #7 from simartin at gcc dot gnu dot org  2007-05-23 21:58 
---
Subject: Bug 20077

Author: simartin
Date: Wed May 23 20:58:34 2007
New Revision: 125000

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=125000
Log:
2007-05-23  Simon Martin  [EMAIL PROTECTED]

PR preprocessor/20077
* macro.c (create_iso_definition): Fixed the method to determine
whether
the token-pasting operator appears at the beginning or the end of a
macro.

Added:
trunk/gcc/testsuite/gcc.dg/cpp/paste15.c
Modified:
trunk/gcc/testsuite/ChangeLog
trunk/libcpp/ChangeLog
trunk/libcpp/macro.c


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20077



[Bug preprocessor/20077] [4.0/4.1/4.2/4.3 Regression] GCC accepts macro definitions that fail a constraint

2007-05-23 Thread simartin at gcc dot gnu dot org


--- Comment #8 from simartin at gcc dot gnu dot org  2007-05-23 22:05 
---
Fixed on the mainline.


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||simartin at gcc dot gnu dot
   ||org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20077



[Bug c++/31745] [4.3 regression] ICE on invalid use of namespace

2007-05-25 Thread simartin at gcc dot gnu dot org


--- Comment #2 from simartin at gcc dot gnu dot org  2007-05-25 20:27 
---
Subject: Bug 31745

Author: simartin
Date: Fri May 25 20:26:36 2007
New Revision: 125070

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=125070
Log:
2007-05-25  Simon Martin  [EMAIL PROTECTED]
Manuel Lopez-Ibanez  [EMAIL PROTECTED]

PR c++/31745
* parser.c (cp_parser_skip_to_closing_brace): Return true if the next
token is a closing brace, false if there are no tokens left.
(cp_parser_namespace_alias_definition): Only consume the next token if
it is a closing brace.

* parser.c (cp_parser_class_specifier): Likewise.

Added:
trunk/gcc/testsuite/g++.dg/parse/crash34.C
trunk/gcc/testsuite/g++.dg/parse/crash35.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/parser.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31745



[Bug c++/31745] [4.3 regression] ICE on invalid use of namespace

2007-05-25 Thread simartin at gcc dot gnu dot org


--- Comment #3 from simartin at gcc dot gnu dot org  2007-05-25 20:33 
---
Fixed on the mainline.


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||simartin at gcc dot gnu dot
   ||org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31745



[Bug c++/30759] [4.1/4.2/4.3 Regression] initializer-list accepted for object of non-POD type

2007-06-07 Thread simartin at gcc dot gnu dot org


--- Comment #3 from simartin at gcc dot gnu dot org  2007-06-07 19:59 
---
Subject: Bug 30759

Author: simartin
Date: Thu Jun  7 19:59:33 2007
New Revision: 125539

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=125539
Log:
gcc/

2007-06-07  Simon Martin  [EMAIL PROTECTED]

PR c++/30759
* c-common.h (flag_cpp0x): Replaced by...
(cxx_dialect): ... this new variable specifying the C++ dialect that
is used.
* c-common.c (flag_cpp0x): Removed.
(cxx_dialect): Defined.
* c-cppbuiltin.c (c_cpp_builtins): flag_cpp0x rewritten in terms of
cxx_dialect.
* c-opts.c (c_common_post_options): Likewise.
(set_std_cxx98): Set cxx_dialect to cxx98.
(set_std_cxx0x): Set cxx_dialect to cxx0x.

gcc/cp/

2007-06-07  Simon Martin  [EMAIL PROTECTED]

PR c++/30759
* decl.c (check_initializer): Report an error when a brace enclosed
initializer is used for a non-aggregate type in C++98.
(redeclaration_error_message): Rewrote flag_cpp0x in terms of
cxx_dialect.
(grokdeclarator): Likewise.
(move_fn_p): Likewise.
* typeck.c (check_return_expr): Likewise.
* call.c (reference_binding): Likewise.
* error.c (cp_cpp_error): Likewise.
* pt.c (check_default_tmpl_args): Likewise.
(tsubst): Likewise.
* lex.c (init_reswords): Likewise.
* parser.c (p_parser_primary_expression): Likewise.
(TOKEN_PRECEDENCE): Likewise.
(cp_parser_init_declarator): Likewise.
(cp_parser_ptr_operator): Likewise.
(cp_parser_parameter_declaration): Likewise.
(cp_parser_enclosed_template_argument_list): Likewise.
(cp_parser_skip_to_end_of_template_parameter_list): Likewise.
(cp_parser_next_token_ends_template_argument_p): Likewise.

gcc/testsuite/

2007-06-07  Simon Martin  [EMAIL PROTECTED]

PR c++/30759
* g++.dg/init/brace6.C: New test.

Added:
trunk/gcc/testsuite/g++.dg/init/brace6.C
Modified:
trunk/gcc/ChangeLog
trunk/gcc/c-common.c
trunk/gcc/c-common.h
trunk/gcc/c-cppbuiltin.c
trunk/gcc/c-opts.c
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/call.c
trunk/gcc/cp/decl.c
trunk/gcc/cp/error.c
trunk/gcc/cp/lex.c
trunk/gcc/cp/parser.c
trunk/gcc/cp/pt.c
trunk/gcc/cp/typeck.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30759



[Bug c++/30759] [4.1/4.2/4.3 Regression] initializer-list accepted for object of non-POD type

2007-06-08 Thread simartin at gcc dot gnu dot org


--- Comment #4 from simartin at gcc dot gnu dot org  2007-06-08 18:27 
---
Fixed on the mainline.


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||simartin at gcc dot gnu dot
   ||org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30759



[Bug c++/32111] [4.3 regression] ICE declaring destructor as friend

2007-06-25 Thread simartin at gcc dot gnu dot org


--- Comment #2 from simartin at gcc dot gnu dot org  2007-06-25 22:51 
---
Subject: Bug 32111

Author: simartin
Date: Mon Jun 25 22:51:12 2007
New Revision: 126006

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=126006
Log:
gcc/cp/

2007-06-26  Simon Martin  [EMAIL PROTECTED]

PR c++/32111
* decl.c (grokdeclarator): Reset friendp for member functions declared
friend of their own class.

gcc/testsuite/

2006-06-26  Simon Martin  [EMAIL PROTECTED]

PR c++/32111
* g++.dg/other/friend5.C: New test.

Added:
trunk/gcc/testsuite/g++.dg/other/friend5.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/decl.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32111



[Bug c++/32111] [4.3 regression] ICE declaring destructor as friend

2007-06-25 Thread simartin at gcc dot gnu dot org


--- Comment #3 from simartin at gcc dot gnu dot org  2007-06-25 22:54 
---
This should be fixed in 4.3.


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||simartin at gcc dot gnu dot
   ||org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32111



[Bug c++/27492] [4.0/4.1/4.2 regression] ICE on invalid covariant return type

2007-06-27 Thread simartin at gcc dot gnu dot org


--- Comment #7 from simartin at gcc dot gnu dot org  2007-06-27 19:53 
---
Subject: Bug 27492

Author: simartin
Date: Wed Jun 27 19:53:45 2007
New Revision: 126061

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=126061
Log:
gcc/cp/

2007-06-27  Simon Martin  [EMAIL PROTECTED]

PR c++/27492
* decl.c (duplicate_decls): Don't reset DECL_INVALID_OVERRIDER_P for
function decls.

gcc/testsuite/

2007-06-27  Simon Martin  [EMAIL PROTECTED]

PR c++/27492
* g++.dg/inherit/covariant15.C: New test.

Added:
branches/gcc-4_2-branch/gcc/testsuite/g++.dg/inherit/covariant15.C
Modified:
branches/gcc-4_2-branch/gcc/cp/ChangeLog
branches/gcc-4_2-branch/gcc/cp/decl.c
branches/gcc-4_2-branch/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27492



[Bug c++/27492] [4.0/4.1 regression] ICE on invalid covariant return type

2007-06-27 Thread simartin at gcc dot gnu dot org


--- Comment #8 from simartin at gcc dot gnu dot org  2007-06-27 19:59 
---
Fixed in 4.2 as well.


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

Summary|[4.0/4.1/4.2 regression] ICE|[4.0/4.1 regression] ICE on
   |on invalid covariant return |invalid covariant return
   |type|type


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27492



[Bug c++/32111] [4.3 regression] ICE declaring destructor as friend

2007-06-30 Thread simartin at gcc dot gnu dot org


--- Comment #5 from simartin at gcc dot gnu dot org  2007-06-30 17:02 
---
Fixed.


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32111



[Bug c++/30917] [4.1/4.2/4.3 Regression] ICE with friend in local class (to a function)

2007-07-28 Thread simartin at gcc dot gnu dot org


--- Comment #6 from simartin at gcc dot gnu dot org  2007-07-28 10:48 
---
Subject: Bug 30917

Author: simartin
Date: Sat Jul 28 10:48:30 2007
New Revision: 127016

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=127016
Log:
gcc/cp/

2007-07-28  Simon Martin  [EMAIL PROTECTED]
Mark Mitchell  [EMAIL PROTECTED]

PR c++/30917
* name-lookup.c (lookup_name_real): Non namespace-scope bindings can be
hidden due to friend declarations in local classes.

gcc/testsuite/

2007-07-28  Simon Martin  [EMAIL PROTECTED]

PR c++/30917
* g++.dg/lookup/friend11.C: New test.

Added:
trunk/gcc/testsuite/g++.dg/lookup/friend11.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/name-lookup.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30917



[Bug c++/30917] [4.1/4.2/4.3 Regression] ICE with friend in local class (to a function)

2007-07-28 Thread simartin at gcc dot gnu dot org


--- Comment #7 from simartin at gcc dot gnu dot org  2007-07-28 20:12 
---
Subject: Bug 30917

Author: simartin
Date: Sat Jul 28 20:12:42 2007
New Revision: 127023

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=127023
Log:
gcc/cp/

2007-07-28  Simon Martin  [EMAIL PROTECTED]
Mark Mitchell  [EMAIL PROTECTED]

PR c++/30917
* name-lookup.c (lookup_name_real): Non namespace-scope bindings can be
hidden due to friend declarations in local classes.

gcc/testsuite/

2007-07-28  Simon Martin  [EMAIL PROTECTED]

PR c++/30917
* g++.dg/lookup/friend11.C: New test.

Added:
branches/gcc-4_2-branch/gcc/testsuite/g++.dg/lookup/friend11.C
Modified:
branches/gcc-4_2-branch/gcc/cp/ChangeLog
branches/gcc-4_2-branch/gcc/cp/name-lookup.c
branches/gcc-4_2-branch/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30917



[Bug c++/30917] [4.1 Regression] ICE with friend in local class (to a function)

2007-07-28 Thread simartin at gcc dot gnu dot org


--- Comment #8 from simartin at gcc dot gnu dot org  2007-07-28 20:14 
---
Fixed in 4.2 and 4.3.


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

Summary|[4.1/4.2/4.3 Regression] ICE|[4.1 Regression] ICE with
   |with friend in local class  |friend in local class (to a
   |(to a function) |function)


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30917



[Bug c++/34059] [4.1/4.2/4.3 regression] ICE with invalid base type for class member

2007-11-26 Thread simartin at gcc dot gnu dot org


--- Comment #3 from simartin at gcc dot gnu dot org  2007-11-26 19:38 
---
Testing a patch.


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||simartin at gcc dot gnu dot
   ||org
 AssignedTo|unassigned at gcc dot gnu   |simartin at gcc dot gnu dot
   |dot org |org
 Status|NEW |ASSIGNED
   Last reconfirmed|2007-11-19 04:11:30 |2007-11-26 19:38:27
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34059



[Bug c++/34059] [4.1/4.2/4.3 regression] ICE with invalid base type for class member

2007-11-27 Thread simartin at gcc dot gnu dot org


--- Comment #4 from simartin at gcc dot gnu dot org  2007-11-27 20:26 
---
Patch submitted here: http://gcc.gnu.org/ml/gcc-patches/2007-11/msg01404.html


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34059



[Bug c++/34059] [4.1/4.2/4.3 regression] ICE with invalid base type for class member

2007-12-10 Thread simartin at gcc dot gnu dot org


--- Comment #5 from simartin at gcc dot gnu dot org  2007-12-10 22:39 
---
Subject: Bug 34059

Author: simartin
Date: Mon Dec 10 22:39:27 2007
New Revision: 130754

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=130754
Log:
gcc/cp/

2007-12-10  Simon Martin  [EMAIL PROTECTED]

PR c++/34059
* typeck.c (build_class_member_access_expr): Compute MEMBER_SCOPE from
MEMBER's BASELINK_ACCESS_BINFO instead of its BASELINK_BINFO.

gcc/testsuite/

2007-12-10  Simon Martin  [EMAIL PROTECTED]

PR c++/34059
* g++.dg/parse/crash40.C: New test.

Added:
trunk/gcc/testsuite/g++.dg/parse/crash40.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/typeck.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34059



[Bug c++/34059] [4.1/4.2 regression] ICE with invalid base type for class member

2007-12-10 Thread simartin at gcc dot gnu dot org


--- Comment #7 from simartin at gcc dot gnu dot org  2007-12-10 22:54 
---
Subject: Bug 34059

Author: simartin
Date: Mon Dec 10 22:54:26 2007
New Revision: 130756

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=130756
Log:
gcc/cp/

2007-12-10  Simon Martin  [EMAIL PROTECTED]

PR c++/34059
* typeck.c (build_class_member_access_expr): Compute MEMBER_SCOPE from
MEMBER's BASELINK_ACCESS_BINFO instead of its BASELINK_BINFO.

gcc/testsuite/

2007-12-10  Simon Martin  [EMAIL PROTECTED]

PR c++/34059
* g++.dg/parse/crash40.C: New test.

Added:
branches/gcc-4_2-branch/gcc/testsuite/g++.dg/parse/crash40.C
Modified:
branches/gcc-4_2-branch/gcc/cp/ChangeLog
branches/gcc-4_2-branch/gcc/cp/typeck.c
branches/gcc-4_2-branch/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34059



[Bug c++/34059] [4.1/4.2 regression] ICE with invalid base type for class member

2007-12-10 Thread simartin at gcc dot gnu dot org


--- Comment #8 from simartin at gcc dot gnu dot org  2007-12-10 23:03 
---
Fixed on all the active branches.


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34059



[Bug c++/33207] [4.3 regression] ICE redeclaring namespace as struct

2007-09-05 Thread simartin at gcc dot gnu dot org


--- Comment #2 from simartin at gcc dot gnu dot org  2007-09-05 18:32 
---
I'm testing a patch for this one.


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||simartin at gcc dot gnu dot
   ||org
 AssignedTo|unassigned at gcc dot gnu   |simartin at gcc dot gnu dot
   |dot org |org
 Status|NEW |ASSIGNED
   Last reconfirmed|2007-09-01 19:57:15 |2007-09-05 18:32:00
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33207



[Bug c++/30857] [4.1/4.2/4.3 regression] accepts both explicit instantiation and explicit specialization, duplicate explicit instantiations, etc.

2007-09-23 Thread simartin at gcc dot gnu dot org


--- Comment #2 from simartin at gcc dot gnu dot org  2007-09-23 19:49 
---
I've done tests with the current mainline and I wonder if this PR is still
valid...

We report an error for the following three cases:

1. Multiple specializations:
   template typename T class A {};
   template class Aint {};
   template class Aint {};

2. Multiple explicit instantiations:
   template typename T class B {};
   template class Bint;
   template class Bint;

3. Specialization following an explicit instantiation:
   template typename T class D {};
   template class Dint;
   template class Dint {};

The fact that we accept an explicit instantiation after a specialization is due
to DR 259.


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||simartin at gcc dot gnu dot
   ||org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30857



[Bug c++/33207] [4.3 regression] ICE redeclaring namespace as struct

2007-09-25 Thread simartin at gcc dot gnu dot org


--- Comment #4 from simartin at gcc dot gnu dot org  2007-09-25 18:34 
---
Subject: Bug 33207

Author: simartin
Date: Tue Sep 25 18:34:05 2007
New Revision: 128769

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=128769
Log:
gcc/cp/

2007-09-25  Simon Martin  [EMAIL PROTECTED]

PR c++/33207
* name-lookup.c (pushtag): Do not create an implicit typedef before
the associated type declaration is known to be valid.

gcc/testsuite/

2007-09-25  Simon Martin  [EMAIL PROTECTED]

PR c++/33207
* g++.dg/parse/crash38.C: New test.

Added:
trunk/gcc/testsuite/g++.dg/parse/crash38.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/name-lookup.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33207



[Bug c++/33207] [4.3 regression] ICE redeclaring namespace as struct

2007-09-25 Thread simartin at gcc dot gnu dot org


--- Comment #5 from simartin at gcc dot gnu dot org  2007-09-25 18:41 
---
Fixed on the mainline.


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33207



[Bug c++/26698] [4.0/4.1/4.2/4.3 Regression] g++ accepts const-incorrect code due to conversion function

2007-10-12 Thread simartin at gcc dot gnu dot org


--- Comment #13 from simartin at gcc dot gnu dot org  2007-10-12 18:43 
---
Subject: Bug 26698

Author: simartin
Date: Fri Oct 12 18:43:33 2007
New Revision: 129274

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=129274
Log:
gcc/cp/

2007-10-12  Simon Martin  [EMAIL PROTECTED]

PR c++/26698
* call.c (build_user_type_conversion_1): Do not consider conversion
functions to convert a (possibly cv-qualified) object to the (possibly
cv-qualified) same object type (or a reference to it), to a (possibly
cv-qualified) base class of that type (or a reference to it).

gcc/testsuite/

2007-10-12  Simon Martin  [EMAIL PROTECTED]

PR c++/26698
* g++.dg/conversion/op4.C: New test.

Added:
trunk/gcc/testsuite/g++.dg/conversion/op4.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/call.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26698



[Bug c++/26698] [4.0/4.1/4.2/4.3 Regression] g++ accepts const-incorrect code due to conversion function

2007-10-13 Thread simartin at gcc dot gnu dot org


--- Comment #14 from simartin at gcc dot gnu dot org  2007-10-13 06:05 
---
Subject: Bug 26698

Author: simartin
Date: Sat Oct 13 06:04:57 2007
New Revision: 129282

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=129282
Log:
gcc/cp/

2007-10-13  Simon Martin  [EMAIL PROTECTED]

PR c++/26698
* call.c (build_user_type_conversion_1): Do not consider conversion
functions to convert a (possibly cv-qualified) object to the (possibly
cv-qualified) same object type (or a reference to it), to a (possibly
cv-qualified) base class of that type (or a reference to it).

gcc/testsuite/

2007-10-13  Simon Martin  [EMAIL PROTECTED]

PR c++/26698
* g++.dg/conversion/op4.C: New test.

Added:
branches/gcc-4_2-branch/gcc/testsuite/g++.dg/conversion/op4.C
Modified:
branches/gcc-4_2-branch/gcc/cp/ChangeLog
branches/gcc-4_2-branch/gcc/cp/call.c
branches/gcc-4_2-branch/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26698



[Bug c++/26698] [4.0/4.1/4.2/4.3 Regression] g++ accepts const-incorrect code due to conversion function

2007-10-13 Thread simartin at gcc dot gnu dot org


--- Comment #15 from simartin at gcc dot gnu dot org  2007-10-13 06:17 
---
Fixed on all the active branches.


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26698



[Bug c++/33468] [4.1/4.2/4.3 Regression] C++: Invalid interpretation of friendness with nested classes

2007-11-10 Thread simartin at gcc dot gnu dot org


--- Comment #2 from simartin at gcc dot gnu dot org  2007-11-10 20:33 
---
For information, the compiler accepts this because it implements DR 45
(http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_defects.html#45).

It looks like the implementation has been in for a long time, but the it did
not work completely, and it was fixed to fix PR#18681. This could explain why
this code was accepted up to 4.0.3.


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||simartin at gcc dot gnu dot
   ||org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33468



[Bug c++/38089] [4.3/4.4/4.5 Regression] g++ crash on invalid code

2009-06-01 Thread simartin at gcc dot gnu dot org


--- Comment #4 from simartin at gcc dot gnu dot org  2009-06-01 19:02 
---
Patch posted here:
  http://gcc.gnu.org/ml/gcc-patches/2009-06/msg00102.html


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||simartin at gcc dot gnu dot
   ||org
   Last reconfirmed|2008-12-24 04:35:02 |2009-06-01 19:02:25
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38089



[Bug c++/38089] [4.3/4.4/4.5 Regression] g++ crash on invalid code

2009-06-01 Thread simartin at gcc dot gnu dot org


--- Comment #5 from simartin at gcc dot gnu dot org  2009-06-02 05:37 
---
Subject: Bug 38089

Author: simartin
Date: Tue Jun  2 05:37:17 2009
New Revision: 148069

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=148069
Log:
gcc/cp/

2009-06-02  Simon Martin  simar...@users.sourceforge.net

PR c++/38089
* pt.c (register_specialization): Properly setup DECL_CONTEXT for
specializations in an invalid namespace.

gcc/testsuite/

2009-06-02  Simon Martin  simar...@users.sourceforge.net

PR c++/38089
* g++.dg/template/spec36.C: New test.

Added:
trunk/gcc/testsuite/g++.dg/template/spec36.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/pt.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38089



[Bug c++/38089] [4.3/4.4 Regression] g++ crash on invalid code

2009-06-02 Thread simartin at gcc dot gnu dot org


--- Comment #6 from simartin at gcc dot gnu dot org  2009-06-02 23:48 
---
Fixed in 4.5.0.


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

  Known to work|4.0.1   |4.0.1 4.5.0
Summary|[4.3/4.4/4.5 Regression] g++|[4.3/4.4 Regression] g++
   |crash on invalid code   |crash on invalid code


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38089



[Bug c++/40557] [4.5 Regression] ICE with template union

2009-07-04 Thread simartin at gcc dot gnu dot org


--- Comment #1 from simartin at gcc dot gnu dot org  2009-07-04 13:21 
---
Patch submitted here:
  http://gcc.gnu.org/ml/gcc-patches/2009-07/msg00213.html


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||simartin at gcc dot gnu dot
   ||org
 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2009-07-04 13:21:14
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40557



[Bug c++/40557] [4.5 Regression] ICE with template union

2009-07-05 Thread simartin at gcc dot gnu dot org


--- Comment #2 from simartin at gcc dot gnu dot org  2009-07-06 04:55 
---
Subject: Bug 40557

Author: simartin
Date: Mon Jul  6 04:55:20 2009
New Revision: 149276

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=149276
Log:
gcc/cp/

2009-07-06  Simon Martin  simar...@users.sourceforge.net

PR c++/40557
* pt.c (perform_typedefs_access_check, get_types_needing_access_check,
append_type_to_template_for_access_check_1): Use
RECORD_OR_UNION_CODE_P.

gcc/testsuite/

2009-07-06  Simon Martin  simar...@users.sourceforge.net

PR c++/40557
* g++.dg/template/union2.C: New test.

Added:
trunk/gcc/testsuite/g++.dg/template/union2.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/pt.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40557



[Bug c++/40557] [4.5 Regression] ICE with template union

2009-07-05 Thread simartin at gcc dot gnu dot org


--- Comment #3 from simartin at gcc dot gnu dot org  2009-07-06 05:05 
---
Fixed in 4.5


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40557



[Bug c++/38646] [4.3/4.4/4.5 regression] ICE with invalid specialization of variadic template

2009-11-15 Thread simartin at gcc dot gnu dot org


--- Comment #7 from simartin at gcc dot gnu dot org  2009-11-15 21:38 
---
Patch submitted here:
  http://gcc.gnu.org/ml/gcc-patches/2009-11/msg00747.html


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||simartin at gcc dot gnu dot
   ||org
   Last reconfirmed|2009-01-26 18:20:47 |2009-11-15 21:38:45
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38646



[Bug c++/38646] [4.3/4.4/4.5 regression] ICE with invalid specialization of variadic template

2009-11-20 Thread simartin at gcc dot gnu dot org


--- Comment #8 from simartin at gcc dot gnu dot org  2009-11-20 21:37 
---
Subject: Bug 38646

Author: simartin
Date: Fri Nov 20 21:37:23 2009
New Revision: 154378

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=154378
Log:
gcc/cp/

2009-11-20  Simon Martin  simar...@users.sourceforge.net

PR c++/38646
* pt.c (process_partial_specialization): Do not turn wrongly located
parameter pack arguments into error_mark_node.
Split too long lines into two.

gcc/testsuite/

2009-11-20  Simon Martin  simar...@users.sourceforge.net

PR c++/38646
* g++.dg/cpp0x/pr38646.C: New test.

Added:
trunk/gcc/testsuite/g++.dg/cpp0x/pr38646.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/pt.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38646



[Bug c++/38646] [4.3/4.4 regression] ICE with invalid specialization of variadic template

2009-11-20 Thread simartin at gcc dot gnu dot org


--- Comment #9 from simartin at gcc dot gnu dot org  2009-11-20 21:46 
---
Fixed in 4.5


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

Summary|[4.3/4.4/4.5 regression] ICE|[4.3/4.4 regression] ICE
   |with invalid specialization |with invalid specialization
   |of variadic template|of variadic template


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38646



[Bug c++/42054] [4.3/4.4/4.5 Regression] ICE with invalid template parameter

2009-11-22 Thread simartin at gcc dot gnu dot org


--- Comment #1 from simartin at gcc dot gnu dot org  2009-11-22 21:53 
---
Patch submitted here:
http://gcc.gnu.org/ml/gcc-patches/2009-11/msg01204.html


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||simartin at gcc dot gnu dot
   ||org
 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2009-11-22 21:53:27
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42054



[Bug c++/37555] [4.2/4.3/4.4 regression] ICE with invalid typedef

2008-09-27 Thread simartin at gcc dot gnu dot org


--- Comment #2 from simartin at gcc dot gnu dot org  2008-09-27 10:58 
---
Patch posted here:
  http://gcc.gnu.org/ml/gcc-patches/2008-09/msg01880.html


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||simartin at gcc dot gnu dot
   ||org
 AssignedTo|unassigned at gcc dot gnu   |simartin at gcc dot gnu dot
   |dot org |org
 Status|NEW |ASSIGNED
   Last reconfirmed|2008-09-18 19:42:41 |2008-09-27 10:58:49
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37555



[Bug c++/37556] [4.4 regression] ICE with invalid typedef

2008-09-27 Thread simartin at gcc dot gnu dot org


--- Comment #3 from simartin at gcc dot gnu dot org  2008-09-27 10:59 
---
Patch posted here:
  http://gcc.gnu.org/ml/gcc-patches/2008-09/msg01880.html


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 CC|simartin at users dot   |simartin at gcc dot gnu dot
   |sourceforge dot net |org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37556



[Bug c/35437] [4.2/4.3/4.4 regression] ICE with struct containing incomplete type

2008-09-28 Thread simartin at gcc dot gnu dot org


--- Comment #2 from simartin at gcc dot gnu dot org  2008-09-28 16:43 
---
Patch submitted here:
  http://gcc.gnu.org/ml/gcc-patches/2008-09/msg01900.html


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||simartin at gcc dot gnu dot
   ||org
 AssignedTo|unassigned at gcc dot gnu   |simartin at gcc dot gnu dot
   |dot org |org
 Status|NEW |ASSIGNED
   Last reconfirmed|2008-03-15 01:35:13 |2008-09-28 16:43:13
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35437



[Bug c++/37556] [4.4 regression] ICE with invalid typedef

2008-09-30 Thread simartin at gcc dot gnu dot org


--- Comment #4 from simartin at gcc dot gnu dot org  2008-09-30 19:27 
---
Subject: Bug 37556

Author: simartin
Date: Tue Sep 30 19:25:35 2008
New Revision: 140794

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=140794
Log:
gcc/cp/

2008-09-30  Simon Martin  [EMAIL PROTECTED]

PR c++/37555
PR c++/37556
* decl.c (grokdeclarator): Set the type for typedefs to a
nested-name-specifier to error_mark_node.

gcc/testsuite/

2008-09-30  Simon Martin  [EMAIL PROTECTED]

PR c++/37555
* g++.dg/parse/error32.C: New test.

PR c++/37556
* g++.dg/parse/error33.C: New test.

Added:
trunk/gcc/testsuite/g++.dg/parse/error32.C
trunk/gcc/testsuite/g++.dg/parse/error33.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/decl.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37556



[Bug c++/37555] [4.2/4.3/4.4 regression] ICE with invalid typedef

2008-09-30 Thread simartin at gcc dot gnu dot org


--- Comment #3 from simartin at gcc dot gnu dot org  2008-09-30 19:27 
---
Subject: Bug 37555

Author: simartin
Date: Tue Sep 30 19:25:35 2008
New Revision: 140794

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=140794
Log:
gcc/cp/

2008-09-30  Simon Martin  [EMAIL PROTECTED]

PR c++/37555
PR c++/37556
* decl.c (grokdeclarator): Set the type for typedefs to a
nested-name-specifier to error_mark_node.

gcc/testsuite/

2008-09-30  Simon Martin  [EMAIL PROTECTED]

PR c++/37555
* g++.dg/parse/error32.C: New test.

PR c++/37556
* g++.dg/parse/error33.C: New test.

Added:
trunk/gcc/testsuite/g++.dg/parse/error32.C
trunk/gcc/testsuite/g++.dg/parse/error33.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/decl.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37555



[Bug c++/37555] [4.2/4.3/4.4 regression] ICE with invalid typedef

2008-09-30 Thread simartin at gcc dot gnu dot org


--- Comment #4 from simartin at gcc dot gnu dot org  2008-09-30 19:57 
---
Subject: Bug 37555

Author: simartin
Date: Tue Sep 30 19:56:13 2008
New Revision: 140796

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=140796
Log:
gcc/cp/

2008-09-30  Simon Martin  [EMAIL PROTECTED]

PR c++/37555
* decl.c (grokdeclarator): Set the type for typedefs to a
nested-name-specifier to error_mark_node.

gcc/testsuite/

2008-09-30  Simon Martin  [EMAIL PROTECTED]

PR c++/37555
* g++.dg/parse/error32.C: New test.

Added:
branches/gcc-4_3-branch/gcc/testsuite/g++.dg/parse/error32.C
Modified:
branches/gcc-4_3-branch/gcc/cp/ChangeLog
branches/gcc-4_3-branch/gcc/cp/decl.c
branches/gcc-4_3-branch/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37555



[Bug c++/37556] [4.4 regression] ICE with invalid typedef

2008-09-30 Thread simartin at gcc dot gnu dot org


--- Comment #5 from simartin at gcc dot gnu dot org  2008-09-30 19:59 
---
Fixed


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37556



[Bug c++/37555] [4.2 regression] ICE with invalid typedef

2008-09-30 Thread simartin at gcc dot gnu dot org


--- Comment #5 from simartin at gcc dot gnu dot org  2008-09-30 20:01 
---
Fixed in 4.3.3 and 4.4.0.


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

  Known to fail|4.4.0 4.0.0 |4.0.0
  Known to work||4.3.3 4.4.0
Summary|[4.2/4.3/4.4 regression] ICE|[4.2 regression] ICE with
   |with invalid typedef|invalid typedef


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37555



[Bug c++/37647] [4.3/4.4 regression] ICE with invalid use of constructor

2008-10-02 Thread simartin at gcc dot gnu dot org


--- Comment #2 from simartin at gcc dot gnu dot org  2008-10-02 19:42 
---
Introduced by my fix for PR29077


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||simartin at gcc dot gnu dot
   ||org
 AssignedTo|unassigned at gcc dot gnu   |simartin at gcc dot gnu dot
   |dot org |org
 Status|NEW |ASSIGNED
   Last reconfirmed|2008-09-28 19:54:19 |2008-10-02 19:42:54
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37647



[Bug c++/37647] [4.3/4.4 regression] ICE with invalid use of constructor

2008-10-02 Thread simartin at gcc dot gnu dot org


--- Comment #3 from simartin at gcc dot gnu dot org  2008-10-03 03:38 
---
Patch submitted here
  http://gcc.gnu.org/ml/gcc-patches/2008-10/msg00079.html


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37647



[Bug c++/37554] [4.3/4.4 regression] ICE with invalid cast

2008-10-03 Thread simartin at gcc dot gnu dot org


--- Comment #2 from simartin at gcc dot gnu dot org  2008-10-03 22:53 
---
Introduced by a new gcc_assert (wrapped in ENABLE_CHECKING) in the fix for
PR35056 (this assert was discussed starting from
http://gcc.gnu.org/ml/gcc-patches/2008-02/msg00181.html)


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||simartin at gcc dot gnu dot
   ||org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37554



[Bug c++/37736] New: Problem with designated initializer and template

2008-10-05 Thread simartin at gcc dot gnu dot org
Opened from comment 4 in PR29727.

The following valid snipped is rejected with the current mainline

===
templateint struct A
{
  struct S { int X; };
  static S a;
};

templateint N typename AN::S AN::a = { X : 1 };

void foo()
{
  A0::a;
}
===

because 'X' is not found in the designated initializer:

[...]
  pr29727_valid.C:18: error: 'Y' was not declared in this scope
  pr29727_valid.C:18: error: 'B0::S' has no non-static data member named
'declaration error'


We get the same with 4.0.1, 4.2.1 and the 4.3 branch. I don't have any earlier
version to check, so I don't know if this is a regression or not.

With a non template class, the code is accepted.


-- 
   Summary: Problem with designated initializer and template
   Product: gcc
   Version: unknown
Status: UNCONFIRMED
  Keywords: rejects-valid
  Severity: normal
  Priority: P3
 Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: simartin at gcc dot gnu dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37736



[Bug c++/29727] [4.2/4.3/4.4 regression] ICE on invalid initializer for template member

2008-10-05 Thread simartin at gcc dot gnu dot org


--- Comment #8 from simartin at gcc dot gnu dot org  2008-10-05 07:27 
---
PR37736 opened for the reject valid case (it's a different bug).

Patch for the ICE submitted here:
  http://gcc.gnu.org/ml/gcc-patches/2008-10/msg00134.html


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||simartin at gcc dot gnu dot
   ||org
 AssignedTo|unassigned at gcc dot gnu   |simartin at gcc dot gnu dot
   |dot org |org
 Status|NEW |ASSIGNED
   Last reconfirmed|2006-11-26 00:19:12 |2008-10-05 07:27:47
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29727



[Bug c/35437] [4.2/4.3/4.4 regression] ICE with struct containing incomplete type

2008-10-07 Thread simartin at gcc dot gnu dot org


--- Comment #3 from simartin at gcc dot gnu dot org  2008-10-07 20:58 
---
Subject: Bug 35437

Author: simartin
Date: Tue Oct  7 20:56:53 2008
New Revision: 140953

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=140953
Log:
gcc/

2008-10-07  Simon Martin  [EMAIL PROTECTED]

PR c/35437
* expr.c (count_type_elements): Handle ERROR_MARK.

gcc/testsuite/

2008-01-07  Simon Martin  [EMAIL PROTECTED]

PR c/35437
* gcc.dg/struct-parse-2.c: New test.
* g++.dg/parse/struct-4.C: New test.

Added:
trunk/gcc/testsuite/g++.dg/parse/struct-4.C
trunk/gcc/testsuite/gcc.dg/struct-parse-2.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/expr.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35437



[Bug c/35437] [4.2/4.3/4.4 regression] ICE with struct containing incomplete type

2008-10-07 Thread simartin at gcc dot gnu dot org


--- Comment #4 from simartin at gcc dot gnu dot org  2008-10-08 04:18 
---
Subject: Bug 35437

Author: simartin
Date: Wed Oct  8 04:17:27 2008
New Revision: 140961

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=140961
Log:
gcc/

2008-10-08  Simon Martin  [EMAIL PROTECTED]

PR c/35437
* expr.c (count_type_elements): Handle ERROR_MARK.

gcc/testsuite/

2008-10-08  Simon Martin  [EMAIL PROTECTED]

PR c/35437
* gcc.dg/struct-parse-2.c: New test.
* g++.dg/parse/struct-4.C: New test.

Added:
branches/gcc-4_3-branch/gcc/testsuite/g++.dg/parse/struct-4.C
branches/gcc-4_3-branch/gcc/testsuite/gcc.dg/struct-parse-2.c
Modified:
branches/gcc-4_3-branch/gcc/ChangeLog
branches/gcc-4_3-branch/gcc/expr.c
branches/gcc-4_3-branch/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35437



[Bug c/35437] [4.2 regression] ICE with struct containing incomplete type

2008-10-07 Thread simartin at gcc dot gnu dot org


--- Comment #5 from simartin at gcc dot gnu dot org  2008-10-08 04:29 
---
Fixed on 4.3 and 4.4.


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

  Known to work||4.3.3 4.4.0
Summary|[4.2/4.3/4.4 regression] ICE|[4.2 regression] ICE with
   |with struct containing  |struct containing incomplete
   |incomplete type |type


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35437



[Bug c++/21312] [4.2 Regression] Access violation diagnostic given twice

2008-10-11 Thread simartin at gcc dot gnu dot org


--- Comment #11 from simartin at gcc dot gnu dot org  2008-10-11 13:17 
---
This has been fixed in 4.3.0 with the fix for PR29048 (similar patch as the one
I had submitted here).


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||simartin at gcc dot gnu dot
   ||org
  Known to work||4.3.0
Summary|[4.2/4.3/4.4 Regression]|[4.2 Regression] Access
   |Access violation diagnostic |violation diagnostic given
   |given twice |twice


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21312



[Bug c++/35317] [4.1/4.2/4.3/4.4 regression] ICE with operator delete[] and ellipsis

2008-03-08 Thread simartin at gcc dot gnu dot org


--- Comment #1 from simartin at gcc dot gnu dot org  2008-03-08 12:45 
---
Patch submitted here:
  http://gcc.gnu.org/ml/gcc-patches/2008-03/msg00527.html


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |simartin at gcc dot gnu dot
   |dot org |org
 Status|NEW |ASSIGNED
   Last reconfirmed|2008-03-03 16:23:27 |2008-03-08 12:45:20
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35317



[Bug c++/35320] [4.1/4.2/4.3/4.4 regression] ICE with invalid friend declaration

2008-03-15 Thread simartin at gcc dot gnu dot org


--- Comment #1 from simartin at gcc dot gnu dot org  2008-03-15 12:12 
---
Patch submitted here:
  http://gcc.gnu.org/ml/gcc-patches/2008-03/msg00938.html


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |simartin at gcc dot gnu dot
   |dot org |org
 Status|NEW |ASSIGNED
   Last reconfirmed|2008-03-03 16:26:12 |2008-03-15 12:12:09
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35320



[Bug c++/40749] [4.3/4.4/4.5 Regression] g++ doesnt report missing return if return is of type const type

2009-07-17 Thread simartin at gcc dot gnu dot org


--- Comment #2 from simartin at gcc dot gnu dot org  2009-07-17 19:57 
---
It seems to be caused by the fix for PR#18313. I am testing the following:

Index: gcc/cp/decl.c
===
--- gcc/cp/decl.c   (revision 149752)
+++ gcc/cp/decl.c   (working copy)
@@ -8314,12 +8314,14 @@
if (type_quals != TYPE_UNQUALIFIED)
  {
if (SCALAR_TYPE_P (type) || VOID_TYPE_P (type))
- warning (OPT_Wignored_qualifiers,
-  type qualifiers ignored on function return type);
+ {
+   warning (OPT_Wignored_qualifiers,
+type qualifiers ignored on function return
type);
+   set_no_warning = true;
+ }
/* We now know that the TYPE_QUALS don't apply to the
   decl, but to its return type.  */
type_quals = TYPE_UNQUALIFIED;
-   set_no_warning = true;
  }
errmsg = targetm.invalid_return_type (type);
if (errmsg)


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||simartin at gcc dot gnu dot
   ||org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40749



[Bug c++/40749] [4.3/4.4/4.5 Regression] g++ doesnt report missing return if return is of type const type

2009-07-17 Thread simartin at gcc dot gnu dot org


--- Comment #3 from simartin at gcc dot gnu dot org  2009-07-17 22:03 
---
Updated patch submitted here:
  http://gcc.gnu.org/ml/gcc-patches/2009-07/msg01043.html


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |simartin at gcc dot gnu dot
   |dot org |org
 Status|NEW |ASSIGNED
   Last reconfirmed|2009-07-15 09:37:13 |2009-07-17 22:03:33
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40749



[Bug c++/18313] Missing warning for superfluous const's in return types

2009-07-25 Thread simartin at gcc dot gnu dot org


--- Comment #8 from simartin at gcc dot gnu dot org  2009-07-25 13:12 
---
I think that the objection in comment #6 has been taken into account, with
 
http://gcc.gnu.org/viewcvs/trunk/gcc/cp/pt.c?r1=137660r2=137672diff_format=h


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||simartin at gcc dot gnu dot
   ||org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18313



[Bug c++/40749] [4.3/4.4/4.5 Regression] g++ doesnt report missing return if return is of type const type

2009-07-26 Thread simartin at gcc dot gnu dot org


--- Comment #4 from simartin at gcc dot gnu dot org  2009-07-26 08:16 
---
Subject: Bug 40749

Author: simartin
Date: Sun Jul 26 08:16:41 2009
New Revision: 150097

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=150097
Log:
gcc/cp/

2009-07-26  Simon Martin  simar...@users.sourceforge.net

PR c++/40749
* decl.c (grokdeclarator): Do not set TREE_NO_WARNING for functions
with a qualified return type.

gcc/testsuite/

2007-07-26  Simon Martin  simar...@users.sourceforge.net

PR c++/40749
* g++.dg/warn/Wreturn-type-6.C: New test.

Added:
trunk/gcc/testsuite/g++.dg/warn/Wreturn-type-6.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/decl.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40749



[Bug c++/40749] [4.3/4.4/4.5 Regression] g++ doesnt report missing return if return is of type const type

2009-07-26 Thread simartin at gcc dot gnu dot org


--- Comment #5 from simartin at gcc dot gnu dot org  2009-07-26 16:05 
---
Subject: Bug 40749

Author: simartin
Date: Sun Jul 26 16:05:22 2009
New Revision: 150099

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=150099
Log:
gcc/cp/

2009-07-26  Simon Martin  simar...@users.sourceforge.net

PR c++/40749
* decl.c (grokdeclarator): Do not set TREE_NO_WARNING for functions
with a qualified return type.

gcc/testsuite/

2007-07-26  Simon Martin  simar...@users.sourceforge.net

PR c++/40749
* g++.dg/warn/Wreturn-type-6.C: New test.

Added:
branches/gcc-4_4-branch/gcc/testsuite/g++.dg/warn/Wreturn-type-6.C
Modified:
branches/gcc-4_4-branch/gcc/cp/ChangeLog
branches/gcc-4_4-branch/gcc/cp/decl.c
branches/gcc-4_4-branch/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40749



[Bug c++/40749] [4.3 Regression] g++ doesnt report missing return if return is of type const type

2009-07-26 Thread simartin at gcc dot gnu dot org


--- Comment #6 from simartin at gcc dot gnu dot org  2009-07-26 16:11 
---
Fixed in 4.5 and 4.4. I don't plan to commit this to 4.3.


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|simartin at gcc dot gnu dot |unassigned at gcc dot gnu
   |org |dot org
 Status|ASSIGNED|NEW
  Known to fail|4.3.3 4.4.0 4.5.0   |4.3.3 4.4.0
  Known to work|4.2.4   |4.2.4 4.4.2 4.5.0
Summary|[4.3/4.4/4.5 Regression] g++|[4.3 Regression] g++ doesnt
   |doesnt report missing return|report missing return if
   |if return is of type const  |return is of type const
   |type  |type


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40749



[Bug c++/35317] [4.1/4.2/4.3/4.4 regression] ICE with operator delete[] and ellipsis

2008-06-13 Thread simartin at gcc dot gnu dot org


--- Comment #2 from simartin at gcc dot gnu dot org  2008-06-14 00:20 
---
Subject: Bug 35317

Author: simartin
Date: Sat Jun 14 00:19:25 2008
New Revision: 136774

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=136774
Log:
gcc/cp/

2008-06-14  Simon Martin  [EMAIL PROTECTED]

PR c++/35317
* class.c (type_requires_array_cookie): Do not consider delete[]
operators with an ellipsis as second argument.

gcc/testsuite/

2008-06-14  Simon Martin  [EMAIL PROTECTED]

PR c++/35317
* g++.dg/other/dtor2.C: New test.

Added:
trunk/gcc/testsuite/g++.dg/other/dtor2.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/class.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35317



[Bug c++/35320] [4.1/4.2/4.3/4.4 regression] ICE with invalid friend declaration

2008-06-13 Thread simartin at gcc dot gnu dot org


--- Comment #2 from simartin at gcc dot gnu dot org  2008-06-14 05:22 
---
Subject: Bug 35320

Author: simartin
Date: Sat Jun 14 05:21:30 2008
New Revision: 136778

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=136778
Log:
gcc/cp/

2008-06-14  Simon Martin  [EMAIL PROTECTED]

PR c++/35320
* decl2.c (grokbitfield): Receive the list of attributes, pass it to
grokdeclarator and apply it to the created declaration.
* cp-tree.h (grokbitfield): Update prototype.
* parser.c (cp_parser_member_declaration): Don't apply the attributes
since they are now applied in grokbitfield. Adjusted the call to
grokbitfield.
(cp_parser_objc_class_ivars): Likewise.

gcc/testsuite/

2008-06-14  Simon Martin  [EMAIL PROTECTED]

PR c++/35320
* g++.dg/parse/bitfield3.C: New test.

Added:
trunk/gcc/testsuite/g++.dg/parse/bitfield3.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/cp-tree.h
trunk/gcc/cp/decl2.c
trunk/gcc/cp/parser.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35320



[Bug c++/35317] [4.1/4.2/4.3/4.4 regression] ICE with operator delete[] and ellipsis

2008-06-15 Thread simartin at gcc dot gnu dot org


--- Comment #3 from simartin at gcc dot gnu dot org  2008-06-15 11:58 
---
Subject: Bug 35317

Author: simartin
Date: Sun Jun 15 11:57:33 2008
New Revision: 136807

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=136807
Log:
gcc/cp/

2008-06-15  Simon Martin  [EMAIL PROTECTED]

PR c++/35317
* class.c (type_requires_array_cookie): Do not consider delete[]
operators with an ellipsis as second argument.

gcc/testsuite/

2008-06-15  Simon Martin  [EMAIL PROTECTED]

PR c++/35317
* g++.dg/other/dtor2.C: New test.

Added:
branches/gcc-4_3-branch/gcc/testsuite/g++.dg/other/dtor2.C
Modified:
branches/gcc-4_3-branch/gcc/cp/ChangeLog
branches/gcc-4_3-branch/gcc/cp/class.c
branches/gcc-4_3-branch/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35317



[Bug c++/35320] [4.1/4.2/4.3/4.4 regression] ICE with invalid friend declaration

2008-06-15 Thread simartin at gcc dot gnu dot org


--- Comment #3 from simartin at gcc dot gnu dot org  2008-06-15 12:06 
---
Subject: Bug 35320

Author: simartin
Date: Sun Jun 15 12:05:37 2008
New Revision: 136808

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=136808
Log:
gcc/cp/

2008-06-15  Simon Martin  [EMAIL PROTECTED]

PR c++/35320
* decl2.c (grokbitfield): Receive the list of attributes, pass it to
grokdeclarator and apply it to the created declaration.
* cp-tree.h (grokbitfield): Update prototype.
* parser.c (cp_parser_member_declaration): Don't apply the attributes
since they are now applied in grokbitfield. Adjusted the call to
grokbitfield.
(cp_parser_objc_class_ivars): Likewise.

gcc/testsuite/

2008-06-15  Simon Martin  [EMAIL PROTECTED]

PR c++/35320
* g++.dg/parse/bitfield3.C: New test.

Added:
branches/gcc-4_3-branch/gcc/testsuite/g++.dg/parse/bitfield3.C
Modified:
branches/gcc-4_3-branch/gcc/cp/ChangeLog
branches/gcc-4_3-branch/gcc/cp/cp-tree.h
branches/gcc-4_3-branch/gcc/cp/decl2.c
branches/gcc-4_3-branch/gcc/cp/parser.c
branches/gcc-4_3-branch/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35320



[Bug c++/35317] [4.1/4.2 regression] ICE with operator delete[] and ellipsis

2008-06-15 Thread simartin at gcc dot gnu dot org


--- Comment #4 from simartin at gcc dot gnu dot org  2008-06-15 12:18 
---
Fixed in 4.3 and 4.4.


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||simartin at gcc dot gnu dot
   ||org
  Known to work||4.3.2 4.4.0
   Last reconfirmed|2008-03-08 12:45:20 |2008-06-15 12:18:53
   date||
Summary|[4.1/4.2/4.3/4.4 regression]|[4.1/4.2 regression] ICE
   |ICE with operator delete[]  |with operator delete[] and
   |and ellipsis|ellipsis


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35317



[Bug c++/35320] [4.1/4.2 regression] ICE with invalid friend declaration

2008-06-15 Thread simartin at gcc dot gnu dot org


--- Comment #4 from simartin at gcc dot gnu dot org  2008-06-15 12:20 
---
Fixed in 4.3 and 4.4


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||simartin at gcc dot gnu dot
   ||org
  Known to work||4.3.2 4.4.0
Summary|[4.1/4.2/4.3/4.4 regression]|[4.1/4.2 regression] ICE
   |ICE with invalid friend |with invalid friend
   |declaration |declaration


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35320



[Bug c++/34963] [4.3/4.4 regression] ICE completely broken destructor

2008-07-06 Thread simartin at gcc dot gnu dot org


--- Comment #3 from simartin at gcc dot gnu dot org  2008-07-06 07:55 
---
Patch submitted here:
  http://gcc.gnu.org/ml/gcc-patches/2008-07/msg00440.html


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||simartin at gcc dot gnu dot
   ||org
 AssignedTo|unassigned at gcc dot gnu   |simartin at gcc dot gnu dot
   |dot org |org
 Status|NEW |ASSIGNED
   Last reconfirmed|2008-01-25 09:57:07 |2008-07-06 07:55:51
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34963



[Bug c++/34963] [4.3/4.4 regression] ICE completely broken destructor

2008-07-07 Thread simartin at gcc dot gnu dot org


--- Comment #4 from simartin at gcc dot gnu dot org  2008-07-07 20:42 
---
Subject: Bug 34963

Author: simartin
Date: Mon Jul  7 20:42:03 2008
New Revision: 137598

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=137598
Log:
gcc/cp/

2008-07-07  Simon Martin  [EMAIL PROTECTED]

PR c++/34963
* decl.c (grokdeclarator): Reset storage_class and staticp for friend
functions declared with a storage class qualifier.

gcc/testsuite/

2008-07-07  Simon Martin  [EMAIL PROTECTED]

PR c++/34963
* g++.dg/parse/dtor13.C: New test.

Added:
branches/gcc-4_3-branch/gcc/testsuite/g++.dg/parse/dtor13.C
Modified:
branches/gcc-4_3-branch/gcc/cp/ChangeLog
branches/gcc-4_3-branch/gcc/cp/decl.c
branches/gcc-4_3-branch/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34963



[Bug c++/34963] [4.3/4.4 regression] ICE completely broken destructor

2008-07-08 Thread simartin at gcc dot gnu dot org


--- Comment #5 from simartin at gcc dot gnu dot org  2008-07-08 18:42 
---
Subject: Bug 34963

Author: simartin
Date: Tue Jul  8 18:41:35 2008
New Revision: 137637

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=137637
Log:
gcc/cp/

2008-07-08  Simon Martin  [EMAIL PROTECTED]

PR c++/34963
* decl.c (grokdeclarator): Reset storage_class and staticp for friend
functions declared with a storage class qualifier.

gcc/testsuite/

2008-07-08  Simon Martin  [EMAIL PROTECTED]

PR c++/34963
* g++.dg/parse/dtor13.C: New test.

Added:
trunk/gcc/testsuite/g++.dg/parse/dtor13.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/decl.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34963



[Bug c++/34963] [4.3/4.4 regression] ICE completely broken destructor

2008-07-08 Thread simartin at gcc dot gnu dot org


--- Comment #6 from simartin at gcc dot gnu dot org  2008-07-08 18:47 
---
Fixed in 4.3 and 4.4.


-- 

simartin at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
  Known to work|4.2.3   |4.2.3 4.3.2 4.4.0
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34963



  1   2   >