This is Xamarin's bug tracking system. For product support, please use the support links listed in your Xamarin Account.
Bug 42585 - Switch fall-through not rejected
Summary: Switch fall-through not rejected
Status: RESOLVED FIXED
Alias: None
Product: Compilers
Classification: Mono
Component: C# (show other bugs)
Version: 4.2.0 (C6)
Hardware: PC Linux
: --- normal
Target Milestone: ---
Assignee: Marek Safar
URL:
Depends on:
Blocks:
 
Reported: 2016-07-15 09:15 UTC by neil.sculthorpe
Modified: 2016-07-27 09:59 UTC (History)
1 user (show)

See Also:
Tags:
Is this bug a regression?: ---
Last known good build:


Attachments

Description neil.sculthorpe 2016-07-15 09:15:06 UTC
The following code compiles successfully using Mono 4.2.2 (with a warning about unreachable code):

switch (1) {
  case 1: {}
  default: {}
}

When executed, it crashes:

System.InvalidProgramException: Invalid IL code in Program:Main (): method body is empty.
[ERROR] FATAL UNHANDLED EXCEPTION: System.InvalidProgramException: Invalid IL code in Program:Main (): method body is empty.

I believe the compiler should reject this program because of the "no fall through" rule.

This seems to be a recurrence of Bug 17920 and Bug 23475; I'm not sure if it should already be fixed by Mono 4.2.2 or not.
Comment 1 Marek Safar 2016-07-27 09:59:47 UTC
Fixed in master and Mono 4.6

Note You need to log in before you can comment on or make changes to this bug.