Got confusing message from contact checker. Seems like a bug:
static void Main()
{
object x;
int y = Get(out x);
Contract.Assume(x != null); // --> Suggested assumption: Assumption is false
}
[Pure]
static int Get(out object x)
{
x = new object();
return 0;
}