view gcc/testsuite/g++.dg/other/crash-3.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 compile }
// { dg-options "-g" }
// Contributed by: <schmid at snake dot iap dot physik dot tu-darmstadt dot de>
//   and Niall Douglas <s_gccbugzilla at nedprod dot com>
// PR c++/14246: ice in write_template_arg_literal while mangling boolean
//   expressions.

namespace N1 {

  template <typename T>
  struct A {
      enum { Yes = (sizeof(T) == 1) };
  };

  template<bool T>
  struct B {
      void foo(void);
  };

  template struct B< !A<int>::Yes >;

}


namespace N2 {

  template<bool> struct A {};
  A<!false> a;

}