June 12, 2017
https://issues.dlang.org/show_bug.cgi?id=17494

          Issue ID: 17494
           Summary: Do not execute scope(...) if an Error exception has
                    been thrown
           Product: D
           Version: D2
          Hardware: All
                OS: All
            Status: NEW
          Severity: enhancement
          Priority: P1
         Component: dmd
          Assignee: nobody@puremagic.com
          Reporter: bugzilla@digitalmars.com

Not cleaning up after an Error is thrown is allowed by the D spec. This enhancement allows much better code to be generated for `nothrow` code when `scope` is used. It will also not unwind declarations with destructors in `nothrow` code when Errors are thrown.

It also fixes regression https://issues.dlang.org/show_bug.cgi?id=17493

--