blob: cb16b4cef8d762fed34cc2f5a54ee45ffa15be14 [file] [log] [blame]
// PR c++/65882
// PR c++/66467
// { dg-do compile }
template <bool>
struct A
{
typedef int type;
};
struct B
{
static const int value = 0;
};
template <class>
struct C
{
typedef int type;
};
template <class>
struct F : B {};
class D
{
template <class Expr>
typename A<F<typename C<Expr>::type>::value || B::value>::type
operator=(Expr); // { dg-message "declared" }
};
void fn1()
{
D opt;
opt = 0; // { dg-error "private" }
}