Implement noexcept-specification (15.4) * parser.c (cp_parser_exception_specification_opt): Parse it. Give -Wdeprecated warning about throw() specs. * pt.c (tsubst_exception_specification): Handle it. * error.c (dump_exception_spec): Handle it. * cxx-pretty-print.c (pp_cxx_exception_specification): Likewise. * typeck.c (comp_except_specs): Handle compatibility rules. Change exact parm to take an enum. * typeck2.c (merge_exception_specifiers): Handle noexcept. * except.c (nothrow_spec_p, type_noexcept_p): New fns. (type_throw_all_p, build_noexcept_spec): New fns. * cp-tree.h (TYPE_NOTHROW_P, TYPE_NOEXCEPT_P): Use them. (comp_except_specs): Define ce_derived, ce_normal, ce_exact enums. (cp_tree_index): Add CPTI_NOEXCEPT_TRUE_SPEC, CPTI_NOEXCEPT_FALSE_SPEC. (noexcept_true_spec, noexcept_false_spec): New macros. * name-lookup.c (pushdecl_maybe_friend): Adjust. * search.c (check_final_overrider): Adjust. * decl.c (check_redeclaration_exception_specification): Adjust. (use_eh_spec_block): Use type_throw_all_p. (cxx_init_decl_processing): Set noexcept_false_spec,noexcept_true_spec. Give operator new a noexcept-specification in C++0x mode. * tree.c (build_exception_variant, cxx_type_hash_eq): Adjust. (cp_build_type_attribute_variant): Don't test TYPE_RAISES_EXCEPTIONS. From-SVN: r160298
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| 080514-1.C | Loading commit data... | |
| alias1.C | Loading commit data... | |
| arm-iwmmxt-unwind.C | Loading commit data... | |
| arm-vfp-unwind.C | Loading commit data... | |
| async-unwind1.C | Loading commit data... | |
| async-unwind2.C | Loading commit data... | |
| builtin1.C | Loading commit data... | |
| builtin2.C | Loading commit data... | |
| builtin3.C | Loading commit data... | |
| builtin4.C | Loading commit data... | |
| cast1.C | Loading commit data... | |
| catch1.C | Loading commit data... | |
| catch2.C | Loading commit data... | |
| catch3.C | Loading commit data... | |
| catch4.C | Loading commit data... | |
| catch5.C | Loading commit data... | |
| check-vect.h | Loading commit data... | |
| cleanup1.C | Loading commit data... | |
| cleanup2.C | Loading commit data... | |
| cleanup3.C | Loading commit data... | |
| cleanup4.C | Loading commit data... | |
| cleanup5.C | Loading commit data... | |
| comdat1.C | Loading commit data... | |
| cond1.C | Loading commit data... | |
| cond2.C | Loading commit data... | |
| cond3.C | Loading commit data... | |
| cond4.C | Loading commit data... | |
| crash1.C | Loading commit data... | |
| crossjump1.C | Loading commit data... | |
| ctor1.C | Loading commit data... | |
| ctor2.C | Loading commit data... | |
| ctor3.C | Loading commit data... | |
| dead1.C | Loading commit data... | |
| delayslot1.C | Loading commit data... | |
| div.C | Loading commit data... | |
| dtor1.C | Loading commit data... | |
| dtor2.C | Loading commit data... | |
| ehopt1.C | Loading commit data... | |
| elide1.C | Loading commit data... | |
| elide2.C | Loading commit data... | |
| filter1.C | Loading commit data... | |
| filter2.C | Loading commit data... | |
| forced1.C | Loading commit data... | |
| forced2.C | Loading commit data... | |
| forced3.C | Loading commit data... | |
| forced4.C | Loading commit data... | |
| fp-regs.C | Loading commit data... | |
| gcsec1.C | Loading commit data... | |
| goto1.C | Loading commit data... | |
| ia64-1.C | Loading commit data... | |
| ia64-2.C | Loading commit data... | |
| init-temp1.C | Loading commit data... | |
| init-temp2.C | Loading commit data... | |
| loop1.C | Loading commit data... | |
| loop2.C | Loading commit data... | |
| nested-try.C | Loading commit data... | |
| new1.C | Loading commit data... | |
| nrv1.C | Loading commit data... | |
| omit-frame-pointer.C | Loading commit data... | |
| omit-frame-pointer2.C | Loading commit data... | |
| pr29166.C | Loading commit data... | |
| pr41819.C | Loading commit data... | |
| pr42859.C | Loading commit data... | |
| pr43365.C | Loading commit data... | |
| registers1.C | Loading commit data... | |
| scope1.C | Loading commit data... | |
| shadow1.C | Loading commit data... | |
| simd-1.C | Loading commit data... | |
| simd-2.C | Loading commit data... | |
| simd-3.C | Loading commit data... | |
| simd-4.C | Loading commit data... | |
| simd-5.C | Loading commit data... | |
| spbp.C | Loading commit data... | |
| spec1.C | Loading commit data... | |
| spec10.C | Loading commit data... | |
| spec11.C | Loading commit data... | |
| spec2.C | Loading commit data... | |
| spec3.C | Loading commit data... | |
| spec4.C | Loading commit data... | |
| spec5.C | Loading commit data... | |
| spec6.C | Loading commit data... | |
| spec7.C | Loading commit data... | |
| spec8.C | Loading commit data... | |
| spec9.C | Loading commit data... | |
| stabilize.C | Loading commit data... | |
| subreg-1.C | Loading commit data... | |
| synth1.C | Loading commit data... | |
| synth2.C | Loading commit data... | |
| table.C | Loading commit data... | |
| template1.C | Loading commit data... | |
| template2.C | Loading commit data... | |
| terminate1.C | Loading commit data... | |
| throw1.C | Loading commit data... | |
| throw2.C | Loading commit data... | |
| throw3.C | Loading commit data... | |
| uncaught1.C | Loading commit data... | |
| uncaught2.C | Loading commit data... | |
| uncaught3.C | Loading commit data... | |
| unexpected1.C | Loading commit data... | |
| unwind1.C | Loading commit data... | |
| unwind2.C | Loading commit data... | |
| weak1-a.cc | Loading commit data... | |
| weak1.C | Loading commit data... |