blob: d13821dee798d6c808dab2ebe874e95d738d44af [file] [log] [blame]
// { 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;
}