summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gdc.test/fail_compilation/fail23760.d
blob: fbca6ecd7975c19670048b522268a0f297ca4655 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
// https://issues.dlang.org/show_bug.cgi?id=23760

/*
TEST_OUTPUT:
---
fail_compilation/fail23760.d(16): Error: type of variable `fail23760.A.state` has errors
fail_compilation/fail23760.d(16): Error: `(A).state` cannot be resolved
fail_compilation/fail23760.d(21): Error: template instance `fail23760.JavaBridge!(A)` error instantiating
fail_compilation/fail23760.d(24):        instantiated from here: `JavaClass!(A)`
---
*/

class JavaBridge(Class)
{
    static if(is(typeof(__traits(getMember, Class, "state")))) {}
    alias T = __traits(getOverloads, Class, "state");
}

class JavaClass(CRTP)
{
    JavaBridge!(CRTP) _javaDBridge;
}

class A : JavaClass!A
{
    State* state;
}