class Base
{
	protected virtual void Foo() { }
}

class Derived : Base
{
	internal bool Ok = true;
}

public static class Test
{
	public static bool Run()
	{
		Base# p = new Derived();
		if (p is Derived# d) { //FAIL: c swift TODO; cl
			if (p is Derived! r)
				return r.Ok;
		}
		return false;
	}
}