CodeContracts: ccrewrite fails with Object reference not set to an instance of an object
- by Vyas Bharghava
The below code makes ccrewrite blow up!  Ideas?
BTW, If you comment out the ActualClass, ccrewrite succeeds...
    [ContractClass(typeof(TestContracts))]
    interface ITestInterface
    {
        bool IsStarted { get; set; }
        void Begin();
    }
    class ActualClass : ITestInterface
    {
        public bool IsStarted { get; set; }
        public void Begin()
        {
            this.IsStarted = true;
        }
    }
    [ContractClassFor(typeof(ITestInterface))]
    class TestContracts : ITestInterface
    {
        ITestInterface Current { get; set; }
        private TestContracts()
        {
            Current = this;
        }
        #region ITestInterface Members
        bool ITestInterface.IsStarted
        {
            get; set;
        }
        void ITestInterface.Begin()
        {
            Contract.Requires(!Current.IsStarted);
            Contract.Ensures(Current.IsStarted);
        }
Thanks in advance!