On Mon, Oct 22, 2012 at 4:52 PM, Simon Peyton-Jones <simonpj@microsoft.com> wrote:
But if the will of the masses is to silently and forever make Rank2Types=RankNtypes (documented of course), that's ok with me.  It just seems odd.  I thought that's what deprecation was *for*.

An alternative would be to have a mechanism for saying "-Wall -Werror, except for these cases". I think maybe -fwarn-warnings-deprecations is intended to do that, though really what I want to be able to say is "suppress *only* warnings about the deprecation of thing X" or perhaps "continue to issue a warning about this, but don't make it an error even if -Werror". Obviously having granularity that fine comes with a cost in implementation complexity (and it's not exactly a fun feature to work on), so I'm suggesting that this be done so much as exploring the solution space. (This is the sort of granularity that many commercial compilers provide.)