181b81b4a4
Former-commit-id: cf92446697332992ec36726e78eb8703e1f259d7
76 lines
817 B
C#
76 lines
817 B
C#
// Compiler options: -langversion:experimental
|
|
using System;
|
|
|
|
struct S1
|
|
{
|
|
public readonly int Value;
|
|
|
|
public S1 ()
|
|
{
|
|
Value = 17;
|
|
}
|
|
}
|
|
|
|
struct S2
|
|
{
|
|
public readonly int Value = 23;
|
|
}
|
|
|
|
struct S3
|
|
{
|
|
public readonly int Value = 11;
|
|
|
|
public S3 ()
|
|
{
|
|
Value = 5;
|
|
}
|
|
}
|
|
|
|
struct S4
|
|
{
|
|
public readonly int Value = 11;
|
|
|
|
public S4 (int v)
|
|
{
|
|
}
|
|
}
|
|
|
|
struct S5
|
|
{
|
|
public readonly int Value = 7;
|
|
|
|
public S5 (int v)
|
|
: this ()
|
|
{
|
|
this.Value += v;
|
|
}
|
|
}
|
|
|
|
class C
|
|
{
|
|
static int Main ()
|
|
{
|
|
var s = new S1 ();
|
|
if (s.Value != 17)
|
|
return 1;
|
|
|
|
var s2 = new S2 ();
|
|
if (s2.Value != 23)
|
|
return 2;
|
|
|
|
var s3 = new S3 ();
|
|
if (s3.Value != 5)
|
|
return 3;
|
|
|
|
var s4 = new S4 (5);
|
|
if (s4.Value != 11)
|
|
return 4;
|
|
|
|
var s5 = new S5 (2);
|
|
if (s5.Value != 9)
|
|
return 5;
|
|
|
|
Console.WriteLine ("ok");
|
|
return 0;
|
|
}
|
|
} |