On Tuesday, 17 April 2018 at 00:08:07 UTC, Mike Franklin wrote:
On Monday, 16 April 2018 at 13:40:55 UTC, jmh530 wrote:
On Monday, 16 April 2018 at 13:01:44 UTC, Radu wrote:
A blocker for more advanced 'betterC' usage.
https://issues.dlang.org/show_bug.cgi?id=18493
From what I can gather this appears to be caused by a
`scope(failure)` statement
(https://dlang.org/spec/statement.html#scope-guard-statement)
being added to the Postblit body (a.k.a. __fieldPostblit
internally in the compiler). I'm assuming `scope(failure)` is
just syntactic sugar for a try-catch.
I don't know how Walter wants to handle such a situation in
-betterC. If I knew, I might be able to fix this bug.
Mike
This is very odd, as the following compiles:
---
struct S
{
this(this)
{
}
~this()
{
}
}
struct C
{
S s1;
}
---
If the scope failure would cause this then I assume it would not
work at all in any case.