gcc/libstdc++-v3/testsuite
Martin Sebor 342fac9537 PR c++/69517 - [5/6 regression] SEGV on a VLA with excess initializer elements
PR c++/69517 - [5/6 regression] SEGV on a VLA with excess initializer elements
PR c++/70019 - VLA size overflow not detected
PR c++/70588 - SIGBUS on a VLA larger than SIZE_MAX / 2

gcc/testsuite/ChangeLog:
2016-04-13  Martin Sebor  <msebor@redhat.com>

        PR c++/69517
        PR c++/70019
        PR c++/70588
        * c-c++-common/ubsan/vla-1.c (main): Catch exceptions.
        * g++.dg/cpp1y/vla11.C: New test.
        * g++.dg/cpp1y/vla12.C: New test.
        * g++.dg/cpp1y/vla13.C: New test.
        * g++.dg/cpp1y/vla14.C: New test.
        * g++.dg/cpp1y/vla3.C: Restore deleted test.
        * gcc/testsuite/g++.dg/init/array24.C: Fully brace VLA initializer.
        * g++.dg/ubsan/vla-1.C: Disable exceptions.

gcc/cp/ChangeLog:
2016-04-13  Martin Sebor  <msebor@redhat.com>

        PR c++/69517
        PR c++/70019
        PR c++/70588
        * cp-tree.h (throw_bad_array_length, build_vla_check): Declare new
        functions.
        * decl.c (check_initializer, cp_finish_decl): Call them.
        (reshape_init_r): Reject incompletely braced intializer-lists
        for VLAs.
        * init.c (throw_bad_array_length, build_vla_check)
        (build_vla_size_check, build_vla_init_check): Define new functions.
        * typeck2.c (split_nonconstant_init_1): Use variably_modified_type_p()
        to detect a VLA.
        (store_init_value): Same.

gcc/doc/ChangeLog:
2016-04-13  Martin Sebor  <msebor@redhat.com>

        PR c++/69517
        PR c++/70019
        PR c++/70588
        * extend.texi (Variable Length): Document C++ specifics.

libstdc++-v3/ChangeLog:
2016-04-13  Martin Sebor  <msebor@redhat.com>

        PR c++/69517
        * testsuite/25_algorithms/rotate/moveable2.cc: Make sure VLA
       upper bound is positive.

From-SVN: r234966
2016-04-13 17:26:41 -06:00
..
17_intro libstdc++/69406 Fix test to check for supported headers 2016-01-21 13:33:27 +00:00
18_support libstdc++/69945 Add __gnu_cxx::__freeres hook 2016-03-24 18:13:40 +00:00
19_diagnostics Update copyright years. 2016-01-04 15:30:50 +01:00
20_util Adjust for new empty class parameter passing ABI. 2016-04-13 23:00:50 +01:00
21_strings Test for C99 stdlib.h functions with -std=c++98 2016-02-04 23:47:21 +00:00
22_locale Update copyright years. 2016-01-04 15:30:50 +01:00
23_containers Update copyright years. 2016-01-04 15:30:50 +01:00
24_iterators Update copyright years. 2016-01-04 15:30:50 +01:00
25_algorithms PR c++/69517 - [5/6 regression] SEGV on a VLA with excess initializer elements 2016-04-13 17:26:41 -06:00
26_numerics Avoid including all of <random> in <algorithm> 2016-01-25 16:44:30 +00:00
27_io Update copyright years. 2016-01-04 15:30:50 +01:00
28_regex re PR libstdc++/69794 (std::regex_search match failure with regex object with flags grep|icase) 2016-02-17 03:33:02 +00:00
29_atomics Update copyright years. 2016-01-04 15:30:50 +01:00
30_threads * testsuite/30_threads/thread/70503.cc: Adjust from xfail to pass. 2016-04-07 15:26:24 +01:00
abi Update copyright years. 2016-01-04 15:30:50 +01:00
backward Update copyright years. 2016-01-04 15:30:50 +01:00
config Update copyright years. 2016-01-04 15:30:50 +01:00
data make_graph_test_infos.xml: Edit. 2011-08-15 00:51:06 +00:00
decimal Update copyright years. 2016-01-04 15:30:50 +01:00
experimental Update copyright years. 2016-01-04 15:30:50 +01:00
ext Adjust for new empty class parameter passing ABI. 2016-04-13 23:00:50 +01:00
lib Update copyright years. 2016-01-04 15:30:50 +01:00
libstdc++-abi Update copyright years. 2016-01-04 15:30:50 +01:00
libstdc++-dg Implement TR29124 C++ special Math Functions. 2016-01-14 18:12:43 +00:00
libstdc++-prettyprinters Ensure stdout is newline terminated for status wrappers. 2016-02-09 20:18:10 +00:00
libstdc++-xmethods Update copyright years. 2016-01-04 15:30:50 +01:00
performance Update copyright years. 2016-01-04 15:30:50 +01:00
special_functions Fix FAIL: special_functions/18_riemann_zeta/check_value.cc (test for excess errors) 2016-02-12 21:23:11 +00:00
tr1 libstdc++/69893 make <tr1/cmath> work with C++11 2016-02-23 19:49:31 +00:00
tr2 Update copyright years. 2016-01-04 15:30:50 +01:00
util Revert the accidental checkin 2016-01-16 15:07:34 -08:00
Makefile.am Update copyright years. 2016-01-04 15:30:50 +01:00
Makefile.in libstdc++-v3/fragment.am (AM_CPPFLAGS): Add CPPFLAGS 2015-07-24 07:05:19 +00:00