Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/g++.dg/cpp1y/context-conv1.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
// N3323 #define assert(E) if(!(E))__builtin_abort(); template<class T> class zero_init { public: zero_init( ) : val( static_cast<T>(0) ) { } zero_init( T val ) : val( val ) { } operator T & ( ) { return val; } operator T ( ) const { return val; } private: T val; }; void f() { zero_init<int*> p; assert( p == 0 ); p = new int(7); assert( *p == 7 ); delete p; // error! zero_init<int> i; assert( i == 0 ); i = 7; assert( i == 7 ); switch( i ) { } // error! int *vp = new int[i]; }