title: Interface method marked as Obsolete does not issue a message from the compiler when implemented
body: <p>Consider this example</p>
  
  <pre><code>    public interface IAnimal
      {
          [Obsolete("Animals can't eat anymore", true)]
          void Eat();
      }
  
      public class Animal : IAnimal
      {
          public void Eat()
          {
              Console.WriteLine("Hello");
          }
      }
  </code></pre>
  
  <p>I have an interface IAnimal with an obsoleted method.
  The Class Animal implements that interface.</p>
  
  <p>Later on, i call the Eat method as such:</p>
  
  <pre><code>var animal = new Animal();
  animal.Eat();
  </code></pre>
  
  <p>The compiler does not fail to compile (i have Obsolete marked to give an error instead of an warning).
  The program compiles and the method is invoked with no errors, as well.</p>
  
  <p>As far as i can see this is a bug from the compiler. Am i missing anything?</p>
  
  <p>Note: i am using VS2010</p>