On 8/25/2018 3:52 AM, Chris wrote:
On Friday, 24 August 2018 at 19:26:40 UTC, Walter Bright wrote:
Every programmer who says this also demands new (and breaking) features.
"Every programmer who..." Really?

You want to remove autodecoding (so do I) and that will break just about every D program in existence. For everyone else, it's something else that's just as important to them.

For example, Shachar wants partially constructed objects to be partially destructed, a quite reasonable request. Ok, but consider the breakage:

  struct S {
    ~this() {}
  }

  class C {
    S s;

    this() nothrow {}
  }

I.e. a nothrow constructor now must call a throwing destructor. This is not some made up example, it breaks existing code:

  https://github.com/dlang/dmd/pull/6816

If I fix the bug, I break existing code, and apparently a substantial amount of existing code. What's your advice on how to proceed with this?

Reply via email to