gcc/libstdc++-v3/libsupc++
Jason Merrill 20b06addf9 N3778: Sized Deallocation
N3778: Sized Deallocation
gcc/c-family/
	* c.opt (-fsized-deallocation, -Wc++14-compat): New.
	(-Wsized-deallocation): New.
	* c-opts.c (c_common_post_options): -fsized-deallocation defaults
	to on in C++14 and up.
gcc/cp/
	* call.c (non_placement_deallocation_fn_p): A global sized
	operator delete is not a usual deallocation function until C++14.
	(build_op_delete_call): Choose the global sized op delete if we
	know the size.
	* cp-tree.h: Declare non_placement_deallocation_fn_p.
	(enum cp_tree_index): Remove CPTI_GLOBAL_DELETE_FNDECL.
	(global_delete_fndecl): Remove.
	* decl.c (cxx_init_decl_processing): Also declare sized op deletes.
	(grok_op_properties): Warn about sized dealloc without the flag.
	* init.c (build_builtin_delete_call): Remove.
	(build_vec_delete_1, build_delete): Don't call it.
	* decl2.c (maybe_warn_sized_delete): New.
	(cp_write_global_declarations): Call it.
libstdc++-v3/
	* libsupc++/del_ops.cc: New.
	* libsupc++/del_opvs.cc: New.
	* libsupc++/Makefile.am: Add them.
	* libsupc++/Makefile.in: Regenerate.
	* config/abi/pre/gnu.ver: Export _ZdlPvm and _ZdaPvm.

From-SVN: r218755
2014-12-15 13:31:40 -05:00
..
array_type_info.cc Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
atexit_arm.cc Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
atexit_thread.cc os_defines.h (_GLIBCXX_THREAD_ATEXIT_WIN32): Define. 2014-08-19 17:25:12 +02:00
atomic_lockfree_defines.h Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
bad_alloc.cc Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
bad_array_length.cc Remove N3639 "array of runtime length" from -std=c++14. 2014-12-11 22:49:13 -05:00
bad_array_new.cc Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
bad_cast.cc Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
bad_typeid.cc Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
class_type_info.cc Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
cxxabi_forced.h Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
cxxabi.h Remove N3639 "array of runtime length" from -std=c++14. 2014-12-11 22:49:13 -05:00
del_op.cc Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
del_opnt.cc Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
del_ops.cc N3778: Sized Deallocation 2014-12-15 13:31:40 -05:00
del_opv.cc Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
del_opvnt.cc Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
del_opvs.cc N3778: Sized Deallocation 2014-12-15 13:31:40 -05:00
dyncast.cc dyncast.cc (__dynamic_cast): Handle mid-destruction dynamic_cast more gracefully. 2014-09-18 08:34:43 -04:00
eh_alloc.cc Core DR 475 PR c++/41174 PR c++/59224 2014-01-27 08:57:39 -05:00
eh_arm.cc re PR target/61223 (libstdc++ build fail due to pop lr register) 2014-05-20 17:25:26 +00:00
eh_aux_runtime.cc Remove N3639 "array of runtime length" from -std=c++14. 2014-12-11 22:49:13 -05:00
eh_call.cc re PR libstdc++/64276 (would be better to use __cpp_exceptions rather than __EXCEPTIONS to determine whether exceptions are available) 2014-12-12 15:58:49 +00:00
eh_catch.cc Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
eh_exception.cc Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
eh_globals.cc Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
eh_personality.cc re PR libstdc++/64276 (would be better to use __cpp_exceptions rather than __EXCEPTIONS to determine whether exceptions are available) 2014-12-12 15:58:49 +00:00
eh_ptr.cc * libsupc++/eh_ptr.cc: Improve static_assert messages. 2014-03-31 19:16:14 +01:00
eh_term_handler.cc Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
eh_terminate.cc Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
eh_throw.cc Core DR 475 PR c++/41174 PR c++/59224 2014-01-27 08:57:39 -05:00
eh_tm.cc Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
eh_type.cc Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
eh_unex_handler.cc Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
enum_type_info.cc Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
exception Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
exception_defines.h re PR libstdc++/64276 (would be better to use __cpp_exceptions rather than __EXCEPTIONS to determine whether exceptions are available) 2014-12-12 15:58:49 +00:00
exception_ptr.h re PR libstdc++/64276 (would be better to use __cpp_exceptions rather than __EXCEPTIONS to determine whether exceptions are available) 2014-12-12 15:58:49 +00:00
function_type_info.cc Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
fundamental_type_info.cc Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
guard_error.cc Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
guard.cc re PR libstdc++/64276 (would be better to use __cpp_exceptions rather than __EXCEPTIONS to determine whether exceptions are available) 2014-12-12 15:58:49 +00:00
hash_bytes.cc Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
hash_bytes.h Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
initializer_list Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
Makefile.am N3778: Sized Deallocation 2014-12-15 13:31:40 -05:00
Makefile.in N3778: Sized Deallocation 2014-12-15 13:31:40 -05:00
nested_exception.cc Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
nested_exception.h re PR libstdc++/62154 (std::throw_with_nested should not require a polymorphic type) 2014-08-15 16:22:44 +01:00
new Remove N3639 "array of runtime length" from -std=c++14. 2014-12-11 22:49:13 -05:00
new_handler.cc Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
new_op.cc new_op.cc: Factor the calls to malloc, use __builtin_expect. 2014-05-17 17:47:36 +00:00
new_opnt.cc new_op.cc: Factor the calls to malloc, use __builtin_expect. 2014-05-17 17:47:36 +00:00
new_opv.cc Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
new_opvnt.cc Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
pbase_type_info.cc re PR libstdc++/64276 (would be better to use __cpp_exceptions rather than __EXCEPTIONS to determine whether exceptions are available) 2014-12-12 15:58:49 +00:00
pmem_type_info.cc Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
pointer_type_info.cc re PR libstdc++/64276 (would be better to use __cpp_exceptions rather than __EXCEPTIONS to determine whether exceptions are available) 2014-12-12 15:58:49 +00:00
pure.cc Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
si_class_type_info.cc Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
tinfo2.cc Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
tinfo.cc Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
tinfo.h re PR libstdc++/61728 (lost symbol FUNC:_ZNK10__cxxabiv117__pbase_type_info15__pointer_catchEPKS0_PPvj@@CXXABI_1.3) 2014-07-09 18:21:49 -04:00
typeinfo Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
unwind-cxx.h re PR libstdc++/60612 (Throwing exception, catching and rethrowing (std::exception_ptr) in destructor leads to segfault) 2014-03-27 18:07:25 +00:00
vec.cc Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
vmi_class_type_info.cc Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00
vterminate.cc re PR libstdc++/64276 (would be better to use __cpp_exceptions rather than __EXCEPTIONS to determine whether exceptions are available) 2014-12-12 15:58:49 +00:00
vtv_stubs.cc Update copyright years in libstdc++-v3/ 2014-01-02 22:30:10 +00:00