<?xml version="1.0" encoding="us-ascii"?>
<ErrorDocumentation xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <ErrorName>CS0188</ErrorName>
  <Examples>
    <string>// cs0188-2.cs: The `this' object cannot be used before all of its fields are assigned to
// Line: 10

struct B
{
	public int a;

	public B (int foo)
	{
		Test ();
	}

	public void Test ()
	{
	}
}</string>
    <string>// CS0188: The `this' object cannot be used before all of its fields are assigned to
// Line: 16

struct Foo
{
	int bar;
	int baz;

	public int Bar {
		get { return bar; }
	}

	public Foo (int baz)
	{
		this.baz = baz;
		bar = Bar - 1;
	}
}
</string>
    <string>// CS0188: The `this' object cannot be used before all of its fields are assigned to
// Line: 16

struct Foo
{
	int bar;
	int baz;

	public int this [int i] {
		get { return bar; }
	}

	public Foo (int baz)
	{
		this.baz = baz;
		bar = this [2] - 1;
	}
}
</string>
    <string>// CS0188: The `this' object cannot be used before all of its fields are assigned to
// Line: 8

struct Sample
{
	public Sample (int arg)
	{
		text = base.ToString ();
	}

	string text;
}</string>
    <string>// CS0188: The `this' object cannot be used before all of its fields are assigned to
// Line: 10

struct B
{
	public int a;

	public B (int foo)
	{
		Test (this);
		a = 1;
	}

	static void Test (B b)
	{
	}
}</string>
    <string>// CS0188: The `this' object cannot be used before all of its fields are assigned to
// Line: 10

public struct Test
{
	private int x;

	public Test (int x)
	{
		X = x;
	}

	public int X
	{
		get { return x; }
		set { x = value; }
	}
}
</string>
    <string>// CS0188: The `this' object cannot be used before all of its fields are assigned to
// Line: 8

struct Sample
{
	public Sample (int arg)
	{
		text = this.Prop;
	}
	
	int Prop { get { return 1; } }

	int text;
}</string>
    <string>// CS0188: The `this' object cannot be used before all of its fields are assigned to
// Line: 11

using System;

public struct S
{
	public int A { get; private set;}
	event EventHandler eh;

	public S (int a)
	{
		this.eh = null;
		A = a;
	}
}
</string>
    <string>// cs0188.cs: The `this' object cannot be used before all of its fields are assigned to
// Line: 6

struct Sample {
        public Sample(string text) {
            Initialize();
            this.text = text;
        }

        void Initialize() {
        }
        
        string text;
}</string>
  </Examples>
</ErrorDocumentation>