Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/g++.old-deja/g++.robertl/eb75.C @ 131:84e7813d76e9
gcc-8.2
author | mir3636 |
---|---|
date | Thu, 25 Oct 2018 07:37:49 +0900 |
parents | 04ced10e8804 |
children |
line wrap: on
line source
// { dg-do assemble } int*& foo (int const *& x) { return const_cast<int*&> (x); } /* If the references in this example are changed to pointers (change all `&''s to `*'), no warnings result. I think this is incorrect according to CD2 5.2.11, para 4: 4 An lvalue of type T1 can be explicitly converted to an lvalue of type T2 using the cast const_cast<T2&> (where T1 and T2 are object types) if a pointer to T1 can be explicitly converted to the type pointer to T2 using a const_cast. The result of a reference const_cast refers to the original object. */