gcc/libstdc++-v3/testsuite/20_util/shared_ptr/cons
Jakub Jelinek 0d23cf7a4f cp-tree.h (SIZEOF_EXPR_TYPE_P): Define.
cp/
	* cp-tree.h (SIZEOF_EXPR_TYPE_P): Define.
	* tree.c (cp_tree_equal): Handle SIZEOF_EXPR with
	SIZEOF_EXPR_TYPE_P.
	* mangle.c (write_expression): Likewise.
	* cxx-pretty-print.c (pp_cxx_unary_expression): Likewise.
	* error.c (dump_expr): Likewise.
	* parser.c (cp_parser_unary_expression): For sizeof call
	cxx_sizeof_or_alignof_{type,expr} just for diagnostics and
	return SIZEOF_EXPR with the operand.
	* pt.c (tsubst_copy, tsubst_copy_and_build): For SIZEOF_EXPR,
	call cxx_sizeof_or_alignof_{type,expr} for diagnostics, but
	return SIZEOF_EXPR with tsubsted operand.
	(value_dependent_expression_p): Handle SIZEOF_EXPR with
	SIZEOF_EXPR_TYPE_P.
	(instantiation_dependent_r): Likewise.
	* call.c (null_ptr_cst_p): Call maybe_constant_value for C++98.
	* semantics.c (finish_call_expr): Call
	sizeof_pointer_memaccess_warning if needed.
	(cxx_eval_constant_expression): Handle SIZEOF_EXPR.
	(potential_constant_expression_1): Remove early exit for
	C++98.  Handle PROPERTY_REF.
	* decl.c (duplicate_decls): When redeclaring a builtin function,
	keep the merged decl builtin also if newdecl is a gnu_inline
	inline definition.
	(fold_sizeof_expr_r): New function.
	(compute_array_index_type): Fold SIZEOF_EXPRs in itype.
	* cp-gimplify.c (cp_genericize_r): Fold SIZEOF_EXPR.
	* typeck.c (cp_build_binary_op): For warn_for_sign_compare
	try harder using maybe_constant_value to get INTEGER_CSTs.

	* decl.c (stabilize_vla_size): Call pointer_set_destroy
	at the end.
testsuite/
	* g++.dg/torture/Wsizeof-pointer-memaccess1.C: New test.
	* g++.dg/torture/Wsizeof-pointer-memaccess2.C: New test.
	* g++.dg/warn/Wsign-compare-5.C: New test.
	* g++.dg/warn/Wsizeof-pointer-memaccess-1.C: New test.
	* g++.dg/warn/Wnull-conversion-1.C: For c++11 add dg-error.
	* g++.dg/ext/builtin30.C: New test.
	* g++.dg/ext/vla12.C: New test.
	* gcc.dg/builtins-85.c: New test.
libstdc++-v3/
	* testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust line
	numbers.

From-SVN: r192141
2012-10-05 21:30:39 +02:00
..
39405.cc Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
43820_neg.cc cp-tree.h (SIZEOF_EXPR_TYPE_P): Define. 2012-10-05 21:30:39 +02:00
46910.cc re PR libstdc++/46910 (std::shared_ptr requires public destructor for a class with friend deleter) 2010-12-14 22:13:26 +00:00
52924.cc re PR c++/52924 (Using an std::function object as deleter of shared_ptr in C++0x mode does not compile) 2012-04-11 23:54:53 +01:00
alias.cc Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
alloc_min.cc shared_ptr_base.h (_Sp_counted_ptr): Make 'final'. 2011-11-08 16:45:54 +00:00
alloc.cc Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
auto_ptr_neg.cc prune.exp (libstdc++-dg-prune): Prune notes. 2011-06-09 23:56:00 -04:00
auto_ptr.cc forward_list.h (splice_after): Use forward. 2009-07-31 22:26:32 -04:00
constexpr.cc re PR libstdc++/46869 (FAIL: 20_util/enable_shared_from_this/cons/constexpr.cc scan-assembler-not _ZNSt23enable_shared_from_thisIiEC2Ev) 2010-12-19 16:20:25 +00:00
copy.cc Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
default.cc Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
move.cc Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
noexcept_move_construct.cc valarray (~valarray): Use noexcept. 2011-06-14 17:48:29 +00:00
nullptr.cc [multiple changes] 2010-06-05 18:43:29 +01:00
pointer.cc pointer.cc: Fix which tests are run. 2010-06-02 20:02:41 +01:00
unique_ptr_deleter_ref_1.cc Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
unique_ptr_deleter_ref_2.cc Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
unique_ptr_deleter.cc Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
unique_ptr_neg.cc prune.exp (libstdc++-dg-prune): Prune notes. 2011-06-09 23:56:00 -04:00
unique_ptr.cc Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00
weak_ptr_expired.cc weak_ptr_expired.cc: Modify to PASS instead of XFAIL. 2012-02-05 13:08:02 +00:00
weak_ptr.cc Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception. 2009-04-09 17:00:19 +02:00