On Wednesday, 7 November 2018 at 20:03:47 UTC, Michelle Long wrote:

Case A:

int x;
{
   if (true) goto X;
   //int x;
}
~x;
X:

That is not "Case A". This one is:

{
    if (true) goto X;
    T x;

    X:
} // x.__dtor

That should error as an easy cop-out, nothing wrong with that approach. However, this:

{
    if (true) goto X;
    T x;
} // x.__dtor
X:

should not error at all, since goto skips both initialization and use. No one is disputing that. From your posts if I understand correctly it's that second case that errors in your code. If it does, there's a bug, but it's on you to provide a test case. Simple as that. Yet you're all wound up as if the world is out to get you.

Reply via email to