<?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>CS0246</ErrorName>
  <Examples>
    <string>// cs0246-10.cs: The type or namespace name `Nonexistant' could not be found. Are you missing a using directive or an assembly reference?
// Line: 5

using System;
using Nonexistant;

class X
{
	static void Main () {
	}
}

</string>
    <string>// cs0246-11.cs: The type or namespace name `aa' could not be found. Are you missing a using directive or an assembly reference?
// Line: 6

public class Test
{
	[aa.bb] int dummy;
}

</string>
    <string>// cs0246-12.cs: The type or namespace name `RNGCryptoServiceProvider' could not be found. Are you missing a using directive or an assembly reference?
// Line: 13

using System;

namespace System.Web.Configuration
{
	class MachineKeyConfig
	{
		static MachineKeyConfig ()
		{
			autogenerated = new byte [64];
			RNGCryptoServiceProvider cp = new RNGCryptoServiceProvider ();
			cp.GetBytes (autogenerated);
		}
	}
}

</string>
    <string>// cs0246-13.cs: The type or namespace name `class' could not be found. Are you missing a using directive or an assembly reference?
// Line: 9
using System;

public class classAttribute : Attribute
{
}

[@class]
class Foo
{
}
</string>
    <string>// cs0246-14.cs: The type or namespace name `Uri' could not be found. Are you missing a using directive or an assembly reference?
// Line: 7

// This bug actual checks that the compiler doesn't crash

public interface IFoo
{
        string Heh { get; } // significant to cause the error.
        Uri Hoge (); // note that it cannot be resolved here.
}

public class Foo : IFoo
{
        string IFoo.Heh { get { return null; } }
        public System.Uri Hoge () { return null; }
}

</string>
    <string>// cs0246-15.cs: The type or namespace name `InvalidTypeBlah' could not be found. Are you missing a using directive or an assembly reference?
// Line: 17

//
// This test is here to test that the compiler does not crash after it
// reports the error due to an invalid type being referenced in the 
// delegate
//
using System;

public class AnonDelegateTest 
{
        public delegate void TestDelegate(AnonDelegateTest something, string b);

        public static void Main()
        {
                AnonDelegateTest test = new AnonDelegateTest();
                
                // Incorrect; mcs throws unhandled exception here
                test.Call(delegate(InvalidTypeBlah something, string b) {
                        Console.WriteLine(b);
                });
        }

        public void Call(TestDelegate d)
        {
                d(this, "Hello");
        }
}


</string>
    <string>// cs0246-16.cs: The type or namespace name `B' could not be found. Are you missing a using directive or an assembly reference?
// Line: 4

class A : B
{
        public class B
        { }
}
</string>
    <string>// cs0246: The type or namespace name `Foo' could not be found. Are you missing a using directive or an assembly reference?
// Line: 4

using Foo;
</string>
    <string>// CS0246: The type or namespace name `dynamic' could not be found. Are you missing a using directive or an assembly reference?
// Line: 9
// Compiler options: -langversion:ISO-2

class C
{
	public static void Main ()
	{
		dynamic d = 9;
	}
}
</string>
    <string>// CS0246: The type or namespace name `aGgt' could not be found. Are you missing a using directive or an assembly reference?
// Line: 13

using System;

class C
{
	public static void Main ()
	{
		try {
			throw null;
		} catch (ArgumentException) {
		} catch (aGgt) {
		}
	}
}
</string>
    <string>// cs0246-2.cs: The type or namespace name `ErrorType' could not be found. Are you missing a using directive or an assembly reference?
// Line: 5

interface A {
        event ErrorType Test;
}</string>
    <string>// CS0246: The type or namespace name `C' could not be found. Are you missing a using directive or an assembly reference?
// Line: 4

using BigInteger = C.BigInteger;
using C = Cks.Runtime.Data;

namespace Cks.Runtime.Data
{
	public class BigInteger {}
}
</string>
    <string>// CS0246: The type or namespace name `IBase' could not be found. Are you missing a using directive or an assembly reference?
// Line: 155555

namespace Foo {
        public interface IBase {
                object X { get; }
        }
}

public interface IDerived&lt;T&gt; : Foo.IBase {
        T X { get; }
}

public class Test&lt;T&gt; {
        public class Y : IDerived&lt;T&gt;, IBase
        {
                public T X { get { return default (T); } }
                object Foo.IBase.X {
                        get { return default (T); }
                }
        }
}
</string>
    <string>// CS0246: The type or namespace name `var' could not be found. Are you missing a using directive or an assembly reference?
// Line: 8

class C
{
	public static void Main ()
	{
		var[] v = new int[0];
	}
}
</string>
    <string>// CS0246: The type or namespace name `var' could not be found. Are you missing a using directive or an assembly reference?
// Line: 8


class X
{
	public X ()
	{
		var? u = i;
	}
}
</string>
    <string>// CS0246: The type or namespace name `TypeMe' could not be found. Are you missing a using directive or an assembly reference?
// Line: 12

class C
{
	static void Foo&lt;T&gt; (int i)
	{
	}

	public static void Main ()
	{
		Foo&lt;TypeMe&gt; (1);
	}
}
</string>
    <string>// CS0246: The type or namespace name `X' could not be found. Are you missing a using directive or an assembly reference?
// Line: 4

class A&lt;T&gt; where T : X
{
	public class X {}
}
</string>
    <string>// CS0246: The type or namespace name `M' could not be found. Are you missing a using directive or an assembly reference?
// Line: 11

interface I&lt;T&gt;
{
	void G&lt;TT&gt; ();
}

class C
{
	void I&lt;M&gt;.G&lt;M&gt; ()
	{
	}
	
	public static void Main ()
	{
	}
}
</string>
    <string>// CS0246: The type or namespace name `NotExist' could not be found. Are you missing a using directive or an assembly reference?
// Line: 6

class X
{
	NotExist&lt;float&gt; foo;
}
</string>
    <string>// gcs0246-8.cs: The type or namespace name `B' could not be found. Are you missing a using directive or an assembly reference?
// Line: 4

class A : C&lt;B&gt;
{
  class B {}
}
 
interface C&lt;X&gt; {}
</string>
    <string>// cs0246-3.cs: The type or namespace name `ErrorType' could not be found. Are you missing a using directive or an assembly reference?
// Line: 5

interface A {
        ErrorType Method();
}</string>
    <string>// cs0246-4.cs: The type or namespace name `ErrorType' could not be found. Are you missing a using directive or an assembly reference?
// Line: 4

public delegate ErrorType Delegate ();</string>
    <string>// cs0246-5.cs: The type or namespace name `AAAA' could not be found. Are you missing a using directive or an assembly reference?
// Line: 7

using System;
[assembly:CLSCompliant (true)]

[AAAA(false)]
public sealed class Region
{
    public Region() {}
}
</string>
    <string>// cs0246-6.cs: The type or namespace name `XmlDocument' could not be found. Are you missing a using directive or an assembly reference?
// Line: 7
// This is bug 55770

using System;
using System.Xml;
using Document = XmlDocument;

public class Test {
	public static void Main ()
	{
	}
}</string>
    <string>// cs0246-8.cs: The type or namespace name `Reflection' could not be found. Are you missing a using directive or an assembly reference?
// Line: 7
using System;

class foo {
    static void Main(string[] args ) {    
        Reflection.ConstructorInfo ci;        
    }
} 

</string>
    <string>// cs0246.cs: The type or namespace name `B' could not be found. Are you missing a using directive or an assembly reference?
// Line: 4
interface A : B {
}

class X {
	static void Main () {
	}
}

</string>
  </Examples>
</ErrorDocumentation>