diff options
Diffstat (limited to 'gcc/testsuite/g++.dg/template/static20.C')
-rw-r--r-- | gcc/testsuite/g++.dg/template/static20.C | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.dg/template/static20.C b/gcc/testsuite/g++.dg/template/static20.C new file mode 100644 index 000000000..6f1096b88 --- /dev/null +++ b/gcc/testsuite/g++.dg/template/static20.C @@ -0,0 +1,14 @@ +// PR c++/24277 + +template< int Bits > struct uint_t { + typedef unsigned short fast; +}; +template < int Bits > struct mask_uint_t { + typedef typename uint_t< Bits >::fast fast; + static const fast sig_bits = 1; + static const fast sig_bits_fast = fast(sig_bits); +}; +template < int Bits> int checksum ( ) { + return 1 & mask_uint_t<Bits>::sig_bits_fast; +} +int i = checksum<1>(); |