diff options
author | mpolacek <mpolacek@138bc75d-0d04-0410-961f-82ee72b054a4> | 2019-06-13 00:56:54 +0000 |
---|---|---|
committer | mpolacek <mpolacek@138bc75d-0d04-0410-961f-82ee72b054a4> | 2019-06-13 00:56:54 +0000 |
commit | 3ffd9c76b773c824f04366ec7c71d72223579b6a (patch) | |
tree | 0423f34f34eb5d1e253568ed68c66ad684ccc777 /gcc/cp/ChangeLog | |
parent | 40c7cacf857e223183f71fd83f0f2008dda6587f (diff) |
PR c++/90825 - endless recursion when evaluating sizeof.
PR c++/90832 - endless recursion when evaluating sizeof.
* constexpr.c (cxx_eval_constant_expression): Don't recurse on the
result of fold_sizeof_expr if is returns a SIZEOF_EXPR.
* typeck.c (cxx_sizeof_expr): Only return a SIZEOF_EXPR if the operand
is instantiation-dependent.
* g++.dg/cpp0x/constexpr-sizeof2.C: New test.
* g++.dg/cpp0x/constexpr-sizeof3.C: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-9-branch@272229 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cp/ChangeLog')
-rw-r--r-- | gcc/cp/ChangeLog | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index af8a3ccbe1d..881dcfb7af9 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,5 +1,12 @@ 2019-06-12 Marek Polacek <polacek@redhat.com> + PR c++/90825 - endless recursion when evaluating sizeof. + PR c++/90832 - endless recursion when evaluating sizeof. + * constexpr.c (cxx_eval_constant_expression): Don't recurse on the + result of fold_sizeof_expr if is returns a SIZEOF_EXPR. + * typeck.c (cxx_sizeof_expr): Only return a SIZEOF_EXPR if the operand + is instantiation-dependent. + PR c++/90736 - bogus error with alignof. * constexpr.c (adjust_temp_type): Use cv_unqualified type. |