Thread overview
[Issue 14352] SDC test0075.d fails under against DMD
Mar 28, 2015
ag0aep6g@gmail.com
Mar 28, 2015
ag0aep6g@gmail.com
[Issue 14352] Two goto cases in one case branch does not work correctly
Mar 29, 2015
Kenji Hara
March 28, 2015
https://issues.dlang.org/show_bug.cgi?id=14352

ag0aep6g@gmail.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |ag0aep6g@gmail.com

--- Comment #1 from ag0aep6g@gmail.com ---
Slight reduction of transmogrify(0):

----
void main() {
    int[] output;
    switch (0) {
        case 0:
            output ~= 0;
            goto case;
            goto case;
        case 1:
            output ~= 1;
            goto case;
        case 2:
            output ~= 2;
            break;
        case 3:
            output ~= 3;
            break;
        default:
            assert(false);
    }
    import std.stdio;
    writeln(output);
}
----

Should print "[0, 1, 2]". Actually prints "[0, 1, 3]", meaning that it jumps from case 1 to case 3.

Having more than one `goto case;` seems to confuse dmd.

--
March 28, 2015
https://issues.dlang.org/show_bug.cgi?id=14352

ag0aep6g@gmail.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |wrong-code
           Hardware|x86                         |All
                 OS|Mac OS X                    |All

--
March 29, 2015
https://issues.dlang.org/show_bug.cgi?id=14352

Kenji Hara <k.hara.pg@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |pull
            Version|unspecified                 |D2
            Summary|SDC test0075.d fails under  |Two goto cases in one case
                   |against DMD                 |branch does not work
                   |                            |correctly

--- Comment #2 from Kenji Hara <k.hara.pg@gmail.com> ---
https://github.com/D-Programming-Language/dmd/pull/4531

--
March 29, 2015
https://issues.dlang.org/show_bug.cgi?id=14352

github-bugzilla@puremagic.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |FIXED

--
March 29, 2015
https://issues.dlang.org/show_bug.cgi?id=14352

--- Comment #3 from github-bugzilla@puremagic.com ---
Commits pushed to master at https://github.com/D-Programming-Language/dmd

https://github.com/D-Programming-Language/dmd/commit/e522feb89f080b489eade882bd204006df506cf5 fix Issue 14352 - Two goto cases in one case branch does not work correctly

https://github.com/D-Programming-Language/dmd/commit/83a949937d2b74f2a15215c7306530a8a39ba2f9 Merge pull request #4531 from 9rnsr/fix14352

Issue 14352 - Two goto cases in one case branch does not work correctly

--
June 17, 2015
https://issues.dlang.org/show_bug.cgi?id=14352

--- Comment #4 from github-bugzilla@puremagic.com ---
Commits pushed to stable at https://github.com/D-Programming-Language/dmd

https://github.com/D-Programming-Language/dmd/commit/e522feb89f080b489eade882bd204006df506cf5 fix Issue 14352 - Two goto cases in one case branch does not work correctly

https://github.com/D-Programming-Language/dmd/commit/83a949937d2b74f2a15215c7306530a8a39ba2f9 Merge pull request #4531 from 9rnsr/fix14352

--