<?xml version="1.0"?>
<ErrorDocumentation xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <ErrorName>CS0313</ErrorName>
  <Examples>
    <string>// CS0313: The type `S?' cannot be used as type parameter `T' in the generic type or method `S.Foo&lt;T&gt;(T)'. The nullable type `S?' never satisfies interface constraint `I'
// Line: 16

interface I
{
}

struct S : I
{
	static void Foo&lt;T&gt; (T t) where T : I
	{
	}

	static void Test (S? s)
	{
		Foo (s);
	}
}
</string>
    <string>// CS0313: The type `S?' cannot be used as type parameter `T' in the generic type or method `C&lt;I&gt;.Foo&lt;T&gt;(T)'. The nullable type `S?' never satisfies interface constraint `I'
// Line: 20

struct S : I
{
}

interface I
{
}

class C&lt;U&gt;
{
	static void Foo&lt;T&gt; (T value) where T : U
	{
	}

	static void Bar (S? s)
	{
		C&lt;I&gt;.Foo (s);
	}
}
</string>
  </Examples>
</ErrorDocumentation>