Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/g++.dg/torture/pr30567.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 run } */ template <typename T> struct const_ref { const T* begin; const_ref(const T* b) : begin(b) {} }; template <typename T> T sum(const_ref<T> const& a) { T result = 0; for(unsigned i=0;i<1;i++) result += a.begin[i]; return result; } struct tiny_plain { int elems[2]; tiny_plain() { elems[0]=1; } }; struct vec3 : tiny_plain {}; struct mat3 { int type() const { return sum(const_ref<int>(vec3().elems)) == 1; } }; int main() { return mat3().type() ? 0 : 1; }