chain of exceptions, next method

kdevel kdevel at vogtner.de
Wed Mar 6 13:06:34 UTC 2024


On Saturday, 10 September 2022 at 08:48:39 UTC, Andrej Mitrovic 
wrote:
> [...]
> I wish the compiler would rewrite scope(failure) to use chained 
> exceptions. Otherwise any exceptions thrown within 
> scope(failure) can end up losing information about what was the 
> original exception that was thrown.

Ran into this issue with the following ordering bug:

    auto tmpfilename = fn.dup ~ ".XXXXXX\0";
    int fd = mkstemp (tmpfilename.ptr);
    scope (failure) remove (tmpfilename); // bug:
    if (fd == -1)
       throw new Exception (strerror(errno).to!string);

The error thrown was

    Failed to remove file ...

Is there any work in progress to chain the exceptions in 
scope(failure)?


More information about the Digitalmars-d-learn mailing list