On Sunday, November 11, 2012 15:01:14 Alex Rønne Petersen wrote: > I'm against that pull request. Not because I think it isn't useful, but > because I think it doesn't fix the problem. > > Usage of deprecated symbol(s) should be a warning by default and the new > option should be used to turn that into an error; not the other way around.
Agreed. Otherwise, you can't deprecate something without immediately breaking code, which means that if you're trying to never immediately break people's code when making a change (which is the position that Phobos is in), then you can't use deprecated. "Scheduling" stuff for deprecation has helped, but it hasn't really fixed all that much. Making it so that deprecated emited a warning instead of an error and otherwise did not affect compilation _would_ fix it (as long as -w didn't affect it), but then a flag for making it an error is needed so that people can be sure that they've completely removed all deprecated features from their code (due to how deprecated affects conditional compilation). - Jonathan M Davis