- 17 Jan, 2003 4 commits
-
-
PR c++/9167, c++/9358 * decl.c (require_complete_types_for_parms): Also update DECL_ARG_TYPE. From-SVN: r61459
Jason Merrill committed -
PR c++/9342 * call.c (build_conditional_expr): Always do lvalue-rvalue conversion. From-SVN: r61457
Jason Merrill committed -
PR c++/9294 * cp-tree.def (BASELINK): Make it class 'x', not class 'e'. * cp-tree.h (BASELINK_BINFO): Adjust. (BASELINK_FUNCTIONS): Likewise. (BASELINK_ACCESS_BINFO): Likewise. (tree_baselink): New structure. (cp_tree_node_structure_enum): Add TS_CP_BASELINK. (lang_tree_node): Add baselink. * decl.c (cp_tree_node_structure): Add BASELINK case. * search.c (build_baselink): Adjust. * tree.c (cp_walk_subtrees): Add BASELINK case. Remove BASELINK_P test from TREE_LIST case. PR c++/9272 * parser.c (cp_parser_constructor_declarator_p): Do not assume that a constructor cannot be declared outside of its own class. * parser.c (cp_parser_resolve_typename_type): If the scope cannot be resolved, neither can the qualified name. * rtti.c (get_pseudo_ti_desc): Fix thinko. PR c++/9272 * g++.dg/parse/ctor1.C: New test. PR c++/9294: * g++.dg/parse/qualified1.C: New test. * g++.dg/parse/typename3.C: New test. From-SVN: r61456
Mark Mitchell committed -
PR c++/8564 * init.c (build_vec_init): Re-add maxindex parm. (perform_member_init, build_aggr_init): Pass it. (build_new_1): Pass it. Use an incomplete array type for full_type. * typeck.c (build_modify_expr): Pass it. * cp-tree.h: Adjust. From-SVN: r61422
Jason Merrill committed
-
- 16 Jan, 2003 4 commits
-
-
2003-01-16 Jeffrey D. Oldham <oldham@codesourcery.com> * cp-tree.h (tsubst_copy_and_build): New declaration. * pt.c (tsubst_copy): Remove 'build_expr_from_tree' from comment. (tsubst_expr): Use 'tsubst_copy_and_build'. Update initial comment. (tsubst_copy_and_build): New function. From-SVN: r61409
Jeffrey D. Oldham committed -
* cp-tree.h (lang_type_class): Remove is_partial_instantiation. (PARTIAL_INSTANTIATION_P): Remove. (IMPLICIT_TYPENAME_P): Likewise. (IMPLICIT_TYPENAME_TYPE_DECL_P): Likewise. (build_typename_type): Remove declaration. (parmlist_is_exprlist): Likewise. * decl.c (build_typename_type): Make it static, remove third parameter. (push_class_binding): Don't do implicit typename stuff. (make_typename_type): Likewise. (lookup_name_real): Likewise. (grokdeclarator): Don't try to convert declarations into initializations. Don't do implicit typename stuff. (parmlist_is_exprlist): Remove. (xref_basetypes): Simplify. * decl2.c (grokfield): Don't try to convert declarations into initializations. (build_anon_union_vars): Do this while processing templates, too. (finish_anon_union): Likewise. * error.c (dump_type): Remove implicit typename handling. * parser.c (cp_parser_diagnose_invalid_type_name): New method. (cp_parser_primary_expression): Correct handling of names not found by unqualified name lookup in templates. (cp_parser_nested_name_specifier_opt): Avoid checking dependency of types when possible. (cp_parser_simple_declaration): Complain intelligently about some invalid declarations. (cp_parser_member_declaration): Likewise. (cp_parser_constructor_declarator_p): Don't check when we're in a function scope. * pt.c (instantiate_class_template): Remove PARTIAL_INSTANTIATION_P gunk. * search.c (lookup_field_r): Don't build implicit typenames. (marked_pushdecls_p): Don't enter dependent base types. (unmarked_pushdecls_p): Likewise. * semantics.c (begin_class_definition): Remove implicit typename stuff. * config/locale/gnu/messages_members.h: Use this-> to refer to unqualified members of base clasess. * config/locale/ieee_1003.1-2001/codecvt_specializations.h: Likewise. * include/bits/codecvt.h: Likewise. * include/bits/deque.tcc: Likewise. * include/bits/fstream.tcc: Likewise. * include/bits/istream.tcc: Likewise. * include/bits/list.tcc: Likewise. * include/bits/locale_facets.h: Likewise. * include/bits/ostream.tcc: Likewise. * include/bits/sstream.tcc: Likewise. * include/bits/stl_bvector.h: Likewise. * include/bits/stl_deque.h: Likewise. * include/bits/stl_list.h: Likewise. * include/bits/stl_tree.h: Likewise. * include/bits/stl_vector.h: Likewise. * include/bits/vector.tcc: Likewise. * include/ext/ropeimpl.h: Likewise. * include/ext/stdio_filebuf.h: Likewise. * include/ext/stl_rope.h: Likewise. * include/std/std_fstream.h: Likewise. * include/std/std_sstream.h: Likewise. Co-Authored-By: Jeffrey Oldham <oldham@codesourcery.com> From-SVN: r61403
Mark Mitchell committed -
cp: PR C++/9212 * parser.c (cp_parser_direct_declarator): If accepting either abstract or named, the name must be an unqualified-id. testsuite: * g++.dg/parse/ambig2.C: New test. From-SVN: r61399
Nathan Sidwell committed -
* arm.h (CONDITIONAL_REGISTER_USAGE): Avoid signed/unsigned warning. * emit-rtl.c (gen_rtx_REG, set_mem_attributes_minus_bitpos, init_emit_once): Likewise. * flow.c (mark_regs_live_at_end, calculate_global_regs_live): Likewise. * function.c (assign_stack_temp_for_type): Likewise. * loop.c (loop_invariant_p): Likewise. * recog.c (push_operand): Likewise. * regclass.c (init_reg_sets_1): Likewise. * reload.c (update_auto_inc_notes): Likewise. * reload1.c (reload_as_needed, emit_input_reload_insns): Likewise. * stmt.c (expand_asm_operands): Likewise. * stor-layout.c (start_record_layout): Likewise. cp: * class.c (layout_virtual_bases): Avoid signed/unsigned warning. java: * jcf-write.c (generate_bytecode_insns): Avoid signed/unsigned warning. From-SVN: r61389
Kaveh R. Ghazi committed
-
- 15 Jan, 2003 1 commit
-
-
cp: * decl2.c (check_classfn): Fix uninitialized warning. (build_anon_union_vars): Likewise. * pt.c (tsubst_copy): Likewise. gcc: * genattr.c (main): Rearrange output to avoid prototype warning. * genautomata.c (transform_3): Fix ambiguous-else warning. * local-alloc.c (requires_inout): Add parentheses around assignment used as truth-value. * timevar.c: Move system includes above local includes. Include toplev.h * Makefile.in (timevar.o): Depend on toplev.h. From-SVN: r61308
Kaveh R. Ghazi committed
-
- 14 Jan, 2003 2 commits
-
-
2003-01-14 Jeffrey D. Oldham <oldham@codesourcery.com> Further conform g++'s __vmi_class_type_info to the C++ ABI specification. * gcc/cp/rtti.c (dfs_class_hint_mark): Do not set hints not specified by the specification. (class_hint_flags): Likewise. * gcc/testsuite/g++.old-deja/g++.abi/vmihint.C (main): Revise expected flags per the specification. * libstdc++-v3/libsupc++/cxxabi.h (__vmi_class_type_info::__flags_masks): Remove enumerations not required by the specification. From-SVN: r61304
Jeffrey D. Oldham committed -
* config-lang.in: Add semantics.c to gtfiles. * cp-tree.h (flagged_type_tree_s): Remove lookups field. (saved_scope): Likewise. (type_lookups): Remove. (deferred_access): New structure. (type_access_control): Remove. (save_type_access_control): Likewise. (reset_type_access_control): Likewise. (decl_type_access_control): Likewise. (push_deferring_access_checks): Declare. (resume_deferring_access_checks): Likewise. (stop_deferring_access_checks): Likewise. (pop_deferring_access_checks): Likewise. (get_deferred_access_checks): Likewise. (pop_to_parent_deferring_access_checks): Likewise. (perform_deferred_access_checks): Likewise. (perform_or_defer_access_check): Likewise. * decl.c (make_typename_type): Use perform_or_defer_access_check. (make_unbound_class_template): Likewise. (grokdeclarator): Don't call decl_type_access_control. * parser.c (cp_parser_context): Remove deferred_access_checks and deferring_access_checks_p fields. (cp_parser_context_new): Adjust. (cp_parser): Remove access_checks_lists. (cp_parser_defer_access_check): Remove. (cp_parser_start_deferring_access_checks): Remove. (cp_parser_stop_deferring_access_checks): Remove. (cp_parser_perform_deferred_access_checks): Remove. (cp_parser_nested_name_specifier_opt): Use new deferred access functions. (cp_parser_simple_declaration): Likewise. (cp_parser_template_id): Likewise. (cp_parser_function_definition): Likewise. (cp_parser_class_specifier): Likewise. (cp_parser_lookup_name): Likewise. (cp_parser_single_declaration): Likewise. (cp_parser_pre_parsed_nested_name_specifier): Likewise. (cp_parser_parse_tentatively): Likewise. (cp_parser_parse_definitely): Likewise. (yyparse): Likewise. (cp_parser_init_declarator): Remove access_checks parameter. Use new deferred access functions. (cp_parser_function_definition_from_specifiers_and_declarator): Likewise. (cp_parser_class_head): Remove deferring_access_checks_p and saved_access_checks parameters. Use new deferred access functions. (cp_parser_member_specification_opt): Don't call reset_type_access_control. * search.c (type_access_control): Remove. * semantics.c: Include "gt-cp-semantics.h". (deferred_type_access_control): Remove. (deferred_access_stack): New variable. (deferred_access_free_list): Likewise. (push_deferring_access_checks): New function. (resume_deferring_access_checks): Likewise. (stop_deferring_access_checks): Likewise. (pop_deferring_access_checks): Likewise. (get_deferred_access_checks): Likewise. (pop_to_parent_deferring_access_checks): Likewise. (perform_deferred_access_checks): New function, adapted from cp_parser_perform_deferred_access_checks. (perform_or_defer_access_check): New function, adapted from cp_parser_defer_access_check. (current_type_lookups): Remove. (deferred_type_access_control): Likewise. (decl_type_access_control): Likewise. (save_type_access_control): Likewise. (reset_type_access_control): Likewise. (begin_function_definition): Adjust. (begin_class_definiton): Likewise. From-SVN: r61283
Kriang Lerdsuwanakij committed
-
- 13 Jan, 2003 2 commits
-
-
PR c++/8748 * class.c (build_base_path): Take the address before calling save_expr. * call.c (build_user_type_conversion_1): Do set ICS_BAD_FLAG if all the ambiguous conversions are bad. * class.c (maybe_warn_about_overly_private_class): Don't stop searching when we find a nonprivate method. * typeck.c (build_class_member_access_expr): Use unary_complex_lvalue. From-SVN: r61246
Jason Merrill committed -
* cp-tree.h (get_arglist_len_in_bytes): Remove. PR c++/9264 * parser.c (cp_parser_elaborated_type_specifier): Handle erroneous typeame types more robustly. PR c++/9172 * g++.dg/parse/typename1.C: New file. From-SVN: r61236
Mark Mitchell committed
-
- 11 Jan, 2003 1 commit
-
-
2003-01-11 Phil Edwards <pme@gcc.gnu.org> * parser.c: Fix comment typos. From-SVN: r61198
Phil Edwards committed
-
- 10 Jan, 2003 7 commits
-
-
From-SVN: r61175
Mark Mitchell committed -
PR c++/9120 * parser.c (cp_parser_scope_through_which_access_occurs): Handle an object_type which is not a class type. PR c++/9120 * g++.dg/parse/dtor1.C: New file. From-SVN: r61174
Mark Mitchell committed -
* parser.c (cp_parser_late_parsing_for_member): Don't cast to void. (cp_parser_late_parsing_default_args): Likewise. From-SVN: r61170
Geoffrey Keating committed -
* cfns.gperf: ANSIfy function declarations. * cfns.h: Regenerate. * cp-tree.h: ANSIfy function declarations. From-SVN: r61167
Nathanael Nerode committed -
PR c++/9128 * g++.dg/rtti/typeid1.C: New file. PR c++/9153 * g++.dg/parse/lookup1.C: New file. PR c++/9171 * g++.dg/templ/spec5.C: New file. * cp-tree.h (reparse_absdcl_as_expr): Remove. (reparse_absdcl_as_casts): Likewise. (reparse_decl_as_expr): Likewise. (finish_decl_parsing): Likewise. * decl2.c (reparse_absdcl_as_expr): Remove. (reparse_absdcl_as_casts): Likewise. (repase_decl_as_expr): Likewise. (finish_decl_parsing): Likewise. PR c++/9128 PR c++/9153 PR c++/9171 * parser.c (cp_parser_pre_parsed_nested_name_specifier): New function. (cp_parser_nested_name_specifier_opt): Correct the check_dependency_p false. (cp_parser_postfix_expression): Fix formatting. (cp_parser_decl_specifier_seq): Avoid looking for constructor declarators when possible. (cp_parser_template_id): Avoid performing name-lookup when possible. (cp_parser_class_head): Do not count specializations when counting levels of templates. (cp_parser_constructor_declarator_p): Return immediately if there's no chance that the tokens form a constructor declarator. * rtti.c (throw_bad_typeid): Add comment. Do not return an expression with reference type. (get_tinfo_decl_dynamic): Do not return an expression with reference type. (build_typeid): Add comment. Do not return an expression with reference type. * typeck.c (build_class_member_access_expr): Improve handling of conditionals and comma-expressions as objects. From-SVN: r61166
Mark Mitchell committed -
From-SVN: r61162
Nathanael Nerode committed -
From-SVN: r61136
Geoffrey Keating committed
-
- 09 Jan, 2003 5 commits
-
-
From-SVN: r61121
Jakub Jelinek committed -
* pt.c (push_access_scope_real): Call push_to_top_level for function in namespace scope. (pop_access_scope): Call pop_from_top_level for function in namespace scope. * g++.dg/template/friend14.C: New test. From-SVN: r61114
Kriang Lerdsuwanakij committed -
From-SVN: r61111
Jakub Jelinek committed -
Make-lang.in (c++.install-common, [...]): Prepend $(DESTDIR) to destination paths in all (un)installation commands. 2003-01-09 Christian Cornelssen <ccorn@cs.tu-berlin.de> * Make-lang.in (c++.install-common, c++.install-man, c++.uninstall): Prepend $(DESTDIR) to destination paths in all (un)installation commands. (c++.install-common): Rewrite $(LN) commands to support DESTDIR with "ln" as well as with "ln -s". From-SVN: r61079
Christian Cornelssen committed -
(This line wasn't in the ChangeLog even though the change was committed) * decl.c: Remove some #if 0 code. From-SVN: r61061
Nathanael Nerode committed
-
- 08 Jan, 2003 4 commits
-
-
* parser.c (cp_parser_primary_expression): See through explicitly scoped ALIAS_DECLs, too. From-SVN: r61054
Jason Merrill committed -
From-SVN: r61049
Nathanael Nerode committed -
* parser.c (cp_parser_asm_definition): Correct handling of omitted operands. * g++.dg/ext/asm4.C: New test. From-SVN: r61048
Mark Mitchell committed -
PR c++/9030 * decl.c (make_typename_type): Check access only when tf_error. (make_unbound_class_template): Likewise. * pt.c (saved_access_scope): New variable. (push_access_scope_real): New function. (push_access_scope): Likewise. (pop_access_scope): Likewise. (tsubst_default_argument): Use them. (instantiate_template): Likewise. (regenerate_decl_from_template): Likewise. (instantiate_decl): Likewise. (get_mostly_instantiated_function_type): Likewise. * g++.dg/template/friend12.C: New test. * g++.dg/template/friend13.C: Likewise. * g++.old-deja/g++.eh/spec6.C: Add missing error message. From-SVN: r61046
Kriang Lerdsuwanakij committed
-
- 07 Jan, 2003 6 commits
-
-
From-SVN: r61020
Nathanael Nerode committed -
* class.c (layout_class_type): Don't use PCC_BITFIELD_TYPE_MATTERS if not defined. From-SVN: r60994
Andreas Schwab committed -
PR c++/9165 * decl2.c (build_cleanup): Mark the object as used. PR c++/9165 * g++.dg/warn/Wunused-3.C: New test. From-SVN: r60972
Mark Mitchell committed -
* pt.c (retrieve_local_specialization): Revert 2003-01-05 change. (hash_local_specialization): New function. (register_local_specialization): Revert 2003-01-05 change. (instantiate_decl): Use hash_local_specialization when creating the local_specializations table. From-SVN: r60971
Mark Mitchell committed -
From-SVN: r60967
Mark Mitchell committed -
* class.c (layout_class_type): Correct handling of unnamed bitfields wider than their types. * testsuite/g++.dg/abi/bitfield9.C: New test. From-SVN: r60966
Mark Mitchell committed
-
- 06 Jan, 2003 3 commits
-
-
PR c++/9189 * parser.c (cp_parser): Remove default_arg_types. Update documentation for unparsed_functions_queues. (cp_parser_late_parsing_default_args): Take a FUNCTION_DECL as the parameter. (cp_parser_new): Don't set parser->default_arg_types. (cp_parser_function_definition): Adjust usage of unparsed_funtions_queues. (cp_parser_class_specifier): Don't mess with parser->default_arg_types. Handle default argument processing in a separate phase from function body processing. (cp_parser_template_declaration_after_export): Adjust usage of unparsed_functions_queues. (cp_parser_late_parsing_for_member): Do not handle default arguments. PR c++/9189 * g++.dg/parse/defarg3.C: New test. From-SVN: r60956
Mark Mitchell committed -
cp: PR c++/9109 * parser.c (cp_parser_declarator_kind): New enum. (cp_parser_declarator): Adjust. (cp_parser_direct_declarator): Adjust. Allow for either named or abstract declarator. Prefer abstract, if possible. Allow parenthesized function name. (cp_parser_condition): Adjust cp_parser_declarator call. (cp_parser_explicit_instantiation): Likewise. (cp_parser_init_declarator): Likewise. (cp_parser_type_id): Likewise. (cp_parser_function_definition): Likewise. (cp_parser_member_declaration): Likewise. (cp_parser_parameter_declaration): Use cp_parser_declarator to do the tentative parsing. (cp_parser_exception_declaration): Likewise. testsuite: * g++.dg/parse/ambig1.C: New test. * g++.dg/parse/defarg2.C: New test. From-SVN: r60944
Nathan Sidwell committed -
* g++.dg/template/defarg-1.C: New test. * g++.dg/template/local2.C: Likewise. From-SVN: r60924
Mark Mitchell committed
-
- 05 Jan, 2003 1 commit
-
-
* parser.c (cp_parser_binary_expression, cp_parser_multiplicative_expression, cp_parser_additive_expression, cp_parser_shift_expression, cp_parser_relational_expression, cp_parser_equality_expression, cp_parser_and_expression, cp_parser_exclusive_or_expression, cp_parser_inclusive_or_expression, cp_parser_logical_and_expression, cp_parser_logical_or_expression, cp_parser_binary_expression): Const-ify. From-SVN: r60899
Kaveh R. Ghazi committed
-