| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
| |
* typeck.c (merge_types): Propagate ref-qualifier
in METHOD_TYPE case.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198843 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
| |
* decl.c (grokdeclarator): Apply ref-qualifier
in the TYPENAME case.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198842 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
| |
* decl.c (decls_match): Compare ref-qualifiers.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198841 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
| |
* pt.c (convert_template_argument): Use dependent_template_arg_p,
not uses_template_parms.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198778 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
| |
* semantics.c (cxx_fold_indirect_ref): Fix thinko.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198777 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
| |
* pt.c (lookup_template_class_1): Handle getting a template
template parameter as D1.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198747 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
in array new size calculation.
libstdc++-v3/
* libsupc++/new: Add std::bad_array_new_length.
* libsupc++/bad_array_new.cc: New.
* libsupc++/eh_aux_runtime.cc: Add __cxa_throw_bad_array_new_length.
* libsupc++/Makefile.in: Build them.
* config/abi/pre/gnu.ver: Add new symbols.
* config/abi/pre/gnu-versioned-namespace.ver: Add new symbols.
gcc/cp/
* init.c (throw_bad_array_new_length): New.
(build_new_1): Use it. Don't warn about braced-init-list.
(build_vec_init): Use it.
* call.c (build_operator_new_call): Use it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198731 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2013-05-08 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51226
* parser.c (cp_parser_enum_specifier): Handle nested_name_specifier
== error_mark_node.
/testsuite
2013-05-08 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51226
* g++.dg/cpp0x/pr51226.C: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198714 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2013-05-06 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/57183
* decl.c (cp_finish_decl): After do_auto_deduction copy the
qualifers with cp_apply_type_quals_to_decl.
/testsuite
2013-05-06 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/57183
* g++.dg/cpp0x/auto38.C: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198636 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2013-05-04 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/53745
* decl.c (build_enumerator): Improve error message.
/testsuite
2013-05-04 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/53745
* g++.dg/cpp0x/enum27.C: New.
* g++.dg/cpp0x/enum_base.C: Adjust.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198607 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
| |
PR c++/51927
* g++.dg/cpp0x/lambda/lambda-nsdmi4.C: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198594 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
| |
PR c++/54318
* g++.dg/cpp0x/pr54318.C: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198573 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2013-05-01 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/57092
* semantics.c (finish_decltype_type): Handle instantiated template
non-type arguments.
/testsuite
2013-05-01 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/57092
* g++.dg/cpp0x/decltype53.C: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198487 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2013-04-28 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/56450
* semantics.c (finish_decltype_type): Handle COMPOUND_EXPR.
/testsuite
2013-04-28 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/56450
* g++.dg/cpp0x/decltype52.C: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198381 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
| |
PR c++/55708
* g++.dg/cpp0x/constexpr-55708.C: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198337 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
| |
* g++.dg/cpp0x/ref-qual9.C: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198311 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
| |
* typeck.c (cxx_alignas_expr): Handle value-dependence properly.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198310 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
| |
* init.c (perform_member_init): Call reshape_init.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198309 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
| |
* parser.c (cp_parser_postfix_dot_deref_expression): Fix thinko.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198257 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/56970
* init.c (build_offset_ref): Add tsubst_flags_t parameter.
* semantics.c (finish_qualified_id_expr): Likewise.
(finish_id_expression): Update.
* typeck.c (cp_build_addr_expr_1): Likewise.
* pt.c (tsubst_qualified_id, resolve_nondeduced_context): Likewise.
* cp-tree.h: Update declarations.
/testsuite
2013-04-24 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/56970
* g++.dg/cpp0x/sfinae45.C: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198232 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* pt.c (fn_type_unification): Push tinst level around
type_unification_real if we aren't explaining.
* cp-tree.h (TFF_NO_TEMPLATE_BINDINGS): New.
* error.c (dump_function_decl): Respect it.
(subst_to_string): Pass it.
libstdc++-v3/
* testsuite/lib/prune.exp (libstdc++-dg-prune): Also ignore "In
substitution" lines.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198161 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
| |
* rtti.c (get_typeid): Diagnose qualified function type.
* pt.c (tsubst) [POINTER_TYPE]: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198160 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
| |
(dump_simple_decl): Pretty-print capture field.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198159 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
| |
* parser.c (cp_parser_lambda_introducer): Make lambda capture init
pedwarn unconditional except in C++1y mode.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198156 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
| |
* semantics.c (finish_id_expression): Reject capture of anonymous
union member.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198153 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
| |
* decl2.c (check_default_args): Check for pack expansion.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198152 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
| |
* decl.c (duplicate_decls): Don't propagate DECL_DELETED_FN to
template specializations.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198098 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
| |
* pt.c (tsubst) [DECLTYPE_TYPE]: If ~id is an expression
rather than a destructor name, it isn't an unqualified-name.
(tsubst_copy_and_build): Pass down decltype_flag to operator
handling code, too.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197982 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
| |
* semantics.c (insert_capture_proxy): Just use index 1 in the
stmt_list_stack.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197981 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* parser.c (complain_flags): New.
(cp_parser_postfix_expression): Use it.
(cp_parser_unary_expression): Likewise.
(cp_parser_binary_expression): Likewise.
(cp_parser_assignment_expression): Likewise.
(cp_parser_expression): Likewise.
(cp_parser_postfix_open_square_expression): Take decltype_p.
(cp_parser_builtin_offsetof): Adjust.
(cp_convert_range_for): Pass complain to finish_unary_op_expr.
* semantics.c (finish_unary_op_expr): Add complain parm.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197826 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
| |
* semantics.c (lambda_capture_field_type, lambda_proxy_type):
Strip references before checking WILDCARD_TYPE_P.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197819 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2013-04-11 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/56913
* typeck2.c (build_m_component_ref): Protect error calls with
(complain & tf_error).
/testsuite
2013-04-11 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/56913
* g++.dg/cpp0x/sfinae44.C: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197780 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2013-04-11 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/54216
* parser.c (cp_parser_enum_specifier): Check for empty
anonymous enums and anonymous scoped enums.
/testsuite
2013-04-11 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/54216
* g++.dg/cpp0x/enum26.C: New.
* g++.old-deja/g++.pt/mangle1.C: Adjust.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197742 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2013-04-08 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/56871
* decl.c (validate_constexpr_redeclaration): Allow an explicit
specialization to be different wrt the constexpr specifier.
/testsuite
2013-04-08 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/56871
* g++.dg/cpp0x/constexpr-specialization.C: New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197597 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
| |
noreturn attribute.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197555 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
gcc/cp:
2013-04-05 Ed Smith-Rowland <3dw4rd@verizon.net>
* g++.dg/cpp0x/ref-qual-multi-neg.C: New test.
gcc/testsuite:
2013-04-05 Ed Smith-Rowland <3dw4rd@verizon.net>
* parser.c (cp_parser_ref_qualifier_seq_opt): Move to
cp_parser_ref_qualifier_opt. Error if more than one ref-qual found.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197514 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
| |
* mangle.c (write_function_type): Mangle ref-qualifier.
(write_nested_name): Likewise.
(canonicalize_for_substitution): Preserve ref-qualifier.
(write_type): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197386 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
| |
* init.c (build_new): Don't try to process an array initializer
at template definition time.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197326 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
| |
* typeck.c (finish_class_member_access_expr): Handle enum scope.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197325 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
| |
* parser.c (cp_parser_range_for): Don't try to do auto deduction
in a template if the type of the range is incomplete.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197324 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* cp-tree.h (FUNCTION_REF_QUALIFIED): New.
(FUNCTION_RVALUE_QUALIFIED): New.
(FUNCTION_OR_METHOD_TYPE_CHECK): New.
(cpp0x_warn_str): Add CPP0X_REF_QUALIFIER.
(cp_ref_qualifier): New enum.
(cp_declarator): Add ref_qualifier.
* parser.c (cp_parser_ref_qualifier_seq_opt): New.
(cp_parser_direct_declarator): Use it.
(make_call_declarator): Adjust.
(cp_parser_lambda_declarator_opt): Adjust.
* call.c (add_function_candidate): Handle ref-qualifier overload
resolution semantics.
(standard_conversion): Adjust.
* class.c (add_method, same_signature_p): Compare ref-qualifiers.
* decl.c (grokdeclarator): Handle ref-qualifiers.
(grokfndecl): Check for invalid ref-qualifiers.
(static_fn_type, revert_static_member_fn): Adjust.
* decl2.c (build_memfn_type): Handle ref-qualifiers.
(check_classfn): Check them.
(cp_reconstruct_complex_type): Retain them.
* error.c (dump_ref_qualifier): New.
(dump_type_suffix, dump_function_decl): Use it.
(maybe_warn_cpp0x): Handle CPP0X_REF_QUALIFIER.
* pt.c (tsubst, tsubst_function_type): Instantiate ref-quals.
(unify): Retain them.
* tree.c (cp_check_qualified_type): New.
(cp_build_qualified_type_real): Keep exception spec and ref-qual.
(build_ref_qualified_type): New.
(strip_typedefs, build_exception_variant): Keep ref-qualifier.
(cp_build_type_attribute_variant): Keep ref-qualifier.
* typeck.c (merge_types): Keep ref-qualifier.
(structural_comptypes): Compare ref-qualifier.
(type_memfn_rqual): New.
(apply_memfn_quals): Take ref-qual argument.
* typeck2.c (build_m_component_ref): Check ref-qualifier.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197315 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
| |
PR c++/35722
* pt.c (unify_pack_expansion): Fix indexing.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197244 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR c++/52748
* typeck2.c (abstract_virtuals_error_sfinae): Don't complete
the type if tf_decltype is set.
* pt.c (fn_type_unification): Add decltype_p parm.
(get_bindings): Adjust.
* cp-tree.h: Adjust.
* class.c (resolve_address_of_overloaded_function): Adjust.
* call.c (add_template_candidate_real, print_z_candidate): Adjust.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197214 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
| |
* parser.c (cp_parser_sizeof_pack): Split out from...
(cp_parser_sizeof_operand): ...here. Require (id).
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197213 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
| |
* semantics.c (finish_this_expr): 'this' is an rvalue.
* typeck.c (cp_build_indirect_ref): Handle NOP_EXPR of 'this'.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197212 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
| |
* semantics.c (finish_member_declaration): Don't push closure
members.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197211 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
| |
nonlambda_method_basetype and current_nonlambda_class_type.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197210 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
| |
* semantics.c (potential_constant_expression_1) [NOP_EXPR]: Reject
conversion from integer to pointer.
(cxx_eval_constant_expression): Likewise.
(cxx_eval_indirect_ref): Use the folded operand if we still think
this might be constant.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197209 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2013-03-28 Paolo Carlini <paolo.carlini@oracle.com>
Manuel Lopez-Ibanez <manu@gcc.gnu.org>
PR c++/56725
* call.c (convert_like_real): Change series of two permerrors
to permerror + inform (and likewise for two errors).
(build_new_method_call_1): Likewise.
* typeck.c (convert_for_initialization): Change additional
warning or error to inform.
/testsuite
2013-03-28 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/56725
* g++.dg/conversion/op4.C: Adjust.
* g++.dg/cpp0x/rv1n.C: Likewise.
* g++.dg/cpp0x/rv2n.C: Likewise.
* g++.dg/cpp0x/template_deduction.C: Likewise.
* g++.dg/expr/cond8.C: Likewise.
* g++.dg/other/error4.C: Likewise.
* g++.old-deja/g++.bugs/900514_03.C: Likewise.
* g++.old-deja/g++.bugs/900519_02.C: Likewise.
* g++.old-deja/g++.bugs/900519_03.C: Likewise.
* g++.old-deja/g++.bugs/900520_02.C: Likewise.
* g++.old-deja/g++.jason/conversion2.C: Likewise.
* g++.old-deja/g++.law/cvt20.C: Likewise.
* g++.old-deja/g++.law/cvt8.C: Likewise.
* g++.old-deja/g++.law/init8.C: Likewise.
* g++.old-deja/g++.mike/net12.C: Likewise.
* g++.old-deja/g++.mike/net8.C: Likewise.
* g++.old-deja/g++.mike/p2793.C: Likewise.
* g++.old-deja/g++.mike/p3836.C: Likewise.
* g++.old-deja/g++.mike/p418.C: Likewise.
* g++.old-deja/g++.mike/p701.C: Likewise.
* g++.old-deja/g++.mike/p807.C: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197206 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
| |
* semantics.c (finish_qualified_id_expr): Return early
for enum scope.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197166 138bc75d-0d04-0410-961f-82ee72b054a4
|