summaryrefslogtreecommitdiff
path: root/tests/initializer-list/struct-visibility-diagnostic-3.slang
blob: 75ac5919d25cc8ad20aea97974868ea132a160f8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
//DIAGNOSTIC_TEST:SIMPLE(filecheck=CHECK):

public struct Visibility
{
  internal int x;
  public int y;
  // the compiler does not synthesize any ctor.
  // the compiler will try to synthesize:
  //     public __init(int y);
  // but then it will find that `x` cannot be initialized.
  // so this synthesis will fail and no ctor will be added
  // to the type.
}

void test()
{
    //CHECK: error 39999: not enough arguments to call (got 0, expected 1)
    Visibility t1 = {};
}