Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/g++.dg/cpp0x/udlit-raw-length.C @ 158:494b0b89df80 default tip
...
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Mon, 25 May 2020 18:13:55 +0900 |
parents | 04ced10e8804 |
children |
line wrap: on
line source
// { dg-do compile { target c++11 } } // PR c++/50958 typedef decltype(sizeof(0)) size_type; constexpr size_type cstrlen_impl(const char* s, size_type i) { return s[i] ? cstrlen_impl(s, i + 1) : i; } constexpr size_type cstrlen(const char* s) { return s ? cstrlen_impl(s, 0) : throw 0; } constexpr size_type operator "" _lenraw(const char* digits) { return cstrlen(digits); } static_assert(123_lenraw == 3, "Ouch"); static_assert(1_lenraw == 1, "Ouch"); static_assert(012_lenraw == 3, "Ouch"); static_assert(0_lenraw == 1, "Ouch");